Печать из браузера на принтер этикеток, настройка размеров области печати

#javascript #html #css #printing #zebra-printers

#javascript #HTML #css #печать #zebra-принтеры

Вопрос:

Я хочу контролировать, как что-то отображается при печати из браузера на этикетке размером 2,4 «x4 «.

В настоящее время, когда я использую приложение для обработки текстов, такое как Pages (версия Microsoft Word от Apple), я могу установить размер моего документа в 2,4 «x 4» и нажать печать, и я знаю, что все содержимое поместится на этикетке. Я пытаюсь добиться того же, но в браузере.

Я не знаю наверняка, но я думаю, что когда я печатаю из браузера, в настоящее время он включает много пробелов и пытается масштабировать все это, чтобы поместиться на этикетке, что искажает содержимое.

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

Надеюсь, это имеет смысл!

Ответ №1:

Несмотря на то, что существуют возможности стилизации, которые поддерживают форматирование по страницам, веб построен на основе непрерывных (безстраничных) документов. Из-за этого постраничное форматирование вызывает проблемы. Например, вы не можете указать размеры страницы документа из документа. Вместо этого диалоговое окно принтера предоставляет выбор размеров страницы, а механизм рендеринга пытается разместить ваш контент на страницах такого размера.

CSS имеет модуль для разбитых на страницы носителей, который включает в себя: page-break-after , page-break-before , и page-break-inside для указания движку, как элементы блока должны разбиваться на страницы; @page разделы для указания CSS, который применяется только к разбитым на страницы средам; и :blank , :first , :left , и :right псевдоэлементы для создания правил, привязанных к определенным страницам.