2

我想添加一个指向现有 pdf 的链接,该链接跳转到另一个页面上的坐标。

我可以使用以下代码添加一个矩形:

PdfContentByte overContent = stamper.GetOverContent(1);
iTextSharp.text.Rectangle rectangle = new Rectangle(10,10,100,100,0);
rectangle.BackgroundColor = BaseColor.BLUE;
overContent.Rectangle(rectangle);
stamper.Close();

我该如何做类似的事情来创建一个可点击的链接?谢谢。

4

2 回答 2

1

这在“iText in Action - Second Edition”一书的第 7 章中进行了解释。你可以在这里找到一个例子:http: //itextpdf.com/examples/iia.php ?id=150

如果你需要 C# 版本,请看这里: http: //kuujinbo.info/iTextInAction2Ed/index.aspx

更具体地说: http: //kuujinbo.info/iTextInAction2Ed/index.aspx ?ch=Chapter07&ex=TimetableAnnotations2

PdfAnnotation annotation = PdfAnnotation.CreateLink(
    stamper.Writer, rect, PdfAnnotation.HIGHLIGHT_INVERT,
    new PdfAction("http://itextpdf.com/")
);
stamper.AddAnnotation(annotation, page);

在此代码示例page中是您要添加链接的页面的编号,并且rectRectangle定义该页面上的坐标的对象。

于 2012-11-19T07:19:07.730 回答
0

我喜欢用表格构建我的 PDF,这是我使用的代码

PdfPCell cell = new Chunk anchor = new Chunk("Name of link", font);
anchor.SetAnchor("PageName.aspx");
cell.AddElement(new Phrase(anchor));
cell.BorderColor = BaseColor.BLACK; 
cell.Padding = 5;
table.AddCell(cell);

或者如果你想要它无边界

PdfPCell cell = new Chunk anchor = new Chunk("Name of link", font);
anchor.SetAnchor("PageName.aspx");
cell.AddElement(new Phrase(anchor));
cell.Border = Rectangle.NO_BORDER;
table.AddCell(cell);
于 2019-06-27T07:41:40.023 回答