Jak vložit do listingu obrázek odjinud?

7.1.2022 | Blog | Ondra

Dlouhé roky mohli hráči do svých listingů vkládat obrázky z jiných serverů. Dělali to tak hlavně z důvodu, že při zakládání listingu není možné nahrávat na web Geocaching.com obrázky.

To však tropilo problémy. Nejen že obrázky z jiných serverů často mizely a mysterky se tím stávaly neřešitelné, ale obrázky také mohly obsahovat cookies třetích stran. Proto nejprve v lednu 2020 začaly být obrázky zobrazované přes takzvaný proxy server, od září 2020 pak již není možné do nově zakládaných listingů vkládat obrázky z cizích serverů vůbec. Tedy s pár schválenými výjimkami, jakými je například obrázek ukazující počet ne/úspěšných řešitelů z ověřovače GeoCheck.org, nebo obrázky se statistikami vkládané z Project-gc.com.

Řešení? Zakladatel má nejprve založit listing, následně v pravém menu využít tlačítka "Upload Image" a nahrané obrázky vložit do listingu až při jeho editaci.

 

Jenže - někdy je potřeba vložit do listingu obrázek odjinud. Napadají mě následující důvody:

- Jedná se o webkameru, tedy na jedné adrese se neustále mění obrázek na aktuální pohled kamery. Tady prostě stáhnutí obrázku do počítače a následné nahrání do listingu řešení není.

- Jedná se o gif, mjpeg či webp. První dva typy sice lze do listingu nahrát, ovšem namísto pohyblivých se z nich stanou pouze statické obrázky. Třetí typ web pro nahrávání nepodporuje vůbec. Pokud se jedná o nepohyblivý webp, pak bych doporučil nejprve obrázek zkonvertovat do jiného formátu a následně nahrát přímo do listingu. Pokud však potřebujeme pohyblivý obrázek, pak nemáme jinou možnost, než jej nahrát někam jinam.

I když zrovna pro gif, stejně jako pro níže zmíněný průhledný obrázek vlastně existuje ještě jedna možnost, kterou objevil keškař s nickem KayAmy2207. Obrázky lze totiž bez ztráty animace či průhlednosti na servery Geocachingu nahrát, a to konkrétně na fórum. V listingu pak lze takový obrázek bez problému užít.

- Jedná se o průhledný obrázek (např. png). Podobně jako pohyblivé obrázky, do listingu se nahrát dají, ovšem ztratí svou průhlednost. Pokud se průhledná změní na bílou a obrázek je užit na bílém pozadí, pak se nic neděje. Pokud se však průhledná změní třeba na šedou, nebo má obrázek být na oranžovém pozadí, pak by to dozajista vypadalo trochu divně. I to se dá vyřešit způsobem psaným níže (podkladová barva/obrázek pak musí být už na úrovni table, průhledný pak v td). Osobně si však myslím, že vhodnější je v obrázku změnit průhlednou barvu na barvu pozadí (či jej přímo vložit do pozadí) už v počítači před nahráním.

- Luští se z proměnlivého obrázku. Obrázek například v php, který se mění v závislosti na tom ze které části světa si jej člověk zobrazí, do listingu prostě nahrát nejde. A pokud už jej máme ve starším listingu vložený, pak nám problém dělá již zmíněný proxyserver, který jej lidem zobrazuje nikoliv podle jejich části světa, ale podle té jeho. I v tomto případě potřebujeme v listingu zobrazovat obrázek přímo z jeho originálního umístění. Nezneužívejte však takové obrázky ke sběru dat o hráčích. Ač může být zajímavé mít vlastní statistiky, kdo se kolikrát na listing podíval, takový sběr dat je ToU Geocaching.com zakázán.

 

Jak to ale udělat? Vždyť pokud chceme vložit do listingu obrázek odjinud, editor jej prostě nepříjme. Nu ano, pokud jej vkládáme čistě jako obrázek, tedy v HTML kódu začínajícím <img src=... . Obrázek však lze vložit i jinak, třeba jako obrázek na buňky tabulky. K tomu nám poslouží následující HTML kód:

<table cellspacing="0" cellpadding="0" border="0" align="center" style="width:200px;height:134px;">
<tbody>
<tr>
<td background="
https://utiskare.cz/soubory/98.gif"></td>
</tr>
</tbody>
</table>

Upravit v něm musíme části zvýrazněné červeně a zeleně. Zelená je adresa obrázku, červeně jsou šířka a výška obrázku. Rozměry obrázku je nutné uvést, neboť bez nich by se obrázek nezobrazoval celý (tabulce je úplně jedno, jak velký je obrázek, který má být na pozadí její buňky). Výsledek pak vypadá takto: