在网页上渲染 PDF

2023-12-21

我们正在尝试使用以下方式在网络浏览器中加载 pdf 文件pdf对象 http://pdfobject.com/JavaScript API。目前我们尝试显示的 pdf 大小接近 10MB。这会导致网页上显示 PDF 时出现较长的延迟;同时下载完整的 PDF。

我们需要通过实现以下任一替代方案来消除这种滞后:

  • 显示进度条,直到实际显示 PDF。我们找不到被触发且可用于查明 pdf 现在是否可见的事件。缺少这一点不允许我们决定何时停止显示进度条/旋转器
  • 或者延迟加载 PDF,以便在加载第一页后立即显示它。有了这个 ateast,用户就会有一个关于正在发生的事情的视觉指示。我们在 pdf 对象中找不到任何可以让我们进行延迟加载的内容。
  • 用户替代pdf渲染api;这是一个低优先级,因为我们已经有了完整的代码;但如果前两种选择不满足;我们必须考虑这个选择。所以请随意提出建议。

关于如何使用户交互更加直观或愉快的任何其他想法;将受到欢迎。

Cheers


您可以考虑使用 Google 文档之类的工具向用户展示您的 PDF。不知道是否适用于你的情况。您可以使用它来显示外部 PDF(未保存在 Google 文档中的 PDF 文件)。它带有内置进度条,因此即使加载时间很长......

See: http://googlesystem.blogspot.com/2009/09/embeddable-google-document-viewer.html http://googlesystem.blogspot.com/2009/09/embeddable-google-document-viewer.html

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

在网页上渲染 PDF 的相关文章

随机推荐

  • 在 Python 中为 Django Choice 字段创建智能循环列表

    所以 以下内容不是很 聪明 MONTHS Jan Jan Feb Feb Mar Mar Apr Apr May May Jun Jun Jul Jul Aug Aug Sep Sep Oct Oct Nov Nov Dec Dec YEA
  • Qt:QGraphicsScene 在我期望的时候没有更新

    好的 我有一个QGraphicsScene在一个叫做 眼睛 的课程中 我调用一个函数 void eye playSequence int sequenceNum for int i 0 i
  • 如何从 mysql 表中转储 blob 字段

    我正在尝试从 mysql 表中转储 BLOB 字段 但是当我使用 sqlYog 转储 blob 记录时 我得到了无价值的数据 如何备份 BLOB 类型字段 Note BLOB 字段有图像 参数 十六进制斑点当您打算将其导入到另一个数据库 如
  • 枚举与强类型枚举

    我是 C 编程的初学者 今天遇到一个新话题 强类型enum 我已经研究了一些 但到目前为止我无法找出为什么我们需要这个以及它有什么用 例如 如果我们有 enum xyz a b c a 0 b 1 c 2 Typical C format
  • matplotlib:直方图和 bin 标签

    I m trying to plot a histogram with bar chart and I m having difficulties figuring out how to align the x axis labels wi
  • 按住按键时 Swing 中的文本输入字段在 OS X 上停止工作

    我发现 OS X Yosemite 使用 Oracle JDK 8 上的 Swing 文本输入字段存在一个奇怪的问题 当我在文本输入字段获得焦点时按住任何字母或数字键时 我之后就无法再在当前 JFrame 的任何字段中输入任何内容 然后我必
  • 直接在浏览器中使用 jquery/flash 录制网络摄像头视频?

    我想让用户通过网络摄像头录制视频 然后通过浏览器将录制的视频上传到网站 这是一个完全按照我希望的网站工作方式工作的示例 只不过它似乎不捕获视频 而只是捕获图像 http www xarg org project jquery webcam
  • 新版本 Hibernate 的 hibernate3-maven-plugin 依赖项

    我想将 hibernate 3 5 1 Final 与此插件一起使用 这里我的依赖项应该是什么 它似乎正在拿起一组旧的罐子 但现在失败了
  • 无法获取项目参考的依赖项

    我有一个包含网站项目和 C 库的 C 解决方案 编译解决方案时 网站给出消息 无法获取项目引用 MyLibrary 的依赖项 当此错误消息使构建失败时 这不会停止网站编译和运行 直到我尝试使用 TFS 构建来构建它 这是什么意思 我该如何解
  • 我如何在 VBA 中调用 WebView2 和其他现代 winmd 功能

    我想在旧式 VBA 用户窗体中嵌入现代 WebView2 组件 Edge Chromium 浏览器控件 我推测我需要在系统上安装以下内容 Edge Chromium 浏览器 Webview2 SDK 虽然我安装了 Edge Chromium
  • 提交日志增长的问题

    我有一台机器 提交日志不断增加到 7 8 GB 并且仍在增长 我检查了一个属性commitlog total space in mb 8192这是在 cassandra yaml 中注释的 我怀疑它必须是默认的 1 增加提交日志大小有什么问
  • Spark 结构化流 - 对不同的 GroupBy 键使用不同的 Windows

    目前 我通过 Spark 结构化流媒体读取 Kafka 主题后得到了下表 key timestamp value key1 2017 11 14 07 50 00 0000 10 key1 2017 11 14 07 50 10 0000
  • 将 DataFrameGroupBy 对象中的每个分组列转换为列表

    这是数据 df pd DataFrame date 1 1 2 2 2 3 3 3 4 5 request 2 2 2 3 3 2 3 3 3 3 users 1 3 7 1 7 3 4 9 7 9 count 1 1 2 3 1 3 1
  • 无效的视图状态、Base-64 字符数组或字符串的长度无效

    我时不时会遇到这个错误 ExecuteStep at line 0 at Column 0 状态信息对此页无效 并且可能已损坏 无效的视图状态 内部异常 Application Error 中未处理的异常 在加载行 0 和列 0 Base
  • 动态链接和动态加载有什么区别

    我认为 动态加载意味着在加载或运行时将库 或任何其他二进制文件 加载到内存中 因此 在下面的程序中 当 dlopen 调用的动态加载器将出现时 如果库尚未加载 它将把库加载到内存中 动态链接是指在加载或运行时完成的链接 它解决了外部引用 因
  • Laravel TokenMismatchException 会话超时

    我遇到一个问题 当用户闲置超过 24 小时 我的会话超时 或者离开网站并在 24 小时后返回时 他们不会从网站注销 但他们的会话正在被注销已过期 或者至少他们的 token 不再有效 这会导致不必要的行为 就好像用户在 token 过期后提
  • MAC:Mono Helloworld 示例

    我在 OSX Yosemite 上全新安装了 Mono 并尝试了以下示例http www mono project com docs getting started mono basics http www mono project com
  • eclipse 上“资源”目录放在哪里

    我的项目是一个 Eclipse Java 项目 它的结构是 游戏 src 游戏 资源 但这段代码返回一个异常 image new ImageIcon new URL resources Monster png java net Malfor
  • 在沙盒中哪里可以找到奇点定义文件

    我正在尝试学习奇点 所以我从他们的库中提取了这个例子 singularity pull library sylabsed examples lolcow 拉取后 我想检查该映像内的目录是什么 以及是否有任何用于构建映像的定义文件 因此我通过
  • 在网页上渲染 PDF

    我们正在尝试使用以下方式在网络浏览器中加载 pdf 文件pdf对象 http pdfobject com JavaScript API 目前我们尝试显示的 pdf 大小接近 10MB 这会导致网页上显示 PDF 时出现较长的延迟 同时下载完