PHP generiertes PNG problem
PHP generiertes PNG problem
am 27.06.2006 08:33:41 von Neugi
Hi,
ich habe folgenden code erstellt:
header("Content-type: image/png");
$img_foto = "foto.png";
$img_bild = "projekte/testhaus.jpg";
$winkel = 7;
$font = '../font/rabiohead.ttf';
$text1 = "Hi";
$text2 = "Text2";
$text3 = "Text3";
$img = imagecreatefrompng($img_foto);
$foto = imagecreatefromjpeg($img_bild);
$trans = imagecolorallocate($foto, 255, 255, 255);
$white = imagecolorallocate($img, 255, 255, 255);
$foto = imagerotate($foto, $winkel, $trans);
$bild_x = imagesx($foto);
$bild_y = imagesy($foto);
$img_x_y = getimagesize($img_foto);
imagecolortransparent($foto, $trans);
imagecopymerge($img, $foto, -3, 28, 0, 0, $bild_x, $bild_y, 100);
imagettftext($img, 20, $winkel, 20, 330, $grey, $font, $text1);
imagecolortransparent($img, $white);
imagepng($img);
imagedestroy($img);
imagedestroy($foto);
?>
im firefox funktioniert es ohne probleme. das erzeugt png ist im
hintergrund transparent. aber in ie nicht, trotz der fixes die es gibt,
hab diesen
angewendet->http://homepage.ntlworld.com/bobosola/pnghowto.h tm
woran kann das liegen?
mfg
Re: PHP generiertes PNG problem
am 27.06.2006 08:49:57 von dev-null-use-reply-adress
Irgendwer oder -was schrieb:
> ich habe folgenden code erstellt:
[PNG mit transparenter Farbe erzeugen]
> im firefox funktioniert es ohne probleme. das erzeugt png ist im
> hintergrund transparent.
Dann scheint es ziemlich sicher, daß Dein PHP-Code OK ist
und die Grafik wie gewünscht erstellt wurde. Also hast
Du kein PHP-Problem.
> aber in ie nicht, trotz der fixes die es gibt,
> hab diesen
> angewendet->http://homepage.ntlworld.com/bobosola/pnghowto.h tm
Diese Lösung basiert auf Javascript. Das ist nicht Thema
dieser Newsgroup.
Gruß
JPM
Re: PHP generiertes PNG problem
am 27.06.2006 09:14:19 von Markus Bemmelen
Am 27.06.2006 08:33 gab Neugi folgende Aussage(n) zum Besten:
> Hi,
Tach!
[snip]
> im firefox funktioniert es ohne probleme. das erzeugt png ist im
> hintergrund transparent. aber in ie nicht, trotz der fixes die es gibt,
> hab diesen
> angewendet->http://homepage.ntlworld.com/bobosola/pnghowto.h tm
>
> woran kann das liegen?
Am Internet Explorer: http://support.microsoft.com/kb/294714/de
Gruß, markus
Re: PHP generiertes PNG problem
am 27.06.2006 13:21:02 von Neugi
Hi, ist mir klar das es am ie liegt deswegen auch der versucht mit dem
work around.
andere frage: wenn ich auf gif umstellen will hab ich auch den weißen
rand. was muss ich an meinem code ändern das es vielleicht auch mit
gif geht?
mfg
Re: PHP generiertes PNG problem
am 27.06.2006 13:29:47 von dev-null-use-reply-adress
Irgendwer oder -was schrieb:
[Nullquote]
> Hi, ist mir klar das es am ie liegt deswegen auch der versucht mit dem
> work around.
>
> andere frage: wenn ich auf gif umstellen will hab ich auch den weißen
> rand. was muss ich an meinem code ändern das es vielleicht auch mit
> gif geht?
Die Frage kann jetzt nicht Dein Ernst sein. ;-)
Vielleicht einfach imagegif() anstelle von imagepng() verwenden?
Gruß
JPM
Re: PHP generiertes PNG problem
am 27.06.2006 13:44:11 von Neugi
hab ich,
dann hab ich auch wieder den weißen rand. aber dann halt in ff und ie
wenns so einfach gewesen wäre dann hätte ich die fragen nicht
gestellt ;)
mfg
Re: PHP generiertes PNG problem
am 27.06.2006 13:45:40 von Neugi
hab jetzt auch noch mal das ganze online gestellt. damit ihr euch das
ansehen könnt, falls es einer nicht glaubt ;)
http://www.e-shop.at/euro/
gruz
Re: PHP generiertes PNG problem
am 27.06.2006 13:49:49 von Frank Schenk
Neugi wrote:
> hab jetzt auch noch mal das ganze online gestellt. damit ihr euch das
> ansehen könnt, falls es einer nicht glaubt ;)
>
> http://www.e-shop.at/euro/
Du solltest den Hintergrund transparent machen, das könnte helfen.
Frank
P.S.: Zur Seite sag ich besser nix, hast du die mal im FF angeschaut?
Re: PHP generiertes PNG problem
am 27.06.2006 14:01:18 von Neugi
Transparent mach ich sie doch-> imagecolortransparent($img, $white);
schein aber nciht zu funtkionieren. was soll ich anders schreiben.
mfg
PS: hab sie mir auch im ff angesehen. schaut genau so aus wie im ie.
aber das sollte ja jetzt mal nebensache sein.
Re: PHP generiertes PNG problem
am 27.06.2006 14:06:58 von Frank Schenk
Neugi wrote:
> Transparent mach ich sie doch-> imagecolortransparent($img, $white);
>
> schein aber nciht zu funtkionieren. was soll ich anders schreiben.
$trans = imagecolorallocate($foto, 255, 255, 255);
$white = imagecolorallocate($img, 255, 255, 255);
imagecolortransparent($foto, $trans);
imagecolortransparent($img, $white);
Reicht das als hint?
Du kopierst zwar die Transparenz mit imagecopymerge, überschreibst sie
dann aber mit white. Nimm 2 verschiedene Farben.
hth, Frank
Re: PHP generiertes PNG problem
am 27.06.2006 14:07:57 von Achim Peters
Frank Schenk wrote:
> Neugi wrote:
>> hab jetzt auch noch mal das ganze online gestellt. damit ihr euch das
>> ansehen könnt, falls es einer nicht glaubt ;)
>>
>> http://www.e-shop.at/euro/
> P.S.: Zur Seite sag ich besser nix, hast du die mal im FF angeschaut?
Die sieht bei mir mit FF 1.5.0.4 und IE 6.0.2900.2180... identisch aus.
Bye
Achim
Re: PHP generiertes PNG problem
am 27.06.2006 14:26:31 von Neugi
header("Content-type: image/gif");
$img_foto = "foto.png";
$img_bild = "projekte/testhaus.jpg";
$winkel = 7;
$font = '../font/rabiohead.ttf';
$text1 = "Hi";
$text2 = "Text2";
$text3 = "Text3";
$img = imagecreatefrompng($img_foto);
$foto = imagecreatefromjpeg($img_bild);
$trans = imagecolorallocate($foto, 200, 200, 200);
$white = imagecolorallocate($img, 255, 255, 255);
$foto = imagerotate($foto, $winkel, $trans);
imagecolortransparent($foto, $trans);
imagecolortransparent($img, $white);
$bild_x = imagesx($foto);
$bild_y = imagesy($foto);
$img_x_y = getimagesize($img_foto);
imagecopymerge($img, $foto, -3, 28, 0, 0, $bild_x, $bild_y, 100);
imagettftext($img, 20, $winkel, 20, 330, $grey, $font, $text1);
imagegif($img);
imagedestroy($img);
imagedestroy($foto);
//print_r($img_x_y);
?>
habs jetzt auf das umgeschrieben und bringt nichts. leider bin ich noch
nicht so sattel fest mit php und bild manipulation. :(
gruz
Re: PHP generiertes PNG problem
am 27.06.2006 14:51:09 von Ralf Zschemisch
Am Tue, 27 Jun 2006 05:01:18 -0700 schrieb
Neugi:
^--
Hallo,
> Transparent mach ich sie doch-> imagecolortransparent($img, $white);
Nach deinem Skript sill die Farbe
$white = imagecolorallocate($img, 255, 255, 255);
transpartent werden.
Dein Hintergrund ist allerdings
Rot 251
Grün 253
Blau 251
> schein aber nciht zu funtkionieren. was soll ich anders schreiben.
Am einfachsten erstellst du eine transparente Grafik
und kopierst dort dein jpg rein.
hth
r23
--
http://www.myoos.de/fraktal/zoom.php
Re: PHP generiertes PNG problem
am 28.06.2006 08:36:27 von Neugi
Ralf Zschemisch wrote:
> Am Tue, 27 Jun 2006 05:01:18 -0700 schrieb
> Am einfachsten erstellst du eine transparente Grafik
> und kopierst dort dein jpg rein.
die png hat ja schon eine transparenz ;) aber die ist nach dem
bearbeiten einfach weg.
gruz
Re: PHP generiertes PNG problem
am 28.06.2006 15:20:11 von Ralf Zschemisch
Am Tue, 27 Jun 2006 23:36:27 -0700 schrieb
Neugi:
^-- Bitte vollständigen Namen
>> Am Tue, 27 Jun 2006 05:01:18 -0700 schrieb
>> Am einfachsten erstellst du eine transparente Grafik
>> und kopierst dort dein jpg rein.
>
> die png hat ja schon eine transparenz ;)
Wenn dein "foto.png"
$img_foto = "foto.png";
transparent ist?
Warum machst du dann
$img = imagecreatefrompng($img_foto);
$white = imagecolorallocate($img, 255, 255, 255);
imagecolortransparent($img, $white);
?
Du kannst auch einfach ein Image erzeugen..
$size = 300;
$image = imagecreatetruecolor($size, $size);
$back = imagecolorallocate($image, 255, 255, 255);
$border = imagecolorallocate($image, 0, 0, 0);
imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);
imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);
imagecolortransparent($image, $back);
hth
r23
--
http://www.myoos.de/fraktal/zoom.php