百度翻译本文,有一种翻译本文的方法
问题
使用itextsharp(或任何c#pdf库),我需要打开PDF,用实际值替换一些占位符文本,并将其作为字节[]返回.
有人可以建议如何做吗?我看过itext文档,却不知道从哪里开始. 到目前为止,我还停留在如何将PDFReader的源pdf转换为Document对象的过程中,我想我可能以错误的方式进行处理.
非常感谢
解决方案
最后,我使用PDFescape打开我现有的PDF文件,并在需要放置字段的地方放置一些表单字段,然后再次保存以创建我的PDF文件.
然后我找到了有关如何替换表单字段的博客条目:
一切正常!这是代码:
public static byte[] Generate() { var templatePath = HttpContext.Current.Server.MapPath("~/my_template.pdf"); // Based on: // http://www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs-with-c-and-itextsharp/ var reader = new PdfReader(templatePath); var outStream = new MemoryStream(); var stamper = new PdfStamper(reader, outStream); var form = stamper.AcroFields; var fieldKeys = form.Fields.Keys; foreach (string fieldKey in fieldKeys) { if (form.GetField(fieldKey) == "MyTemplatesOriginalTextFieldA") form.SetField(fieldKey, "1234"); if (form.GetField(fieldKey) == "MyTemplatesOriginalTextFieldB") form.SetField(fieldKey, "5678"); } // "Flatten" the form so it wont be editable/usable anymore stamper.FormFlattening = true; stamper.Close(); reader.Close(); return outStream.ToArray(); }
本文地址: IT之家»使用iTextSharp(或C#PDF库),如何打开PDF,替换一些文本,然后保存它?
问题
使用iTextSharp(或C#PDF库)pdf 转换库 c#,我需要打开PDF,请使用一些实际的占位符文本并将其作为字节[]返回.
有人可以建议如何做吗?我看了iText文档,却不知道从哪里开始. 到目前为止,我仍然停留在如何从PDFReader获取源代码的PDF文档对象的问题上pdf 转换库 c#,我认为我可能接近这种错误的方式.
非常感谢
解决方案
最后,我使用PDFescape打开我现有的PDF文件,并将其放置在需要放置的某种形式的字段中
. 保存我的域,然后将其保存到我创建的PDF文件中
HTTP: // WWW .pdfescape.com
然后,我找到了有关如何替换表单字段的博客条目:
HTTP: //www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs-with-c-and-itextsharp /
一切正常!以下代码:
公共静态的byte []生成()
{
变种的templatePath = HttpContext的。 Current.Server.MapPath(〜/ my_template.pdf);
//基于:
// http://www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs -with-C-和iTextSharp的/
变种读卡器=新PdfReader(的templatePath);
变种outStream =新的MemoryStream();
变种模子=新PdfStamper(读卡器,outStream);
变种形式= stamper.AcroFields;
VAR fieldKeys = form.Fields.Keys;
的foreach(在fieldKeys串fieldKey)
{
如果(form.GetField(fieldKey)==MyTemplatesOriginalTextFieldA)
form.SetField(fieldKey,1234 );
如果(form.GetField(fieldKey)==MyTemplatesOriginalTextFieldB)
form.SetField(fieldKey,5678);
}
//拼合的形式,以便它不会是编辑/可用了
stamper.FormFlattening = TRUE;
stamper.Close();
reader.Close();
返回outStream.ToArray();
}
本文地址: IT之家»使用iTextSharp(或C#PDF库),如何打开PDF,替换一些文本,然后保存它?
Google Facebook Youtube Science Online“在此处戳”
百度翻译本文,有一种翻译本文的方法
问题
使用iTextSharp(或C#PDF库),我需要打开PDF,请使用一些实际的占位符文本并将其作为字节[]返回.
有人可以建议如何做吗?我看了iText文档,却不知道从哪里开始. 到目前为止,我仍然停留在如何从PDFReader获取源代码的PDF文档对象的问题上,我认为我可能接近这种错误的方式.
非常感谢
解决方案
最后,我使用PDFescape打开我现有的PDF文件,并将其放置在需要放置的某种形式的字段中
. 保存我的域,然后将其保存到我创建的PDF文件中
HTTP: // WWW .pdfescape.com
然后,我找到了有关如何替换表单字段的博客条目:
HTTP: //www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs-with-c-and-itextsharp /
一切正常!以下代码:
公共静态的byte []生成()
{
变种的templatePath = HttpContext的。 Current.Server.MapPath(〜/ my_template.pdf);
//基于:
// http://www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs -with-C-和iTextSharp的/
变种读卡器=新PdfReader(的templatePath);
变种outStream =新的MemoryStream();
变种模子=新PdfStamper(读卡器,outStream);
变种形式= stamper.AcroFields;
VAR fieldKeys = form.Fields.Keys;
的foreach(在fieldKeys串fieldKey)
{
如果(form.GetField(fieldKey)==MyTemplatesOriginalTextFieldA)
form.SetField(fieldKey,1234 );
如果(form.GetField(fieldKey)==MyTemplatesOriginalTextFieldB)
form.SetField(fieldKey,5678);
}
//拼合的形式,以便它不会是编辑/可用了
stamper.FormFlattening = TRUE;
stamper.Close();
reader.Close();
返回outStream.ToArray();
}
本文地址: IT之家»使用itextsharp(或任何c#pdf库),如何打开PDF,替换一些文本并再次保存?
问题
使用itextsharp(或任何c#pdf库),我需要打开PDF,用实际值替换一些占位符文本,并将其作为字节[]返回.
有人可以建议如何做吗?我看过itext文档,却不知道从哪里开始. 到目前为止,我还停留在如何将PDFReader的源pdf转换为Document对象的过程中,我想我可能以错误的方式进行处理.
非常感谢
解决方案
最后,我使用PDFescape打开我现有的PDF文件,并在需要放置字段的地方放置一些表单字段,然后再次保存以创建我的PDF文件.
然后我找到了有关如何替换表单字段的博客条目:
一切正常!这是代码:
public static byte[] Generate() { var templatePath = HttpContext.Current.Server.MapPath("~/my_template.pdf"); // Based on: // http://www.johnnycode.com/blog/2010/03/05/using-a-template-to-programmatically-create-pdfs-with-c-and-itextsharp/ var reader = new PdfReader(templatePath); var outStream = new MemoryStream(); var stamper = new PdfStamper(reader, outStream); var form = stamper.AcroFields; var fieldKeys = form.Fields.Keys; foreach (string fieldKey in fieldKeys) { if (form.GetField(fieldKey) == "MyTemplatesOriginalTextFieldA") form.SetField(fieldKey, "1234"); if (form.GetField(fieldKey) == "MyTemplatesOriginalTextFieldB") form.SetField(fieldKey, "5678"); } // "Flatten" the form so it wont be editable/usable anymore stamper.FormFlattening = true; stamper.Close(); reader.Close(); return outStream.ToArray(); }
本文地址: IT之家»使用iTextSharp(或C#PDF库),如何打开PDF,替换一些文本,然后保存它?
扫一扫并关注IT家
微信公众号搜索“ IT之家”,并选择关注数百万开发商
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-173220-1.html
同我们一样