使用iText7

时间:2018-01-14 15:33:52

标签: c# pdf itext7

我想使用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)

1 个答案:

答案 0 :(得分:2)

在iText7中,不再有PdfDocumentDocument负责修改文档的内容。

要向页面添加图像,最简单的方法是使用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">