Печать фрагмента Postscript

Форум предназначен для новичков. В нем предполагается рассматривать вопросы, которые встают на первых этапах освоения Linux
gotty
Интересующийся
Сообщения: 68
Зарегистрирован: 15 ноя 2005, 06:52
Откуда: Minsk
Контактная информация:

Печать фрагмента Postscript

Сообщение gotty »

Добрый день.
Столкнулся с проблемой: имеется postscript файл формата А4, необходимо распечатать фрагмент без масштабирования 10х10 см в центре листа на бумаге примерно такого же размера.
Пока не смог найти вьювер способный распечатать выделенный фрагмент или даже просто выделить фрагмент как картинку. Пляски с convert из imagemagick толковых результатов не дали (видимо бубен у меня не той системы), результат получается такой, что Evince не способен его даже отобразить. Пока приходится обходится конвертированием в pdf и печатью на виндовой машине через Acrobat Reader.
Если кто знает путь решения - помогите, пожалуйста.

Аватара пользователя
Nyshtyak
Неотъемлемая часть форума
Сообщения: 235
Зарегистрирован: 22 ноя 2005, 18:23

Re: Печать фрагмента Postscript

Сообщение Nyshtyak »

Так а принтскрин уже не катит? И почему pdf нельзя на линуксовой машине распечатать?

gotty
Интересующийся
Сообщения: 68
Зарегистрирован: 15 ноя 2005, 06:52
Откуда: Minsk
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение gotty »

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

Аватара пользователя
grub
Неотъемлемая часть форума
Сообщения: 849
Зарегистрирован: 13 сен 2006, 10:29
Откуда: Минск
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение grub »

gotty, таки принтскрин ака import не поможет? Хотя это конечно костыль.

gotty
Интересующийся
Сообщения: 68
Зарегистрирован: 15 ноя 2005, 06:52
Откуда: Minsk
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение gotty »

что б распечатать кусок скриншота надо поставить что-то сложнее Image Viewer-а aka Eye of GNOME, если ничего не придумаю - видимо придётся ставить gimp - но это перебор.

Аватара пользователя
grub
Неотъемлемая часть форума
Сообщения: 849
Зарегистрирован: 13 сен 2006, 10:29
Откуда: Минск
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение grub »

gotty, чтоб распечатать кусок скриншота, достаточно поставить ImageMagick и запустить команду import $filename_where_to_save_screenshot. После чего выделить курсором необходимую область.

gotty
Интересующийся
Сообщения: 68
Зарегистрирован: 15 ноя 2005, 06:52
Откуда: Minsk
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение gotty »

grub, спасибо, не знал, буду пробовать.

Аватара пользователя
Nyshtyak
Неотъемлемая часть форума
Сообщения: 235
Зарегистрирован: 22 ноя 2005, 18:23

Re: Печать фрагмента Postscript

Сообщение Nyshtyak »

Ага, ну и стандартный ksnapshot умеет кусок экрана выдирать.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Re: Печать фрагмента Postscript

Сообщение Llama »

Вы забываете, что скриншот - это от силы 100dpi, а печатать хочется ну хотя бы 300dpi...
Так что вопрос о выпиливании куска PDF'а остается актуальным.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
Nyshtyak
Неотъемлемая часть форума
Сообщения: 235
Зарегистрирован: 22 ноя 2005, 18:23

Re: Печать фрагмента Postscript

Сообщение Nyshtyak »

Llama писал(а):Вы забываете, что скриншот - это от силы 100dpi, а печатать хочется ну хотя бы 300dpi...
Так что вопрос о выпиливании куска PDF'а остается актуальным.
Маленький фрагмент на маленькой бумаге. 100 dpi не хватит ,да (сарказм)

michael
Неотъемлемая часть форума
Сообщения: 434
Зарегистрирован: 12 апр 2004, 11:00
Откуда: г. Владивосток
Контактная информация:

Re: Печать фрагмента Postscript

Сообщение michael »

1) Если документ многостраничный, вырезаем нужную страницу с помощью psselect из пакета psutils.
2) Определяем BoundingBox вырезаемого участка. BoundingBox - четыре числа xb yb xe ye. xb yb - координаты нижнего левого угла, xe ye - верхнего правого. Единица измерения - пункт = 1/72 дюйма. Начало отсчёта 0 0 - нижний левый угол страницы.
3) Создаём файлик q.eps следующего вида

Код: Выделить всё

%!PS-Adobe-2.0 EPSF-2.0
%%BoundingBox: 200 200 400 400
%%EndComments
save
5 dict begin
/showpage {} def

200 200 400 400

/ye exch def
/xe exch def
/yb exch def
/xb exch def

newpath
xb yb moveto
xb ye lineto
xe ye lineto
xe yb lineto
xb yb lineto
clip

%%BeginDocument: ins.eps

%%EndDocument

end
restore
showpage
%%EOF
Обе строки 200 200 400 400 нужно заменить на ваш BoundingBox. Если что, можно его поподбирать прямо в результирующем файле. Между %%BeginDocument: ins.eps и %%EndDocument поместите полностью содержимое файла с вашей страницей. Если ваш постскрипт достаточно адекватен, то q.eps будет содержать вырезанный кусок.

P. S. Постскрипт - это просто специализированный язык программирования. В большинстве случаев, работать с ним посредством графических инструментов (кроме специализированных редакторов, да и то не всегда) - это удалять зубы через задний проход.

Ответить