【问题标题】:Display every PDF page content into distinct divs将每个 PDF 页面内容显示到不同的 div 中
【发布时间】:2017-05-27 04:57:57
【问题描述】:

我有一本书叫php_5_for_dummies.pdf
它的总页数是 5。
我想在不同的 div 中显示每个 PDF 页面内容。

示例:应该这样显示:

  1. <div class='1'>Content of pdf page 1 </div>
  2. <div class='2'>Content of pdf page 2 </div>
  3. <div class='3'>Content of pdf page 3 </div>
  4. <div class='4'>Content of pdf page 4 </div>
  5. <div class='5'>Content of pdf page 5 </div>

到目前为止,我已经完成了。

function pdf_page_no($filepath){
    $fp = @fopen(preg_replace("/\[(.*?)\]/i", "",$filepath),"r");
    $max=0;
    while(!feof($fp)) {
        $line = fgets($fp,255);
        if (preg_match('/\/Count [0-9]+/', $line, $matches)){
            preg_match('/[0-9]+/',$matches[0], $matches2);
            if ($max<$matches2[0]) $max=$matches2[0];
        }
     }
    fclose($fp);
    if($max==0){
        $im = new imagick($filepath);
        $max=$im->getNumberImages();
    }

    return $max;
}

$filename = "php_5_for_dummies.pdf";
$total_page_no  = pdf_page_no($filename);

for ( $i=0 ; $i >= $total_page_no; $i++ ) {

    echo "<div class='{$i}'>";
       // here should display the content from page 1 of pdf
    echo "</div>";

}

【问题讨论】:

  • 到目前为止你做了什么?
  • 我只能提取页码。来自pdf
  • 你试过的代码可以分享吗?
  • 到目前为止我已经添加了我的代码。
  • 不!我只能显示页面编号和循环页面而不是内容

标签: php jquery html pdf


【解决方案1】:

PDF 与 HTML、SVG 或典型图像格式(JPG、PNG、TIF 等)不同,它不是原生 Web 格式。 PDF 的显示取决于浏览器,通常是“整页”项目,而不是像

这样的页面元素。根据浏览器配置,PDF 有时根本不会在浏览器中显示 - 例如,我将浏览器配置为使用浏览器外部的 Adob​​e Reader 打开 PDF,以提供更多选项、更好的打印质量等。相反的情况也是一个问题 - 典型的 HTML 页面打印效果不佳,解决方案是转换为 PDF 以实现一致的所见即所得打印。但是大多数网站不会这样做,因为没有大量编程就没有简单的方法。真正能解决根本问题的人,都会发财。好吧,实际上可能根本赚不到多少钱,因为很多软件实际上都是免费的,但我离题了......

我见过的解决方案:

a) 将 PDF 页面转换为图形图像。您可以使用 ImageMagick 转换程序执行此操作。然后在每个

中显示一个 。缺点是分辨率仅限于图像大小,而不是完全可缩放(且易于打印)的 PDF 页面。我已经通过图像点击生成了实际 PDF 的依赖于浏览器的下载/显示来进行预览。

b) 框出包含 PDF 的页面。我相信我在一些公用事业账单网站上看到了这一点。在框架内,页面被视为整页,因此如果浏览器支持内部 PDF 查看,那么这将起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-25
    • 2013-07-02
    • 2016-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-25
    相关资源
    最近更新 更多