これは、NetBSD Advent Calendar 2020の6日目の記事です。
はじめに
PDFファイル出力をする仮想プリンター、PostScriptプリンターをcupsから使う方法を 説明して来ました。 今日は、IPP Everwhere対応のEPSON EW-M752Tというカラーインクジェットプリンターを へ印刷してみたいと思います。
IPP Everywhereとは
IPP Everywhereとは、スマートフォンから印刷するために用意されている仕組みである ようです。 独自のプリンタードライバーなしで印刷できる仕組みです。 長年GhostScriptが対応していないと、NetBSDから印刷できず苦労して来た訳です。 独自のプリンタードライバーなしにできるのだったら、もっと早く対応して欲しかったと 思わないではいられません…。 共通フォーマットの画像ファイルをHTTPベースのプロトコルで送って印刷するようです。
CUPSは、IPP Everwhereの対応を内蔵しています。 ですので、このシリーズの初日の記事 に加えてインストールする必要はありません。 ちなみに、今回利用している環境では、cups-baseのavahiオプションは有効にしていません。
Bonjourを利用するか、ippのURIを直接指定するか
mdnsd
を起動させていれば、IPP Everywhere対応のプリンターは自動的に認識され、アプリケーションの印刷指示画面
に表示されます。
しかし、今回試した範囲では、うまくプリンターが準備完了状態と認識されませんでした。
ですので、ipp://
で始まるURIを直接指定してプリンターを手動で追加することにしました。
IPP EverywhereのプリンターのURIを調べる
mdnsd
を起動させた上で、ippfind
を実行することで、IPP Everywhere対応のプリンターのURIに近いものを
表示させることができます。今回は、ipp://EPSON5D53C1.local:631/ipp/print
という結果が得られました。
しかし、このままのEPSON5D53C1.local
と言うホスト名では参照できませんので、IPアドレスまたは名前解決できるホスト名に
読み替えておきます。
今回は、LAN内でDDNS設定がされている環境なので、ipp://EPSON5D53C1.elements.tetera.org:631/ipp/print
と読み替えました。
/ipp/print
の部分を把握するのが肝心ですから、
pkgsrc/sysutils/avahiをインストールし、avahidaemonを起動した上で、avahi-browse -r -a
を実行して確認するのでも良いかもしれません。
rp=ipp/print
の部分を見れば良いようです。
# /etc/rc.d/mdnsd onestart $ ippfind ipp://EPSON5D53C1.local:631/ipp/print
# /etc/rc.d/avahidaemon onestart $ avahi-browse -r -a = cdce0 IPv4 EPSON EW-M752T Series _ipp._tcp local hostname = [EPSON5D53C1.local] address = [10.81.0.149] port = [631] l=http://EPSON5D53C1.local.:80/PRESENTATION/BONJOUR" "priority=30" "mopria-certified=2.0" "URF=CP1,PQ4-5,OB9,OFU0,RS360,SRGB24,W8,DM3,IS1-18,V1.4,MT1-3-5-8-11-12" "PaperMax=legal-A4" "kind=document,envelope,label,photo,postcard" "Fax=F" "Scan=T" "Duplex=T" "Color=T" "qtotal=1" "rp=ipp/print" "pdl=application/octet-stream,image/pwg-raster,image/urf,image/jpeg,application/vnd.epson.escpr" "product=(EPSON EW-M752T Series)" "usb_MDL=EW-M752T Series" "usb_MFG=EPSON" "ty=EPSON EW-M752T Series" "txtvers=1"]
プリンターを追加する
以下のような手順で、プリンターを追加して行きます。
http://localhost:631/ を開き、Administrationリンクから管理画面を開きます。Add Printerボタンをクリックします。
INternet Pronting Protocol (ipp)のラジオボタンを選択し、Continueボタンをクリックします。
Connection欄にさきほど求めておいたURIを入力します。今回は、ipp://EPSON5D53C1.elements.tetera.org:631/ipp/print
です。その上でContinueボタンをクリックします。
Name、Description、Locationを入力します。
MakeとしてEPSONを選択し、Continueボタンをクリックします。
ModelとしてIPP Everywhereを選択しAdd Printerボタンをクリックします。
オプションは提案されたままにしました。Set Default Optionsボタンをクリックします。
これでプリンターを追加できました。
印刷してみる
今回は、pkgsrc/www/firefoxから印刷してみました。 無事にカラー印刷できました。
おわりに
これで、PDFファイル出力の仮想プリンター、PostScriptプリンター、 IPP Everwhere対応のプリンターをCUPSから使えるプリンターとして登録することが できました。 IPP Everwhereに対応できたことで、NetBSDから年賀状を印刷することもできそうです。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。