使用ghostscript打印彩色 - C#Windows

时间:2016-06-18 17:46:21

标签: c# winforms printing ghostscript postscript

我正在尝试使用GhostScript将PDF文件打印到任何物理打印机中。

我在打印机上收到黑白结果

所以,阅读我读到的关于PostScript文件的Ghostscript文档。所以我试一试(但没有成功)。

这是我的C#代码:

public bool printGhostScript(string firstPage, string lastPage, string printerName, string pdfFileName)
    {
        int numberOfCopies = 1;
        string ghostScriptPath = @"C:\PrinterBatch\gs9.19\bin\gswin64.exe";
        string postScriptPath = @"C:\PrinterBatch\gs9.19\lib\setup.ps";
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.Arguments = " -dSAFER -dFirstPage=" + firstPage + " -dLastPage=" + lastPage + " " + postScriptPath + " -dBATCH  -dNOPAUSE -sFONTPATH=C:\\Windows\\Fonts -sPAPERSIZE=letter -sOutputFile=\"\\\\spool\\" + printerName + "\" \"" + pdfFileName + "\"  ";

        startInfo.FileName = ghostScriptPath;
        startInfo.UseShellExecute = false;
        startInfo.WindowStyle = ProcessWindowStyle.Hidden;

        startInfo.RedirectStandardError = true;
        startInfo.RedirectStandardOutput = true;

        Process process = Process.Start(startInfo);

        process.WaitForExit(30000);
        if (process.HasExited == false)
            process.Kill();


        return process.ExitCode == 0;
    }

正如我们所看到的,我正在调用命令来打印和设置名为“setup.ps”的PostScript文件。

以下是我的Setup.ps的代码:

mark 
/BitsPerPixel  4 
/NoCancel true 
(mswinpr2) finddevice 
putdeviceprops 
setdevice

我遇到的问题是:

Error: /invalidaccess in --setdevice-- 有没有人有想法帮助我?

我只需打印彩色和质量。

抱歉英语不好。

修改

我忘记在PostScript文件中编写命令行“ / BitsPerPixel 4 ”。 (已经修好了)。

根据文档,这条线是神奇的,并且使所有东西都打印成彩色和质量。

在“arguments”处加载的命令行是:

-dSAFER -dFirstPage=1 -dLastPage=11 C:\PrinterBatch\gs9.19\lib\setup.ps -dBATCH  -dNOPAUSE -sFONTPATH=C:\Windows\Fonts -sPAPERSIZE=letter -sOutputFile="\\spool\PDFCreator" "C:\Users\JUNIOR\Desktop\_ABC.pdf"  

在我开始使用PostScript之前(当我能够打印但只有b / w )之前,命令是这样的:

-dSAFER -dFirstPage=1 -dLastPage=11 -sDEVICE=mswinpr2 -dBATCH  -dNOPAUSE -sFONTPATH=C:\Windows\Fonts -sPAPERSIZE=letter -sOutputFile="\\spool\PDFCreator" "C:\Users\JUNIOR\Desktop\_ABC.pdf"  

0 个答案:

没有答案