#1 19. 10. 2007 0:18

noname
Člen
Registrovaný: 1. 9. 2007
Příspěvky: 33

jak nastavit jen jednu velikost obrázku

lze nějak u obrázku nastavit jen jeden rozměr? Takhle musím přepočítávat, aby se mi to nezkryplilo. Případně nastavit nějak max. rozměr, ale to by bylo asi složité

Offline

 

#2 19. 10. 2007 1:50

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 4050
Web

Re: jak nastavit jen jednu velikost obrázku

Lze všechno :-) Přes handlery. Inspiraci hledej třeba tady:

a nastavíš:

$el = $invocation->proceed(...);
$el->width = ...;
return $el;

Offline

 

#3 19. 11. 2007 13:37

noname
Člen
Registrovaný: 1. 9. 2007
Příspěvky: 33

Re: jak nastavit jen jednu velikost obrázku

hmm, tak jsem to zkoušel pochopit a zatím se nezadařilo. Kdybyste někdo věděl jak na to, tak by se to hodilo

prostě abych mohl napsat nejenom něco jako

[* image.gif 10x20 *]

ale třeba taky

[* image.gif ?x20 *]
[* image.gif 20x? *]

a pak by x-vý resp. y-vý rozměr byl vypočítán podle ypsilonového. Optimálně s nějakým maximem v nastavení texy (ale jak pak řešit, když bude překročeno?), případně přepisovatelným přímo u obrázku, třeba jako

[* image.gif max120 *]

tj. maximální výška i šířka by byla 120

jinak wordpress texy plugin nějak moc ty velikosti obrázků nepodporuje – když udělám něco viz http://texy.info/cs/try/se4jo tak se mi do html nenapíše width a height, nevím jestli je to chyba nastavení texy, nebo hostingu atp

Offline

 

#4 19. 11. 2007 13:49

noname
Člen
Registrovaný: 1. 9. 2007
Příspěvky: 33

Re: jak nastavit jen jednu velikost obrázku

nebo možná by ta syntaxe pro jednoduchost mohal být

[* image.gif 10x *]
[* image.gif x20 *]
[* image.gif x *]

Offline

 

#5 20. 11. 2007 5:41

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 4050
Web

Re: jak nastavit jen jednu velikost obrázku

Předně, musí být správně nastavená cesta k fyzickému úložišti obrázků – $fileRoot. Autodetekce nemusí být dostatečná.

Díval jsem se, že v přepočítávání rozměrů byla chyba, pokud jeden rozměr nebyl uveden (tj. [* image.gif ?x20 *]), je to opraveno. Přidal jsem možnost určit, jestli jsou uvedené rozměry maximální, nebo požadované. Rozdíl je v dělítku „x“ vs. „X“. http://texy.info/cs/try/4gg2a

Offline

 

#6 30. 11. 2007 20:46

noname
Člen
Registrovaný: 1. 9. 2007
Příspěvky: 33

Re: jak nastavit jen jednu velikost obrázku

jak má vypadat fileroot?

$texy->imageModule->fileroot = ABSPATH . get_settings(‚upload_path‘). „/“; nebo
$texy->imageModule->fileroot = get_settings(‚upload_path‘). „/“;

(tedy jestli je to adresářová struktura a nebo internetová adresa)

Offline

 

#7 30. 11. 2007 21:17

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 4050
Web

Re: jak nastavit jen jednu velikost obrázku

Offline

 

#8 14. 1. 2009 10:05

Daffid
Nový člen
Registrovaný: 14. 1. 2009
Příspěvky: 1

Re: jak nastavit jen jednu velikost obrázku

David Grudl napsal(a):

Přidal jsem možnost určit, jestli jsou uvedené rozměry maximální, nebo požadované. Rozdíl je v dělítku „x“ vs. „X“. http://texy.info/cs/try/4gg2a

Tahle možnost podle mě funguje jen u relativně zadané cesty k obrázku. Nebylo by možné ji přidat i pro absolutně zadávané odkazy?

Offline

 

#9 16. 1. 2009 16:30

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 4050
Web

Re: jak nastavit jen jednu velikost obrázku

Myslíš jako absolutní webovou adresu? Ty by bylo velmi pomalé, když by se při formátování textu museli stahovat obrázky.

Offline

 

#10 11. 5. 2009 21:31

LastHunter
Moderator
Místo: Praha
Registrovaný: 8. 1. 2009
Příspěvky: 1358
Web

Re: jak nastavit jen jednu velikost obrázku

Slovo do pranice: Umožňuje Texy nastavit globálně maximální šířku obrázku? Hodilo by se mi to do fóra, abych omezil uživatele, co vkládají obrázky, aby mi nerozhazovaly layout.

Ideální chování by bylo následující:

  • nastavil bych v nějaké proměnné maxWidth pro obrázek
  • pokud by uživatel přidal do textu obrázek o menší šířce, zůstal by nezměněn
  • pokud by nahrál větší, zmenšil by se v HTML pomocí width a height, aby mu byl zachován poměr stran (nějaký resampling v PHP by měl moc složitou logiku, nutnost cachování, atd., toto svému účelu postačí)

Offline

 

Zápatí

Reklama: Školení PHP | Magento