gpt4 book ai didi

linux - 使用 ghostscript 9.0 将大的横向 PDF 绘图打印到 a3 LaserJet4(纵向)

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:05:56 27 4
gpt4 key购买 nike

我们想使用 ghostscript 将大图纸(最大 A0 甚至更长)打印到 A3 打印机:

gs -o - -sDEVICE=pdfwrite -r1200x1200 -sPAPERSIZE=a3 -f
/S/tmp/SamplePDFnewStamp.pdf | gs -o resized.pcl -sDEVICE=ljet4
-g7012x4961 -dPDFFitPage -

我在 A3 纵向纸上打印了 A4 横向纸。我也试过旋转:

gs -sOutputFile="-" -sDEVICE=pdfwrite -r1200x1200 -sPAPERSIZE=a3 -d
-dBATCH -dNOPAUSE -dAutoRotatePages=/None -dPDFFitPage -c "<</Orientation 1>> setpagedevice 90 rotate 0 -595 translate" -f
/S/tmp/SamplePDFnewStamp.pdf -c quit | gs -o resized.pcl
-sDEVICE=ljet4 -g7012x4961 -dPDFFitPage -

得到相同的结果。

最佳答案

在没有看到 PDF 文件的情况下真的不可能发表评论,但是您在那里使用的许多命令行选项在您的组合中没有意义。

我要做的第一事情就是停止像那样传递命令,至少在调查问题时是这样。分 2 个阶段执行,这将允许您(和其他人)查看中间 PDF 文件。

其次,我不相信你可以做你似乎想做的事。看起来您正在尝试通过第二次调用传递第一次调用 gs 生成的 PDF。我看不到任何可行的方法,pdfwrite 设备需要在文件周围寻找以创建外部参照表,它不能使用 stdout,至少在当前版本中是这样。您使用的是什么版本的 Ghostscript?

我也看不出这有什么意义,为什么要拿一个 PDF,从中制作一个新的 PDF,然后渲染第二个 PDF?为什么不直接渲染原图?

您指定的所有媒体大小开关都不会产生任何影响,因为您没有告诉 Ghostscript 媒体大小是固定的(使用 -dFIXEDMEDIA)。因此,PDF 解释器会将媒体大小设置为与 PDF 文件中的 MediaBox 相同。类似的问题适用于发送 PostScript 并期望它在呈现 PDF 文件时改变 Ghostscript 的行为。

为 pdfwrite 设置分辨率不是一个好主意,通常不会有任何效果。即使它确实有影响,您也可能不想将它设置为设备的分辨率(并且 -g 值似乎表明这也不是 1200 dpi 设备)。分辨率的唯一影响是当对象必须渲染为图像时,因为不能用 PDF 表示。您不想以打印机分辨率创建图像,通常四分之一到二分之一的分辨率就足够了。

如果您愿意分享示例 PDF 文件,我或许可以告诉您如何解决方向问题。不过,在进入 PCL 之前,您需要解释为什么要通过 pdfwrite 运行它,我看不出有任何理由。

这个:

gs -sDEVICE=pdfwrite -sOutputFile=\temp\out.pdf -dDEVICEHEIGHTPOINTS=2386.08 -dDEVICEWIDTHPOINTS=1685.7600 -dFIXEDMEDIA -dPDFFitPage SamplePDFnewStamp.pdf

将获取原始 PDF 文件并生成旋转 90 度的 PDF 文件。如果我这样做:

gs -sDEVICE=ljet4 -sOutputFile=\temp\out.pcl \temp\out.pdf

我得到一个 PCL 文件,当 GhostPDL 以适当的媒体大小对其进行处理时,它似乎可以满足您的要求。

我还没有尝试过,因为没有实际的打印设备,但我希望:

gs -sDEVICE=ljet4 -sOutputFile=\temp\out.pcl -dDEVICEHEIGHTPOINTS=2386.08 -dDEVICEWIDTHPOINTS=1685.7600 -dFIXEDMEDIA -dPDFFitPage SamplePDFnewStamp.pdf

将一步生成相同的文件。

This is the result

关于linux - 使用 ghostscript 9.0 将大的横向 PDF 绘图打印到 a3 LaserJet4(纵向),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13563503/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com