Encontrei este link que ajudou bastante:
http://aplawrence.com/SCOFAQ/FAQ_scotec7printtofile.html
Então os passos que fiz e cheguei ao sucesso são...
Criar a pasta que irá conter o script que receberá a os dados de impressão:
# mkdir /usr/local/PDFprinter
Criar uma outra pasta que irá conter o arquivos de PDF:
# mkdir /var/PDFprinter
Gerar este arquivo de script em /usr/local/PDFprinter/start que será usado para preparar o device da impressora e manter o device em sincronização com o script de impressão:
mknod /dev/PDFprinter p
chmod 777 /dev/PDFprinter
while true
do
cat /dev/PDFprinter | /usr/local/PDFprinter/print
done
Permissões de execussão:
# chmod +x /usr/local/PDFprinter/start
Gerar o script de impressão em /usr/local/PDFprinter/print:
date=`date "+%G%m%d_%H%M%S"`
tempFileName="/tmp/PDFprinter_$date"
while read stuff
do
echo $stuff >> $tempFileName
done
cat $tempFileName | grep -v "#####" > $tempFileName.tmp
mv $tempFileName.tmp $tempFileName
fileName="/var/PDFprinter/PDFprinter_$date.pdf"
ps2pdf -sPAPERSIZE=a4 $tempFileName $fileName
O comando ps2pdf faz parte do pacote ghostscript:
http://www.sunfreeware.com/programlistsparc10.html#ghostscript
E para definir o tamanho do papel é com o parâmetro ps2pdf -sPAPERSIZE=a4 ...
Permissões de execussão:
# chmod +x /usr/local/PDFprinter/print
Preparar e iniciar o device da impressora:
# /usr/local/PDFprinter/start &
Registrar o device da impressora e activar a impressora:
# lpadmin -p PDFPrinter -v /dev/PDFprinter
# accept PDFPrinter
# enable PDFPrinter
Agora é só mandar alguma coisa em PostScript para imprimir nesta impressora e ver o resultado em arquivos temporários em /tmp, e caso gere o PDF com sucesso deverá estar em /var/PDFprinter;
No comments:
Post a Comment