Java Печать PageFormat и MediaSizeName - PullRequest
       0

Java Печать PageFormat и MediaSizeName

0 голосов
/ 08 апреля 2011

Я использую печать в своем приложении.

Я пытаюсь установить размер страницы (A4, B1 ...) и ориентацию (Портрет, Пейзаж).

Но я обнаружил, что мы можем установить это в объекте PageFormat, например:

PageFormat pf = job.defaultPage();
Paper paper = pf.getPaper();
pf.setOrientation(PageFormat.PORTRAIT);
paper.setSize(9*72,6*72);
paper.setImageableArea(0.5*72,0.5*72,9*72,6*72);
pf.setPaper(paper);

а также мы можем установить имя атрибута с именем MediaSizeName, например

aset.add(MediaSizeName.ISO_A4);

Я не уверен, каковы отношения между этими двумя и как правильно настроить размер и ориентацию?

Спасибо

1 Ответ

0 голосов
/ 08 апреля 2011
paper.setSize(9*72,6*72);
paper.setImageableArea(0.5*72,0.5*72,9*72,6*72);

Это много магических чисел .

Если вы не уверены в чем-то, то создайте (модульные) тесты, которые он должен пройти, и опробуйте варианты. Таким образом, вы решаете свою проблему, и если вам или кому-то, кто изменяет ваш код позже, необходимо решить аналогичную проблему, он может использовать ваш тест.

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