我将PDF文档保存到我的PDF文件夹中。我创建了一个函数,其功能是将PDF加载到PdfDocument
类中,在runtime
上添加一些样式,将其另存为临时文件,并在WebClient
中进行预览。我的逻辑工作得很好。我想消除将其另存为临时文件。我想直接预览而不保存,可以吗?我在网上搜索,但没有任何好的信息来源。以下是我的代码:
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("MyFile.pdf");
pdf.SaveToFile("ModifiedMyFile.pdf"); // Eliminate this part
WebClient User = new WebClient();
Byte[] FileBuffer = User.DownloadData("ModifiedMyFile.pdf");
if (FileBuffer != null)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
}
答案 0 :(得分:0)
根据spire的文档,您有两种方法可以做到这一点
使用SaveToHttpResponse()方法
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("MyFile.pdf");
.... edit the document
pdf.SaveToHttpResponse("sample.pdf",this.Response, HttpReadType.Save);
或者,如果内置方法不起作用,请尝试使用内存流代替临时文件。
PdfDocument pdf = new PdfDocument();
.... edit the document
using (MemoryStream ms = new MemoryStream())
{
pdfDocument.SaveToStream(ms);
Byte[] bytes = ms.ToArray();
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", bytes.Length.ToString());
Response.BinaryWrite(bytes);
}