Hallo Freunde,
kann mir jemand bei itextsharp helfen? Ich benutze Vers. 5.5.8.0
Folgendes Problem, ich habe ein PDF mit 100 Seiten und möchte ihn auf mehrere Teile aufteilen, z.B. zwei Seiten pro Teil. Das hat funktioniert, aber das Ergebnis hat mich verwirrt. Test.pdf war 5mb groß, aber das Ergebnis, jedes Teil hat 5mb gehabt. Also Input --> 5mb, Output --> 5mb x 50…
Ich bin kein Programmierer, ich versuche mir nur das Leben mit Programmierung leichter zu machen, bitte nicht gleich mit Steinen bewerfen wegen meines Codes Was mache ich falsch?
Vielen Dank im Voraus!
P.S. es tut mir leid, ich habe leider der Beitrag im falsche Thema erstellt und kann es jetzt nicht verschieben.
Verschoben. ~Thunderbolt
kann mir jemand bei itextsharp helfen? Ich benutze Vers. 5.5.8.0
Folgendes Problem, ich habe ein PDF mit 100 Seiten und möchte ihn auf mehrere Teile aufteilen, z.B. zwei Seiten pro Teil. Das hat funktioniert, aber das Ergebnis hat mich verwirrt. Test.pdf war 5mb groß, aber das Ergebnis, jedes Teil hat 5mb gehabt. Also Input --> 5mb, Output --> 5mb x 50…
Ich bin kein Programmierer, ich versuche mir nur das Leben mit Programmierung leichter zu machen, bitte nicht gleich mit Steinen bewerfen wegen meines Codes Was mache ich falsch?
Vielen Dank im Voraus!
P.S. es tut mir leid, ich habe leider der Beitrag im falsche Thema erstellt und kann es jetzt nicht verschieben.
C#-Quellcode
- public static int TeilePdfInTeile(string filePdf, string OPT_OUTPUT, int iPage)
- {
- int currentFile = 0;
- FileInfo filePdfInfo = new FileInfo(filePdf);
- if (File.Exists(filePdf))
- {
- using (var pdfReader = new PdfReader(filePdf))
- {
- int iCurrentPage = 0;
- int iCurrentFile = 0;
- var pages = new List<int>();
- Dictionary<string, List<int>> seitenNeuePdf = new Dictionary<string, List<int>>();
- for (var page = 1; page <= pdfReader.NumberOfPages; page++)
- {
- iCurrentPage++;
- pages.Add(page);
- if (iCurrentPage == iPage)
- {
- iCurrentFile++;
- iCurrentPage = 0;
- seitenNeuePdf.Add(iCurrentFile.ToString("00000"), pages);
- pages = new List<int>();
- }
- }
- foreach (var oneSendung in seitenNeuePdf)
- {
- var doc = new iTextSharp.text.Document();
- var copie = new iTextSharp.text.pdf.PdfCopy(doc, new System.IO.FileStream(OPT_OUTPUT + filePdfInfo.Name.Substring(0, filePdfInfo.Name.Length - 4) + "_" + oneSendung.Key + ".pdf", FileMode.Create));
- doc.Open();
- var newPages = new List<int>();
- newPages = oneSendung.Value;
- if (newPages.Count == 1)
- {
- copie.AddPage(copie.GetImportedPage(pdfReader, newPages[0]));
- }
- else
- {
- for (int i = 1; i <= newPages.Count; i++)
- {
- copie.AddPage(copie.GetImportedPage(pdfReader, newPages[i - 1]));
- }
- }
- copie.Close();
- doc.Close();
- currentFile++;
- }
- }
- }
- else
- {
- currentFile = 0;
- return currentFile;
- }
- return currentFile;
- }
Verschoben. ~Thunderbolt
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Thunderbolt“ ()