Ich habe eine Datei mit mehreren Versandetiketten, 2 pro Seite (ich kann dieses Format nicht wählen). Ich versuche, die Datei so zu ändern, dass jedes einzelne Etikett auf einem 4 x 6 Etikettendrucker gedruckt werden kann.Doppelte PDF-Seiten mit PdfStamper/PdfReader
Ich habe ein Problem mit dem Duplizieren des Inhalts einer PDF-Seite, zu einer anderen Seite, so dass ich dann jede Seite mit verschiedenen Regionen beschneiden kann, um 2 Seiten zu erzeugen, eine mit jedem Etikett von der Originalseite. Der Code, den ich zur Zeit habe, ist wie folgt:
string filename = "Package.pdf";
using (var existingFileStream = new FileStream(filename, FileMode.Open))
{
var pdfReader = new PdfReader(existingFileStream);
using (FileStream output = new FileStream("Mod_package.pdf", FileMode.Create, FileAccess.Write))
{
using (PdfStamper pdfStamper = new PdfStamper(pdfReader, output))
{
int originalpages = pdfReader.NumberOfPages;
for(int page = 1; page <=originalpages; page++)
{
Rectangle rect = pdfReader.GetCropBox(page);
pdfStamper.InsertPage(page * 2, rect);
}
for(int page = 2; page <=pdfReader.NumberOfPages; page=page+2)
{
//I want to insert the content from pdf page 1 into
//page 2, page 3 into page 4 etc etc.
}
for (int page = 1; page <= pdfReader.NumberOfPages; page++)
{
//The basic jyst of how I'm cropping
//This will be modified to use an even/odd page scheme
Rectangle rect = pdfReader.GetCropBox(page);
rect.Bottom = rect.Bottom/2;
pdfReader.GetPageN(page).Put(PdfName.CROPBOX, new PdfRectangle(rect));
rect = pdfReader.GetCropBox(page);
rect.Top = rect.Top/2;
pdfReader.GetPageN(page).Put(PdfName.CROPBOX, new PdfRectangle(rect));
}
}
}
pdfReader.Close();
}
Ich würde schätzen, irgendwelche Empfehlungen, wie diese Aufgabe und meine Entschuldigung zu tun, wenn ich seltsam iTextSharp Code haben .. ich es relativ neu bin.
Es Gummi ducking genannt wird. Freut mich, Ihnen behilflich zu sein. http://www.urbandictionary.com/define.php?term=Rubber%20ducking –
Haha .. Ich werde mich daran erinnern. Vielen Dank! –