2016-10-11 5 views
1

В моем меню я использую скрипт для загрузки изображения, загруженного в ресурсы страницы.Размер шрифта меню шрифта

Теперь мне нужно сделать так, чтобы изображение было изменено/отрезано до нужного размера. Где я могу добавить ширину и высоту, чтобы заставить ее работать?

NO { 
    wrapItemAndSub = <li>|</li> 
    stdWrap.cObject = COA 
    stdWrap.cObject { 
    10 = TEXT 
    10.field = title 
    10.wrap = <span>|</span> 
    20 = FILES 
    20 { 
     # Get the images related to the current page 
     references { 
     table = pages 
     fieldName = media 
     } 
     # Render each image and wrap it as appropriate 
     renderObj = TEXT 
     renderObj { 
     typolink { 
     parameter.data = file:current:publicUrl 
     forceAbsoluteUrl = 1 
     returnLast = url 
     } 
     wrap = |, 
    } 
    stdWrap { 
     # Take only the first image if several are defined 
     listNum = 0 
     # Use default image if none is available 
     ifEmpty.cObject = TEXT 
     ifEmpty.cObject.typolink { 
     parameter = fileadmin/templates/example/images/placeholder.png 
     forceAbsoluteUrl = 1 
     returnLast = url 
     } 
     wrap = <div><img src="|" /></div> 
     } 
    } 
    } 
} 

ответ

2

Если вы хотите, чтобы изменить размер изображения заменить renderObj = TEXT через renderObj = IMG_RESOURCE

ПРИМЕР:

NO { 
    wrapItemAndSub = <li>|</li> 
    stdWrap.cObject = COA 
    stdWrap.cObject { 
    10 = TEXT 
    10.field = title 
    10.wrap = <span>|</span> 
    20 = FILES 
    20 { 
     # Get the images related to the current page 
     references { 
     table = pages 
     fieldName = media 
     } 
     # Render each image and wrap it as appropriate 
     renderObj = IMG_RESOURCE 
     renderObj { 
     file.import.data = file:current:uid 
     file.treatIdAsReference = 1 
     file.width = 250c 
     file.height = 250c 
     wrap = |, 
     } 
     stdWrap { 
     # Take only the first image if several are defined 
     listNum = 0 
     # Use default image if none is available 
     ifEmpty.cObject = TEXT 
     ifEmpty.cObject.typolink { 
      parameter = fileadmin/templates/example/images/placeholder.png 
      forceAbsoluteUrl = 1 
      returnLast = url 
     } 
     wrap = <div><img src="|" /></div> 
     } 
    } 
    } 

Чтобы отобразить только одно изображение, вы не должны делать первый список всех изображений. Используйте настройку maxItemsFILES и удалите listNum от stdWrap.

20 = FILES 
20 { 
    ... 
    maxItems = 1 
    ... 
} 
+0

Это прекрасное спасибо! – user500665

0

Я думаю, вам нужно использовать GIFBUILDER. GIFBUILDER передаст изображение, например, ImageMagick и поможет вам сократить/масштабировать/масштабировать изображение до ваших потребностей.

Что-то вроде

lib.image = IMAGE 
lib.image { 
    file = GIFBUILDER 
    file { 
    #use the c in XY to crop 
    XY = 1024c,768c 
    format = jpg 
    10 = IMAGE 
    10.file = fileadmin/image.jpg 

    } 
} 

Вы можете прочитать больше о Gifbuilder здесь:

https://docs.typo3.org/typo3cms/TyposcriptReference/Gifbuilder/Index.html

+0

Вам не нужно запускать '' 'GIFBUILDER''' для масштабирования изображений. Элементы контента '' 'IMAGE'' и' '' IMG_RESOURCE'' могут делать это также и не требуют так много памяти и времени обработки, как '' 'GIFBUILDER'''. –

Смежные вопросы