imagecopyresized 预期参数错误:尝试制作不失真的缩略图
Posted
技术标签:
【中文标题】imagecopyresized 预期参数错误:尝试制作不失真的缩略图【英文标题】:imagecopyresized expects parameter error: trying to make thumbnail without distortion 【发布时间】:2011-05-02 05:10:45 【问题描述】:我正在尝试将图像制作成具有一定大小而不会失真的缩略图(如果图像是矩形)。
<?php
$sql = mysql_query("SELECT * FROM images ORDER BY date DESC LIMIT 30");
$img = 'img/'; //this is where my files are.
while($row = mysql_fetch_array($sql))
$imageName = $img.$row['images'];
$tempImage = imagecreatetruecolor(150,150);
$thumbnail = imagecopyresampled($tempImage,$imageName,0,0,0,0,150,150,150,150);
echo $thumbnail;
?>
<div id='<?php echo $imageID; ?>' class='images' style=''>
<img src='<?php echo $imageName; ?>' style='height:150px;width:150px;'/>
</div>
<?php
?>
这就是我的代码现在的样子,我需要一些帮助。我有一个代码:
<img src='<?php echo $imageName; ?>' style='height:150px;width:150px;'/>
只是看看它在高度和宽度样式下的样子,但这当然会显示失真。
当我 echo $thumbnail;
它给我 imagecopyresized() 预期参数错误。
感谢您的帮助:)
【问题讨论】:
【参考方案1】:您传入的$imageName
只是一个文件名,它会出现。您必须为源参数和目标参数提供 GD 图像句柄:
$src = imagecreatefromjpeg('somepicture.jpg');
$dst = imagecreatetruecolor(150,150);
$status = imagecopyresampled($dst, $src, etc....);
【讨论】:
我做了$src = imagecreatefromjpeg('img/somepicture.jpg');
,但它只显示数字1?
该数字是图像的内部 GD 句柄。它不是图像本身。
您必须通过单独的请求来提供它,或者将其保存到文件中并将您的 html 指向该文件。您不能按原样创建图像并在脚本中提供它 - 您不能(除了某些不适用的例外情况)在同一个脚本中混合图像和 html。以上是关于imagecopyresized 预期参数错误:尝试制作不失真的缩略图的主要内容,如果未能解决你的问题,请参考以下文章
突破php 的imagecopyresampled 和imagecopyresized 实现图片马 JPG
我收到错误错误类型参数一元减号和预期';'在 ':' 标记之前