TYPO3 Fluid: Принудительный формат изображения jpg - PullRequest
0 голосов
/ 31 января 2019

У меня есть расширение, использующее шаблон Fluid, который выглядит следующим образом:

<div class="bgimg" style="background-image: url({f:uri.image(src:'uploads/tx_slider/{homeslider1.bgimage}', treatIdAsReference:1, maxWidth:'1600')})"></div>

Это хорошо работает - на фоновое изображение ссылаются правильно - и изображение изменяется в размере, если оно слишком большое.Однако мой клиент начал загружать изображения в формате PNG, что приводило к большим (> 5 МБ) файлам в выходных данных веб-сайта.

Я не нашел ни одной опции, чтобы указать помощнику по изображениям Fluid преобразовывать изображение PNG в JPG при обработке.Что я могу сделать?

1 Ответ

0 голосов
/ 01 февраля 2019

У меня нет ответа на мой вопрос - но это мой обходной путь:

DELETE FROM sys_file_processedfile;
SELECT DISTINCT REPLACE(CONCAT('magick .', identifier, ' .', identifier, '.jpg'), 'user_upload/', 'fileadmin/user_upload') AS cmd FROM sys_file WHERE extension='png' AND size > 500000;
SELECT DISTINCT CONCAT('fart.exe "sqlbackup.sql" "', SUBSTRING_INDEX(identifier, '/', -1), '" "', SUBSTRING_INDEX(identifier, '/', -1), '.jpg"') AS cmd FROM sys_file WHERE extension='png' AND size > 500000;

Запрос 1: Удалить кэш изображений

Запрос 2: Создайте пакетную команду для преобразования всех изображений PNG в JPG размером более 500 КБ.Я выполнил этот пакет из корня моей установки Typo3.Необходимо установить ImageMagick.

Запрос 3: Создать пакетную команду для замены всех вхождений этих файлов PNG в базе данных.Я создал резервную копию базы данных, а затем запустил «fart.exe» в файле резервной копии.Fart.exe - это быстрый и простой инструмент для замены текста.После этого я импортировал резервную копию, очистил кеш, а Typo3 использовал гораздо меньшие файлы JPG (около 250 КБ по сравнению с 5 МБ).

...