[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ next ]

Guia Foca GNU/Linux
Chapter 22 - Impressão


Este capitulo descreve como imprimir em seu sistema GNU/Linux e as formas de impressão via spool, rede, gráfica, etc.

Antes de seguir os passos descritos neste capítulo, tenha certeza que seu kernel foi compilado com o suporte a impressora paralela ativado, caso contrário até mesmo a impressão direta para a porta de impressora falhará. Para detalhes veja Recompilando o Kernel, Section 16.11 .


22.1 Portas de impressora

Uma porta de impressora é o local do sistema usado para se comunicar com a impressora. Em sistemas GNU/Linux, a porta de impressora é identificada como lp0, lp1, lp2 no diretório /dev, correspondendo respectivamente a LPT1, LPT2 e LPT3 no DOS e Windows. Recomendo que o suporte a porta paralela esteja compilado como módulo no kernel.


22.2 Imprimindo diretamente para a porta de impressora

Isto é feito direcionando a saída ou o texto com > diretamente para a porta de impressora no diretório /dev.

Supondo que você quer imprimir o texto contido do arquivo trabalho.txt e a porta de impressora em seu sistema é /dev/lp0, você pode usar os seguintes comandos:

Os métodos acima servem somente para imprimir em modo texto (letras, números e caracteres semi-gráficos).


22.3 Imprimindo via spool

A impressão via spool tem por objetivo liberar logo o programa do serviço de impressão deixando um outro programa especifico tomar conta. Este programa é chamado de daemon de impressão, normalmente é o lpr ou o lprng (recomendado) em sistemas GNU/Linux.

Logo após receber o arquivo que será impresso, o programa de spool gera um arquivo temporário (normalmente localizado em /var/spool/lpd) que será colocado em fila para a impressão (um trabalho será impresso após o outro, em seqüência). O arquivo temporário gerado pelo programa de spool é apagado logo após concluir a impressão.

Antes de se imprimir qualquer coisa usando os daemons de impressão, é preciso configurar os parâmetros de sua impressora no arquivo /etc/printcap. Um arquivo /etc/printcap para uma impressora local padrão se parece com o seguinte:

     lp|Impressora compatível com Linux
      :lp=/dev/lp0
      :sd=/var/spool/lpd/lp
      :af=/var/log/lp-acct
      :lf=/var/log/lp-errs
      :pl#66
      :pw#80
      :pc#150
      :mx#0
      :sh

É possível também compartilhar a impressora para a impressão em sistemas remotos, isto será visto em uma seção separada neste guia.

Usando os exemplos anteriores da seção Imprimindo diretamente para uma porta de impressora, vamos acelerar as coisas:

A fila de impressão pode ser controlada com os comandos:

Ou usado o programa de administração lpc para gerenciar a fila de impressão (veja a página de manual do lpc ou digite ? ao iniciar o programa para detalhes).

OBS1: Se a impressora não imprimir ou não for possível compartilhar a porta de impressora paralela com outros dispositivos (tal como o plip), verifique se o módulo parport_pc foi carregado e com os valores de irq e I/O corretos (por exemplo, modprobe parport_pc io=0x378 irq=7). Muitas vezes sua porta paralela pode funcionar sem problemas durante a impressão, mas se ao utilizar plip ocorrerem erros, a causa pode ser essa. Na distribuição Debian, use o programa modconf para configurar os valores permanentemente para o módulo parport_pc.

OBS2: Se tiver mais de uma impressora instalada na máquina, será necessário especificar a opção "-P impressora" para especificar qual impressora deseja imprimir/controlar.


22.4 Impressão em modo gráfico

A impressão em modo gráfico requer que conheça a marca e modelo de sua impressora e os métodos usados para imprimir seus documentos. Este guia abordará somente a segunda recomendação :-)


22.4.1 Ghost Script

O método mais usados pelos aplicativos do GNU/Linux para a impressão de gráficos do Ghost Script. O Ghost Script (chamado de gs) é um interpretador do formato Pos Script (arquivos .ps) e pode enviar o resultado de processamento tanto para a tela como impressora. Ele está disponível para diversas plataformas e sistema operacionais além do GNU/Linux, inclusive o DOS, Windows, OS/2, etc.

O formato .ps esta se tornando uma padronização para a impressão de gráficos em GNU/Linux devido a boa qualidade da impressão, liberdade de configuração, gerenciamento de impressão feito pelo gs e por ser um formato universal, compatíveis com outros sistemas operacionais.

Para imprimir um documento via Ghost Script, você precisará do pacote gs, gsfonts (para a distribuição Debian e distribuições baseadas, ou outros de acordo com sua distribuição Linux) e suas dependências. A distribuição Debian vem com vários exemplos Pos Script no diretório /usr/share/doc/gs/example que são úteis para o aprendizado e testes com o Ghost Script.

Hora da diversão:


22.5 Magic Filter

O Magic Filter é um filtro de impressão inteligente. Ele funciona acionado pelo spool de impressão (mais especificamente o arquivo /etc/printcap) e permite identificar e imprimir arquivos de diversos tipos diretamente através do comando lpr arquivo.

É um ótimo programa e ALTAMENTE RECOMENDADO se você deseja apenas clicar no botão imprimir e deixar os programas fazerem o resto :-) A intenção do programa é justamente automatizar os trabalhos de impressão e spool.

A maioria dos programas para ambiente gráfico X11, incluindo o Netscape, Word Perfect, Gimp e Star Office trabalham nativamente com o magicfilter.


22.5.1 Instalação e configuração do Magic Filter

O Magic Filter é encontrado no pacote magicfilter da distribuição Debian e baseadas.

Sua configuração pode ser feita com o programa magicfilterconfig que torna o processo de configuração rápido e fácil para quem não conhece a sintaxe do arquivo /etc/printcap ou não tem muitas exigências sobre a configuração detalhada da impressora.

Após instalar o magicfilter reinicie o daemon de impressão (se estiver usando a Debian, entre no diretório /etc/init.d e como usuário root digite ./lpr restart ou ./lprng restart).

Para testar o funcionamento do magicfilter, digite lpr alphabet.ps e lpr tiger.ps, os arquivos serão enviados para o magicfilter que identificará o arquivo como Pos Script, executará o Ghost Script e retornará o resultado do processamento para o daemon de impressão. O resultado será visto na impressora.

Se tiver problemas, verifique se a configuração feita com o magicfilterconfig está correta. Caso precise re-configurar o magicfilter, digite magicfilterconfig --force (lembre-se que a opção --force substitui qualquer configuração personalizada que tenha adicionado ao arquivo /etc/printcap).


22.5.2 Outros detalhes técnicos sobre o Magic Filter

Durante a configuração do magicfilter, a seguinte linha é adicionada ao arquivo /etc/printcap:

     :if=/etc/magicfilter/epson9-filter

Não tenho nenhum contrato de divulgação com a epson :-) estou usando esta marca de impressora porque é a mais tradicional e facilmente encontrada. A linha que começa com :if no magicfilter identifica um arquivo de filtro de impressão.

O arquivo /etc/magicfilter/epson9-filter é criado usando o formato do magicfilter, e não é difícil entender seu conteúdo e fazer algumas modificações:

     #! /usr/sbin/magicfilter
     #
     # Magic filter setup file for 9-pin Epson (or compatible) printers
     #
     # This file is in the public domain.
     #
     # This file has been automatically adapted to your system.
     #
     # wild guess: native control codes start with ESC
     0       \033            cat
     
     # PostScript
     0 %! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit 
     0 \004%! filter	/usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit 
     
     # PDF
     0 %PDF fpipe /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- $FILE -c quit 
     
     # TeX DVI
     0 \367\002 fpipe /usr/bin/dvips -X 120  -Y 72  -R -q -f 
     
     # compress'd data
     0 \037\235 pipe	/bin/gzip  -cdq 
     
     # packed, gzipped, frozen and SCO LZH data
     0 \037\036 pipe	/bin/gzip  -cdq 
     0 \037\213 pipe	/bin/gzip  -cdq 
     0 \037\236 pipe	/bin/gzip  -cdq 
     0 \037\240 pipe	/bin/gzip  -cdq 
     
     0 BZh	pipe	/usr/bin/bzip2  -cdq 
     
     # troff documents
     0 .\?\?\040	fpipe 	`/usr/bin/grog  -Tps $FILE` 
     0 .\\\"		fpipe 	`/usr/bin/grog  -Tps $FILE` 
     0 '\\\"		fpipe 	`/usr/bin/grog  -Tps $FILE` 
     0 '.\\\"		fpipe 	`/usr/bin/grog  -Tps $FILE` 
     0  \\\"		fpipe 	`/usr/bin/grog  -Tps $FILE`

Você deve ter notado que para cada tipo de arquivo existe o respectivo programa que é executado, basta você modificar as opções usadas nos programas neste arquivo (como faria na linha de comando) para afetar o comportamento da impressão.

Por exemplo, modificando a resolução para -r240x72 no processamento de arquivos Pos Script (gs), a impressora passará a usar esta resolução.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ next ]

Guia Foca GNU/Linux

Versão 5.20 - Sunday, 03 de November de 2002
Gleydson Mazioli da Silva gleydson@cipsga.org.br