C# 如何使用iTextSharp下载已编辑的PDF
我有带字节的pdf,我正在用它阅读pdfC# 如何使用iTextSharp下载已编辑的PDF,c#,itext,C#,Itext,我有带字节的pdf,我正在用它阅读pdf byte[] pdfContent =[]; PdfReader pdfReader = new PdfReader(pdfContent); using (MemoryStream outputStream = new MemoryStream()) { using (var pdfStamper = new PdfStamper(pdfReader, outputStream)) { AcroFields pdf
byte[] pdfContent =[];
PdfReader pdfReader = new PdfReader(pdfContent);
using (MemoryStream outputStream = new MemoryStream())
{
using (var pdfStamper = new PdfStamper(pdfReader, outputStream))
{
AcroFields pdfFormFields = pdfStamper.AcroFields;
pdfFormFields .SetField("txtForename", "Test"));
pdfStamper.Close();
array = outputStream.ToArray();
}
}
如何使用memorystream下载此编辑pdf首先,您的代码似乎是错误的。你有空的PdfContent,你正在尝试打开pdf,我猜是空内容。此外,您不需要MemoryStream,因为您的目的是将文件写入磁盘(filestream将是最好的选择) 此示例可以帮助您编辑pdf
private void fillPDFForm()
{
string formFile = Server.MapPath(P_InputStream);
string newFile = Server.MapPath(P_OutputStream);
PdfReader reader = new PdfReader(formFile);
using (PdfStamper stamper = new PdfStamper(reader, new FileStream(newFile, FileMode.Create)))
{
AcroFields fields = stamper.AcroFields;
// set form fields
fields.SetField("name", "John Doe");
fields.SetField("address", "xxxxx, yyyy");
fields.SetField("postal_code", "12345");
fields.SetField("email", "johndoe@xxx.com");
// flatten form fields and close document
stamper.FormFlattening = true;
stamper.Close();
}
}
进一步参考:下载是什么意思?我们处理的是什么样的申请?它是控制台应用程序吗?网络应用程序?谁将下载该文件?客户是否通过浏览器请求文件?相关:我正在编辑我的pdf我想下载已编辑的pdfDo你想保存到磁盘吗?或者通过url下载?如何获取编辑pdf此处我无法获取编辑的pdf,在该路径中pdf为空无法查看我在pdf中编辑的内容没有将该文档放置在路径中我们可以下载吗?如果我们从internet下载任何内容,我们可以看到浏览器历史记录中的下载路径是默认路径