canvas($file); foreach( $filters as $filter ) { $method = $filter[0]; $parameters = $filter[1] ?? []; $gd->$method(...(array) $parameters); } $gd->generate(MimeTypeFinder::get($file), $file); } } /** * Protected get singleton GD class */ protected static function getSingletonGDClass() { return Singleton::class('ZN\Image\GD'); } }