Я пытаюсь масштабировать изображение и обрезать его до определенного размера от центра.
В основном, если я хочу, чтобы изображение было размером 240×160 (масштаб 1,5: 1), и у меня было изображение размером 900×800 (масштаб 1,125: 1), и я использовал следующие настройки:
filters:
- { name: geometry/scaledownonly, params: [240, 160] }
- { name: geometry/crop, params: [240, 160, 0, 0] }
Но я не могу получить желаемый результат.
На вашем сайте image_variations
Блок настроек вашего сайта yaml, попробуйте добавить следующее:
image_variation_name:
reference: ~
filters:
- { name: geometry/scaledownonly, params: [240, 160] }
- { name: thumbnail, params: { size: [240, 160], mode: outbound } }
Блок выше будет делать две вещи. Во-первых, ваше изображение будет уменьшено до соответствующего размера (у вас уже был этот бит). Затем фильтр миниатюр обрежет изображение от середины (центральная обрезка) до желаемых размеров.
Я полагаю, что результат, который вы преследуете, соответствовал бы следующей конфигурации:
...
image_variations:
your_alias_name:
reference: ~
filters:
thumbnail: { size: [240, 160], mode: outbound, allow_upscale: true }
...
Эта настройка приведет к уменьшенной версии, обрезанной по центру (до нужного вам размера).
Это предполагает, что вы используете внедренную систему-образ-псевдоним ezplatform.
Надеюсь, вот ответ, который вы ищете 🙂