Какие аргументы LPR мне нужны, чтобы напечатать изображение 1400x800 пикселей на этикетке 4x6?
Это сводит меня с ума. ИБП отправляет в нашу систему изображение в формате GIF размером 1400x800 с этикеткой для отправки, которая должна вписаться в страницу размером 4x6.
К сожалению, я не могу понять параметры командной строки правильно, чтобы это произошло.
Мы используем Eltron/Zebra 2844 с сетевым адаптером и печатаем с нашего сервера Ubuntu 8.04 с использованием CUPS. Мы используем правильные драйверы, и тестовые страницы печатаются правильно.
Несмотря ни на что, я настаиваю на печати этикеток ИБП на 6 страницах, с небольшим количеством этикеток на каждой странице или слишком маленьким.
Я пробовал несколько миллиардов различных настроек lpr, большинство из которых производит мусор. Самое близкое, что я получил, это:
lpr -P Eltron2844 -o естественное масштабирование =55 -o страница-вправо =0 -o страница-слева =0 -o пейзаж -o media="4x6" ./1ZY437560399620027.gif
но это заставляет изображение быть слишком маленьким на странице. Она примерно на дюйм слишком короткая, и с обеих сторон есть поле размером 1/2 дюйма. Если я увеличу масштаб до 56, оно разбивает изображение на две страницы и сжимает его.
Есть идеи?
3 ответа
Вы пытались преобразовать GIF в файл PostScript? Если у вас есть imagemagick, вы можете использовать:
convert 1ZY437560399620027.gif 1ZY437560399620027.ps
и распечатать что? Вы также можете использовать печать в файл в GIMP или других.
Я предполагаю, что проблема в том, что lpr просматривает вспомогательное приложение, которое создает поля, с которыми у вас есть проблемы.
Удачи,
Жоао Мигель Невес
800 x 1400 на 4x6 означает 200 точек на дюйм x 233,33333 точек на дюйм, поэтому вы не получите изображение, чтобы точно заполнить этикетку.
Если вы используете 200 dpi, то длинная сторона будет на 1 дюйм длиннее для этикетки, при условии, что вы сохраняете соотношение сторон одинаковым.
Если вы используете 233,333 точек на дюйм, то короткая сторона будет примерно на.58 дюйма слишком короткой.
Таким образом, вам придется жить либо с сжатым изображением, либо с границей, если только вы не свяжетесь с UPS и не попросите их предоставить изображение, которое точно соответствует этикетке.
Я предполагаю, что PPD драйвера вашего принтера (посмотрите на /etc/cups/ppd/[printername].ppd
) имеет определение для *ImageableArea
это не позволяет без полей печати.
Если ваше оборудование фактически поддерживает сквозную печать (или если оно допускает меньшие поля, чем определено в PPD), вы можете попробовать отредактировать PPD. Смотрите здесь некоторые советы о манипуляции PPD в отношении ключевых слов. *PageSize
, *PageRegion
, *PaperDimension
а также *ImageableArea
: https://stackoverflow.com/questions/1028891/whats-the-easiest-way-to-add-custom-page-sizes-to-a-ppd.
Мое предложение было бы...
- ... исследовать ваш PPD и
- ... установить значения для
*ImageableArea
вашего определения носителя 4x6 до значения, которое означает печать без полей.
Я думаю, что вы должны использовать строку, как *ImageableArea 4x6/4x6in: "0 0 288 432"
(если ваша строка PaperDimension *PaperDimension 4x6/4x6in: "288 432"
).
Теперь, когда вы настроили очередь печати для отправки файла изображения задания, в котором предполагается, что оборудование может печатать без полей, вы увидите...
- ... если аппаратное обеспечение принтера действительно поддерживает печать без полей,
- ... или если аппаратное обеспечение просто обрезает напечатанное изображение до реальных поддерживаемых значений.
Обладая этими знаниями, вы можете настроить PPD для *ImageableArea
это ближе к тому, что поддерживает оборудование.
(Для числовых значений PPD в указанных размерах: 72 pt == 1 дюйм. Так 288x432pt == 4x6in)