Вопрос об автоматическом CropScale для картинок, добавленных как Page Content (TV)
Добрый день!
У меня есть следующий вопрос. Сделан шаблон сайта с помощью TemplaVoila. На страницу добавляется несколько картинок в бэкенде как New Content Element - Images Only. На вкладке Appearance можно задавать размер, до которого изменяются картинки. Задано уменьшение, допустим, до 50 на 50 px. Установлен плагин PerfectLightbox. По клику на уменьшенную картинку открывается большая в лайтбоксе. Мне нужно, чтобы эти картинки были не просто уменьшены, а обрезаны до нужного размера (например, если картинка имеет размер 300 на 600, или 600 на 300, нужно уменьшить её по меньшей стороне до 50 px, а по большей обрезать чтобы тоже было 50 px, чтобы картинка в итоге была 50 на 50, но при этом не была деформирована, как если бы просто уменьшать до 50 на 50). При клике в лайтбоксе должна открываться оригинальная картинка 300 на 600. Второй день ищу решение, но пока найти так и не смог. Нашёл, что можно в TemplaVoila в Element - Data Processing - TypoScript Code писать typoscript обработки контента. Если бы это поле было просто Image, то можно было бы написать что-что вроде 10 = IMAGE 10.file.import = uploads/tx_templavoila/ 10.file.import.current = 1 10.file.import.listNum = 0 10.file.width = 50с-50 10.file.height = 50c-50 Но у меня в этом поле RECORDS. 10= RECORDS 10.source.current=1 10.tables = tt_content Не знаю, как сделать в этом случае. У меня картинок несколько добавляется в один Content Element. К тому же, судя по всему, так в лайтбоксе картинка тоже будет маленькая и обрезаная. Может у кого-то есть идеи, как это можно сделать подругому? Нужно просто иметь возможность в бэкенде добавить несколько картинок, чтобы они автоматически уменьшались с обрезкой, а потом в лайтбоксе открывалась полная картинка. Заранее благодарен за помощь. |
Получается у вас сейчас для вывода картинок используется стандартный TS объект tt_content.image.20, а ширина-высота беруться из свойств заданных в CE. А там действительно кроп никак не задашь.
Но можно переопределить свойства в tt_content.image.20 (смотрите typo3\sysext\css_styled_content\static\setup.txt) То есть вместо: Код:
maxW = {$styles.content.imgtext.maxW} Но эти изменения будут глобальны для этой страницы и всех дочерних. Так что все CE с картинками будут выводиться как кропнутые до 50x50. |
есть экстеншены на эту тему, может какой-то подойдет
http://typo3.org/extensions/reposito...=23&L=0&q=crop tkcropthumbs |
Кстати, странно что решение такой простой и типовой задачи, до сих пор не встроена в ядро. А все пагины для ее реализации используют довольно сложный PHP код, вплоть до расширения базовых классов ядра.
Вот, например, болле сложная задача по добавлению "водяных знаков" на картинки решена в df_imgwatermark на чистом TS. |
Цитата:
cropping for tt_content images - http://typo3.org/extensions/repository/view/image_crop http://typo3.org/typo3temp/tx_terdoc...CE4E661E9B.png Правда, все элементы контента с картинками пришлось ручками править, а их было ох как много... Но всё же задача решена. Кстати, я искал сам экстеншены, но почему-то этот найти так и не смог. Спасибо огромное за помощь, этот форум - действительно полезный ресурс. Цитата:
|
Цитата:
Им не до нужд простых пользователей. :rolleyes: |
Часовой пояс GMT +4, время: 01:46. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot