読者です 読者をやめる 読者になる 読者になる

😃 mattintosh note 📝

Hello Raspberry Pi!

🐧 Linux で PDF プリンタを使おう

OS X にもある仮想 PDF プリンタ(?)を Linux Mint にインストールしたときのメモ。

コマンドラインから登録する深い意味は特にありません。デスクトップ環境を使っているなら GUI からちゃちゃっとやってしまうべきでしょう。

cups-pdf パッケージのインストール

sudo aptitude install cups-pdf

lpinfo でプリンタ情報を調べる

lpadmin でプリンタを登録する際にプリンタ名やポートなどを指定する必要がある。CUPS-PDF に関しては特に調べる必要もないけれど一応練習として。

lpinfo を使うことでプリンタ情報の検索ができる。ここでポイントなのが -m 以外のオプションはこれよりも前に指定する必要がある。-m 以降に追加したオプションは無視されるらしい。とりあえず man lpinfo の SYNOPSIS 通りに記述すれば OK。-l は long オプション。

lpinfo -l --make-and-model CUPS-PDF -m

ここでポイントなのは名前。

モデル: 名前 = lsb/usr/cups-pdf/CUPS-PDF.ppd
        言語 = en
        プリンタードライバー = Generic CUPS-PDF Printer
        デバイス ID = MFG:Generic;MDL:CUPS-PDF Printer;DES:Generic CUPS-PDF Printer;CLS:PRINTER;CMD:POSTSCRIPT;

デバイスポートに関しては lpinfo -v で検索ができる。

lpinfo -l -v

ここでのポイントは URI。

デバイス: uri = cups-pdf:/
          class = file
          info = CUPS-PDF
          make-and-model = Virtual PDF Printer
          device-id = MFG:Generic;MDL:CUPS-PDF Printer;DES:Generic CUPS-PDF Printer;CLS:PRINTER;CMD:POSTSCRIPT;
          location = 

lpadmin でプリンタを登録する

オプション 意味
-p プリンタ名の指定。スペースを含むものは NG。
-v URI(ポート)の指定。
-m モデルによる指定。lpinfo -m で表示されたものを指定する。
-P PPD ファイルによる指定。場所がわからなければ cups-pdf パッケージのコンテンツを参照する。
例)dpkg -L cups-pdf | grep '\.ppd$'
-E 登録したプリンタを有効にする、または暗号化を行うかどうか。有効にする場合は cupsaccept と cupsenable と同じことを行う。
*-E オプションを -p、-d、-x よりも前に指定した場合、サーバに接続する際に暗号化を行う指定となる。詳しくは man lpadmin 参照。
-d {PRINTER_NAME} {PRINTER_NAME} をデフォルトプリンタに指定する。

オプションの変更は lpoptions などで行う。

モデルで指定する場合

lpadmin -p CUPS-PDF -v cups-pdf:/ -m lsb/usr/cups-pdf/CUPS-PDF.ppd -E

PPD ファイルで指定する場合

lpadmin -p CUPS-PDF -v cups-pdf:/ -P /usr/share/ppd/cups-pdf/CUPS-PDF.ppd -E

デフォルトプリンタに指定

lpadmin -d CUPS-PDF

こんな感じで登録されます。

テストプリント

lpr で印刷してみましょう。~/PDF に PDF ファイルが保存されます。デフォルトプリンタとして指定していない場合は -P {PRINTER_NAME} で指定します。

lpr /etc/lsb-release
# OR
lpr -P CUPS-PDF /etc/lsb-release

番外編・ブラウザから登録する

適当なブラウザで http://localhost:631 にアクセスする。

管理画面のプリンター項目から「プリンターの追加」を選択する。ユーザ名とパスワードを聞かれるのでユーザ名に root、パスワードは root のパスワードを入力。最近のブラウザはパスワード保管をしたがるけどここでは保存しない方がいいと思われ。

ローカルプリンター項目にある「CUPS-PDF(Virtual PDF Printer)」を選択。

名前や共有設定はお好みで。

メーカーは指定せずに下の項目で PPD ファイルを指定する。

オプションを指定する。ここでは用紙サイズしか設定するものはない。

登録完了。

プリンタの管理やジョブの照会などもできます。

当然だけどデスクトップ環境の方にもきちんと反映される。