我试图将图像限制为一定的高度和宽度。所以我很自然地使用max-height和max-width,这样当图像达到最大值时,图像可以保持纵横比。在html中工作,这是我的代码片段
'<table class="seperate" id="images-table">'.
'<tbody>'.
'<tr>'.
'<td> </td>'.
'<td class="uscs-logo" ><img src="http://localhost/dompdfTest/dompdf/uscompliancesystems_logo.png" /></td>'.
'<td class="signature-logo" ><img src="http://localhost/dompdfTest/dompdf/USCSDefaultSignature.jpg" /></td>'.
'<td> </td>'.
'</tr>'.
'</tbody>'.
'</table>'.
和css:
table#images-table .uscs-logo {
height: 100px;
text-align: left;
}
table#images-table .uscs-logo img{
max-height:200px;
max-width: 200px;
}
table#images-table .signature {
height: 125px;
text-align: right;
width: 300px;
height: auto;
max-height:200px;
max-width: 200px;
}
但我在pdf中得到的是两页pdf,页面上没有图像,因为它们是全尺寸的。如果我用html渲染到页面,它就会很好。
所以我的问题是,img标签上的dompdf真的支持max-width和max-height吗?
答案 0 :(得分:1)
使用GD PHP扩展程序动态调整图像并不困难。就时间成本而言,如果不这样做,浏览器必须进行扩展。
$filename ='/home/user/public_html/images/image.jpg';
$image = @imagecreatefromjpeg();
$originalWidth = imagesx($image);
$originalHeight = imagesy($image);
$scale = min($desiredWidth/$originalWidth, $desiredHeight/$originalHeight);
$newWidth = ceil($scale*$originalWidth);
$newHeight = ceil($scale*$originalHeight);
$newPic = imagecreatetruecolor($newWidth, $newHeight);
imagecopyresampled($newPic, $image,0, 0, 0, 0,$newWidth, $newHeight, $originalWidth, $originalHeight);
if (imagejpeg($newPic,$tmpfile)){rename($tmpfile,$filename);}
恢复内存清理。
imagedestroy($image);
imagedestroy($newPic);