@@ -1005,24 +1005,30 @@ private function setColorspace(PaletteInterface $palette)
1005
1005
*/
1006
1006
private function getFilter ($ filter = ImageInterface::FILTER_UNDEFINED )
1007
1007
{
1008
- static $ supportedFilters = array (
1009
- ImageInterface::FILTER_UNDEFINED => \Imagick::FILTER_UNDEFINED ,
1010
- ImageInterface::FILTER_BESSEL => \Imagick::FILTER_BESSEL ,
1011
- ImageInterface::FILTER_BLACKMAN => \Imagick::FILTER_BLACKMAN ,
1012
- ImageInterface::FILTER_BOX => \Imagick::FILTER_BOX ,
1013
- ImageInterface::FILTER_CATROM => \Imagick::FILTER_CATROM ,
1014
- ImageInterface::FILTER_CUBIC => \Imagick::FILTER_CUBIC ,
1015
- ImageInterface::FILTER_GAUSSIAN => \Imagick::FILTER_GAUSSIAN ,
1016
- ImageInterface::FILTER_HANNING => \Imagick::FILTER_HANNING ,
1017
- ImageInterface::FILTER_HAMMING => \Imagick::FILTER_HAMMING ,
1018
- ImageInterface::FILTER_HERMITE => \Imagick::FILTER_HERMITE ,
1019
- ImageInterface::FILTER_LANCZOS => \Imagick::FILTER_LANCZOS ,
1020
- ImageInterface::FILTER_MITCHELL => \Imagick::FILTER_MITCHELL ,
1021
- ImageInterface::FILTER_POINT => \Imagick::FILTER_POINT ,
1022
- ImageInterface::FILTER_QUADRATIC => \Imagick::FILTER_QUADRATIC ,
1023
- ImageInterface::FILTER_SINC => \Imagick::FILTER_SINC ,
1024
- ImageInterface::FILTER_TRIANGLE => \Imagick::FILTER_TRIANGLE ,
1025
- );
1008
+ static $ supportedFilters = null ;
1009
+ if ($ supportedFilters === null ) {
1010
+ $ supportedFilters = array (
1011
+ ImageInterface::FILTER_UNDEFINED => \Imagick::FILTER_UNDEFINED ,
1012
+ ImageInterface::FILTER_BESSEL => \Imagick::FILTER_BESSEL ,
1013
+ ImageInterface::FILTER_BLACKMAN => \Imagick::FILTER_BLACKMAN ,
1014
+ ImageInterface::FILTER_BOX => \Imagick::FILTER_BOX ,
1015
+ ImageInterface::FILTER_CATROM => \Imagick::FILTER_CATROM ,
1016
+ ImageInterface::FILTER_CUBIC => \Imagick::FILTER_CUBIC ,
1017
+ ImageInterface::FILTER_GAUSSIAN => \Imagick::FILTER_GAUSSIAN ,
1018
+ ImageInterface::FILTER_HANNING => \Imagick::FILTER_HANNING ,
1019
+ ImageInterface::FILTER_HAMMING => \Imagick::FILTER_HAMMING ,
1020
+ ImageInterface::FILTER_HERMITE => \Imagick::FILTER_HERMITE ,
1021
+ ImageInterface::FILTER_LANCZOS => \Imagick::FILTER_LANCZOS ,
1022
+ ImageInterface::FILTER_MITCHELL => \Imagick::FILTER_MITCHELL ,
1023
+ ImageInterface::FILTER_POINT => \Imagick::FILTER_POINT ,
1024
+ ImageInterface::FILTER_QUADRATIC => \Imagick::FILTER_QUADRATIC ,
1025
+ ImageInterface::FILTER_SINC => \Imagick::FILTER_SINC ,
1026
+ ImageInterface::FILTER_TRIANGLE => \Imagick::FILTER_TRIANGLE ,
1027
+ );
1028
+ if (defined ('Imagick::FILTER_SINCFAST ' )) {
1029
+ $ supportedFilters [ImageInterface::FILTER_SINCFAST ] = \Imagick::FILTER_SINCFAST ;
1030
+ }
1031
+ }
1026
1032
if (!in_array ($ filter , static ::getAllFilterValues (), true )) {
1027
1033
throw new InvalidArgumentException ('Unsupported filter type ' );
1028
1034
}
0 commit comments