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