因為客戶的需求, 想要把所有給客戶的文件全部使用 PDF 寄出, 在不麻煩又節省經濟的情況下, 使用 ghostscript 所產出的 ps 檔印成 PDF 是最好的應用了.
這個需求裡, 小弟只設定了 samba 的設定和安裝 ghostscript 套件就解決, 過程如下:
安裝 ghostscript 套件
root # yum install ghostscript -y
設定 PS Printer 與 PDF 輸出目錄
root # vi /etc/samba/smb.conf
[pdf] comment = PDF Output DIR path = /pdf public = yes writable = no printable = no [pdf-print] comment = Print to create PDF printing = LPRNG path = /var/spool/samba printable = yes print command = /usr/local/bin/printpdf %s "%J"
編寫 /usr/local/bin/printpdf script 檔案
root # touch /usr/local/bin/printpdf; chmod +x /usr/local/bin/printpdf; vi /usr/local/bin/printpdf
#!/bin/sh D=`date +"%Y%m%d_%H%M%S"` OUTDIR=/pdf echo Converting $1 to $OUTDIR/${D}-$2.pdf >> pdfprint.log ps2pdf $1 "$OUTDIR/${D}-$2.pdf" rm $1 chmod 644 "$OUTDIR/${D}-$2.pdf"
建立 pdf 輸出資料夾
root # mkdir /pdf; chmod o+w /pdf
重新啟用 samba
root # service smb restart
Windows Client
當 Server 設定好後, Windows 上基本上只要建立一個支援 GhostScript 的印表機就可以了.