图像调整大小代码不在div标签中工作

时间:2013-10-08 04:28:00

标签: php

图像调整代码不在div标签中工作。我有一个PHP代码,但调整大小后它没有显示div标签中的图像,请帮我解决这个问题。          

// The file
$filename = 'Pictures/DSC_0039 (2).jpg';

// Set a maximum height and width
$width = 200;
$height = 200;

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);

$ratio_orig = $width_orig/$height_orig;

if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
} else {
   $height = $width/$ratio_orig;
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
imagejpeg($image_p, null, 100);
?>
</div>

2 个答案:

答案 0 :(得分:1)

您设置了header('Content-Type: image/jpeg')。所以,你不能再添加html标签了。将代码保存为“resizeimage.php”并创建另一个类似

的html文件
<div>
    <img src="resizeimage.php" />
</div>

答案 1 :(得分:0)

在将已调整大小的图像显示到标记中时遇到的问题是,如果要以这种方式输出图像,即使用标题('Content-Type:image / jpeg'); 条件是在标题之前和 imagejpeg($ image_p,null,100)之后,不应该向浏览器呈现任何内容(表示没有HTML标记甚至是空格); line,否则您的图像将不会显示,而是会遇到如下错误:图像.....因为包含错误而无法显示

所以对你来说我粘贴下面的示例代码:

<?php
// The file
$filename = 'Koala.jpg';

// Set a maximum height and width
$width = 200;
$height = 200;



// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);

$ratio_orig = $width_orig/$height_orig;

if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
} else {
   $height = $width/$ratio_orig;
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);


// Output
imagejpeg($image_p, "resized_img.jpg", 100);//in this function the second parameter is the filename of the new resized image
?>
<img src="resized_img.jpg" />