>我正在尝试在下载前向用户显示pdf摘要。有pdf详细信息页面显示用户pdf封面图像,名称,描述,价格,摘要和立即购买按钮。
这是用户想要阅读报告的摘要,然后单击摘要按钮并打开模型以阅读嵌入的pdf。阅读摘要后,他想购买,然后单击立即购买按钮。
所以,我只想在摘要按钮上显示 2 个 pdf 页面。有摘要和现在购买pdf报告是相同的。
我尝试显示报告的摘要,但有显示完整的pdf。
这是我下面的代码:-
public function raReportDetail($id){
$reportdetail = '';
$result = $this->connect()->query("SELECT * FROM wm_report WHERE id='$id'");
if($result->num_rows>0){
$row=$result->fetch_assoc();
$reportdetail ='
<div class="col-lg-4 col-md-4 col-sm-12">
<div class="large-5 column">
<div class="xzoom-container">
<img class="img-fluid" src="cover_images/'.$row['cover_img'].'">
</div>
</div>
</div>
<div class="col-lg-8 col-md-8 col-sm-12">
<div class="content-report-detail">
<div class="large-12 column">
<h3>'.$row['name'].'</h3>
</div>
<hr>
<div class="price-wrap">
<h3>Price: <i class="fa fa-rupee"></i> '.$row['price'].'/- </h3>
</div>
<div class="large-7 product-detail">
<p style="text-align: justify;">'.$row['description'].'</p>
<div class="ro-options">
<div class="no-row">
<div class="cart-btn-price">
<ul>
<li>
<a href="" data-toggle="modal" data-target="#Summary"> Summary </a> </li>
<li>
<a href="buy-report.php?id='.$row['id'].'"> Buy Now </a>
</li>
</ul>
</div>
</div>
<div class="sku-code">
<span class="posted_in">Categary: '.$row['category'].'</span>
|
<span class="posted_in">SKU Code : '.$row['sku'].'</span>
</div>
</div>
</div>
</div>
</div>
<div id="Summary" class="modal fade" role="dialog">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 style="display: contents;">Summary of '.$row['name'].'</h4>
<button type="button" class="close" data-dismiss="modal">×</button>
</div>
<div class="modal-body">
<embed src="report/'.$row['report'].'" frameborder="0" width="100%" height="400px">
</div>
</div>
</div>
</div>
';
}else{
$reportdetail = 'Something Went Wrong';
}
return $reportdetail;
}
如果你在PHP中安装了ImageMagick库,你可以将特定页面转换为jpg。
$im = new Imagick();
$im->setResolution(300,300);
// the [0] below indicates the first page only.
$im->readImage('document.pdf[0]');
$im->setImageFormat('jpeg');
$im->writeImage('thumb.jpg');
$im->clear();
$im->destroy();
您可能希望对要用作预览的两个页面执行此操作。
另请参阅 ImageMagick::readImage 文档。 文档本身不是很好,但用户评论非常好。 您也应该能够$im->setImageFormat('pdf');
。
我用PHP和ImageMagick从将PDF转换为JPEG中偷了这个
我会从setasign使用FPDI。
它使用简单,易于安装。我目前在我的一个应用程序中使用它,它运行得很好。
https://www.setasign.com/products/fpdi/demos/simple-demo/