suporte para codificação utf-8 com lpr

11

Ao tentar enviar um arquivo de texto para a impressora via lpr de xterm , o conteúdo foi corrompido além do reconhecimento, cuja causa foi rastreada até a codificação do arquivo. Se eu processar o texto com iconv (por exemplo, iconv -f utf-8 -t ascii//TRANSLIT ), o arquivo será impresso normalmente. Outra sugestão que encontrei é definir o formato do documento (por exemplo, lpr -o document-format=text/utf8 ), mas isso retorna o erro lpr: Unsupported document-format "text/utf8" . Eu sempre poderia alias o comando lpr para incluir o processamento por iconv , mas existe uma maneira mais geral para o suporte utf-8 nativo no sistema CUPS / lpr ?

Edit: Meu sistema operacional é Debian 8 e meu gerenciador de janelas é openbox (nenhum ambiente de desktop). Eu posso imprimir este arquivo sem nenhum problema do MacOS X, bem como de um sistema Debian7 / Gnome3.

Do meu sistema atual, devo salientar que, mesmo depois de alterar a codificação de caracteres de UTF-8 para ASCII, os caracteres de nova linha não são respeitados por lpr , então as linhas são concatenadas juntas e impressas até que a margem do papel seja alcançada . Após a recodificação e transliteração com iconv no MacOS X, a impressão ainda funciona normalmente (portanto, o problema de nova linha também é específico do meu sistema atual).

    
por user001 16.08.2014 / 09:04

4 respostas

1

O mesmo pode ser feito com paparazzi;

#!/bin/bash
#This script converts UTF-8 txt to postscript
paps | lpr
Sometimes you need to specify the prinqueue;

#!/bin/bash
# This script converts UTF-8 txt to postscript
paps | lpr -P lj

Paps faz um trabalho muito melhor que os copos de texto.

    
por 27.08.2014 / 15:25
1

Não sei se você considera o HPLIP uma dependência externa, mas aqui está a recomendação oficial do driver diretamente do CUPS.

Driver da impressora CUPS: HP4650

e Aqui está a informação do Pacote no Debian Repo: HPLIPS

Como Thushi afirma que seu sistema não sabe como rasterizar o documento sem usar uma ferramenta como paps. Instalar o pacote hplip e configurá-lo em http://localhost:631 para usar o driver recomendado resolverá seu problema. Para mais informações, veja a entrada do SystemPrinting no DebianWiki

    
por 29.08.2014 / 23:25
0

Eu tive o mesmo problema e seguir o Como me ajudou a corrigi-lo:

link

É muito bom. Você pode até escolher uma fonte para impressão em texto / simples como FreeMono ou Courier.

Felicidades,

    
por 29.08.2014 / 23:45
0

Você deve ter algo como:

text/plain              application/postscript  33      texttops

no seu arquivo /etc/cups/mime.convs . Então, suponho que o que precisa ser feito é consertar o filtro de texttops. No Debian, é /usr/lib/cups/filter/texttops , que é um script de shell que usa o filtro texttopdf e o comando pdf2ps . Você pode tentar substituir a invocação texttopdf / pdf2ps por paps , mas observe que os argumentos não são os mesmos. O mínimo (desde que o texto é fornecido para a entrada padrão e o resultado ps é enviado para a saída padrão) seria uma linha contendo apenas:

paps

mas você pode adicionar opções, por exemplo:

paps --font='Monospace 10'

Nota: eu não tentei. Apenas especulação ...

    
por 30.08.2014 / 10:49