C# 如何在内存中而不是使用ghostscript创建pdf?

C# 如何在内存中而不是使用ghostscript创建pdf?,c#,ghostscript,C#,Ghostscript,我想在内存中创建我正在创建的pdf,而不是实际创建的pdf,我不知道如何使用ghostscript 这是我的代码: string gsPath = @"C:\Program Files (x86)\gs\gs9.26\bin\gswin32.exe"; List gsArgsList = new List(); gsArgsList.Add(" -dPDFA=2"); gsArgsList.Add(

我想在内存中创建我正在创建的pdf,而不是实际创建的pdf,我不知道如何使用ghostscript

这是我的代码:

string gsPath = @"C:\Program Files (x86)\gs\gs9.26\bin\gswin32.exe"; List gsArgsList = new List(); gsArgsList.Add(" -dPDFA=2"); gsArgsList.Add(" -dBATCH"); gsArgsList.Add(" -dNOPAUSE"); gsArgsList.Add(" -dUseCIEColor"); gsArgsList.Add(" -sProcessColorModel=DeviceCMYK"); gsArgsList.Add(" -sDEVICE=pdfwrite"); gsArgsList.Add(" -dPDFACompatibilityPolicy=1"); gsArgsList.Add(" -sOutputFile=" + nuevo); gsArgsList.Add(" " + rutaPdfNormal); var gsArgs = String.Join(null, gsArgsList); string gs = gsPath + gsArgs; System.Diagnostics.Process.Start(gsPath, gsArgs); 字符串gsPath=@“C:\ProgramFiles(x86)\gs\gs9.26\bin\gswin32.exe”; List gsArgsList=新列表(); gsArgsList.Add(“-dPDFA=2”); gsArgsList.Add(“-dBATCH”); gsArgsList.Add(“-dNOPAUSE”); gsArgsList.Add(“-dusecolor”); gsArgsList.Add(“-sProcessColorModel=DeviceCMYK”); gsArgsList.Add(“-sDEVICE=pdfwrite”); gsArgsList.Add(“-dPDFACompatibilityPolicy=1”); gsArgsList.Add(“-sOutputFile=“+nuevo”); gsArgsList.Add(“+rutaPdfNormal”); var gsArgs=String.Join(null,gsArgsList); 字符串gs=gsPath+gsArgs; 系统.诊断.过程.启动(gsPath,gsArgs);
使用Ghostscript无法在内存中执行此操作,PDF文件始终写入文件系统。您可以将其存储在Ghostscript的RAM文件系统中,但这不太可能帮助您完成所要做的事情

不要使用-dusecolor


您没有运行pdfa_def.ps文件,这是设置PDF/a输出文件某些方面所必需的。有关更多详细信息,请参阅文档。

为什么不将其存储在临时文件夹中?LV98,我想知道它是否可以存储在内存中,以便有其他选项