Autor | Zpráva | ||
---|---|---|---|
lKudry Profil * |
#1 · Zasláno: 14. 12. 2009, 22:37:14
Zdravím,
mám menší problém. Při použití fce imagecreatefromjpeg() u obrázku, který je vyšší než širší, mi uvedená fce tento obrázek automaticky přetočí o 90° (pokud je obrázek širší než vyšší, tak k přetočení nedojde) a proto script nadále pracuje vždy s obrázkem, který je širší než vyšší. Nevíte někdo co s tím udělat, aby to obrázek nepřetáčelo, nebo alespoň jak zjistit jestli je obrázek širší nebo vyšší?? |
||
Alphard Profil |
#2 · Zasláno: 14. 12. 2009, 22:51:23
lKudry:
„jak zjistit jestli je obrázek širší nebo vyšší??“ getimagesize() Otáčení by určitě neměla dělat funkce imagecreatefromjpeg(), nemáte tam někde třeba imagerotate()? |
||
lKudry Profil * |
#3 · Zasláno: 14. 12. 2009, 23:15:58
fci getimagesize() používám právě hned po fci imagecreatefromjpeg() a ta už mi vypisuje obrázek přetočený, tedy width > height, i když obrázek sám o sobě je width < height a fci imagerotate() jsme nikde ve scriptu nepoužil. Uvedu script:
<?php $filename = 'obrazek2.jpg'; $type = "gallery"; $photo = imagecreatefromjpeg($filename); list($origWidth, $origHeight) = getimagesize($filename); echo $origWidth." ".$origHeight; //Toto zde mám pouze orientačně (pomůcka při hlednání řešení problému) if ($origWidth > $origHeight) { $newWidth = 130; $newHeight = 98; $imgVar = "width"; $imgXPos = 48; $imgYPos = 45; $borderWidth = 221; $borderHeight = 195; } else { $newWidth = 74; $newHeight = 98; $imgVar = "height"; $imgXPos = 49; $imgYPos = 48; $borderWidth = 172; $borderHeight = 194; } $background = imagecreatefrompng("layout/background-" . $imgVar . ".png"); $borderLogo = imagecreatefrompng("layout/" . $type . "-" . $imgVar . ".png"); imagesavealpha($background, true); imagecopyresampled($background, $photo, $imgYPos, $imgXPos, 0, 0, $newWidth, $newHeight, $origWidth, $origHeight); imagecopyresampled($background, $borderLogo, 0, 0, 0, 0, $borderWidth, $borderHeight, $borderWidth, $borderHeight); imagepng($background, 'out.png', 9); jak říkám obrázek to sice vyexportuje, ale přetočený o 90° |
||
lKudry Profil * |
#4 · Zasláno: 15. 12. 2009, 20:53:38
Zdravím,
tak problém vyřešen, ač je to zvláštní, tak byla chyba v originálním obrázku, který má v sobě nějakou interní chybu pokud se přeuloží, tak vše funguje, tak jak má. Tento obrázek mi to v grafických programech zobrazuje správně (tedy vyšší než širší), avšak při použití obyčejného náhledu systému Windows je také přetočený o 90°... zvláštní, ale hlavní je, že se problém vyřešil. Děkuji Alpharde za pomoc. |
||
Časová prodleva: 14 let
|
0