Segunda, 5 de Janeiro de 2009



Configurando uma impressora PDF

Por: Flavio Torres - flaviotorres[@]linuxmasters.info
Publicado em: 09/05/2007

Noite!

Bom, precisei refazer um servidor e acabei lembrando que eu me prometi um how-to sobre a impressora pdf, como ela esta instalada, e o que precisei?

 

Pre-requisitos:

Samba instalado:

# apt-get install [samba|smb]

Utilizaremos o ps2pdf13 (PostScript 2 Pdf), que faz parte do pacote gs-common instalado:

# apt-get install gs-common

Configurações a serem alteradas no samba:

   security = share
   load printers = yes
   printing = lprng
   printcap name = /etc/printcap
 
[print_pdf]
	;print_pdf e´ o nome da impressora que aparecera´ compartilhada quando voce fizer um \\servidor
    printing = print_pdf
    comment = Impressora PDF dir saida: pdf
    path = /tmp
    printable = yes
    browseable = yes
    guest ok = yes
    print command = /usr/bin/printpdf %s
	; Local onde deve ser armazenado o script abaixo
    use client driver = yes
[pdf]
	; Diretorio onde ficarao os arquivos pdf apos a conversao
    comment = Diretorio de pdf
    path = /home/grupos/pdf
	; Voce deve criar este diretorio com permissao rw para o usuario nobody
    public = yes
    only guest = yes
    writable = yes
    guest ok = yes
    force user = nobody
 
[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   public = no
   writable = no
   create mode = 0700
 
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no



Comentários:

print_pdf é o nome da impressora que aparecerá compartilhada quando você fizer um \\servidor

print command = /usr/bin/printpdf %s Local onde deve ser armazenado o script abaixo

[pdf] Diretório onde ficarão os arquivos pdf após a conversão

path = /home/grupos/pdf Você deve criar este diretório com permissão rw para o usuário nobody

Abaixo segue o script que vai tratar o seu arquivo, converter e salvar no devido diretorio:

#!/bin/bash
# printpdf
# Script converte arquivo em pdf
# Flavio Torres, flaviotorres@linuxmasters.info
# v 0.1 - Setembro/2006
 
DIR=/home/grupos/pdf
 
NOME=`grep -m 1 -i "%%Title" "$1"`
if [[ `echo $NOME | fgrep "://"` ]]; then
        NOMEARQUIVO=`echo $NOME | grep -m 1 -i "%%Title" | cut -d\. -f2`
else
        NOMEARQUIVO=`grep -m 1 -i "%%Title" "$1" | cut -f 2- -d' '| cut -f 1 -d'.'| sed -e 's/[ ()]//g'`
fi
 
ps2pdf13 $1 $DIR/$(echo $NOMEARQUIVO | sed 's/\?//g' | tr -d "\r").pdf
 
rm -f /tmp/$1
		

Pronto, reinicie o samba.

E por fim, como minha impressora é uma HP Laser Jet 4500, eu instalei utilizando o driver "HP Color LaserJet PS", que converte o pdf colorido.

 

Um abraço.


Copyright© 2006 flaviotorres.com.br . Todos os direitos reservados.