[C#] PDF zusammenfügen (merge)

Status
Nicht offen für weitere Antworten.

soyo

Erfahrenes Mitglied
Hallo,

Ich bin die ganze Zeit auf der Suche nach einer kostenfreie und vor allem funktionierende Bibliothek um PDFs zusammen zufügen. Die meisten sind nicht kostenfrei und zeichnen mit ein kleines Wasserzeichen auf das erstellte PDF oder ähnliches.
Habe wirklich viel gegoogelt. Kennt wer eine Freeware?

Gruß soyo
 
Benutz die Bibliothek PDFSharp, die ist Kostenlos.

http://pdfsharp.com/ <-- Sind glaub ich auch Beispiele dafür da.

Hab das damals so gemacht, ist relativ selbst erklärend, wenn auch massiv schlecht gecodet :-D Aber egal, hoffe ich konnte dir helfen.

Code:
 private string PDFCombinde()
        {
            string[] AllePDFDateien;
 
            // PDF Einstellungen für die Ausgabedatei
            PdfDocument outputDocument = new PdfDocument();
            // Seiten ausrichtung (One Column = Untereinander)
            outputDocument.PageLayout = PdfPageLayout.OneColumn;
            //XFont font = new XFont("Verdana", 10, XFontStyle.Bold);
            XStringFormat format = new XStringFormat();
 
          /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
            format.Alignment = XStringAlignment.Center;
            format.LineAlignment = XLineAlignment.Far;
            // Alle PDF Datei aus dem Ordner in dem das Programm liegt!
            AllePDFDateien = Directory.GetFiles(Application.StartupPath, "*.pdf", SearchOption.TopDirectoryOnly);
 
 
            PdfDocument inputDocument;
            //PdfPage page;
 
            foreach (string datei in AllePDFDateien)
            {
                if(datei.Contains("_Zusammenfassung_Tagesabschluesse"))
                    continue;
                inputDocument = PdfReader.Open(datei, PdfDocumentOpenMode.Import);
                int count = inputDocument.PageCount;
                for (int idx = 0; idx < count; idx++)
                {
                     page = inputDocument.PageCount > idx ? inputDocument.Pages[idx] : new PdfPage();
                     page = outputDocument.AddPage(page);
                }
            }
 
            string filename = DateTime.Now.AddDays(-1).ToShortDateString().ToString() + "_Zusammenfassung_Tagesabschluesse.pdf";
            outputDocument.Save(filename);
            //Process.Start(filename);
            return filename;
        }
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück