Diskuze: resize image a snížená kvalita
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 17 zpráv z 17.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zhoršení kvality tam bude vždy, ale když použiješ imagecopyresampled
tak dostaneš mnohem lepší výsledek.
Více v dokumentaci http://php.net/…esampled.php
Je pravda, že jak se dívám tak je to důvod 256 barev do kterých to převede (jak se dívám)...
Jak tedy co nejlépe řešit velikost obrázků? Nebo spíše jak to řešíte vy?
Uživatel nahraje fotku ->
pak se má zobrazit v seznamu inzercí a následně v samotném inzerátu jako
náhled ->
nebo jako i miniatura ->
při kliknutí se zobrazí maximální velikost (používám js script na
prohlížení).
Napadají mě 2 varianty...
hosting mám na wedosu dle informací které mají i ve VP tak fotky které slouží k prezentaci webu, nebo funkci tak jsou povolené tedy i fotky k inzerci, ale i tak bude zřejmě dobré si hlídat kapacitu.
Dal jsem nechtěně že odpovídám sobě.. achjo ... Bych se to už mohl naučit ... Když už nezapomenu, tak to dám zle..
kukni sem, som ti tu dal kus mojho (stareho) kodu ktorý som orezal o tebe nepotrebné časti... vytvorí ti z jednoho uploadnutého súboru 2 súbory, 80% original a 70% thumbnail (asi 600x600 px štvorec) http://www.itnetwork.cz/dev-lighter/629 ... a tam je namiesto resize použité resample, ako radí Richard
PS: v jednej z podmienok kontorlujem typ súboru na image/jpeg... tak sa to nesmie robiť, to je chyba
OK, plus máš za domácu úlohu zistiť, akým spôsobom zaručene zistíme či súbor je typu image/jpeg, image/gif, alebo image/png tak napíš.
To vím
$pripona = strtolower(pathinfo($soubor_nazev, PATHINFO_EXTENSION));
je to včetně zmenšení písmenek.
Pak už to budu ifovat
neee... verím že toto sa dá jednoducho oklamať, podobne ako v poli $_FILES položka type
skús ešte
edit: si predstav že mám obrázok image.asdf ... a aj napriek domu viem na 100% že to je mime typu image/jpeg to dáš
Chcel som ho nechať, nech na to príde sám, ale nevadí, tak trochu som to čakal
exif_imagetype(); je veľmi dobrá voľba, dokonca vraj omnoho rýchlejšia než getimagesize();
Každopádne si myslím že getimagesize je lepšie, pretože dostaneš naraz aj hodnoty ako výška a šírka obrázku
EDIT: aktuálne neviem prečo, ale exif_imagetype() mi vrátilo len integer, 2 ja radšej getimagesize(), ale nevnucujem
A jo tam je tabulka, som zabudol
1 IMAGETYPE_GIF
2 IMAGETYPE_JPEG
3 IMAGETYPE_PNG
4 IMAGETYPE_SWF
5 IMAGETYPE_PSD
6 IMAGETYPE_BMP
7 IMAGETYPE_TIFF_II (intel byte order)
8 IMAGETYPE_TIFF_MM (motorola byte order)
9 IMAGETYPE_JPC
10 IMAGETYPE_JP2
11 IMAGETYPE_JPX
12 IMAGETYPE_JB2
13 IMAGETYPE_SWC
14 IMAGETYPE_IFF
15 IMAGETYPE_WBMP
16 IMAGETYPE_XBM
17 IMAGETYPE_ICO
Viem, že si ho chcel nechať, ale keď si problém zadáš do Googlu, je to hneď prvý výsledok....čiže zrejme nevie vyhľadávať - o to to má ťažšie.
getimagesize je lepšie v prípade, že potrebuješ aj iné hodnoty ako si písal, ale zase keď potrebuješ len formát, je asi rýchlejšie exif, či?
Čo je zlé na tom že by googlil? aspoň by niečo robil a nakoniec by na to prišiel sám (ak ho to fakt zaujíma)... či mi chceš tvrdiť že ty si na to prišiel sám bez googlenia len tak niekedy počas spánku?
Tohle mi na konec bohatě stačí, perfektní, děkuji
mám se ještě toho hodně co učit, včetně toho typu.
Rozhodně za vše moc děkuji, asi bych k tomu časem došel ale je toho tolik že některé věci nepokládám zatím tak extra za důležité, abych tím ztrácel čas pro to co potřebuji. Tím neříkám, že je to ztráta času, ale že čas potřebuji věnovat jiným věcem na kterých pracuji. Pomalu a jistě se dále posouvám a myslím že docela i dobře.
Měl bych ještě jednu bonusovou otázku, nebo spíše názor/radu:
Aktuálně nahraji inzerát, doptám se na id inzerátu a z id vytvořím složku do které nahraji fotky. Samozřejmě přemýšlím nad budoucí údržbou a přetečením dat ke kterým jednou dojde..
Pak si říkám, že ukládat název složky jako id inzerátu je asi blbost a spíše by bylo dobré vytvářet např. hash kod s názvem složky a inzerát by měl v db uložený ten hash. Pakliže by došlo k přetečení dat, tak stačí jen přešíslovat aktuální inzeráty a stále vím co k čemu patří bez zbytečných složitostí.
Edit: K tomu přetečení samozřejmě dojít nesmí
Nie, ja som napísal, že ak vyhľadával a nič nenašiel nevie správne
vyhľadávať a mal by zapracovať, lebo sa mu bude ťažko niečo hľadať,
keď bude potrebovať.
Nikdy by som nepovedal, že používať Google je zlé...sám ho používam
Popravdě řečeno než jsem tohle posílal, jsem se jen podíval na podobné funkce do dokumentace a dle popisu mi nic neříkali co by upravili velikost. Takže jsem to pak hodil sem, protože jsem zrovna nad tímhle nechtěl strávit hodiny času jako nad některými věcmi. Je spousta věcí ve kterých si sám najdu logiku, ale když neznám funkci je to těžší .
Zobrazeno 17 zpráv z 17.