From 207010c76fd054c011e4e418abb817331fee6b88 Mon Sep 17 00:00:00 2001 From: Oliver Vogel Date: Tue, 10 Dec 2013 16:52:22 +0100 Subject: [PATCH] added interlace method --- src/Intervention/Image/Image.php | 13 +++++++++++++ tests/ImageTest.php | 11 +++++++++++ 2 files changed, 24 insertions(+) diff --git a/src/Intervention/Image/Image.php b/src/Intervention/Image/Image.php index 007c4f17..faee0006 100644 --- a/src/Intervention/Image/Image.php +++ b/src/Intervention/Image/Image.php @@ -1352,6 +1352,19 @@ class Image return $this; } + /** + * Determine whether an Image should be interlaced + * + * @param boolean $interlace + * @return Image + */ + public function interlace($interlace = true) + { + imageinterlace($this->resource, $interlace); + + return $this; + } + /** * Reset to original image resource * diff --git a/tests/ImageTest.php b/tests/ImageTest.php index 88541ff6..22fbf51a 100644 --- a/tests/ImageTest.php +++ b/tests/ImageTest.php @@ -1389,6 +1389,17 @@ class ImageTest extends PHPUnit_Framework_Testcase $this->assertEquals($color2['a'], 1); } + public function testInterlaceImage() + { + $img = Image::make('public/trim.png'); + $img->interlace(); + $contents = $img->encode(); + $this->assertEquals(( ord($contents[28]) != '0' ), true); + $img->interlace(false); + $contents = $img->encode(); + $this->assertEquals(( ord($contents[28]) != '0' ), false); + } + public function testSaveImage() { $save_as = 'public/test2.jpg';