【问题标题】:Displaying pdf on web browser in other formats在网络浏览器上以其他格式显示 pdf
【发布时间】:2014-07-16 12:06:09
【问题描述】:

当 pdf 文档嵌入到 html 文档中时,很难完全控制如何在 Web 浏览器上呈现 pdf 文档(调整缩放、页面大小等)。所以,我正在考虑将pdf文档提前转换成svg或png等格式,并嵌入到html文档中,而不是嵌入pdf文件。一个多页的pdf文档会对应多个svg或png的文件,会存放在一个目录下。我可以使用 JavaScript 根据用户输入来处理页面的变化,这不是问题。

  1. 鉴于 pdf 文档是 300dpi 左右的黑白扫描文档,并且转换后的文件应该具有相当的质量,那么哪种格式最适合这种情况,主要是在浏览器的渲染速度方面?我知道缓存会改变速度,所以我想将我的考虑限制在第一次呈现页面的时间。我有 svg 或 png 的想法。哪个更好,或者有更好的格式可以很容易地从pdf转换成?

  2. 当位图文档(例如 png)缩放到不同的大小时,我知道它会出现锯齿状。另一方面,如果我觉得,如果我有一个嵌入此类扫描部分的 svg 文件,则抗锯齿​​将起作用,消除锯齿。我的理解正确吗?

【问题讨论】:

  • 鉴于 pdf 文档是 300dpi 左右的黑白扫描文档 - 扫描的 PDF 通常只是嵌入在 PDF 中的图像。不需要您渲染 PDF 的无损解决方案是提取这些图像并在嵌入、JPEG 或其他位图时使用它们。
  • @mki 这就是我提到的使用 png 的可能性。与此相比,您对 svg 有何看法?
  • 与此相比,您对 svg 有何看法? - 我对 SVG 了解不多;不过,我希望它比单纯的 PNG/JPEG(取决于嵌入图像的类型)提取更需要资源。

标签: html pdf svg png


【解决方案1】:

就浏览器的渲染速度而言,哪种格式最适合这种情况?

一旦在浏览器中,位图 (PNG) 会更快。但是,如果 PDF 主要是文本和矢量,那么第一次查看通常会快很多。下载通常比渲染慢。

如果 PDF 仅包含高分辨率扫描,那么这两种方法在速度方面大致相当。

如果我有一个嵌入此类扫描部件的 svg 文件,则抗锯齿​​将起作用,消除锯齿。我的理解正确吗?

不,这是不正确的。将位图图像放入 SVG 时不会神奇地具有无限分辨率。如果你放大 SVG,里面的位图仍然会变得参差不齐。就好像它不在 SVG 中一样。

【讨论】:

  • 我认为当原始像素和浏览器上的像素不一对一匹配时,抗锯齿确实适用于 svg 中的扫描图片。这不是魔法,与无限分辨率无关。
  • 您可能会得到 interpolation,但它仍然会是“锯齿状”。插值与抗锯齿不同。
  • 对。当缩放尺寸大于原始尺寸时,由于扫描导致的锯齿无法解决。但是由于扫描和显示之间的像素大小不匹配而导致的锯齿,可以得到解决。也许,我用错了词;我应该按照你告诉我的那样写插值。
  • 即使使用插值,锯齿仍然会很明显,并且随着缩放比例越高越严重。 OP 给我的印象是他们认为 SVG 能够在没有任何锯齿的情况下缩放位图。它不会。这就是我的回应。
猜你喜欢
  • 2011-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多