| 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: 16 let
|
|||
0