我的项目中有一个pcl文件。我正在使用GhostPCL将其转换为pcl。我通过gsPcl.exe打开了我的pcl文件。它在窗口中打开文件。现在我必须将此文件另存为pdf。请描述一下如何做到这一点?我的代码如下 -
public void convertToPdf()
{
Process myProcess = new Process();
myProcess.StartInfo.FileName = @"C:\Users\vivek.mishra\Documents\Visual Studio 2013\Projects\Ghost\Ghost\gpcl.exe"; //not the full application path
myProcess.StartInfo.Arguments = @"E:\print\print.pcl";
myProcess.StartInfo.UseShellExecute = false;
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.start();
}
答案 0 :(得分:1)
您没有正确构建命令行字符串。
正确构建命令行字符串后,只需传递它:
Process.Start(strCommand);
构建命令行取决于您想要做什么。
本文档介绍如何使用命令行Ghostscript客户端。 Ghostscript还用作其他应用程序中的通用引擎(例如,用于查看文件)。有关在其他上下文中使用Ghostscript的应用程序,请参阅文档。
调用Ghostscript的命令行在所有系统上基本相同,尽管可执行程序本身的名称可能因系统而异。例如,要在类似unix的系统上调用Ghostscript,请输入:
gs [options] {filename 1} ... [options] {filename N} ... 以下是一些基本示例。这些工作如何描述如下。
查看文件:
gs -dSAFER -dBATCH document.pdf
系统会提示您按页面之间的返回。
将图形转换为图像文件:
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -dGraphicsAlphaBits=4 -sOutputFile=tiger.png tiger.eps
以300 dpi渲染相同的图像:
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r300 -sOutputFile=tiger_300.png tiger.eps
以灰度渲染图形:
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pnggray -sOutputFile=figure.png figure.pdf
要栅格化整个文档:
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pgmraw -r150 -dTextAlphaBits=4 -sOutputFile='paper-%00d.pgm' paper.ps
还有许多用于将PostScript文档转换为PDF的实用脚本:
ps2pdf file.ps
输出保存为file.pdf。
除了ps2pdf之外还有其他实用程序脚本,包括pdf2ps,ps2epsi,pdf2dsc,ps2ascii,ps2ps和ps2ps2。这些只是使用适当的(如果复杂的)选项集调用Ghostscript。您可以使用带有eps文件的'ps2'设置。
Ghostscript能够解释PostScript,封装的PostScript(EPS),DOS EPS(EPSF)和Adobe可移植文档格式(PDF)。解释器使用“文件搜索”中描述的方法按顺序读取和执行文件。
默认情况下,解释器以交互模式运行。在处理命令行上给出的文件(如果有的话)之后,它从主输入流(通常是键盘)中读取更多行的PostScript语言命令,分别解释每一行。要退出解释器,请键入“退出”。以上示例中的-dBATCH -dNOPAUSE选项禁用交互式提示。如果遇到文件结束或控制-C,解释器也会正常退出。
口译员认识到很多选择。选项可能出现在命令行的任何位置,并适用于该行上以其命名的所有文件。其中许多包括“=”后跟参数。这里将详细介绍最重要的内容。有关更完整的列表,请参阅选项和设备的参考部分。
答案 1 :(得分:0)
您想将PCL文件转换为PCL吗?真的吗?
您需要为Ghostscript指定许多命令行选项,在这种情况下,您需要-sDEVICE和-sOutputFile开关。尝试阅读文档。