phpbar.de logo

Mailinglisten-Archive

[php] JPEG und Alphamaska verschmelzen... ???

[php] JPEG und Alphamaska verschmelzen... ???

Nikolas Mangold php_(at)_phpcenter.de
Fri, 21 Sep 2001 18:29:36 +0200


Hallo,

Gleich vorneweg, alles folgt ist AFAIK - ich kann mich durchaus irren, ist 
auch IMO nicht sooo einfach.

Von fertigen Kommandos, die wirklich automatisch das machen was Du willst, 
kenn ich nicht. Es gibt definitv eine Loesung, wenn gleich es nicht das ist 
was Du suchst:

Loesung 1: HTML 4.0 :))
Gut, Du verwendest JPEG, JPEG hat keine Ahnung von einem Alphakanal (afaik). 
PNG hat einen Alphakanal und kann auch mit PHP veraendert werden. Also gaeb 
es zwei Ansaetze. Du setzt Dein JPEG, also Tabellenhintergrund und darauf 
kommt ein PNG mit den entsprechenden Features darueber :) Wenn Du z.B. nur 
einen Standardbilderahmen fuer jedes upgeloadete Bild realisieren willst, 
erstellst Du einmal ein PNG (mit jedem Grafikprogramm oder auch PHP --> vgl. 
Doku) und schon ist es fertig.

Nachteil: Nicht jeder Browser interpretiert PNG sehr gut, mach Dich da mal im 
Netz schlau, aber IMO ist IE aber Version 4 schon sehr gut dabei, Mozilla und 
Netscape 6 auch. Problem ist, wenn jemand mit einem alten Browser ohne PNG 
Support anrueckt, wird das PNG evtl. nicht angezeigt. Mit fehlendem 
Alphakanal-Support gibts leider keine Transparenz.

Loesung 2: JPG 2 PNG.
Hab auf die schnelle nix gefunden, aber wenn Du unter Linux arbeitest, 
duerfte das kein Problem sein. Es gibt zumindest einen jpg2tiff und einen 
tiff2png Converter.
Per Kommandozeilen-Tool 2 PNGs (Eins mit dem Rahmen o.ä. und das von JPG 
konvertierte) uebereinanderlegen, und danach konvertiert man das ganze wieder 
mit png2tiff und tiff2jpg wieder zurueck. Konvertierung duerte nicht so lange 
dauern, aber das Tool ist sicher gemein zu bedienen :)

Nachtrag: PNG2JPG findest Du auf http://www.penguin.cz/~martinmv/png2jpg/ in 
die andere Richtung hab ich leider nichts :(

Sollte kein Tool zu finden sein (gibts aber sicher) so kann man GIMP 
beibringen nicht in X-Window zu wechseln, sondern ein Skript direkt auf der 
Kommandozeile abzuarbeiten, ist zwar hart aber herzlich :)

OK, ich geb zu, beide Loesung schreien nicht gerade nach "ich bin super", 
aber besser als Pixel fuer Pixel rumzurechnen.

Viele Gruesse,
Niko.


php::bar PHP Wiki   -   Listenarchive