2009-12-22 2 views
1

Я пытаюсь функции: 1. imagecreatefrompng 2. imagepngИзображение обрезается с помощью imagepng. Как мне избежать этого?

мой PHP код выглядит следующим образом:

<?php 
ini_set('memory_limit', -1); 

try{ 
    //if(!$image=imagecreatefromjpeg('zee3.jpg')){ 
    if(!$image=imagecreatefrompng('leo.png')){ 
     throw new Exception('Error loading image'); 
    } 
    imagepng($image, 'leoAfter_9compression1.png', 9); 
    // free up memory 
    imagedestroy($image); 
} 
catch(Exception $e){ 
    echo $e->getMessage(); 
    exit(); 
} 

ini_restore('memory_limit'); 

?> 

Изображение leo.png файл 3MB

Но после запуска кода leoAfter_9compression1.png изображение получается размером 1,7 МБ. но он обрезается. Который я не хочу.

И я не могу понять, почему это происходит.

Может кто-нибудь сказать мне причину, по которой изображение обрезается, и как я могу его избежать.

Если кто-то хочет проверить изображение, о котором я говорю, выполните поиск «image» leo.png в google. это будет первое изображение в поиске. Изображение обрезается, а также искажается. Но я попробовал тот же алгоритм для другого изображения, и он отлично работает на этом.

С уважением Zeeshan

ответ

1

Не следует проверить исходное изображение.

+0

Это делает это. –

+0

Возможно, это связано с ошибкой в ​​ImageCreateFromPNG(), но я очень сомневаюсь, что вы можете загрузить изображение leo.png? –

Смежные вопросы