Protokoll-Dateien erzeugen



  • Hallo,

    ich möchte aus einem Programm heraus Protokoll-Dateien erzeugen. Diese Dateien sollen Text, Bilder und Tabellen enthalten, und die Datei soll auf DIN A4 Größe ausgedruckt werden können. Es sollen alle Informationen in _einer_ Datei enthalten sein. Der Text und die Bilder sollen also nicht auf zwei oder mehr Dateien aufgeteilt werden.
    Ich bin noch unentschlossen welches Dateiformat am besten geeignet wäre. Man könnte eine große Bitmap anlegen und als GIF oder PNG abspeichern. Vielleicht könnte man auch direkt eine PDF Datei erzeugen, aber ich weiss noch nicht wie das geht.
    Habt ihr andere Vorschläge wie man das machen könnte?

    Gruß
    Michael



  • Es gibt bestimmt eine Library, mit der man PDFs erzeugen kann, das wäre also eine brauchbare Möglichkeit.
    Eine weitere Möglichkeit wäre ein Word-Dokument per Office-Automation erstellen. Dort kannst du auch Bilder, Tabellen und weiß der Geier was als OLE-Objekt einbetten.
    Das geht über COM recht einfach und seit C# 4 mit dem dynamic-Schlüsselwort und optionalen Parametern sehr angenehm 🙂


  • Administrator

    Für PDFs und gratis:
    http://www.pdfsharp.net/

    Ich weiss aber nicht, was genau deine Anforderungen an diese "Protokoll-Dateien" sind. Wenn man z.B. die Daten einfach wieder extrahieren können soll, dann ist PDF keine gute Auswahl. Dann solltest du aber vielleicht etwas näher erläutern, was es mit diesen "Protokoll-Dateien" auf sich hat. 🙂

    Grüssli



  • Hallo,

    Dravere schrieb:

    Ich weiss aber nicht, was genau deine Anforderungen an diese "Protokoll-Dateien" sind. Wenn man z.B. die Daten einfach wieder extrahieren können soll, dann ist PDF keine gute Auswahl. Dann solltest du aber vielleicht etwas näher erläutern, was es mit diesen "Protokoll-Dateien" auf sich hat. 🙂

    Die Dateien sollen nur zum anschauen und ausdrucken gut sein. Es müssen daraus keine Daten extrahiert werden.

    Gruß
    Michael



  • Hallo,

    Dravere schrieb:

    Für PDFs und gratis:
    http://www.pdfsharp.net/

    Ich habe mir das mal durchgelesen und glaube dass es für mein Projekt genau das richtige wäre.
    Das "HelloWorld" Beispiel
    http://www.pdfsharp.net/wiki/PDFsharpFirstSteps.ashx
    ist mir vom Ablauf her soweit klar, aber ich weiss noch nicht wie ich das Beispiel zum Laufen bringen soll. Wenn ich die Projektdatei mit VS2008 öffne, dann wird mir angezeigt dass die zu dem Projekt gehörenden Dateien nicht gefunden wurden.
    Muss ich das Pdfsharp vorher installieren? Wenn ja, wie?
    Oder muss ich die zu dem Projekt gehörenden Dateien vorher irgendwo hin kopieren?

    Gruß
    Michael



  • Das Problem hat sich teilweise schon gelöst, ich hatte vergessen die ZIP-Datei zu entpacken. Jetzt sind fast alle Dateien vorhanden, nur PdfSharp wird noch nicht gefunden.

    Gruß
    Michael


  • Administrator

    Bitte genauere Beschreibungen:
    a) Was hast du genau gemacht?
    b) Was ist die genaue Fehlermeldung?

    Und aus reiner Vermutung:
    Du hast die PdfSharp.dll schon als Referenz zu deinem Projekt hinzugefügt?

    Grüssli



  • Dravere schrieb:

    Bitte genauere Beschreibungen:
    a) Was hast du genau gemacht?
    b) Was ist die genaue Fehlermeldung?

    Ich habe die Datei PDFSharp-MigraDocFoundation-1_32.zip von Sourceforge geladen und dann entpackt.
    http://sourceforge.net/projects/pdfsharp/files/

    Dravere schrieb:

    Und aus reiner Vermutung:
    Du hast die PdfSharp.dll schon als Referenz zu deinem Projekt hinzugefügt?

    Das wird das Problem sein. Aber ich kann in der ZIP Datei gar keine PdfSharp.dll finden.

    Gruß
    Michael


  • Administrator

    Weil du das falsche Paket runtergeladen hast. Es gibt noch ein Paket PDFsharp-MigraDocFoundation-Assemblies-1_32.zip , dort drin sind die kompilierten DLLs, wie dies der Name schon sagt.

    Siehe:
    http://sourceforge.net/projects/pdfsharp/files/pdfsharp/PDFsharp%201.32/ für 1.32

    Grüssli

    PS: Die Namensgebung ist meiner Meinung nach genau falsch rum gewählt. Er hätte lieber das Paket mit dem Code als Source gekennzeichnet und das andere normal. Aber naja...



  • Vielen Dank für deine Hilfe, jetzt funktioniert das HelloWorld Beispiel!

    Gruß
    Michael


Anmelden zum Antworten