使用 itext java 和 html 将锚点添加到 pdf

Add anchor to pdf using itext java and html

我尝试使用 IText java 从 html 生成 pdf。我需要创建 link 锚点。下面是示例代码。

Java代码:

String k = pdfService.all(request);
OutputStream os = response.getOutputStream();
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, os);
document.open();
InputStream is = new ByteArrayInputStream(k.getBytes());
XMLWorkerHelper.getInstance().parseXHtml(writer, document, is);
document.close();

Html代码:

    <?xml version="1.0" encoding="utf-8"?>
   <html>
     <head>
       <meta charset="utf-8"/>
       <title>title</title>
     </head>
     <body bgcolor="#ffffff">
      <p><a href="#anccc" >GoTo</a></p>
      ... some code ...
      <p id="anccc">anchor</p>
     </body>
  </html>

但是最后点击的时候link并没有去到锚点

我做错了什么?

据我所知,内部锚是这样创建的:

<a href="#myanchor">Click here to go to my anchor</a>
...
<a name="myanchor">This is the destination of a link</a>

XML Worker 支持。

不支持向 <p> 标签添加 id 属性。