Neos\Media\Domain\Service\ImageService::getOptionsMergedWithDefaults PHP Метод

getOptionsMergedWithDefaults() защищенный Метод

protected getOptionsMergedWithDefaults ( array $additionalOptions = [] ) : array
$additionalOptions array
Результат array
    protected function getOptionsMergedWithDefaults(array $additionalOptions = array())
    {
        $defaultOptions = Arrays::getValueByPath($this->settings, 'image.defaultOptions');
        if (!is_array($defaultOptions)) {
            $defaultOptions = array();
        }
        if ($additionalOptions !== array()) {
            $defaultOptions = Arrays::arrayMergeRecursiveOverrule($defaultOptions, $additionalOptions);
        }
        $quality = isset($defaultOptions['quality']) ? (int) $defaultOptions['quality'] : 90;
        if ($quality < 0 || $quality > 100) {
            throw new InvalidConfigurationException(sprintf('Setting "Neos.Media.image.defaultOptions.quality" allow only value between 0 and 100, current value: %s', $quality), 1404982574);
        }
        $defaultOptions['jpeg_quality'] = $quality;
        // png_compression_level should be an integer between 0 and 9 and inverse to the quality level given. So quality 100 should result in compression 0.
        $defaultOptions['png_compression_level'] = 9 - ceil($quality * 9 / 100);
        return $defaultOptions;
    }