Как сделать, чтобы распечатка в формате PDF занимала всю страницу А4

Я использую модуль iText jboss seam для создания образца файла PDF, который по умолчанию отображается с увеличением страницы 143%. Когда я беру распечатку, вывод не занимает всю страницу, хотя. Какие настройки я должен изменить, чтобы распечатать использовать весь лист.

2 ответа

Решение

Если вы используете seam-pdf, настройки размера документа находятся в <document> тег:

<p:document type="pdf"
            pageSize="A4"
            orientation="portrait"
            margings="2cm, 2cm, 2cm, 2cm"
            disposition="attachment"
            title="Document title"
            subject="Document subject (appears in the doc properties from pdf viewer)"
            author="Document Author"
            creator="Document Creator">

<!-- define the page here -->


</p:document>

Вы можете изменить свой начальный размер страницы на A4.

Document doc = new Document(PageSize.A4);

Вы можете попросить своих пользователей правильно настроить принтер. В Reader X есть раскрывающийся список "Масштабирование страницы", и один из параметров - "По размеру области печати". Я считаю, что предыдущие версии имели флажок для того же элемента управления, но я не уверен.

Вы можете изменить начальный вид страницы, но это не изменит поведения печати... по крайней мере, не так, как вы хотите. Смотрите PdfViewerPreferences, реализованный PdfWriter,

Есть также метод JavaScript, doc.print(...), который может управлять всем этим без пользовательского ввода, но для параметров "без пользовательского ввода" требуются специальные привилегии выполнения... вы могли бы организовать это с помощью безопасности сертификата и некоторых пользовательских настроек, но, опять же, вы можете этого не делать.

Другие вопросы по тегам