我们使用 Iron PDF 打印以 varbinary 形式存储在数据库中的 PDF 文档。我们尝试比较使用 Iron PDF 从 Windows 应用程序打印与打印实际物理 PDF 文件(相同页数)之间的时间; Print() 行实际上需要大约 45 秒才能完成,而使用 Adobe 从文件进行常规打印需要 3-5 秒。
public static bool PrintPDF(byte[] fileContent)
{
if (fileContent != null && fileContent.Length > 0)
{
try
{
PdfDocument pdfDocument = new(fileContent);
pdfDocument.Print();
return true;
}
catch (Exception ex)
{
//handle exception
}
}
return false;
}
关于如何提高打印速度有什么建议吗?
谢谢
以下不是答案,但描述了我所做的测试,包括我用于使用 IronPDF(v.2024.12.9)测试打印的代码。
然后使用以下代码进行测试:
注意:确保将 async 关键字添加到 Click 事件处理程序中。
Form1.cs
private async void buttonTest_Click(object sender, EventArgs e)
{
//open a file dialog to prompt user to select a PDF file and print it
using (OpenFileDialog ofd = new OpenFileDialog())
{
ofd.Filter = "PDF Document (*.pdf)|*.pdf";
if (ofd.ShowDialog() == DialogResult.OK)
{
byte[] fileContent = System.IO.File.ReadAllBytes(ofd.FileName);
Stopwatch sw = new Stopwatch();
sw.Start();
using (PdfDocument pdfDocument = new PdfDocument(fileContent))
{
int result = await pdfDocument.Print();
Debug.WriteLine($"result: {result}");
}
sw.Stop();
Debug.WriteLine($"Time elapsed: {sw.Elapsed}");
}
}
}