ImageInstance
Data pro výpis obrázku.
Obrázek je objekt, který sdružuje data nutná pro výpis elementu <img/>
do HTML. Tato data jsou: soubor (přesněji řečeno: blob) a rozměry obrázku.
Tento objekt není totožný ani s assetem obsahujícím obrázek, ani s blobem obsaženým v assetu obrázku. Obsahuje ale referenci na takový blob.
Získání hodnoty typu obrázek
Obrázek je typ objektu, který vrací TFS funkce image.
{/* Předpokládáme, že _asset je zdroj obrázků */}
{let i := image(_asset, "CLOSEST_WIDTH", 200, -1)}
Funkce s obrázkem na vstupu
Obrázek může být vstupem funkce ref. Pak se vytváří odkaz stejně, jako by vstupem byl blob image
obsažený v objektu obrázku.
{let i := image(_asset, "CLOSEST_WIDTH", 200, -1)}
{/* Následující dají zcela shodný výsledek */}
<img src="{ref(i)}"/>
<img src="{ref(i.image)}"/>
Selekce podhodnoty
Obrázek má následující vlastnosti:
- image
- blob obsahující obrázkový soubor,
- width
- šířka obrázku v pixelech,
- height
- výška obrázku v pixelech.
{let i := image(galleryMotive, "CLOSEST_WIDTH", 200, -1)}
<img src="ref(i)" alt="{galleryMotive.title}"
width="{i.width}"
height="{i.height}" />
Nepřímo přes blob image
a vlastnost tohoto blobu composite
je možné získat asset, ze kterého obrázek pochází, ale tento postup by se měl používat uvážlivě.
Mapování
Probíhá stejně jako selekce.
Sekvenční zpracování
Chová se jako prázdná sekvence.
Převod na logickou hodnotu
V podmínce se jakýkoli obrázek vyhodnotí jako true. Toho lze teoreticky využít k ověření, zda se funkci image podařilo najít vůbec nějaký obrázek.
{let i := image(_asset, "CLOSEST_WIDTH", 200, -1)}
{if i}<img src="{ref(i)}" alt="" />{/if}
Pokud je například _asset
motiv galerie, který nemá žádné varianty, nevypíše se nic.