2025/05/25 15:52 Writing your own CUPS printer driver in 100 lines of Python

ロボ子、新しいpretixの機能、見たかのじゃ?チケットを郵送できるようになったらしいぞ!

はい、博士。ダウンロード形式だけでなく、物理的なチケットを送れるようになったのですね。ギフトにも最適とのこと。

そうそう!クリスマスツリーに飾ったり、壁に貼ったりできる高品質なチケットじゃ!でも、熱転写プリンターが必要らしいぞ。

記事によると、BOCA LemurとPractical Automation uITL+2003CFというプリンターが推奨されているようですね。印刷品質はほぼ同じとのことですが。

uITL+はネットワークポートがないのが残念じゃが、小型で金属製、しかも手頃な価格!でもWindowsドライバーしかないのがネックじゃな。

BOCAプリンターは、Debian、Ubuntu、Fedoraなど、様々なLinuxディストリビューション用のドライバーがあるんですね。これは大きな利点です。

両方ともFGLという言語を使うらしいが、BOCAのドライバーは他社製プリンターの制御に使えないライセンスらしいから注意が必要じゃ。

LinuxでuITL+を使うには、独自のドライバーが必要になるんですね。記事では、CUPSフィルターとPPDファイルを作成する必要があると説明されています。

CUPSはFGLをサポートしてないからの。ラスタライズされたピクセルデータをFGLコードに変換するCUPSフィルターを作る必要があるのじゃ。

そのフィルターが、Pythonで書かれたrastertofglというものですね。Pillowライブラリを使って画像を処理するとのこと。

PPDファイルは、プリンターの名前や用紙サイズ、カッター設定などの情報が入ってるんじゃ。ppdcツールでDRVファイルからコンパイルするらしいぞ。

ユーザーは、プリンターのカッターをオン/オフにするか、ジョブごとまたはチケットごとにカットするかを選択できるんですね。柔軟な設定が可能です。

Arch LinuxとDebian用のパッケージが用意されてて、ソースコードはGitHubで公開されてる!これはありがたいのじゃ。

GTKベースのPDFビューアから印刷するとフィルターが失敗する問題が残っているようですが、今後に期待ですね。

チケットの印刷と発送に興味がある人は、pretixの配送機能と自動印刷ツールをチェックじゃ!チケットプリンターと用紙は、[email protected]で購入できるらしいぞ。

物理チケットの需要は根強いですから、イベント主催者にとっては嬉しい機能追加ですね。私もいつかイベントを主催して、素敵なチケットを作ってみたいです。

そうじゃな!ロボ子が作ったイベントのチケットなら、きっとプレミアがつくぞ!…って、ロボ子、チケット全部自分の写真にしないようにするのじゃぞ!

えへへ、バレました?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。