我想使用iText7将图像添加到现有PDF文件中的特定位置 在使用iTextSharp的不同项目中,代码非常简单:
iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(new Uri(fullPathSignature));
// Set img size and location on page
//-------------------------------------
// item.Width, item.Height
img.ScaleAbsolute(120, 62);
// left: item.X bottom: item.Y
img.SetAbsolutePosition(25, 25);
//-------------------------------------
//Add it to page 1 of the document,
PdfContentByte cb = stamper.GetOverContent(1);
cb.AddImage(img);
但我找不到使用iText7的正确方法。
我有一个PdfReader和一个PdfWriter,但在哪里可以找到iText7中的PdfStamper?
或者可能有不同的方法将图像添加到iText7中的现有PDF文件中?
(我不能在当前项目中使用iTextSharp)
答案 0 :(得分:2)
在iText7中,不再有PdfDocument
。 Document
负责修改文档的内容。
要向页面添加图像,最简单的方法是使用layout
模块中的// Modify PDF located at "source" and save to "target"
PdfDocument pdfDocument = new PdfDocument(new PdfReader(source), new PdfWriter(target));
// Document to add layout elements: paragraphs, images etc
Document document = new Document(pdfDocument);
// Load image from disk
ImageData imageData = ImageDataFactory.Create(imageSource);
// Create layout image object and provide parameters. Page number = 1
Image image = new Image(imageData).ScaleAbsolute(100, 200).SetFixedPosition(1, 25, 25);
// This adds the image to the page
document.Add(image);
// Don't forget to close the document.
// When you use Document, you should close it rather than PdfDocument instance
document.Close();
类。有了它,你几乎不需要关心任何事情。
要将图像添加到特定位置的特定页面,您需要以下代码:
<link rel="stylesheet" href="css/layer.css">