Как правильно добавить несколько холстов в PDF?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как правильно добавить несколько холстов в PDF?

Сообщение Anonymous »

Я написал программу на Java с iText 9.0.0 для создания PDF-файла. Мне нужно добавить внешние PDF-файлы как XObject на каждую страницу PDF-файла. Все идет нормально, если количество страниц PDF равно 1 или 2. Однако, если количество страниц >= 3 (например, измените int n = 30; на int n = 31; в следующий код), программа аварийно завершает работу, и PDF-файл не может быть создан правильно. Такое поведение действительно жуткое!

Код: Выделить всё

package net.opho;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.kernel.pdf.xobject.PdfXObject;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
public class Main {
public static void main(String[] args) throws Exception {
PdfDocument output = new PdfDocument(new PdfWriter("C:\\develop\\demo.pdf"));
Document document = new Document(output);
document.setTopMargin(120);
Paragraph paragraph = (new Paragraph("Some texts...")).setFontSize(24);
int n = 30;
for (int i = 0; i < n; i++) {
document.add(paragraph);
}
PdfDocument logoPdf = new PdfDocument(new PdfReader("C:\\develop\\OPhOLogo.pdf"));
PdfXObject logoObject = logoPdf.getFirstPage().copyAsFormXObject(output);
logoPdf.close();
Rectangle logoRectangle = PdfXObject.calculateProportionallyFitRectangleWithWidth(logoObject, 20, 750, 200);
for (int i = 1; i 

Подробнее здесь: [url]https://stackoverflow.com/questions/79282860/how-to-properly-add-multiple-canvas-into-a-pdf[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»