web-dev-qa-db-ja.com

CUPS / foomaticドライバで最小マージンを設定するにはどうすればよいですか?

私はCUPS用のPPD印刷ドライバーのないDell 2130cnレーザープリンターを持っているので、汎用のfoomatic PCL6(/pxlcolorそれが重要な場合)、そしてそれは私のプリンターの印刷マージンを正しく認識していないため、上下に0.5インチ、左右に0.25を使用するように強制します。

CUPSまたはfoomaticドライバーのどちらかに、自分のプリンターに実際には0.1インチの印刷マージンがあることを手動で通知するにはどうすればよいですか?

7
ethanwu10

問題は、プリンターのハードウェアマージンにあるのではないことがわかりました。 ppdファイルのページ定義では、レターページに0.5 "および0.25"のマージンを持つ印刷可能領域が設定されていました。


これを修正するには、プリンターのppdを編集します(/etc/cups/ppd/yourprintername.ppd):
リストの検索*ImageableAreaページサイズの定義:

*DefaultImageableArea: Letter
*ImageableArea Letter/US Letter: "18 36 594 756"
*ImageableArea A4/A4: "18 36 577 806"
*ImageableArea 11x17/11x17: "18 36 774 1188"
*ImageableArea A3/A3: "18 36 824 1155"
*ImageableArea A5/A5: "18 36 403 559"
*ImageableArea B5/B5 (JIS): "18 36 498 693"
*ImageableArea Env10/Envelope #10: "18 36 279 648"
*ImageableArea EnvC5/Envelope C5: "18 36 441 613"
*ImageableArea EnvDL/Envelope DL: "18 36 294 588"
*ImageableArea EnvISOB5/Envelope B5: "18 36 481 673"
*ImageableArea EnvMonarch/Envelope Monarch: "18 36 261 504"
*ImageableArea Executive/Executive: "18 36 504 720"
*ImageableArea Legal/US Legal: "18 36 594 972"

余白を変更する用紙サイズを見つけて、プリンターの実際の印刷余白と一致するように定義(引用符で囲まれた部分)を変更します。

フォーマット: "<bottom-left x> <bottom-left y> <top-right x> <top-right y>"

マージン+印刷可能領域は一定に保つ必要があります
私にとっては、72ユニット= 1インチ(0.1 "は約8ユニットです)

そう:

*ImageableArea Letter/US Letter: "8 8 604 784"

印刷領域に必要な0.1 "マージンを与えます

9
ethanwu10

LinuxFoundation Webサイト には、CUPSとFoomaticドライバーを使用してマージンを構成するためにダウンロードできるスクリプトがあります

  1. 印刷マージンを調整します。 (Foomaticを使用していない場合、または印刷物のマージンが正しい場合は、この手順をスキップしてください)。ファイルalign.psとalignmarginsをダウンロードしてから、ルートとしてalignmarginsを実行し、指示に従います。
cd /tmp
wget http://www.openprinting.org/download/printing/align.ps
wget http://www.openprinting.org/download/printing/alignmargins
chmod 755 alignmargins


su ./alignmargins
Sudo alignmargins 

これにより、マージン印刷オプションが追加され、("lpr -o Margins=Custom printfile", default setting)またはオフ("lpr -o Margins=Default printfile")調整。これはすべてのドライバで機能するわけではないことに注意してください。

0
Jonno

*ImageableAreaキャプチャして印刷する画像の領域を設定します。

プリンタのページ領域は設定しません。

ここ は、Canon MG2900で横向きに印刷すると、左側で切り取られるサンプル画像です。

これは、このプリンターがページの下部または回転した横向きのページの左側に2/3インチのマージンを必要とするために発生します。つまり、ページの最後の2/3インチには印刷できません。

このページを完全に印刷するには、ページを切り取らずに少し絞って、プリンタが印刷できる領域に収まるようにする必要があります(残念ながら、縮小しても問題は解決しませんでした。右側のテキストは挿入されますが、ページの左側は切り取られます)。

これを修正するには、ImageableAreaを画像の印刷したい部分に設定します。

この例では、USレターサイズの用紙(8.5 "x 11")の場合、PDF全体に約1/4 "の白い余白があります。したがって、設定は1/4" 1/4 "8.5" 11 "です。 、ただしpixに変換されます(72倍、または18 18 612 792)。

  • 最初のオプションは、ソース画像で無視する左側の空白、または横向きモードの場合は上部を設定します。

  • 2番目のオプションも同様ですが、上部の空白を無視します。

  • 3番目のオプションは、画像からキャプチャする合計幅を設定します。少なくとも、それは私にはこのように見えます。したがって、おそらく最初のオプションは、左マージンと右マージンの両方です。 (申し訳ありませんが、「わかりません。非常にわかりにくいですが、ようやくうまくいきました。)

  • 4番目のオプションも同様ですが、高さです。

これらの編集を行った後、CUPSを再起動する必要があります。また、ファイルの所有権をroot:lpに保つように注意してください。コメントは*%プレフィックスで問題ありません。

0
Elliptical view