解决问题!!!
正如Moni所说我需要将3个参数传递给imagejpeg
,但是小的校正不应该是imagejpeg($im,$save,0)
它应该是imagejpeg($im,$save,100)
图像质量必须 100 以获得高质量的图片
图片文件夹没有斜线“images / fb /”
同样适用于imagecolorallocate
imagecolorallocate($im, 142, 011, 029)
三位RGB以获得正确的输出。
所以,这个和完整代码的答案在下面给出
<?php
// Create image with 2 line of text
$im = imagecreatetruecolor(600, 300);
$text_color = imagecolorallocate($im, 142, 011, 029);
imagestring($im, 10, 5, 5, 'Some Text String', $text_color);
imagestring($im, 10, 5, 50, 'Some Text String 2', $text_color);
// Set the content type header as image/jpeg
header('Content-Type: image/jpeg');
// Output the image
//imagejpeg($im); //up-to this point its working well
$name="test2";
$save = "images/fb/". strtolower($name) .".jpeg";
imagejpeg($im, $save, 100); //Saves the image
imagejpeg($im); //Displays the image
// Free up memory
imagedestroy($im);
?>
问题
请帮我解决这个问题,
我正在尝试通过php创建图像并尝试将创建的图像存储在文件夹中,图像显示但是当我将保存添加到文件夹时它给了我错误。以下是我试过的代码。
<?php
// Create image with 2 line of text
$im = imagecreatetruecolor(600, 300);
$text_color = imagecolorallocate($im, 142, 11, 29);
imagestring($im, 10, 5, 5, 'Some Text String', $text_color);
imagestring($im, 10, 5, 50, 'Some Text String 2', $text_color);
// Set the content type header as image/jpeg
header('Content-Type: image/jpeg');
// Output the image
//imagejpeg($im); //up-to this point its working well
$name="test";
$save = "/images/fb/". strtolower($name) .".jpeg";
imagejpeg($im, $save, 0, NULL);
// Free up memory
imagedestroy($im);
?>
以下是我得到的错误
The image "path" cannot be displayed because it contains errors.
我的文件夹结构是
->www
-> projectFolder
-> subFolder
->phpFile
->imageFolder (images)
->imageSubFolder (fb)
我也试过chmod
,但似乎许可不是问题,因为我在Localhost中尝试这个。
任何建议都将不胜感激......
答案 0 :(得分:1)
您将图片创建为$im
,然后尝试将其另存为.$my_img
更改此内容:imagejpeg($my_img, $save, 0);
收件人:imagejpeg($im, $save, 0);