2012-03-13 91 views
1

我有以下功能将JPEG保存为渐进式JPEG。它保存了,但不像渐进式JPEG。它是否正确 ?如何将jpeg图像保存为Progressive JPEG?

function save($filename, $image_type = IMAGETYPE_JPEG, $compression = 75, $permissions = null) { 

    if ($image_type == IMAGETYPE_JPEG) { 

     imageinterlace($this->image, true); //convert to progressive ? 
     imagejpeg($this->image, $filename, $compression); 

    } elseif ($image_type == IMAGETYPE_GIF) { 

     imagegif($this->image, $filename); 

    } elseif ($image_type == IMAGETYPE_PNG) { 

     imagepng($this->image, $filename); 
    } 

    if ($permissions != null) { 

     chmod($filename, $permissions); 
    } 
} 

我这是怎么了名为save()函数:

function img_reconstruct($saveto) { 
    $image = new SimpleImage(); 

    $image->load($saveto); 

    list($width, $height) = getimagesize($saveto); 

    if ($width > 800 && $width < 1200) { 

    $image->resize(800, $height); 

    $image->save($saveto); 

    } 
} 
+0

斯诺克嗨,你得到这个加工?我也在寻找将jpeg转换为渐进式jpeg。 – Suriya 2013-04-02 09:55:38

+0

同样在这里。任何想法为什么它可能无法正常工作,无论你使用imageinterlace($ this-> image,true);或imageinterlace($ this-> image,1); – Werner 2014-12-28 17:06:06

回答

4

尝试像下面

imageinterlace($this->image, 1); //convert to progressive ? 

可能是问题型铸造

+2

同样,不起作用。 – Snoke 2012-03-13 09:00:06