Итак, у меня есть функция, которая превращает JPEG в изображение PNG, изменяет его размер, а затем сохраняет его. Потом чуть позже я возвращаюсь к нему и использую изображение в функции поворота. Я продолжаю получать ошибки, хотя. Он говорит, что uploads / image.png не является действительным файлом PNG. Странная вещь заключается в том, что это происходит только в случае php-файлов png. Если я удаляю image.png и скачиваю png из интернета, имя image.png работает нормально, пока я не запускаю его через первый скрипт изменения размера.
function load($filename) {
$image_info = getimagesize($filename);
$this->image_type = $image_info[2];
if( $this->image_type == IMAGETYPE_JPEG ) {
$imagecreated = imagecreatefromjpeg($filename);
$this->image = $imagecreated;
$extention = pathinfo($filename, PATHINFO_EXTENSION);
$basename = basename($filename, ".".$extention);
$newname = "uploads/".$basename;
imagepng($imagecreated, $newname.".png", 0);
// ....???
function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height,
$this->getWidth(), $this->getHeight());
$this->image = $new_image;
}
Затем я сохраняю файл просто
imagepng(etc etc);
Я захожу в папку загрузки и выглядит хорошо. его размер и все. Я также заметил, что Photoshop тоже не откроет отредактированный png.
Также здесь находится строка кода, которая выдает ошибку ..
$image = imagecreatefrompng('uploads/image.png');