我有一个横向PDF,需要以纵向模式打印在Zebra标签上吗?我该怎么办?

问题描述 投票:1回答:1

我正在使用GhostScript将我的PDF标签打印到Zebra Label打印机。但PDF是在横向,因此没有正确打印在标签上。我想使用Ghostscript和print在Portrait中旋转PDF。

我尝试了许多选项,如"-dNORANGEPAGESIZE" ,"-c ".setpdfwrite <<//AutoRotatePages /All>> setdistillerparams"","-dEPSCrop -c "<</Orientation 0>> setpagedevice"",但没有任何效果。有没有办法让这项工作?

%GSC% -dPRINTED -q -dSAFER -dBATCH -dNOPAUSE -dDEVICEWIDTHPOINTS=%5 -dDEVICEHEIGHTPOINTS=%6 -sDEVICE=%2 %PAGE_SIZE% %OUTPUT_FILE% "%~1" -c ".setpdfwrite <<//AutoRotatePages /All>> setdistillerparams"

:结束

我希望使用Ghostscript将PDF旋转到Portrait

ghostscript landscape-portrait portrait
1个回答
0
投票

从你的问题中不清楚你到底在做什么。您已经提供了一个命令行,其中包含批处理文件变量名称(例如%5,%6等)的重要条目。

您说您正在使用Ghostscript'将我的PDF标签打印到Zebra Label打印机',但命令行不包括斑马打印机设备,也不包括mswinpr2设备。实际上它使用pdfwrite设备。这意味着Ghostscript正在生成PDF文件,而不是打印到打印机。

我建议的第一件事是你提供一个示例文件(并在此处发布URL)。

接下来要清楚地说明你正在使用什么命令行(并且所有变量都填入实际值!)。然后我们可以看到问题是什么,并重现它。否则一切都会被猜测。

现在,似乎对Zebra打印机的引用是用词不当,似乎您正在尝试生成一个已旋转的新PDF文件。这可能不是世界上最好的主意。如果可能的话,您应该继续使用原始PDF文件并更改打印设置以使其正常工作。

但是,假设由于某种原因不可能,那么如果你得到正确的参数,Ghostscript可以做到这一点。

第一点是-dEPSCrop不会对PDF输入产生任何影响,因为它会影响EPS输入。

下一个; <</Orientation 0>> setpagedevice实际上是一个无操作,默认的Orientation是0所以你已经将它改为默认值。设置为1 **,ight *有效果,但我对此表示怀疑。

PostScript碎片<<//AutoRotatePages /All>> setdistillerparams几乎肯定与你想要的完全相反。这会导致Ghostscript尝试旋转页面,以便输出中的绝大多数页面都使文本水平运行。如果你有一个横向PDF文本几乎肯定已经是水平的(当然,在没有一个例子我无法分辨)。所以这不会做任何事情。

你可能想要<<//AutoRotatePages /None>> setdistillerparams或更简单的-dAutoRotatePages=/None。这会阻止pdfwrite设备在您不期望的情况下旋转页面。

当然,这仍然没有任何影响(除非我误读了批处理文件片段),因为它出现在输入文件名之后。因此Ghostscript将处理输入文件和切换到该点,然后处理-c开关引入的以下PostScript然后退出。 AutoRotatePages会影响它之后的任何输入,而不是之前的输入。

© www.soinside.com 2019 - 2024. All rights reserved.