PDFsharp installieren

Kropotkin

Mitglied
Hallo Leute.

Kann mir bitte einer erklären, ganz einfach wenns geht, wie ich das PDFsharp richtig in meine
VWD2008 Umgebung integriere und damit dann was anfangen kann. Ich hab mir die assemblies pdfsharp.dll und
pdfsharp.charting.dll reingeholt -> ohne rechten Erflog.
Was brauch ich noch und , wenn jmd ein gutes Beispiel weiss, wie man einen eigenen Stundenplan erzeugt, dann
wäre ich schier glücklich!

Viele Grüße
Kropotkin
 
Hi.

Wie hasts denn "reingeholt" und wie äusserte sich denn deine Erfolglosigkeit?

Wenn du die DLLs in deinem Projekt referenziert hast, brauchst doch nur noch die
Klassen von PDFsharp benutzen.
Hast dir mal die Beispiele angesehen und ausprobiert?


lg,..
 
Hallo, danke erstmal

inzwischen siehst so aus:

Ich habe AssemlyInfo.cs, pdfsharp.cahrting.dll, pdfsharp.dll in den BIN-Ordner
(genügt das?)
dann hab ich das Hello World Beispiel kopiert

PHP:
using PdfSharp;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;

...

     PdfDocument document = new PdfDocument();
            PdfPage page = document.AddPage();
            XGraphics gfx = XGraphics.FromPdfPage(page);
            XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
            gfx.DrawString("Hello, World!", font, XBrushes.Black,
              new XRect(0, 0, page.Width, page.Height),
             XStringFormat.Center);
            string filename = "HelloWorld.pdf";
            document.Save("c:\\"+filename);

hat funktioniert, bis auf das 'Meckern, dasss XStringformat veraltet ist
Also kann ich jetzt das Dokument helloworld im Ordner C: erzeugen
Jetzt würde ich aber gerne daten aus meiner DB als Stundenplan darstellen.
Kannst Du mir da einen Tipp geben ? Ich habe das datum Mo, Di, bis Freitag
Ich habe für die Stunden den Lehrer/Fach und das sollte, wahrschelinlich quer, nun für eine gewählte KW
ein Dokument erzeugen oder gleich ausdrucken, aber das ist über web zu schwierig. Für mich jedenfalls.

Danke nochmal
 
Da ich noch nie mit PDFsharp gearbeitet hab, kann ich dir jetzt leider kein konkretes Beispiel zeigen, aber nach kurzem überfliegen der Seite würde ich sagen, dass du dir mal MigraDoc ansehen solltest.
Das gibts auch bei der Seite und das erstellen eines komplexeren Dokuments scheint damit etwas einfacher zu sein.
Wenn du dir das Rechnungs Beispiel ansiehst, wirst sehen, dass
man recht einfach Tabellen erstellen kann, und so ein Stundenplan ist ja auch hauptsächlich eine Tabelle. :)

lg, Alex
 
Hey.

Ja werd ich machen.
In was erstellst Du ausdruckbare Sachen ?
Gerade schau ich mir itextsharp an. Kennst Du das ?
Wichtig wären halt Beispiele.

danke
 
Ich drucke nicht. ;) Von daher hab ich kaum mit solchen Bibliotheken zu tun und kann auch nicht mit Beispielen dienen. Auf den ersten Blick scheint aber MigraDoc recht praktisch zu sein.
 
ich bin jetzt auf itextsharp gekommen.
Feines Werkzeug. Leicht und eigtl. einfach zu bedienen.
Es gelingt mir text im pdf zu erzeugen, fast, noch fast, so wie ich will,
ABER: wie kann ich das Dokument auf des Users PC speichern?
Denn das Ganze soll ja aus der Website abrufbar sein...

Danke
Krop
 
Code:
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition","attachment; filename=datei.pdf");

Mit diesen 2 Zeilen kannst du im Browser einen "Datei speichern" Dialog auslösen. Den Inhalt deiner PDF Datei kannst nun noch auf verschiedene Arten übermitteln. Solltest du eine temporäre Datei anlegen bräuchtest du nur Response.TransmitFile benutzen. Hast du deine PDF Datei in einem Bytearray (oder MemoryStream) wird Response.BinaryWrite deine Wahl sein.

lg,.. :)
 
erstmal tausend Dank.

ABER, sorry, dass ich nerve.
Die zwei Zeilen von Dir funktionieren inswoeit, dass ich den downloasdialog bekomme und
den File downloaden kann. Nur lesen kann man ihn nicht. AdobeReaderfehlermedlung, dass
das Doc beschädigt ist usw....
Hier der code

Code:
Document document = new Document(PageSize.A4, 72, 72, 72, 72);
        PdfWriter writer = PdfWriter.GetInstance(document,
                new FileStream("MeinPDFFile.pdf",
                    FileMode.Create));
        document.AddAuthor("ich");
        document.AddCreationDate();
        document.AddCreator("xxxxxx");
        document.AddHeader("MeinPDFFile", "Eine Test PDF");
        
        document.Open();

        List list = new List(true, 20);
        list.Add("Das ist ein erster Listentext");
        list.Add("eine Tabelle MUSS folgen");
        list.Add("was sonst in der Liste steht ... keiner weiss es");
        document.Add(list);

        list.Symbol = new Chunk("\u2022", FontFactory.GetFont(FontFactory.HELVETICA, 20));


        document.Add(new Phrase("einfach ein neuer Satz dazu und fertig"));

        document.Close();
        
        Response.ContentType = "application/pdf";
        Response.AppendHeader("Content-Disposition", "attachment; filename=MeinPDFFile.pdf");
und sorry, dass ich so nerve, aber es läßt mich nicht mehr los und ich bin da ziemlich neu drin
Krop
 

Neue Beiträge

Zurück