现在 HTML+CSS 在生成打印报告方面有多成熟?

2024-01-19

我正在考虑将一系列桌面业务应用程序的所有报告直接创建为 html。大多数报告是表格(可能是复合报告)、页眉、页脚等(没有图像、矢量图形等)。

在搜索后,我读了很多关于分页符问题和类似问题的帖子(我根本不需要像素定位,但是可以控制分页符)。

例如,假设我有一个包含货币值的大表,并且我需要每页表的最后一行来显示此时的运行总计..​​这是可以轻松完成的事情,否则我会遇到很多麻烦?

哪些技术可以帮助我?

  • HTML5
  • JavaScript
  • CSS
  • PHP 库
  • JQuery

一些注意事项:

  • html 将通过嵌入的 chrome 或 firefox 引擎显示,因此浏览器之间的差异对我来说不是问题。
  • 如果嵌入的 php 预处理器有助于更轻松地生成报告,我可以嵌入它,我只是在寻找现有的最佳技术来使工作顺利进行。
  • 我厌倦了“所见即所得”设计器的报告生成器(Crystal Report、FastReport、ReportBuilder 等)

Thanks!


大约一年前,我们就采取了您所考虑的举措,并且没有回头。与我们客户的大部分沟通都是通过网络进行的,因此这是一个完美的选择。他们可以在我们的网站上轻松查看 html 输出,并可以在必要时生成页面(服务器端)的 pdf。我们用于 pdf 转换的程序是一个免费、易于使用的开源项目,名为wkhtml转pdf http://code.google.com/p/wkhtmltopdf/.

我们所处的位置很棒,但到达这里却很困难。

决定使用哪个 pdf 引擎是一个漫长而痛苦的过程。缺点是 HTML 用于查看互联网上的页面,而不是用于查看纸上的页面。分页符将成为你在这款游戏中存在的祸根——你实际上必须测量每个页面并为每个报告创建自己的干净的分页符(否则,所有 html 到 pdf 转换器都会继续将文档渲染到下一页,就像根本没有遇到分页符一样)。使问题进一步复杂化的是,每个 html 到 pdf 引擎处理此问题的方式都不同,您必须编写一个定制的解决方案来测试每个引擎,看看它是否满足您的个人需求。

现在,好消息:

听从我的建议并遵循我的建议,你可以省去很多麻烦。wkhtml转pdf http://code.google.com/p/wkhtmltopdf/以获得最终的报告输出。这个小程序简直太神奇了——它使用 webkit 引擎,准确地渲染 CSS/javascript,具有页眉/页脚控制,可以选择创建目录页面,并且(最重要的是)一致地生成外观精美的 pdf,而无需自定义你的代码库。它还具有各种很棒的命令行开关,而且速度非常非常快。我再说一遍:它非常非常快。

最重要的是,它是一个可用于批处理的命令行工具。我有没有提到它真的非常快?

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

现在 HTML+CSS 在生成打印报告方面有多成熟? 的相关文章

随机推荐

  • 以编程方式调用 Snap/Aero 最大化

    有没有办法使用 C 或 C 针对特定窗口 窗口 ID 以编程方式调用 Aera 最大化效果 例如 or source thebuzzmedia com http www thebuzzmedia com wp content uploads
  • 运行 bash 脚本的 docker 入口点得到“权限被拒绝”

    我正在尝试对我的node js 应用程序进行dockerize 当容器构建完成后 我希望它运行git clone然后启动节点服务器 因此我把这些操作放在一个 sh脚本中 并在 ENTRYPOINT 中将脚本作为单个命令运行 FROM ubu
  • Erlang 是网络爬虫的正确选择吗?

    我计划为 NLP 项目编写一个网络爬虫 每次以特定的时间间隔读取论坛的线程结构 并用新内容解析每个线程 通过正则表达式 提取新帖子的作者 日期和内容 然后结果被存储在数据库中 爬虫使用的语言和平台必须符合以下条件 在多核和 CPU 上轻松扩
  • discord.js v14 中的 setPresence 活动类型只能设置为“PLAYING”

    当我尝试设置机器人的状态时 我不知道类型 基本上有四种方法 PLAYING WATCHING LISTENING and STREAMING 但我无法设置其他的 只能使用默认的PLAYING 是我不专心还是在新的更新中不能像这样 clien
  • PHP 中数组到字符串转换错误

    我有以下代码来回溯错误 但是它 traces debug backtrace foreach traces as k gt v if v function include v function include once v function
  • Android 开发:当手机应用程序活动聚焦时,在键盘上挂钩快捷方式

    这是一个具体的问题 我之前做过一些Android开发 但对系统管理没有那么深入 因此 我需要创建一个在后台运行的应用程序 这部分没问题 并在从手机上的手机应用程序软件键盘输入特殊快捷方式 假设 123 6 时自动启动应用程序的活动 您能否告
  • Flutter 桌面 Linux 构建失败

    当我尝试将应用程序构建到 Flutter Desktop 时 它失败并显示以下消息 Launching lib main dart on Linux in debug mode Exception Build process failed
  • 如何上传文件 apple-app-site-association 以在 iOS 应用程序服务器中进行通用链接?

    上传的流程是什么苹果应用程序站点关联服务器中的文件 stg1 example com 是网站通用链接需要完成并且文件应该上传到它的根路径中 如何使 iOS 中的通用链接上传服务 如何上传json服务器中的格式化文件 The apple ap
  • 在android中删除或隐藏标题navigationView

    我在我的项目中使用设计 23 1 1 我想要没有标题的抽屉 只需菜单项就足够了 我不添加任何标题视图 以编程方式或在 XML 中 但在抽屉里我有空的标题 请帮助我如何删除这个空标题
  • 小程序使用post方式通信

    我有一个正在与 servlet 通信的小程序 我正在使用 POST 方法与 servlet 进行通信 我的问题是如何将参数发送到 servlet 使用 GET 方法 这相当简单 我只需将参数附加到 URL 后的 后面 但是使用 POST 方
  • 如何使用滚动更新重新拉取容器镜像?

    我有一个 kubernetes RC pod 由带有图像的容器组成 例如 foobar my image branch latest其中 branch 是 git 分支 master 等 使用滚动更新强制 RC 重新拉取映像以获得最新版本的
  • InnoDB 可以使用停用词文件吗?

    通过对 MyISAM 的全文搜索 我知道我可以使用以下内容在 my cnf 中指定一个停用词文件 ft stopword file etc stopword txt InnoDB 的全文搜索也可以做到同样的事情吗 如果可能的话 我想做类似以
  • 将 Dataframe 存储到 Spark 中的 Hive 分区表

    我正在尝试将从 kafka 主题传入的数据流存储到配置单元分区表中 我能够将 dstream 转换为数据帧并创建一个配置单元上下文 我的代码看起来像这样 val hiveContext new HiveContext sc hiveCont
  • Boost Karma - 非消耗谓词

    我需要打印 std complex 但如果它等于零则省略虚部 所以我有一个关于两个产生式的规则 karma rule
  • Qt 4.5 - 发出信号是函数调用还是线程,它是否会阻塞?

    我不确定 Qt 4 5 中信号 槽机制的性质 当发出信号时 是阻塞函数调用还是线程 说这个 emit GrabLatestData proceed with latest data 在继续下一行之前 所有信号 槽链是否都会被解析 这取决于
  • Spring Boot 使用 SpEL 比较 @Value 中的字符串

    我想评估弹簧配置文件是否是本地的SpEL 我尝试了以下但无法正确获取 Value spring profiles active local private boolean isLocal Caused by org springframew
  • Visual Studio 将选择括在引号中?

    有没有办法用引号将选定的文本块括起来 在 Visual Studio 中 我还没有找到扩展或插件 我只是在寻找一种简单的方法来做到这一点 有没有办法添加该功能 环绕 选项在 Visual Studio 中也可用 无需 ReSharper 它
  • 有没有办法检查 URL 的一部分是否包含特定字符串

    有没有办法检查 URL 的一部分是否包含特定字符串 Eg where 可以是任何东西吗 我测试过 gmacdougall 的答案有效 但我已经找到了解决方案 这是我用来根据 url 呈现不同布局的方法 url request path in
  • Youtube 数据 API V3 - 无视频 url

    我正在使用 youtube 数据 api 版本 3 为了获取热门 youtube 视频 我像这样调用 REST api 并获取这样的数据 json格式 kind youtube searchResult etag adasdasdasdas
  • 现在 HTML+CSS 在生成打印报告方面有多成熟?

    我正在考虑将一系列桌面业务应用程序的所有报告直接创建为 html 大多数报告是表格 可能是复合报告 页眉 页脚等 没有图像 矢量图形等 在搜索后 我读了很多关于分页符问题和类似问题的帖子 我根本不需要像素定位 但是可以控制分页符 例如 假设