I'm trying to do this:
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
Document document = new Document(pdf);
BufferedReader br = new BufferedReader(new FileReader(SRC));
String line;
for(int i = 1; i<5;i++)
{
if(n%2==0)
{
pdfDoc.addNewPage();
doc.setLeftMargin(100);
}
else if(!(n%2==0))
{
pdfDoc.addNewPage();
doc.setLeftMargin(50);
}
}
while ((line = br.readLine()) != null) {
document.add(new Paragraph(line));
}
document.close();
But it does not work! I need a different page for each margin. At the same time I read a very large text with .txt
Try something like this in itext 7:
PdfWriter writer = new PdfWriter("111");
PdfDocument pdfDoc = new PdfDocument(writer);
Document document = new Document(pdfDoc);
for (int i = 0; i < 10; i++) {
if (i % 2 == 0) {
pdfDoc.addNewPage();
document.setLeftMargin(100);
document.add(new Paragraph("AAA"));
document.add(new AreaBreak());
} else {
pdfDoc.addNewPage();
document.setLeftMargin(50);
document.add(new Paragraph("SSS"));
document.add(new AreaBreak());
}
}
document.close();
This way the left margin of all even pages (2, 4, 6, etc.) is 100 and the left margin of all uneven pages is 50 (1, 3, 5, etc.).
I did this:
PdfDocument srcDoc = new PdfDocument(new PdfReader(DEST1));
Rectangle rect = srcDoc.getFirstPage().getPageSize();
Rectangle pageSize = new Rectangle(rect.getWidth(), rect.getHeight());
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(dest));
pdfDoc.setDefaultPageSize(new PageSize(pageSize));
PdfCanvas content = new PdfCanvas(pdfDoc.addNewPage());
int n = 0;
for (int i = 1; i <= srcDoc.getNumberOfPages(); i++) {
PdfFormXObject page = srcDoc.getPage(i).copyAsFormXObject(pdfDoc);
content.clip();
content.newPath();
x++;
if(n%2==0)
content.addXObject(page,0,0);//here margin which is installed in DEST1
else if(!(n%2==0))
content.addXObject(page,150,0);
content = new PdfCanvas(pdfDoc.addNewPage());
n++;
}
srcDoc.close();
pdfDoc.close();
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.