मैं कुछ ऐसा करने की कोशिश कर रहा हूं जो मैंने सोचा था कि यह काफी आसान होगा, हालांकि यह इतना आसान नहीं है और Google ने मदद नहीं की है।iTextSharp का उपयोग कर पीडीएफ में रिक्त पृष्ठ कैसे जोड़ें?
मैं पीडीएफ दस्तावेजों (अक्षरों) को एक साथ मर्ज करने के लिए iTextSharp का उपयोग कर रहा हूं ताकि वे सभी एक बार में मुद्रित हो सकें। यदि किसी पत्र में पृष्ठों की एक विषम संख्या है तो मुझे एक खाली पृष्ठ जोड़ने की आवश्यकता है, इसलिए हम अक्षरों को डबल-पक्ष मुद्रित कर सकते हैं।
// initiaise
MemoryStream pdfStreamOut = new MemoryStream();
Document document = null;
MemoryStream pdfStreamIn = null;
PdfReader reader = null;
int numPages = 0;
PdfWriter writer = null;
for int(i = 0;i < letterList.Count; i++)
{
byte[] myLetterData = ...;
pdfStreamIn = new MemoryStream(myLetterData);
reader = new PdfReader(pdfStreamIn);
numPages = reader.NumberOfPages;
// open the streams to use for the iteration
if (i == 0)
{
document = new Document(reader.GetPageSizeWithRotation(1));
writer = PdfWriter.GetInstance(document, pdfStreamOut);
document.Open();
}
PdfContentByte cb = writer.DirectContent;
PdfImportedPage page;
int importedPageNumber = 0;
while (importedPageNumber < numPages)
{
importedPageNumber++;
document.SetPageSize(reader.GetPageSizeWithRotation(importedPageNumber));
document.NewPage();
page = writer.GetImportedPage(reader, importedPageNumber);
cb.AddTemplate(page, 1f, 0, 0, 1f, 0, 0);
}
}
मैं का उपयोग कर की कोशिश की है:
document.SetPageSize(reader.GetPageSizeWithRotation(1));
document.NewPage();
एक अजीब के लिए पाश के लिए के अंत में
यहाँ पत्र के सभी मर्ज करने के लिए बुनियादी कोड मैं इस समय है सफलता के बिना पृष्ठों की संख्या।
एक टेबल जोड़ना मेरे लिए काम नहीं करता था। शायद ITextSharp के एक नए संस्करण के कारण। 'जोड़ें (नया हिस्सा());' मेरे लिए काम किया। – Crispy
अद्यतन के लिए धन्यवाद - यह काफी समय पहले था। :) – Russell
मैं पुष्टि कर सकता हूं कि नए संस्करण के लिए आपको तालिका के बजाय 'चंक' जोड़ना चाहिए। पूरी तरह से काम किया! –