2024年11月8日金曜日

LPD接続時の文字化けと解決法について

PaperCut LPD Serviceの概要

PaperCut LPD Serviceは、LPD(Line Printer Daemon)プロトコルを使用して
ネットワーク経由で印刷を可能にするサービスです。

このサービスにより、外部からの印刷や、異なるオペレーティングシステムや環境からの印刷が可能になります。


文字化けの詳細な原因

原因: 文字エンコーディングの不一致

WindowsとmacOSからのLPD接続がある場合、
片方からの印刷でドキュメント名が文字化けする主な原因は、文字エンコーディングの違いです。

具体的には以下のような違いがあります。

・ Windows: Shift-JISを使用
・ macOS: UTF-8を使用
・ PaperCut LPDサービス:デフォルト設定はUTF-8
  → デフォルトの文字コードがUTF-8のためWindowsからの印刷について、
   ドキュメント名は文字化けする。


解決策と手順

この問題を解決するためには、WindowsとmacOS用に異なるプリント・キューを作成し、
それぞれのOSに適したエンコーディング設定を行う必要があります。

具体例)

・ Windows用キュー: Shift-JISエンコーディングを使用(PaperCut LPD Service側の設定)
・ macOS用キュー: UTF-8エンコーディングを使用(プリント・キュー名で指定)


● PaperCut LPD Serviceの設定変更

PaperCut LPD Serviceのデフォルトの文字コードを「shit-jis」に変更する。

1. PaperCut LPD Service」を実行しているPaperCutプリント・サーバに接続します。

2. 「[app_path]\pc-lpd.config」をメモ帳などで開きます。(例:C:\Program Files\PaperCut LPD Service)

3. Encodingの部分を"shift-jis"に書き換え、メモ帳を保存します。(Encoding= "shift-jis")

4. 「サービス」ウィンドウから「PaperCut LPD Service」サービスを再起動します。

  注意:この設定変更により、Windowsの文字化けは解消されますが、MacやLinuxからの印刷時にドキュメント名が文字化けします。


● Mac/Linux用のバーチャル・キューの作成(必要な場合)

上記の設定を行うと、前述の通り、macOSやLinuxからの印刷で文字化けが発生します。
WindowsだけでなくmacOSやLinuxからも印刷を行う場合は、下記手順でmacOS(Linux)用のプリント・キューを作成します。

1. 「PaperCut LPD Service」を実行しているPaperCutプリント・サーバにログインします。

2. 「ファイル名を指定して実行」を開き、「printmanagement.msc」と入力し、「OK」ボタンをクリックします。

3. 「印刷の管理」ウィンドウで、「プリントサーバ」-「%ホスト名%(ローカル)」を選択します。

4. 「プリンター」を右クリックし、「プリンターの追加」を選択します。

5. 既存のポートを使用し、現在のバーチャル・キューと同じドライバを選択します。

6. プリンター名を「%キュー名%-encoding-utf-8」(例:Print_01-encoding-utf-8)と設定します。

7. PaperCut管理者Web画面にログインし、作成したバーチャル・キューの設定を行います。


● クライアント側での設定

上記実施後、クライアントに以下のプリント・キューをそれぞれ共有します。

・ Windowsクライアント: 通常のプリント・キューを使用(例:Print_01)
・ Mac/Linuxクライアント: UTF-8エンコーディング用のキューを使用(例:Print_01-encoding-utf-8)


この設定を行うことにより、LPD接続での文字化け問題を解決し、
異なるOSからの印刷時にドキュメント名が正しく表示されるようになります。





0 件のコメント :

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。