С какими минимальными полями может справиться большинство принтеров?

108

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

Кто-нибудь знает, какие безопасные значения я могу использовать для полей при создании PDF-файлов. Раньше я без проблем использовал рабочие и домашние принтеры с полями около одного см, но, конечно, я не могу принять это как минимум по умолчанию.

О, и я действительно не хочу позволять пользователю указывать маржу (50% лени 50% усложняется.)

Я погуглил, но ничего конкретного не нашел. (средняя минимальная маржа печати)

рободиско
источник
1
так пользователи будут использовать для этого свои собственные принтеры? интересной программой для изучения была бы photoelf: photoelf.org/help/printmargins.shtml, однако эта программа извлекает информацию о принтере, а пространство для печати может быть таким же, как вы хотите это сделать ...
rownage
1
6 дюймов со всех четырех сторон для моего принтера. Давайте все пришлем наши измерения, чтобы мы могли найти безопасный минимум.
zaf
1
На Mac найдите характеристики своего принтера:grep 'ImageableArea Letter' /etc/cups/ppd/*
Уильям Энтрикен,

Ответы:

87

Все принтеры разные, но 0,25 дюйма (6,35 мм) - безопасный вариант.

Дуглас Андерсон
источник
1
Это безопасная ставка на струйные принтеры, предназначенные для фотопечати. Лазерные принтеры обычно имеют гораздо больший запас. Однако в вопросе говорится, что они создают графику, поэтому оптимизация для струйных принтеров может быть приемлемой.
Кевин Вермеер,
Я тоже подумал .25. Не знал, что у лазерных принтеров большие поля - хорошо, что я спросил. Спасибо за ответы.
robodisco
5
.25 "подходит для большинства принтеров, включая лазеры. И, если вы хотите получить samller, некоторые принтеры позволяют печатать" всю страницу ". Это аппаратная функция, которая полезна при имитации вывода со старых принтеров типа XES, которые имели меньшие поля или что-то вроде IBM 3812. Вы всегда можете открыть Word и установить поля страницы на 0, Word предложит исправить это, вводимые значения - это наименьшие поля, поддерживаемые устройством, сообщаются драйвером. Лазер Lexmark рядом со мной показывает .248 ".
Дуглас Андерсон
7
Совет: вы можете быстро найти минимальные поля вашего принтера примерно за 15 секунд -> откройте MS Word -> макет страницы -> установите все поля на 0,0 -> нажмите OK -> появится диалоговое окно с предупреждением -> нажмите «исправить» "-> готово. Минимальные поля принтера теперь отображаются в графическом интерфейсе пользователя MS Word для редактирования полей. У меня черно-белый лазер Brother: верх / низ 0,17 дюйма, левый / правый = 0,25 дюйма.
Тревор Бойд Смит,
2
Несколькими годами позже. Можно ли с уверенностью сказать, что 0,25 дюйма со всех сторон - действительно безопасная ставка?
l33t
46

Для каждого принтера PostScript одной частью его драйвера является файл ASCII, называемый описанием принтера PostScript (PPD). PPD используются в системе печати CUPS в Linux и Mac OS X, а также для принтеров, не поддерживающих PostScript.

Каждый PPD ДОЛЖЕН , согласно спецификации PPD, написанной Adobe, содержать определения * ImageableArea (это ключевое слово PPD ) для всех без исключения размеров носителей, которые он может обрабатывать. Это значение дано, например, *ImageableArea Folio/8,25x13: "12 12 583 923"для одного принтера в этом офисе и *ImageableArea Folio/8,25x13: "0 0 595 935"для принтера в соседней комнате.

Эти цифры означают: «Нижний левый угол находится в точке (12 | 12), верхний правый угол находится в точке (583 | 923)» (где эти цифры измеряются в точках ; 72pt == 1 дюйм). Вы видите, что первый принтер печатает с полем 1/6 дюйма? - Вы также видите, что следующий может печатать даже без полей?

Вам нужно знать следующее: даже если принтер может делать очень маленькие поля физически, если PPD *ImageableAreaнастроен на более широкое поле, данные печати, сгенерированные драйвером и отправленные на принтер, будут обрезаны в соответствии с настройкой PPD - - не самим принтером.

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

Старые модели, например HP, довольно щедро определяют в своих PPD свою маржу, просто чтобы быть якобы «в безопасности». Очень часто HP использовала 1/3, 1/2 дюйма или более (как "24 24 588 768"для формата Letter). Я помню, как взломал HP PPD и настроил их до "6 6 606 786"(1/12 дюйма) до того, как физические границы устройства сработали и принудили к реальному вырезанию изображения страницы.

Теперь принтеры PCL и других языков не так уж сильно отличаются по своим маржинальным возможностям от моделей PostScript.

Но, конечно, когда дело доходит до печати PDF- документов, здесь вы почти всегда можете выбрать «печать по размеру» или варианты с аналогичными названиями. Даже для файла, который сам по себе не использует поля. Это «соответствие» - это то, что программа просмотра PDF считывает из драйвера, а затем программа просмотра уменьшает страницу до размера*ImageableArea .

Курт Пфайфле
источник
Где вы найдете эти файлы PPD? Кроме того, уверены ли вы, что «нижний левый угол находится в (12 | 12), верхний правый угол находится в (583 | 923)»? Или верхний левый угол находится в (12 | 12), а нижний правый угол находится в (583 | 923)? Я считаю, что графика, например, ссылка (0,0) как верхняя левая часть экрана.
Gabriel Staples
1
@GabrielStaples: в Linux вы можете найти файлы в формате /etc/cups/ppd. В спецификации PPD размеры указаны как нижний левый и верхний правый «ll.x ll.y ur.x ur.y».
Derek Veit
10

Как правило, при создании PDF-файлов я использую поля размером 1 см. Я работаю в геопространственной индустрии и создаю карты в формате PDF с привязкой к определенному географическому масштабу. Поэтому у меня нет возможности «подогнать документ под область печати», потому что это может сделать эталонный масштаб неточным. Вы также должны понимать, что когда вы вписываетесь в область печати, вы помещаете свои уже существующие поля внутри полей принтера, так что в итоге вы получаете двойные поля. Сделайте поля подходящего размера, и ваши документы будут печататься безупречно. Многие современные принтеры могут печатать с полями менее 3 мм, поэтому, как правило, достаточно 1 см. Однако, если это крупная работа, получите спецификации принтера, на котором вы будете печатать, и убедитесь, что ваши поля адекватны.

jbalk
источник
0

Поля различаются в зависимости от принтера. В Windows GDI вы вызываете следующие функции, чтобы получить встроенные поля, «зону без печати»:

GetDeviceCaps(hdc, PHYSICALWIDTH);
GetDeviceCaps(hdc, PHYSICALHEIGHT);
GetDeviceCaps(hdc, PHYSICALOFFSETX);
GetDeviceCaps(hdc, PHYSICALOFFSETY);

Печать по краю в полиграфической промышленности называется «растеканием». Единственный лазерный принтер, который я когда-либо знал, печатал прямо до края, был Xerox 9700: 120 стр / мин, 500 тысяч долларов в 1980 году.

Пьер
источник
-2

Вы не должны позволять пользователям указывать маржу на вашем веб-сайте - позвольте им сделать это на своем компьютере. Обычно диалоговые окна печати (по крайней мере, Adobe и Preview) дают возможность масштабировать и центрировать вывод в области печати страницы:

Adobe
альтернативный текст

Предварительный просмотр
альтернативный текст

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

Кевин Вермеер
источник
4
Это, безусловно, работает, но может быть проблемой, если ваш результат не может быть масштабирован, как при печати на предварительно отпечатанной форме.
Дуглас Андерсон