高分急问 iTextSharp修改pdf问题。。。。。。。。。。。。

mingl11 2011-06-03 01:55:34
现使用iTextSharp更改原有pdf内容,主要就是在指定位置加几个字符,之前是生成一个图片贴到原有pdf指定位置,可以实现,但现在经理要一定添加为文字。 我看了之前使用的添加图片的类里好像没有添加文字的。。。有知道的朋友请帮下忙,急啊~~~~ 附上之前的代码。 (注意:是修改原有的PDF,不是生成新的!!!)

private void ConvertPDFToPDF(string filePath, string toPath)
{
PdfReader reader = new PdfReader(filePath);
int n = reader.NumberOfPages;
PdfStamper stamp = new PdfStamper(reader, new FileStream(toPath, FileMode.Create));
int i = 0;
PdfContentByte under = null;

string text = hfEventCode.Value;
int width = text.Length * 16 > 40 ? text.Length * 16 : 40;

System.Drawing.Bitmap image = new System.Drawing.Bitmap(width, 18);
SetBgColor(image, Color.White);
Graphics g = Graphics.FromImage(image);

System.Drawing.Font font = new System.Drawing.Font("Arial", 9, (System.Drawing.FontStyle.Bold));
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new System.Drawing.Rectangle(0, 0, image.Width, image.Height), Color.Black, Color.Black, 1.2F, true);
g.DrawString(text, font, brush, 2, 2);

MemoryStream ms = new MemoryStream();
image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
Byte[] img = ms.ToArray();


iTextSharp.text.Image mm = iTextSharp.text.Image.GetInstance(img);
mm.SetAbsolutePosition(155, 478);
mm.ScaleAbsolute(width, 18);


while (i < n)
{
i++;
under = stamp.GetOverContent(i);
under.AddImage(mm);
}
stamp.Close();
reader.Close();

ms.Close();
ms.Dispose();
}
...全文
283 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
mingl11 2011-06-06
  • 打赏
  • 举报
回复
大哥们都玩回来了吧。。。
mingl11 2011-06-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wxr0323 的回复:]

参考

可以将原来的PDF删除 之后重新生成新修改的PDF不。覆盖也可以
[/Quote]

PDF内容很多啊。。。。。
失去乐山贼 2011-06-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wxr0323 的回复:]

参考

可以将原来的PDF删除 之后重新生成新修改的PDF不。覆盖也可以
[/Quote]

支持,学习,占分。
子夜__ 2011-06-03
  • 打赏
  • 举报
回复
参考

可以将原来的PDF删除 之后重新生成新修改的PDF不。覆盖也可以

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧