itext 7 - холст с настроенной страницей - PullRequest
0 голосов
/ 16 мая 2018

В iText 2 мы можем использовать PdfContentByte для установки настроенного размера страницы, однако в iText 7.1.2.

    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));


    PdfPage page = pdf.addNewPage();
    PdfCanvas pdfCanvas = new PdfCanvas(page);
    Rectangle rectangle = new Rectangle(0, 0, 2000, 800);
    pdfCanvas.rectangle(rectangle);
    pdfCanvas.stroke();
    Canvas canvas = new Canvas(pdfCanvas, pdf, rectangle);
    PdfFont font = PdfFontFactory.createFont(FontConstants.TIMES_ROMAN);
    PdfFont bold = PdfFontFactory.createFont(FontConstants.TIMES_BOLD);
    Text title =
        new Text("The Strange Case of Dr. Jekyll and Mr. Hyde").setFont(bold);
    Text author = new Text("Robert Louis Stevenson").setFont(font);
    Paragraph p = new Paragraph().add(title).add(" by ").add(author);
    canvas.add(p);
    canvas.close();
    pdf.close();

, даже если мы установили большую ширину, это не сработало. все еще сохраняйте размер А4. Как правильно изменить размер страницы?

enter image description here

1 Ответ

0 голосов
/ 16 мая 2018

Вы добавляете новую страницу без указания размера страницы, поэтому используется размер страницы по умолчанию (A4).Пожалуйста, ознакомьтесь с документацией по API для метода addPage(): addNewPage (PageSize pageSize) .Вам нужно передать аргумент PageSize, если вы хотите получить страницу другого размера.

Существует также метод setDefaultPageSize () , если вы хотите изменить размер страницы по умолчанию с A4к чему-то еще.

Класс PageSize расширяет класс Rectangle: http://itextsupport.com/apidocs/iText7/latest/com/itextpdf/kernel/geom/PageSize.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...