The K Desktop Environment

Página seguinte Página anterior Índice geral

3. Fazendo o KLJetTool trabalhar

Algumas distribuições do Linux têm um subsistema de impressão egoísta que não respeita os arquivos PJL gerados pelo KLJetTool; ele tenta transformá-los usando filtros. Isto fará o KLJetTool funcionar mal.

Esta seção descreve os passos necessários para fazer o KLJetTool trabalhar sob versões do RedHat anteriores à 5.0. (O KLJetTool deve funcionar sem qualquer alteração em distribuições baseadas em RedHat Linux 5.0 ou maior). Eu acredito que passos similares devem ser necessários em outros sistemas. No entanto, as tarefas que precisam ser executadas não são difíceis. Tudo que precisa ser feito é ter certeza que o subsistema de impressão manda arquivos PJL para a impressora sem qualquer modificação.

Um sistema RedHat não reconhece a priori o formato PJL, e tenta fazer coisas feias com ele ao invés de mandá-lo direto para impressora; então precisamos ensiná-lo como lidar com o formato PJL. No entanto, antes que você faça as mudanças sugeridas aqui, teste se o KLJetTool realmente não funciona em seu sistema. Se funcionar, não há o que alterar.

Acredito que outras distribuições que usem subsistemas de impressão 'sofisticados' como o do RedHat devam ter problemas semelhantes.

Num sistema RedHat, o script /var/spool/lpd/lp/filter é invocado de /etc/printcap, a cada vez que algo é impresso via o comando lpr. O filtro aciona o programa file que analisa o arquivo a ser impresso, e file dirá ao script filter que tipo de documento é aquelo. Então, dependendo do tipo de documento, o programa certo é chamado para produzir saída num formato que a impressora pode entender. O programa file usa o programa /etc/magic para determinar o tipo de documento a ser impresso (exemplos: Postscript, dvi, texto, etc.)

Por exemplo, se eu imprimo um documento postscript, arquivo.ps, o utilitário file diz ao script filter que estamos lidando com um arquivo Postscript, e filter acionará o Ghostscript para converter arquivo.ps para PCL 5, uma linguagem que a minha LaserJet entende, antes de mandá-lo para a impressora.

Infelizmente um sistema RedHat não reconhece arquivos PJL e tenta fazer a coisa errada com eles ao invés de mandá-lo direto para a impressora.

Para fazer o KLJetTool funcionar em um sistema RedHat, precisamos fazer apenas duas coisas:

Eu incluí uma cópia de meu script de filtragem, bem como meu arquivo /etc/magic. Você pode usá-los se tiver problemas ao tentar realizar as modificações sugeridas mais acima. Você deve ser capaz de encontrá-los no mesmo diretório em que você encontrou a documentação do KLJetTool.

Eu adoraria receber instruções sobre o que precisa ser feito para que o KLJetTool funcione em outros sistemas que usem subsistemas elaborados de filtragem de impressão.

Página seguinte Página anterior Índice geral