В Plone 4 есть совершенно новый способ генерации весов, который может помочь с этой проблемой.Используя этот подход, вы можете сказать ему масштабировать изображение «вниз» вместо «вверх», что означает, что он будет масштабировать короткую сторону изображения до указанного размера, а не длинную сторону (так что изображение в итоге обрезается, но всегда заполняет указанную область).
При таком подходе вам не нужно определять масштабы в своей схеме, а просто включить что-то вроде следующего в свой шаблон.Шкала будет сгенерирована по требованию.
<img tal:define="scale context/@@images"
tal:replace="structure python: scale.scale('image',
width=160, height=160, direction='down').tag()" />
См. Страницу plone.app.imaging для получения дополнительных примеров такого подхода к масштабированию.