我有已包装到我的 c# 应用程序中的 ghostscript dll (gsdll32.dll)。我尝试了各种将 postscript 转换为 jpeg 的方法,但它没有发生。代码如下:
PDFPrinter.WGhostScript gs = new PDFPrinter.WGhostScript();
gs.AddParam("-sDEVICE=jpeg");
gs.AddParam("-dJPEGQ=100");
gs.AddParam("-dNOPAUSE");
gs.AddParam("-dBATCH");
gs.AddParam("-dSAFER");
gs.AddParam("-r300");
string outfile = txtOutFolderLoc.Text + txtFileName.Text + ".jpg";
gs.AddParam(@"-sOutputFile=" + outfile);
gs.AddParam(psFilePath);
gs.Execute();
Application.Exit();
可能是什么原因?
- 我手头有字符串“psFilePath”中的后记位置。
- “outfile”表示输出的位置和文件名。
[我使用了相同的东西并将后记转换为 PDF 和 PNG,如下所示]。
到 PDF 工作
gs.AddParam("-dBATCH");
gs.AddParam("-dNOPAUSE");
gs.AddParam("-sDEVICE=pdfwrite");
gs.AddParam("-sPAPERSIZE=a4");
gs.AddParam("-sProcessColorModel=DeviceGray");
gs.AddParam("-sPDFPassword=password");
string outfile = txtOutFolderLoc.Text + txtFileName.Text + ".pdf";
gs.AddParam(@"-sOutputFile=" + outfile);
gs.AddParam(psFilePath);
gs.Execute();
Application.Exit();
到PNG代码:
gs.AddParam("-dSAFER");
gs.AddParam("-dBATCH");
gs.AddParam("-dNOPAUSE");
gs.AddParam("-sDEVICE=png16m");
gs.AddParam("-dGraphicsAlphaBits=4");
gs.AddParam(@"-sOutputFile=" + txtOutFolderLoc.Text + txtFileName.Text + "%i.png");
gs.AddParam(psFilePath);
gs.Execute();
Application.Exit();
编辑 I 正在生成后记,应用程序继续运行直到它退出。但是没有找到 jpeg 文件。
postscript 由与 ghostscript 一起提供的 postscript 打印机生成。一旦生成了这个后记,控制就会转移到转换这个 PS 的应用程序。