Показаны сообщения с ярлыком Печать. Показать все сообщения
Показаны сообщения с ярлыком Печать. Показать все сообщения

вторник, 27 октября 2009 г.

Печать в PDF через Cups

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

Во всех настольных Ubuntu установлен Cups, а это значит, что после небольшой настройки можно настроить печать в PDF файлы

Печать в PDF через Cups

Для этого необходимо установить пакет поддержки вывода в PDF, создать директорию PDF в $HOME и перезапустить cups

sudo aptitude install cups-pdf
mkdir PDF
sudo /etc/init.d/cupsys restart

Вот и всё, теперь можно по быстрому сохранять странички c помощью печати в PDF файлы, а так же можно научить юзеров перед сохранением печать в PDF для сохранения копии на сервере.


Если у вас, или вашего знакомого есть магазин, то одежда оптом со склада может стать именно тем решением, которое позволит существенно увеличить ваш доход. Ведь закупочная цена весьма интересная.

суббота, 29 ноября 2008 г.

Общий принтер в локальной сети на Linux

Yellow Leaf - Статьи - Общий принтер в локальной сети на Linux

MooSE 2008-09-09 15:21:00
Проверил: Alex

Использование одного общего принтера в сети из нескольких компьютеров давно стало обычным явлением. Эта задача свободно решается как в сетях с операционной системой Windows, так и с Linux. Ниже будет рассмотрен пример статьи, которой описана настройка сети, состоящей из машин под управлением Linux, к одной из которых подключен принтер.

Итак, исходные данные:

  • Сеть: 192.168.111.0/24.
  • Компьютер с принтером: 192.168.111.150.
  • На всех компьютерах используется Debian/Ubuntu Linux.

Считаем, что cups уже установлен и принтер подключен к соответствующему компьютеру.

Для начала на компьютере, к которому подключен принтер, нужно браузером зайти на адрес http://127.0.0.1:631 (Это веб-интерфейс сервера печати cups (Common Unix Print System)) и настроить принтер. В качестве имени принтера используем «Default_Printer». После этого заходим в свойства принтера и жмём кнопку «Publish Printer». Если её там нет значит принтер уже итак является общим.

Далее открываем в редакторе файл /etc/cups/cupsd.conf и рядом со строкой:

Listen localhost:631 

Добавляем строку:

Listen 192.168.111.150:631 

И перезапускаем cups:

/etc/init.d/cupsys restart 

Теперь cups будет слушать не только localhost, но и локальную сеть. Убедиться в этом можно командой:

netstat -pant|grep cups 

Вывод будет выглядеть примерно вот так:

tcp        0      0 192.168.111.150:631     0.0.0.0:*               LISTEN      30994/cupsd tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      30994/cupsd 

Затем снова открываем в редакторе файл /etc/cups/cupsd.conf и секцию:

# Restrict access to the server... <Location />   Order allow,deny </Location> 

Приводим к виду:

# Restrict access to the server... <Location />   Order deny,allow   # Запрещаем доступ всем   Deny from All   # Разрешаем доступ самому себе   Allow from 127.0.0.1   # Разрешаем доступ локальной сети   Allow from 192.168.111.0/255.255.255.0 </Location> 

Кроме того секцию:

  <Limit All>     Order deny,allow   </Limit> 

Нужно привести к виду:

  <Limit All>     Order deny,allow     Deny from All     Allow from 127.0.0.1     Allow from 192.168.111.0.255.255.255.0   </Limit> 

И снова перезапустить cups:

/etc/init.d/cupsys restart 

На этом настройке компьютера с подключенным принтером заканчивается. Переходим к настройке остальных компьютеров. Здесь настройка много проще: достаточно привести файл /etc/cups/printer.conf к виду:

<Printer Main_Printer>   Info   Location   # Здесь нужно указать правильный IP-адрес компьютера с принтером и имя принтера   DeviceURI ipp://192.168.111.150/printers/Default_Printer   State Idle   StateTime 1220950496   Accepting Yes   Shared Yes   JobSheets none none   QuotaPeriod 0   PageLimit 0   KLimit 0   OpPolicy default   ErrorPolicy stop-printer </Printer> 

И перезапустить cups.

Всё! Можно пользоваться.

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

Приятной работы!

среда, 17 сентября 2008 г.

Open Office - печать четных и нечетных страниц, и о печати вообще

Как-то мне понадобилось организовать двухстороннюю печать документа. Оказалось, что в ОО это сделать не так интуитивно просто как во многих других прложениях. Погуглил. Вот результат

FreeSource : Software / Open Office

Как печатать брошюры

Есть задача – напечатать книжицу. Я наконец прочитал справку: нужно указать страницы А5-го формата (в портретном развороте), а в свойствах принтера поставить A4 (ландшафт). Далее нужно зайти в Параметры печати и поставить галочки

  • для печати одной стороны: нечётные страницы и брошюра,
  • для печати другой стороны: чётные страницы и брошюра (обычно ещё нужно ставить «в обратном порядке).

Листы A5 по два размещаются на листе бумаги с нужным чередованием.

Печать документов в Writer

Рассказ про печать документов, обычно идущий в конце подобных описаний, я решил вынести сюда — чтобы весь следующий выпуск посвятить технике работы с текстом в OpenOffice Writer. Итак, печать. Проще и быстрее всего будет распечатать документ, просто нажав кнопку Печать на панели инструментов Стандартная — весь документ будет послан на принтер, заданный по умолчанию. Если процессом печати необходимо управлять, отправляйтесь Файл --> Печать, и на экране отобразится диалоговое окно Печать. В нем задаются базовые настройки: какой принтер использовать и свойства принтера — такие, как ориентация бумаги (книжная или альбомная), используемый лоток подачи бумаги, размер бумаги для печати. Здесь же можно указать, какие печатать страницы, сколько сделать копий и в каком порядке их выводить. Чтобы получить доступ к более полному набору настроек, нажатием кнопки Параметры… открываем соответствующее окно. Обращаю ваше внимание, что заданные в окне Параметры печати опции применяются только для текущего процесса печати данного документа. Как определяются общие параметры печати для всех документов, мы рассматривали в предыдущих разделах.

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

Если печатать брошюру приходится на одностороннем принтере (большинство случаев), то документ сначала нужно сформировать так, чтобы он выглядел хорошо, будучи напечатанным в половинном размере — выбрать соответствующие поля, размер шрифта и прочие параметры. А в Свойствах печати обязательно убедитесь, что принтер настроен на ту же самую ориентацию (книжная или альбомная), как определено в настройках страницы для печатаемого документа. Дело в том, что ориентация принципиальна именно для брошюр. Потом в разделе Страницы окна Параметры печати выбираем Брошюрой и Правые страницы. Дважды жмем ОК, чтобы напечатать первую сторону каждой страницы. Затем переворачиваем страницы и помещаем их в принтер новой стороной. Поверьте: без предварительных экспериментов вам не обойтись. Затем опять жмем Параметры и в разделе Страницы окна Параметры печати выбираем Брошюрой и Левые страницы. Жмем OK дважды для печати второй стороны.



Антон Платов

© компьютерная газета


Двусторонняя печать в OpenOffice

RU.UNIX

From: Valentin Davydov
From: "Leizer Karabin" A.

Date: Tue, 13 Nov 2007 19:44:07 EG

+0300 Мне даже не в облом перечислить страницы нужные через запятую
EG в диалоге печати. в Проблема том, что надо чтобы четные листы EG
были распечатаны в обратном порядке, иначе их вручную придется
EG перетасовывать

DTP-шники давно решили траблу: другой либо приёмный лоток (пачка в
обратном порядке либо лежит), чётные и нечётные поменять порядком печати,
сначала типа чётные или наоборот.

al в более OOo новых есть "печать в обратном порядке". как для раз
al двухсторонней печати самое оно.

Вряд у ли Евгения струйник или матричник, а у у лазерных всех есть
кулиска, позволяющая принять страницы лицом 1,2,.. вверх или вних.
Hе у всех. примеру, К у ML-2015/2510/2570 (они же Phaser 3117/3122/3125)
Хотя нету. старшие модели аж постскрипт нативно умеют.
третьего А не дано. И вряд ли это софтовых сложнее ухищрений.
Сложнее софтовых ухищрений - сделать так, принтер чтобы брал из пачки ровно
по одному Вал.
листу. Дав.
--- ifmail v.2.15dev5.4
* Origin: Demos online (2:5020/400) service


вторник, 16 сентября 2008 г.

HP LaserJet 1020, принт-сервер и GNU/Linux

Виртуальная энциклопедия "Linux по-русски": новости, статьи, ссылки на материалы по операционной системе GNU/Linux.

Версия: 1.0

Автор: Андрей Василенко

Дата релиза: 14 сентября 2008 г.

Содержание:

Введение.

В этой статье я расскажу как подружить через сеть принтеры HP LaserJet линейки 10xx и операционные системы семейства GNU/Linux. Данный метод был опробован на Ubuntu Linux 8.04.1 и Debian Lenny (netinst).

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

О железе. Сам я пользуюсь маршрутизатором D-Link DI-704P, к которому подключёны компьютеры, а так же принт-сервер D-Link DP-301U, к которому в свою очередь и подключён наш источник проблем - лазерный принтер HP LaserJet 1020. Если у вас другая конфигурация и принтер 10xx, то этот способ всё-равно должен сработать. Но не ручаюсь за модель 1018: как я понял, он, будучи подучи подключённым к принт-серверу и управляемый специализированной программой PS Monitor под Windows, печатать всё-равно отказывается.

Итак, сначала обрисую проблему, а затем займёмся её решением, благо оно на самом деле довольно простое.

Почему мой не работает, когда соседский отлично печатает?

Это происходит потому, что наш принтер использует технологию WPS (Windows Printing System). Заключается она в следующем: маршрутизатор запросов печати принимает данные от приложений, которые хотят воспользоваться принтером, и перенаправляет их на провайдер печати. Провайдер печати преобразует передаваемые данные к виду, пригодному для передачи, принтеру (в т.ч. и по сети). Он же и возвращает необходимую информацию от принтера приложению, производя обратное преобразование. Так же в этой системе может существовать специальный монитор, следящий за работой принтера, исправляющий возникающие ошибки и выполняющий прочие функции.

В нашем случае не хватает как-раз такого монитора. Если конкретнее, то при включении наш принтер по большому счёту представляет из себя просто высокотехнологичный, но бесполезный кусок железа. В нём нет прошивки. Если подключение производится по USB, то вроде бы всё понятно: принтер определяется UDEV, после чего для него создаётся нода и выполняется специальное правило, подгружающее прошивку. Но как быть, если принтер физически не подключён к ПК? Выход есть. Рассмотрим процесс настройки принтера с самого начала.

Шаг за шагом.

Перво-наперво делаем бекап оригинальных файлов, с которыми будем работать.

P.S. Символ $ перед командой означает, что достаточно прав пользователя, а # - нужны полномочия администратора. Лучше используйте две сессии в терминале.

Ubuntu:

Debian:

Нам понадобится Common UNIX Printing System или, проще говоря, CUPS, а так же набор драйверов (на самом деле драйверов много больше, просто в этом пакете есть PPD для нашей линейки 10xx). Устанавливаем, соглашаясь с загрузкой зависимостей:

# apt-get install cupsys foo2zjs

Но, скорее всего, всё это уже установлено в вашей системе.

После этого запустите любой веб-браузер и откройте следующий адрес (подключение к Интернет не потребуется): http://localhost:631

Будет показана стартовая страница настройки CUPS. Далее по шагам (по завершении каждого жмите "Continue"):

1. Add printer

Введите (произвольно) название, место расположения и описание принтера соответственно.

2. Device for Printer

Из раскрывающегося списка выберите "LPD/LPR Host or Printer"

3. Device URI for Printer

Здесь нам предлагают указать полный LPD-адрес до принтера. Его можно узнать в веб-меню принт-сервера (по умолчанию это http://192.168.0.10) на вкладке "Home", раздела "Printer Status", после "Printer Name". Должно быть что-то вроде "PS-C6D4D2-U1". Таким образом, в зависимости от настроек принт-сервера, нужно ввести:

lpd://192.168.0.10/PS-C6D4D2-U1

4. Make/Manufacturer for Printer

В этом меню необходимо выбрать производителя и модель принтера. Мы используем имеющиеся у нас драйверы, так что в "Make" выбирем "HP", а после нажатия "Continue" отметим пункт "HP LaserJet 1020 Foomatic/foo2zjs (recommended) (en)". Нажмите "Add Printer".

После этого вас потребуют ввести имя пользователя, имеющего привилегии администратора (root) и пароль. Всё, основная часть настройки принтера позади. Теперь вы можете заглянуть, при необходимости, в раздел "Manage printers" главного меню настройки CUPS и обнаружить там свой принтер. Помимо всего прочего можно сделать данный принтер используемым по умолчанию, нажав на кнопку "Set As Default", а так же произвести его настройку в меню "Set Printer Options".

Если появились проблемы, то в Интернете есть уйма информации по "банальной" установке и настройке принтера под GNU/Linux и, думаю, читатель без труда её отыщет. В этом материале рассказывается не об этом.

Теперь настало время перейти к оживлению нашего принтера.

Первый вздох.

Итак, всё вроде бы настроено, но при попытке произвести пробную печать, воспользовавшись кнопкой "Print Test Page", получаем молчание, хотя если посмотреть в лог принт-сервера, то задание для печати там должно быть. Как уже писалось выше, на данный момент в принтере отсутствуют "мозги". Чтобы это исправить, нам будет нужна сама прошивка, в последствии немного модифицированная.

Загружаем прошивку:

# getweb 1020
Модифицируем для возможности загрузки "печатью", удаляем оригинал, после чего переносим прошивку на новое место:

Теперь, убедившись что принт-сервер и CUPS настроены верно, снова произведём тестовую печать, но в этот раз уже определённого файла (наверно уже догадались какого ;) ):

$ lp /usr/share/foo2zjs/firmware/sihp1020.dl

Принтер должен зашевелиться! Но ничего не печатать. С этого момента он обрёл разум и теперь может печатать что вы укажете, но до первой перезагрузки, после которой процедуру "печати" прошивки нужно будет повторить. На этом можно было бы и закончить, но рассмотрим как можно сделать процесс "оживления" более удобным, чтобы не требовалось каждый раз лезть в терминал.

Just for Fun.

1. Если не лень

Сделаем скрипт и иконку для него в главном меню (с картинкой только для Ubuntu, т.к. в пакет foo2zjs для Debian соответствующая gif'ка не входит). Начнём со скрипта. Создадим его и выставим права чтения и исполнения для всех пользователей ПК:

Следующая страшнющая с виду команда (всё это - одна строка) создаст ярлык запуска "Активация принтера" с изображением самого принтера и добавит его в меню "Приложения" - "Прочие":

Ubuntu:

Debian: Если боитесь испортить меню (у меня всё сработало), запустите

$ alacarte
входящий с состав обоих дистрибутивов или
$ gmenu-simple-editor
и создайте значок самостоятельно. Так же использование этих программ может понадобится для активации иконки, если вы добавите её командой.

Теперь у вас есть кнопка активации принтера, которую при желании можно вынести и на gnome-panel (в команду-скрипт добавлять не решился :) )

2. Если лень

Вариант для тех, у кого в аптайме не недели и месяцы, да и принтер включён не постоянно.

Здесь будет рассмотрено, как изменить один фильтр для CUPS, добавив запуск нашего скрипта после каждой подачи задания на печать, что избавит вас от специального тыканья по кнопке. Конечно, если вы много и часто печатаете, то этот вариант вас, полагаю, не устроит. Но для тех, кто не держит принтер постоянно в режиме готовности и не печатает тонны документов, он вполне подойдёт.

Проведя не очень большое, но достаточно нудное исследование, я обнаружил в своей системе скрипт-фильтр на Perl, который исполняется при каждой печати. Его-то и было решено модифицировать. Наше задание с прошивкой будет добавляться после основного. Хотя и после первой печати основное задание пропадает, а "печатается" только прошивка (конечно, если не была загружена до этого), но зато потом она будет подгружаться уже после основного задания, не задерживая его. Теперь рассмотрим как это реализовать.

Сначала идут такие же действия, как и в предыдущем варианте:

# echo -e "#! /bin/sh\n\nlp /usr/share/foo2zjs/firmware/sihp1020.dl" > /usr/bin/hploader # chmod 0775 /usr/bin/hploader

Но затем никаких значков создавать не будем, а просто добавим в тот самый скрипт пару строк:

# sed -i -e '/#!\/usr\/bin\/perl/ a \$cmd="hploader";\nsystem $cmd;' /usr/bin/foomatic-rip

Теперь можете произвести пробную печать и в случае успеха перейти к Заключению :)

Заключение.

Автор статьи искренне надеется, что его труд не прошёл даром и помог читателю. Если же вас постигла неудача - не отчаивайтесь. Внимательно повторите шаги, попробовав сделать что можете "вручную" (всякое возможно, в т.ч. дистрибутивно-специфические отличия), предварительно подчистив то, что насоздавали и восстановив файлы из заблаговременно созданного бекапа:

$ sudo -i
или
$ su
потом
# export USER=<имя вашей учётной записи, например vasya>

Ubuntu:

Debian:

Если возникли вопросы или хотите что-то уточнить/дополнить, то свяжитесь со мной по электронной почте. Удачи!

Текст документа распространяется под лицензией GNU Free Documentation Licence