Skip to content

Commit f45d5cc

Browse files
committed
implement interlace filter
1 parent eb695e5 commit f45d5cc

File tree

3 files changed

+42
-0
lines changed

3 files changed

+42
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?php
2+
3+
namespace Liip\ImagineBundle\Imagine\Filter\Loader;
4+
5+
use Imagine\Image\ImageInterface;
6+
7+
class InterlaceFilterLoader implements LoaderInterface
8+
{
9+
/**
10+
* {@inheritDoc}
11+
*/
12+
public function load(ImageInterface $image, array $options = array())
13+
{
14+
$mode = ImageInterface::INTERLACE_LINE;
15+
if (empty($options['mode']) {
16+
$mode = $options['mode'];
17+
}
18+
19+
$image->interlace(ImageInterface::INTERLACE_LINE);
20+
21+
return $image;
22+
}
23+
}

Resources/config/imagine.xml

+5
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<parameter key="liip_imagine.filter.loader.background.class">Liip\ImagineBundle\Imagine\Filter\Loader\BackgroundFilterLoader</parameter>
4242
<parameter key="liip_imagine.filter.loader.upscale.class">Liip\ImagineBundle\Imagine\Filter\Loader\UpscaleFilterLoader</parameter>
4343
<parameter key="liip_imagine.filter.loader.auto_rotate.class">Liip\ImagineBundle\Imagine\Filter\Loader\AutoRotateFilterLoader</parameter>
44+
<parameter key="liip_imagine.filter.loader.interlace.class">Liip\ImagineBundle\Imagine\Filter\Loader\InterlaceFilterLoader</parameter>
4445

4546
<!-- Data loaders' classes -->
4647

@@ -171,6 +172,10 @@
171172
<tag name="liip_imagine.filter.loader" loader="auto_rotate" />
172173
</service>
173174

175+
<service id="liip_imagine.filter.loader.interlace" class="%liip_imagine.filter.loader.interlace.class%">
176+
<tag name="liip_imagine.filter.loader" loader="interlace" />
177+
</service>
178+
174179
<!-- Data loaders -->
175180

176181
<service id="liip_imagine.binary.loader.prototype.filesystem" class="%liip_imagine.binary.loader.filesystem.class%">

Resources/doc/filters.md

+14
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,20 @@ liip_imagine:
149149
my_thumb:
150150
filters:
151151
auto_rotate: ~
152+
153+
### The `interlace` filter
154+
155+
Set progressive loading on the image
156+
Configuration looks like this:
157+
158+
``` yaml
159+
liip_imagine:
160+
filter_sets:
161+
my_thumb:
162+
filters:
163+
interlace:
164+
# mode can be one of none,line,plane,partition
165+
mode: line
152166
```
153167
## Load your Custom Filters
154168

0 commit comments

Comments
 (0)