Bildqualität einstellen
Natascha
- php
Hallo Leute
ich würde gerne in folgendem Script noch die Bildqualtität einstellen, d.h. wie gut das Bild sein soll, wenn es ausgegeben wird.
Wie mache ich das?
$dst_img=ImageCreate($x,$y);
$src_img=ImageCreateFromJpeg($imgdir_src);
ImageCopyResized($dst_img,$src_img,0,0,0,0,$x,$y,ImageSX($src_img),ImageSY($src_img));
$imgdir_src_show = ImageJpeg($dst_img);
header("Content-type: image/jpeg");
ImageJpeg($dst_img);
Danke,
Nasch
Hallo Leute
Hi
ich würde gerne in folgendem Script noch die Bildqualtität einstellen, d.h. wie gut das Bild sein soll, wenn es ausgegeben wird.
Wie mache ich das?ImageJpeg($dst_img);
du hast doch schon den richtigen Parameter genommen! Dazu brauchst du allerdings die GD Lib. schreibs so:
ImageJpeg($dst_img, '', 90); das 90 wäre dann deine Qualität.
LG Christoph
Danke,
Nasch
Hi Christoph,
erstmal vielen Dank, das klappt prima.
Kannst Du mir eventuell auch sagen wie ich eine Art copyright auf das Bild schreiben lasse?
D.h. unten rechts in die Ecke einen Text wie z.B. "copyricght by Nash".
Nochmals danke ...
Nasch
Hi Christoph,
Hi Nash
erstmal vielen Dank, das klappt prima.
schön :)
Kannst Du mir eventuell auch sagen wie ich eine Art copyright auf das Bild schreiben lasse?
Ja
D.h. unten rechts in die Ecke einen Text wie z.B. "copyricght by Nash".
ok dazu musst du noch folgendes schreiben:
$schwarz = ImageColorAllocate ($dst_img, 0, 0, 0);
ImageTTFText ($dst_img, 12, 0, 10, 20, $schwarz, "arial.ttf", "copyright by Nash");
ImageDestroy ($dst_img);
$schwarz = klar, das ist die Farbe der Schrift, kannst du ja mit RGB Werten anpassen.
ImageTTFText = der 1. Wert ist das Bild selber, der 2 Wert ist die Schriftgröße, der 3. Wert ist die Ausrichtung in Grad. Also von oben nach unten schreiben oder schräg und da ist 0 ganz normal von links nach rechts. Der 4. und der 5. Wert sind dann die x und y Koordinaten von deinem Bild wo die Schrift plaziert werden soll. Musst du natürlich ausrechen, da ich nicht weiss wie groß dein bild ist usw...
ImageDestroy = löscht das Bild aus dem Speicher nur...
Hoffe das hilft Dir auch diesesmal weiter :)
LG Christoph
Nochmals danke ...
Nasch
nochmal ich
ok dazu musst du noch folgendes schreiben:
d.h. das screine ich dann nach
ImageJpeg($dst_img, '', 90);
oder?
$schwarz = ImageColorAllocate ($dst_img, 0, 0, 0);
ImageTTFText ($dst_img, 12, 0, 10, 20, $schwarz, "arial.ttf", "copyright by Nash");
ImageDestroy ($dst_img);
Muss ich das ImageDestroy schreiben, wird sonst nicht das ganze Bild gelöscht??
Leider klappt das nicht, kann das sein, dass es an der Angabe von arial.ttf liegt, woher weiß ich wo arial.ttf liegt?
Vielen, vielen Dank,
Nasch
kann man auch ein gif benutzen?
nochmal ich
d.h. das screine ich dann nach
ImageJpeg($dst_img, '', 90);
oder?
schreibs so:
header("Content-type: image/jpeg");
$dst_img=ImageCreate($x,$y);
$src_img=ImageCreateFromJpeg($imgdir_src);
ImageCopyResized($dst_img,$src_img,0,0,0,0,$x,$y,ImageSX($src_img),ImageSY($src_img));
$imgdir_src_show = ImageJpeg($dst_img);
$schwarz = ImageColorAllocate ($dst_img, 0, 0, 0);
ImageTTFText ($dst_img, 12, 0, 10, 20, $schwarz, "arial.ttf", "copyright by Nash");
ImageJpeg($dst_img,'',90);
ImageDestroy ($dst_img);
$schwarz = ImageColorAllocate ($dst_img, 0, 0, 0);
ImageTTFText ($dst_img, 12, 0, 10, 20, $schwarz, "arial.ttf", "copyright by Nash");
ImageDestroy ($dst_img);Muss ich das ImageDestroy schreiben, wird sonst nicht das ganze Bild gelöscht??
nein er löscht nur den Speicher den das Bild belegt!
Leider klappt das nicht, kann das sein, dass es an der Angabe von arial.ttf liegt, woher weiß ich wo arial.ttf liegt?
hehe das musst du natürlich mit auf den Server hochladen und den genauen Pfad angeben! Liegt die Fontdatei im gleichen Verzeichnis wie dein Script brauchst du natürlich nicht den genauen Pfad mit angeben.
Und geht das mit gif? Ich glaube dazu bräuchtest du eine ältere GD Lib, da ja gif rausgenommen worden ist ab der Version 1.8 oder so.
Gruß Christopha
Vielen, vielen Dank,
Nasch
He, so schnell, ich probiers mal aus ...
Und geht das mit gif?
Damit mein ich, ob ich auch ein Bild (gif) über mein Bild (Original) legen kann.
:-)
Damit mein ich, ob ich auch ein Bild (gif) über mein Bild (Original) legen kann.
wie legen? versteh ich nicht so ganz...?
:-)
Hi,
leider funktioniert das nicht mit dem Text :-(((
wie legen? versteh ich nicht so ganz...?
D.h. ich nehme ein anderes Bild (copyright.gif) und lege das über das zu erstellende Bild. Als Ausgabe kommt dann ein neues Bild heraus....
... eigentlich will ich nur anstatt des Textes ein Bild verwenden ...
Nasch
leider funktioniert das nicht mit dem Text :-(((
Hmmm warum nicht? Was gibts für Fehlermeldungen? Oder kommt nur das Bild und kein Text? Welche Version von GD? Gibts die Schriftart auf dem Server? Stimmen auch die X und Y Koordinaten? Die X,Y Koordinaten definieren nämlich den Startpunkt des ersten Zeichens!
D.h. ich nehme ein anderes Bild (copyright.gif) und lege das über das zu erstellende Bild. Als Ausgabe kommt dann ein neues Bild heraus....
ne glaube sowas geht nicht. Hab ich noch nicht gelesen oder gehört oder gesehn. Ein gif mit einem jpg Bild zuverschmelzen, kannste abhaken...
Nasch
Hi!
leider funktioniert das nicht mit dem Text :-(((
Hmmm warum nicht? Was gibts für Fehlermeldungen?
ich weiss worans liegt ... die FreeType-Bibliothek ist nicht installiert - muss mein Server-Admin noch machen! Lokal läuft es nämlich!
Schade. Kann ich irgendwie im Script testen ob die FreeType-Bibliothek installiert ist und abhängig davon das Copyright setzen?
Ich danke Dir für Deine Mühen...
Nasch
Hi!
Hi
ich weiss worans liegt ... die FreeType-Bibliothek ist nicht installiert - muss mein Server-Admin noch machen! Lokal läuft es nämlich!
ok, entweder disabled oder nicht installiert... naja dann haben wirs ja :)
Schade. Kann ich irgendwie im Script testen ob die FreeType-Bibliothek installiert ist und abhängig davon das Copyright setzen?
nein glaube ich nicht. Hab darüber auch nichts gefunden.
Ich danke Dir für Deine Mühen...
Bitte mach ich doch gerne!
LG Christoph
Nasch