如何在 CUPS/foomatic 驱动程序中设置最小边距?

如何在 CUPS/foomatic 驱动程序中设置最小边距?

我有一台戴尔 2130cn 激光打印机,它没有用于 CUPS 的 PPD 打印驱动程序,因此我使用了通用的 foomatic PCL6(/pxlcolor如果这很重要的话),但它无法正确识别我的打印机的打印边距,因此强制它对顶部和底部使用 0.5 英寸,对左侧和右侧使用 0.25 英寸。

我如何手动告诉 CUPS 或 foomatic 驱动程序我的打印机实际上有 0.1 英寸的打印边距?

答案1

事实证明,问题不在于打印机的硬件边距;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 英寸边距

答案2

*ImageableArea设置要捕获和打印的图像区域。

它没有设置打印机页面区域。

这里这是在我的 Canon MG2900 上横向打印时左侧被切断的样例图像。

发生这种情况的原因是,该打印机需要在页面底部或旋转横向页面的左侧留出 2/3 英寸的边距。换句话说,它无法在页面的最后 2/3 英寸处进行打印。

为了完整地打印此页而不将其剪掉,需要将其挤压一点以便它适合此打印机可以打印的区域。(不幸的是,缩小它并不能解决这个问题。它会将右侧的文本移入,但仍然会切掉页面的左侧。)

为了解决这个问题,您可以将 ImageableArea 设置为您想要打印的图像部分。

在此示例中,对于 US-Letter 大小的纸张(8.5" x 11"),pdf 周围大约有 1/4" 的白色边距。因此,设置为 1/4" 1/4" 8.5" 11",但转换为像素(通过将其乘以 72,即 18 18 612 792)。

  • 第一个选项设置在源图像中忽略左侧空白处,或者在横向模式下忽略顶部空白处。

  • 第二个选项类似,但忽略顶部空白。

  • 第三个选项设置要从图像中捕获的总宽度,或者至少在我看来是这样的。因此,也许第一个选项是左右边距。(抱歉,但我不确定。这很令人困惑,但我终于让它为我工作了。)

  • 第四个选项类似,但是高度不同。

完成这些编辑后,必须重新启动 CUPS。还请注意将文件所有权保留给 root:lp。注释可以使用 *% 前缀。

答案3

LinuxFoundation 网站有一个脚本可供下载,用于使用 CUPS 和 Foomatic 驱动程序配置边距

  1. 调整打印边距。(如果您没有使用 Foomatic 或者打印输出的边距正确,请跳过此步骤)。下载文件 align.ps 和 alignmargins,然后以 root 身份运行 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")调整。请注意,这并不适用于所有驱动程序。

相关内容