gpt4 book ai didi

c# - 我可以用 GhostscriptProcessor 返回 byte[] 吗?

转载 作者:行者123 更新时间:2023-11-30 22:04:26 32 4
gpt4 key购买 nike

是否可以使用 GhostscriptProcessor 返回 byte[]?例如:

public static byte[] ConvertToPDFA(byte[] pdfData)
{
GhostscriptProcessor gsproc = new GhostscriptProcessor(Properties.Resources.gsdll32);

//return byte[] from the created PDF/A

方法 StartProcessing 是一个无效方法,但是是否有任何替代方法可以从 PDF 文件创建 PDF/A 并从其内容返回一个 byte[]?

最佳答案

有可能:

public class PipedOutputSample
{
public void Start()
{
string inputFile = @"E:\gss_test\test_postscript.ps";

GhostscriptPipedOutput gsPipedOutput = new GhostscriptPipedOutput();

// pipe handle format: %handle%hexvalue
string outputPipeHandle = "%handle%" + int.Parse(gsPipedOutput.ClientHandle).ToString("X2");

using (GhostscriptProcessor processor = new GhostscriptProcessor())
{
List<string> switches = new List<string>();
switches.Add("-empty");
switches.Add("-dQUIET");
switches.Add("-dSAFER");
switches.Add("-dBATCH");
switches.Add("-dNOPAUSE");
switches.Add("-dNOPROMPT");
switches.Add("-sDEVICE=pdfwrite");
switches.Add("-o" + outputPipeHandle);
switches.Add("-q");
switches.Add("-f");
switches.Add(inputFile);

try
{
processor.StartProcessing(switches.ToArray(), null);

byte[] rawDocumentData = gsPipedOutput.Data;

//if (writeToDatabase)
//{
// Database.ExecSP("add_document", rawDocumentData);
//}
//else if (writeToDisk)
//{
// File.WriteAllBytes(@"E:\gss_test\output\test_piped_output.pdf", rawDocumentData);
//}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
gsPipedOutput.Dispose();
gsPipedOutput = null;
}
}
}
}

关于c# - 我可以用 GhostscriptProcessor 返回 byte[] 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25240436/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com