解决了问题!!!
正如莫尼所说,我需要将 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 中尝试这个。
任何意见,将不胜感激...