ABCpdf 转换 html 锚点以跳转到同一 PDF 中的另一个页面

2024-02-23

我使用 ABCpdf 动态生成 PDF,其中包含一个目录,该目录将链接到同一 PDF 中的其他页面。问题是 HTML 中锚标记的路径更改为临时文件的绝对路径。

例如,ABCpdf 将呈现链接的 href:

<a href="#elementId">Link</a>

在 PDF 中为:文件:///C:/Users/Aaron/AppData/Local/Temp/ABCpdf/pdfCMMYPSF.htm#elementId

这就是我生成 PDF 的方式:

Doc pdf = new Doc();
pdf.HtmlOptions.AddLinks = true;
pdf.Rect.Rectangle = new System.Drawing.Rectangle(20, 80, 572, 702);
int id = pdf.AddImageHtml(pdfHTML, true, pdf.HtmlOptions.BrowserWidth, true);

while (pdf.Chainable(id))
{
    pdf.Page = pdf.AddPage();
    id = pdf.AddImageToChain(id);
}

pdf.HtmlOptions.LinkPages();
for (int i = 0; i < pdf.PageCount; i++)
{
    pdf.PageNumber = i;
    pdf.Flatten();
}

有什么想法可以让锚链接正确呈现,以便单击它会跳转到另一个页面吗?


Websupergoo 回复了我,我能够从他们提供的示例项目中调试我的问题。我的问题的解决方案非常简单,我将在这里发布答案,以防其他人遇到同样的问题:

我的 HTML 设置如下:

<a href="#elementId">Link to another page</a>
<div id="elementId">A div that's on another page</div>

我只需要将其更改为:

<a href="#elementId">Link to another page</a>
<div><a name="elementId">A div that's on another page</a></div>

您需要使用指定名称的锚标记,以便 ABCpdf 使链接跳转到同一 PDF 中的另一个页面。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ABCpdf 转换 html 锚点以跳转到同一 PDF 中的另一个页面 的相关文章

随机推荐

  • 到底什么是现场注入以及如何避免它?

    我在一些关于 Spring MVC 和 Portlet 的文章中读到场注入不推荐 据我了解 场注入是当你注入一个 Bean 时 Autowired像这样 Component public class MyComponent Autowire
  • 将 Qt GUI 添加到动态库

    问候溢出 我正在尝试向现有项目添加 GUI 更具体地说 对于作为 so文件 或者在 win32 上编译时 dll 该项目已经拥有自己的线程实现来处理可移植性 我知道 Qt 有自己的跨平台线程模型 但最好保留在现有的线程模型中 我对 Qt 老
  • 同时触发if和else的BUG Unity C#

    我在使用最新版本的 Unity 时遇到了一个非常奇怪的错误 IDE 是 Visual Studio 2015 社区 我有一个按钮 单击它时会触发一个函数 并发送一个短字符串作为参数 在该方法中 我首先检查字符串是否为空或空 如果是这种情况
  • 间接修改重载属性Laravel MongoDB

    我将 MongoDB 与 Laravel 一起使用 我有一个名为categories其中有一个文档 id 567dc4b4279871d0068b4568 name Fashion images http example com 1 jpg
  • 如何制作自定义载波后处理器?

    我需要对不是图像的文件上传进行一些后期处理 在回形针中我可以有一个自定义后处理器 但我找不到任何方法在 Carrierwave 中执行此操作 Ruby 1 9 3 Rails 3 2 7 和 CarrierWave 0 6 2 OP的问题是
  • 如何在UIView上插入图片?

    下面的代码在 UIView 上打印一行 我只想知道我要编写的代码能够在视图顶部插入图像 import UIKit class draw UIView var line UIBezierPath var line1 UIBezierPath
  • Ruby 中的横切日志记录

    我正在尝试从外部向方法添加日志记录 面向方面 的风格 class A def test puts I m Doing something end end class A with logging alias method test orig
  • :hover 的 CSS 伪类在 IE7 中不起作用

    我有问题 hoverCSS 的伪类 我用它就像 tr lightRow hover color red 它可以在 Safari 和 Firefox 中运行 但不能在 IE7 中运行 请帮我 IE7 支持 hover 至少在标准模式下是这样
  • 按下按钮以允许全屏查看内容时是否可以隐藏选项卡栏?

    我的基于导航的应用程序的详细视图中有一个 UITabBar 我将文本和图像存储在表格视图中 并希望用户能够点击单元格来隐藏导航控制器和选项卡栏 以便全屏查看内容 我找到了隐藏顶部栏的代码 但隐藏选项卡栏似乎并不容易 UIApplicatio
  • UIButton 图像的色调

    我注意到当我放置白色或黑色UIImage into a UISegmentedControl它会自动对其进行颜色遮罩以匹配分段控件的色调 我觉得这真的很酷 并且想知道我是否也可以在其他地方这样做 例如 我有一堆形状统一但颜色不同的按钮 我是
  • 是什么原因导致 com.aerospike.client.AerospikeException: java.io.EOFException? [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 这是什么原因呢 com aerospike client AerospikeException java io EOFE
  • 使用 XSL 呈现整个网页的优点/缺点

    我正处于与客户一起规划一个项目的初步阶段 以重做他们当前的网站 我查看了他们当前的网站 了解他们当前正在处理哪些问题 经过检查 我注意到每个页面都完全使用 XSLT 呈现 我熟悉 XSLT 我用它来渲染需要在客户端经常刷新的自定义控件 但从
  • 根据 pandas 数据帧的名称绘制正态分布图

    我有一个如下所示的数据框 dateTime Name DateTime day seconds zscore 11 1 2016 15 17 james 11 1 2016 15 17 Tue 55020 1 158266091 11 1
  • RouterLink 在 Angular 6 中不起作用

    我正在观看 Brad Traversy 教程进行编码 我确实按照说的做了 这是我的 app module ts import BrowserModule from angular platform browser import NgModu
  • 在 phpoffice/phpword 上添加图表

    我知道如何在 PHPExcel 上添加图表 但我还需要在 docx 文件上插入图表 是否可以使用 phpoffice phpword 操作图表 如果不可能 您知道适合这项工作的好库吗 实际上不可能在 PHPWord 文档中添加图表 但该功能
  • 选择范围中的第一个字母 ( PostgreSQL )

    我正在尝试从单词的第一个字母在某个范围内的表中进行选择 例如 a f 我尝试使用这样的 where 子句 WHERE lower substring title from 1 for 1 IN ARRAY a k t 希望我稍后能找到一种动
  • 浏览器和凉亭。规范方法

    我现在使用 npm 中无法开箱即用的软件包的方式是这样的 package json 有 napa angular angular bower angular angular animate angular bower angular ani
  • 这个指针转换是否违反了严格的别名规则?

    这是 Quake III Arena 的快速反平方根实现 float Q rsqrt float number long i float x2 y const float threehalfs 1 5F x2 number 0 5F y n
  • GDB:创建局部变量?

    我正在使用 Xcode 的调试器 当停在断点处时 是否可以在 GDB 命令提示符中键入命令来创建局部变量 如果是这样 怎么办 请举个例子 我知道我可以在代码中完成它 然后重新编译程序 但我正在寻找一种更快的方法 如果您不需要在代码中引用变量
  • ABCpdf 转换 html 锚点以跳转到同一 PDF 中的另一个页面

    我使用 ABCpdf 动态生成 PDF 其中包含一个目录 该目录将链接到同一 PDF 中的其他页面 问题是 HTML 中锚标记的路径更改为临时文件的绝对路径 例如 ABCpdf 将呈现链接的 href a href elementId Li