@@ 74-103 (lines=30) @@ | ||
71 | * @covers ::resize |
|
72 | * @covers ::resizeMulti |
|
73 | */ |
|
74 | public function resizeDownsizeToMoreHorizontalAspect() |
|
75 | { |
|
76 | $source = new \Imagick('pattern:gray0'); |
|
77 | $source->scaleImage(100, 50); |
|
78 | ||
79 | $imagick = Image::resize($source, 40, 10); |
|
80 | ||
81 | //making sure source didnt resize |
|
82 | $this->assertSame(100, $source->getImageWidth()); |
|
83 | $this->assertSame(50, $source->getImageHeight()); |
|
84 | ||
85 | $this->assertSame(40, $imagick->getImageWidth()); |
|
86 | $this->assertSame(10, $imagick->getImageHeight()); |
|
87 | ||
88 | $whiteBarLeft = $imagick->getImagePixelColor(9, 4)->getHsl(); |
|
89 | $whiteBarRight = $imagick->getImagePixelColor(30, 4)->getHsl(); |
|
90 | ||
91 | $imageLeft = $imagick->getImagePixelColor(10, 4)->getHsl(); |
|
92 | $imageRight = $imagick->getImagePixelColor(29, 4)->getHsl(); |
|
93 | $imageTop = $imagick->getImagePixelColor(19, 0)->getHsl(); |
|
94 | $imageBottom = $imagick->getImagePixelColor(19, 9)->getHsl(); |
|
95 | ||
96 | $this->assertGreaterThan(0.9, $whiteBarLeft['luminosity']); |
|
97 | $this->assertGreaterThan(0.9, $whiteBarRight['luminosity']); |
|
98 | ||
99 | $this->assertLessThan(0.1, $imageLeft['luminosity']); |
|
100 | $this->assertLessThan(0.1, $imageRight['luminosity']); |
|
101 | $this->assertLessThan(0.1, $imageTop['luminosity']); |
|
102 | $this->assertLessThan(0.1, $imageBottom['luminosity']); |
|
103 | } |
|
104 | ||
105 | /** |
|
106 | * Upsize ratio 2.0 to 4.0 |
|
@@ 112-141 (lines=30) @@ | ||
109 | * @covers ::resize |
|
110 | * @covers ::resizeMulti |
|
111 | */ |
|
112 | public function resizeUpsizeToMoreHorizontalAspectWithoutGrow() |
|
113 | { |
|
114 | $source = new \Imagick('pattern:gray0'); |
|
115 | $source->scaleImage(100, 50); |
|
116 | ||
117 | $imagick = Image::resize($source, 400, 100); |
|
118 | ||
119 | //making sure source didnt resize |
|
120 | $this->assertSame(100, $source->getImageWidth()); |
|
121 | $this->assertSame(50, $source->getImageHeight()); |
|
122 | ||
123 | $this->assertSame(400, $imagick->getImageWidth()); |
|
124 | $this->assertSame(100, $imagick->getImageHeight()); |
|
125 | ||
126 | $whiteBarLeft = $imagick->getImagePixelColor(99, 49)->getHsl(); |
|
127 | $whiteBarRight = $imagick->getImagePixelColor(300, 49)->getHsl(); |
|
128 | ||
129 | $imageTop = $imagick->getImagePixelColor(200, 26)->getHsl(); |
|
130 | $imageBottom = $imagick->getImagePixelColor(200, 74)->getHsl(); |
|
131 | $imageLeft = $imagick->getImagePixelColor(151, 50)->getHsl(); |
|
132 | $imageRight = $imagick->getImagePixelColor(249, 50)->getHsl(); |
|
133 | ||
134 | $this->assertGreaterThan(0.9, $whiteBarLeft['luminosity']); |
|
135 | $this->assertGreaterThan(0.9, $whiteBarRight['luminosity']); |
|
136 | ||
137 | $this->assertLessThan(0.1, $imageLeft['luminosity']); |
|
138 | $this->assertLessThan(0.1, $imageRight['luminosity']); |
|
139 | $this->assertLessThan(0.1, $imageTop['luminosity']); |
|
140 | $this->assertLessThan(0.1, $imageBottom['luminosity']); |
|
141 | } |
|
142 | ||
143 | /** |
|
144 | * Upsize ratio 2.0 to 4.0 |
|
@@ 150-179 (lines=30) @@ | ||
147 | * @covers ::resize |
|
148 | * @covers ::resizeMulti |
|
149 | */ |
|
150 | public function resizeUpsizeToMoreHorizontalAspectWithGrow() |
|
151 | { |
|
152 | $source = new \Imagick('pattern:gray0'); |
|
153 | $source->scaleImage(100, 50); |
|
154 | ||
155 | $imagick = Image::resize($source, 400, 100, ['upsize' => true]); |
|
156 | ||
157 | //making sure source didnt resize |
|
158 | $this->assertSame(100, $source->getImageWidth()); |
|
159 | $this->assertSame(50, $source->getImageHeight()); |
|
160 | ||
161 | $this->assertSame(400, $imagick->getImageWidth()); |
|
162 | $this->assertSame(100, $imagick->getImageHeight()); |
|
163 | ||
164 | $whiteBarLeft = $imagick->getImagePixelColor(99, 49)->getHsl(); |
|
165 | $whiteBarRight = $imagick->getImagePixelColor(300, 49)->getHsl(); |
|
166 | ||
167 | $imageTop = $imagick->getImagePixelColor(249, 0)->getHsl(); |
|
168 | $imageBottom = $imagick->getImagePixelColor(249, 99)->getHsl(); |
|
169 | $imageLeft = $imagick->getImagePixelColor(100, 49)->getHsl(); |
|
170 | $imageRight = $imagick->getImagePixelColor(299, 49)->getHsl(); |
|
171 | ||
172 | $this->assertGreaterThan(0.9, $whiteBarLeft['luminosity']); |
|
173 | $this->assertGreaterThan(0.9, $whiteBarRight['luminosity']); |
|
174 | ||
175 | $this->assertLessThan(0.1, $imageLeft['luminosity']); |
|
176 | $this->assertLessThan(0.1, $imageRight['luminosity']); |
|
177 | $this->assertLessThan(0.1, $imageTop['luminosity']); |
|
178 | $this->assertLessThan(0.1, $imageBottom['luminosity']); |
|
179 | } |
|
180 | ||
181 | /** |
|
182 | * Upsize ratio 2.0 to 4.0 |
|
@@ 188-217 (lines=30) @@ | ||
185 | * @covers ::resize |
|
186 | * @covers ::resizeMulti |
|
187 | */ |
|
188 | public function resizeUpsizeToMoreVerticalAspect() |
|
189 | { |
|
190 | $source = new \Imagick('pattern:gray0'); |
|
191 | $source->scaleImage(100, 50); |
|
192 | ||
193 | $imagick = Image::resize($source, 200, 400); |
|
194 | ||
195 | //making sure source didnt resize |
|
196 | $this->assertSame(100, $source->getImageWidth()); |
|
197 | $this->assertSame(50, $source->getImageHeight()); |
|
198 | ||
199 | $this->assertSame(200, $imagick->getImageWidth()); |
|
200 | $this->assertSame(400, $imagick->getImageHeight()); |
|
201 | ||
202 | $whiteBarLeft = $imagick->getImagePixelColor(49, 200)->getHsl(); |
|
203 | $whiteBarRight = $imagick->getImagePixelColor(151, 200)->getHsl(); |
|
204 | ||
205 | $imageTop = $imagick->getImagePixelColor(100, 176)->getHsl(); |
|
206 | $imageBottom = $imagick->getImagePixelColor(100, 224)->getHsl(); |
|
207 | $imageLeft = $imagick->getImagePixelColor(51, 200)->getHsl(); |
|
208 | $imageRight = $imagick->getImagePixelColor(149, 200)->getHsl(); |
|
209 | ||
210 | $this->assertGreaterThan(0.9, $whiteBarLeft['luminosity']); |
|
211 | $this->assertGreaterThan(0.9, $whiteBarRight['luminosity']); |
|
212 | ||
213 | $this->assertLessThan(0.1, $imageLeft['luminosity']); |
|
214 | $this->assertLessThan(0.1, $imageRight['luminosity']); |
|
215 | $this->assertLessThan(0.1, $imageTop['luminosity']); |
|
216 | $this->assertLessThan(0.1, $imageBottom['luminosity']); |
|
217 | } |
|
218 | ||
219 | /** |
|
220 | * @test |