C# 在PdfSharp中写入和读取CustomValues花费的时间太长
我有一个c#方法,可以为给定的pdf文件编写自定义值。为了编写pdf的自定义值,我使用PdfSharp 1.50.5147 这里的问题是PdfReader。Open等待pdf belove的时间太长: 我的要求是以毫秒为单位写入和读取给定文件的自定义值。虽然许多pdf文件的自定义值可以在毫秒内写入和读取,但像这样的一些文件可能会给我带来问题C# 在PdfSharp中写入和读取CustomValues花费的时间太长,c#,pdf,metadata,pdfsharp,C#,Pdf,Metadata,Pdfsharp,我有一个c#方法,可以为给定的pdf文件编写自定义值。为了编写pdf的自定义值,我使用PdfSharp 1.50.5147 这里的问题是PdfReader。Open等待pdf belove的时间太长: 我的要求是以毫秒为单位写入和读取给定文件的自定义值。虽然许多pdf文件的自定义值可以在毫秒内写入和读取,但像这样的一些文件可能会给我带来问题 我是否需要打开整个文档来编写或读取自定义值?有没有不同的方法?您对此问题有何建议?目前,由于PdfSharp首先将整个pdf加载到内存中,因此没有方法在P
我是否需要打开整个文档来编写或读取自定义值?有没有不同的方法?您对此问题有何建议?目前,由于PdfSharp首先将整个pdf加载到内存中,因此没有方法在PdfSharp中快速打开大型pdf。您试图打开的pdf文件是一个高达168MB的文件
您可以扩展PdfSharp并尝试先加载预告片内容,然后根据预告片条目读取每个内容块。目前,由于PdfSharp首先在内存中加载整个pdf,因此没有方法在PdfSharp中快速打开大型pdf。您试图打开的pdf文件是一个高达168MB的文件
您可以扩展PdfSharp并尝试先加载预告片内容,然后根据预告片条目读取每个内容块。您不能保证在毫秒内处理任意PDF。但对于给定的示例来说,2.5分钟确实太长了。您不能保证在毫秒内处理任意PDF。但对于给定的示例来说,2.5分钟似乎确实太长了。
public bool WritePropertyToFile(string filePath, string extension, string key, string value)
{
try
{
document = PdfReader.Open(filePath); //Here it lasts 2.5 minutes !!
var properties = document.CustomValues.Elements;
properties.SetString("/" + key, value);
document.Save(filePath);
document = null;
return true;
}
catch (Exception)
{
if (document != null)
document = null;
throw;
}
}