我有此代码将图像添加到PDF:
string SRC =
@"C:/Saved/Test.pdf";
string DEST = @"C:/Saved/TestComplete.pdf";
string IMG = @"C:Saved//TestImage.JPG";
Document doc = new Document();
try
{
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new FileStream(SRC, FileMode.Create));
doc.Open();
//doc.Add(new Paragraph("GIF"));
iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(IMG);
image.ScalePercent(200f);
doc.Add(image);
}
catch (Exception ex)
{
//Log error;
string error = ex.Message;
}
finally
{
doc.Close();
}
}
问题在于,它不仅仅是添加图像,而是将整个PDF替换为该图像,还有一种方法可以在PDF中添加图像只需将签名图像添加到页面中 任何的想法 ? 此外,我已将Itextsharp升级为IText7,但我找不到将图像添加到现有PDF的方法,只有水印。如果您知道链接或文章的示例,请告诉我。
答案 0 :(得分:1)
如果您想使用旧方法,请使用:
string SRC =
@"C:/Saved/Test.pdf";
string DEST = @"C:/Saved/TestComplete.pdf";
string IMG = @"C:Saved//TestImage.JPG";
iTextSharp.text.pdf.PdfReader reader = new iTextSharp.text.pdf.PdfReader(SRC);
iTextSharp.text.Rectangle Size = reader.GetPageSizeWithRotation(1);
Document document = new Document(Size);
FileStream fs = new FileStream(DEST, FileMode.Create, FileAccess.Write);
iTextSharp.text.pdf.PdfWriter weiter = iTextSharp.text.pdf.PdfWriter.GetInstance(document, fs);
document.Open();
PdfContentByte cb = weiter.DirectContent;
PdfImportedPage page = weiter.GetImportedPage(reader, 1);
cb.AddTemplate(page, 0, 0);
iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(IMG);
document.Add(jpg);
document.Close();
fs.Close();
weiter.Close();
reader.Close();
有关使用iText7方法plesae的问题,请参阅此链接IText7 JumpStart
并准确地找到处理图片的示例请参阅此Chapter7
我还建议您阅读所有章节