根据批量URL生成有书签的PDF文档的解决方案
2009-09-24 00:00:00 来源:WEB开发网<href-info>
<href id="KxgYaRxG">
<value><![CDATA[http;//www.163.com]]></value>
</href>
<href id="53Bw5A32">
<value><![CDATA[http://www.sohu.com]]></value>
</href>
<href id="eyEis6ra">
<value><![CDATA[http;//news.163.com]]></value>
</href>
<href id="DMQoSN2t">
<value><![CDATA[http;//sports.163.com]]></value>
</href>
<href id="5vaf3LN7">
<value><![CDATA[http://news.sohu.com]]></value>
</href>
</href-info>
这个xml很简单,之所以这样描述,是因为URL通常会有&而这个符号不能出现在xml里,而且作为属性的值,还不能用<![CDATA[]]>,所以就作为一个节点了。
根据这个xml生成的每个pdf文件的名字取id的值,后缀为pdf。
outline.h2p.xml内容如下:
<book name="我的PDF书">
<chapter name="163" href="KxgYaRxG">
<chapter name="163新闻" href="eyEis6ra" />
<chapter name="163体育" href="DMQoSN2t" />
</chapter>
<chapter name="sohu" href="53Bw5A32">
<chapter name="sohu新闻" href="5vaf3LN7" />
</chapter>
</book>
这个xml描述了每个pdf合并的顺序,href的值和上一个xml的id值对应,chapter标签嵌套的层次就是书签的层次,name的值就是书签的名称。iText根据这个xml把每个pdf合并成一个pdf,并生成书签。
我把这两个xml文件称为h2p文件。
四、h2p文件
行文到这里,这个解决方案就算结束了,俗话说,巧妇难为无米之炊,首先我们要有上面说的这两个xml文件,这两个xml文件如果靠手工编辑的话,少量的URL还行,如果多了就不方便了。所以应该有一个工具来编辑h2p文件。
更多精彩
赞助商链接