使用qt+qprinter将工作url添加到pdf中
add working url into pdf, using qt + qprinter
有没有一种简单的方法可以使用c++、qt和qprinter类将工作/可点击的url添加到pdf中?稍微澄清一下:我想在生成新文档时添加url。我没有试图编辑现有的pdf。
您可以使用QTextDocument使用Qprinter创建PDF。QTextDocument具有setHtml()方法,该方法允许您使用包括<a>
标记(<a href='http://www.google.com'>google</a>
)在内的html标记。之后,您可以使用QTextDocument print()方法使用该HTML创建PDF。
代码示例:
QPrinter printer(QPrinter::HighResolution);
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName("out.pdf");
QTextDocument document;
QString html = "<a href='http://www.google.com'>google</a>";
document.setHtml(html);
document.print( &printer );
运行此代码后,您将拥有out.pdf文件,其中包含可点击的文本:"谷歌",链接到"http://www.google.com"
附言:您甚至可以使用<img>
标签添加图像。
我不这么认为。Qt没有任何用于编辑PDF的类,我也不太确定你会用QPrinter做什么。QPrinter所能做的就是在给定非PDF源的情况下生成新的PDF。PDF几乎是只写的。这种格式是专有的,而且非常复杂,因此在自由软件世界中,除了页面重新排序或其他简单的元数据更改之外,很少有任何类型的代码可以对PDF进行编辑。如果你正在尝试编辑现有的PDF,你很可能是自己一个人。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 如何在C++中从两个单独的for循环中添加两个数组
- POCO::PostgreSQL:如何将std::vector支持添加到`Binder::bind`
- 如何仅为一个函数添加延迟
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 使用std::transform将一个范围的元素添加到另一个范围中
- 如何将更多文件夹添加到c++include路径
- 如何将元素添加到数组的线程安全函数?
- QT通过C++添加映射QML项目
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- 如何使用重载的相等(==)运算符向测试用例添加描述
- 为什么Mat类的两个对象可以在不重载运算符+的情况下添加
- 如何防止clang格式在流运算符调用之间添加换行符<<
- 只能向C++添加一定数量的字符
- Qt和C++:将QLineEdit添加到QTabWidget中
- 将QIcon添加到QTableView单元格
- 使用qt+qprinter将工作url添加到pdf中
- 使用纯 C/C++向 PDF 添加注释
- 在.qrc中添加pdf作为资源
- 添加FreeText注释到PDF