html - 修复将 HTML 页面转换为 PDF 时的 PDF 可访问性问题(注释缺少替代描述)
问题描述
目前,我正在开发一个使用 iText 库将 html 页面转换为 PDF 的程序。
我正在使用的检查器是 PAC3 --> PDF Accessibility Checker 3,由以下链接 ( https://section508.gov/blog/check-pdf ) 描述。
其中一个问题是“注释缺少替代描述” 以下链接的摘录对此进行了解释:
注释缺少替代描述 这通常发生在链接不够清晰时。要修复此错误,请在链接标签中添加替代文本。要添加替代文本,请执行以下操作;
- 在标签树中,选择链接的标签,然后从选项菜单中选择属性。
- 在“润色属性”对话框中,选择“标签”选项卡。
- 键入链接的替代文本,然后单击关闭
我一直在尝试使用 iText 来解决这个问题,但是谷歌搜索、查看源代码和阅读文档并没有帮助。
有人对如何编写 HTML 或使用 itext 问题来摆脱“注释缺少替代描述”有任何建议吗?
谢谢您的帮助
解决方案
您没有指定是使用旧代码 ( XMLWorker
, HTMLWorker
) 还是新 iText 代码 ( pdfHTML
)。
这当然会影响建议的解决方案。
在我的回答中,我将假设您正在使用pdfHTML
有几种选择:
- 使用 JSoup 之类的库编辑传入的 HTML
- 将传入的 HTML 转换为 iText
IElement
对象,并编辑它们,在需要的地方设置属性 - 编写您自己的自定义
TagWorker
来处理特定标签的所有实例,并编写自定义逻辑来处理丢失的注释。
可以在此处找到自定义标签工作者的示例: https ://developers.itextpdf.com/content/itext-7-examples/converting-html-pdf/pdfhtml-custom-tagworker-example
推荐阅读
- google-apps-script - 设置 BasicFilter 条件
- excel - 当您有 2 个打开的工作簿时,如何选择具有随机名称的工作簿
- java - 为什么在编译过程中会出现这个特定的代码 .class 错误?
- forms - 在 Android 中向 MimeKit 邮件添加附件的问题
- openssl - openssl 问题(无法连接到 gmail)
- react-native - React Native createStackNavigator 错误.......(0,_reactnavigation.createStackNavigator)不是函数
- php - 如何从 PHP 中的 mysql 查询中获取最高和最低纬度和经度
- android - android studio 3.2.1 中 compileSDK 版本 28 的 gradle 依赖项应该是什么
- bash - 删除bash中的重复字符串
- r - 如何找到 R 中的均方根误差?