CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
18.04.2005, 04:01:23
|
Anfänger
|
|
Registriert seit: Jun 2003
Beiträge: 4
|
|
Überlagern zweier Bilder (Transparenz-Problem)
Hallo!
Ich habe folgendes Problem:
Ich möchte ein bestehendes Bild mit einem transparenten .png überlagern um den Effekt zu erzielen, dass das Bild zum Rand hin schwarz wird.
Ich habe folgenden Code verwendet, der offensichtlich nicht funktioniert:
PHP-Code:
$image = imagecreatefromjpeg('original.jpg');
$pattern = imagecreatefrompng('pattern.png');
imagecopymerge($image, $pattern, 0, 0, 0, 0, 375, 500, 100);
imagejpeg($image,'test.jpg');
Wie das ganze aussehen soll und wie es im Moment aussieht kann man auf folgender Seite sehen: http://galerie.live-rollenspiel.net/mergetest.php
(Die Darstellung wie es aussehen soll funktioniert nicht im Internet Explorer, da der ja bekanntlich Probleme mit transparenten PNGs hat.)
Hat vielleicht jemand eine Idee wie ich PHP dazu kriege die Transparenz nicht zu ignorieren? (Der gleiche Code funktioniert, wenn ich statt des PNG ein Gif benutze mit einer Transparenten Farbe.)
Danke jetzt schonmal!
regards,
Sirion
|
18.04.2005, 11:05:06
|
|
Administrator
|
|
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|
|
AW: Überlagern zweier Bilder (Transparenz-Problem)
Ich kann jetzt keine Tests machen, aber es scheint ein Bug oder die Transparenz im PNG-Format wird nicht unterstützt. Vermutungen über Vermutungen... Hast Du mal in die Buglist von php.net geschaut?
__________________
Gruß |Coding
---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.
www.qozido.de
|
18.04.2005, 14:43:33
|
Anfänger
|
|
Registriert seit: Jun 2003
Beiträge: 4
|
|
AW: Überlagern zweier Bilder (Transparenz-Problem)
Zitat:
Zitat von |Coding
Ich kann jetzt keine Tests machen, aber es scheint ein Bug oder die Transparenz im PNG-Format wird nicht unterstützt. Vermutungen über Vermutungen... Hast Du mal in die Buglist von php.net geschaut?
|
Normalerweise liegt es eher an mir als an nem Bug... ;-)
Ich werde aus den Eintragungen dort nicht sehr schlau, da fast alle Einträge zum Thema png-transparenz als "Bogus" gekennzeichnet sind gehe ich davon aus, dass es an mir liegt.
Oder kennt vielleicht jemand nen Workaround? (IM kommt für mich deshalb nicht in Frage, weil dieses Script ständig für eine Hand voll Bilder ausgeführt werden soll und deshalb sehr schnell gehen muss.)
Eine Idee die ich beim durchlesen der Dokumentation hatte: Eventuell könnte man statt des transparenten PNGs ein GD oder GD2 Bild benutzen, nur weiss ich leider weder ob die diese Art von Transparenz unterstützen, noch wie man Sie erstellen kann und ob es überhaupt helfen würde...
Hat vielleicht jemand Erfahrung mit diesen Bildformaten?
regards,
Sirion
|
18.04.2005, 15:12:20
|
|
Administrator
|
|
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|
|
AW: Überlagern zweier Bilder (Transparenz-Problem)
So:
Ich glaube dein Problem ist das JPG-Format, das unterstützt keine Tanzparenz. Kannst Du das nicht ins PNG-Format oder ins GIF-Format konvertieren. Vielleicht verträgt sich das einfach nicht oder noch ein Vorschlag:
PHP-Code:
$image = imagecreatefromjpeg('original.jpg');
$pattern = imagecreatefrompng('pattern.png');
imagecopymerge($pattern, $image, 0, 0, 0, 0, 375, 500, 100);
imagejpeg($image,'test.jpg');
Also einfach mal die Bilder umgedreht übereinander lagern. Ich bin jetzt nur zufaul selbst mal zu testen :-)
__________________
Gruß |Coding
---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.
www.qozido.de
|
18.04.2005, 15:19:51
|
Anfänger
|
|
Registriert seit: Jun 2003
Beiträge: 4
|
|
AW: Überlagern zweier Bilder (Transparenz-Problem)
Zitat:
Zitat von |Coding
So:
Ich glaube dein Problem ist das JPG-Format, das unterstützt keine Tanzparenz. Kannst Du das nicht ins PNG-Format oder ins GIF-Format konvertieren.
|
Das endgültige Bild soll ja auch keine Transparenz mehr besitzen...
Es soll ja nur ein jpg mit einem transparenten png überlagert werden - damit wird automatisch jeder transparente Bereich vom Original-Jpeg benutzt oder hab ich nen Denkfehler?
Zitat:
Vielleicht verträgt sich das einfach nicht oder noch ein Vorschlag:
PHP-Code:
$image = imagecreatefromjpeg('original.jpg');
$pattern = imagecreatefrompng('pattern.png');
imagecopymerge($pattern, $image, 0, 0, 0, 0, 375, 500, 100);
imagejpeg($image,'test.jpg');
Also einfach mal die Bilder umgedreht übereinander lagern. Ich bin jetzt nur zufaul selbst mal zu testen :-)
|
Ich weiss nicht was das bringen soll, da das Jpeg nicht transparent ist wird es das andere Bild kmplett überdecken. (Edit: Hab es ausprobiert, genau das passiert.)
regards,
Sirion
__________________
If I'm not back in five minutes... just wait longer!
Geändert von Sirion (18.04.2005 um 15:21:34 Uhr)
Grund: Hab deinen Vorschlag dennoch probiert - funktioiert wie erwartet nicht.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:47:24 Uhr.
|