Ich verwende zur Bildverkleinerung (nur JPG) folgende Funktion:
**function verkleinern($bild) //Funktion zur Bildverkleinerung
{
global $Ordnername;//Globale Variable deklarieren, damit sie funzt.
global $TNHoehe;
$neueHoehe=$TNHoehe;
// Bilddaten feststellen
$size=getimagesize("$PicPathIn"."$bild");
$breite=$size[0];
$hoehe=$size[1];
$neueBreite=intval($neueHoehe*$breite/$hoehe);
//$neueBreite=800; Ich geb lieber die Höhe vor!
//$neueHoehe=intval($hoehe*$neueBreite/$breite);
if($size[2]==1) {
echo "
GIF-Bilder werden nicht akzeptiert!";
}
Hab jetzt noch das ‚,100‘ an ImageJPEG angefügt. Bringt auch nix.
Ich lasse die Thumbnails ja ziemlich klein erstellen: Höhe=135px
Habe grade herausgefunden das es bei ein wenig größeren Einstellungen
scharf ist. Keine Ahnung warum.
Ich werd sie jetzt ein wenig größer erstellen lassen, und sie dann
beim Aufruf auf der Seite einfach per HTML mit der Höhe 135px anzeigen lassen. Das dürfte funzn.
Ich werd sie jetzt ein wenig größer erstellen lassen, und sie
dann
beim Aufruf auf der Seite einfach per HTML mit der Höhe 135px
anzeigen lassen. Das dürfte funzn.
wenn das browser skalierte besser aussieht, als das bei richtiger groesse gerenderte ist irgendetwas schrecklich schief gelaufen - magst du uns einen link nennen?
Aber mir is dabei noch was sehr interessantes aufgefallen:
Ich erstelle die Homepage am Laptop. Dort hab ich Mozilla und erkenne
deutliche Unterschiede (z.B. an der Schrift im 1. Beispiel) an den Bildern.
Jetzt hab ich die frage.htm mal am PC (mit IE und Mozilla)
angeschaut und es ist fast gar kein Unterschied mehr zu erkennen.
Dh. das ganze hängt irgendwie mit meinem scheiß-laptop zusammen
denk ich. Dort hab ich 1280x800 als Auflösung. Am PC hab
ich 1280x1024.
Aber mir is dabei noch was sehr interessantes aufgefallen:
Ich erstelle die Homepage am Laptop. Dort hab ich Mozilla und
erkenne
deutliche Unterschiede (z.B. an der Schrift im 1. Beispiel) an
den Bildern.
genau, dort sind heftige kompressionsartefakte.
Erkennst du Qualitätsunterschiede??
in dem im vom browser skalierten sind halt die linien kaputt, wie die browser das so tun.
wenn du am pc keinen utnercshied siehst, ist dein monitor extrem unscharf
a) beim verkleinern wird es unscharf, das geht nciht anders. die schaerfe durch das skalieren im browser wieder herzu stellen ist a schlecht, weil es z.b. leicht schraege linien kaputt macht, und zum anderen natuerlich auch den traffix abnorm vergroessert.
b) hast du dich wohl beim rumexperimentieren vertan, weil wenn ich das 360er hier mit imagejpeg(…,100) also 100% qualität sichere, dann ist meine datei 22kb gross, deine sind aber nur ca 5kb gross
in dem im vom browser skalierten sind halt die linien kaputt,
wie die browser das so tun.
wenn du am pc keinen utnercshied siehst, ist dein monitor
extrem unscharf
a) beim verkleinern wird es unscharf, das geht nciht anders.
a):die schaerfe durch das skalieren im browser wieder herzu
stellen ist a schlecht, weil es z.b. leicht schraege linien
kaputt macht, und zum anderen natuerlich auch den traffix
abnorm vergroessert.
b) hast du dich wohl beim rumexperimentieren vertan, weil wenn
ich das 360er hier mit imagejpeg(…,100) also 100% qualität
sichere, dann ist meine datei 22kb gross, deine sind aber nur
ca 5kb gross
zu a) Ja. ich habs jetzt nochmal probiert. Ich erkenne im Direkten vgl.
immer noch eine geringe Unschärfe. Aber ich weiß nicht warum ich vorher noch
ned bemerkt hab dass es mit dem (…,100) doch wirklich besser geworden ist. Ich hab irgendeinen Misst gebaut.
zu b) Ja, bei meinem jetztigen Versuch hat die Datei auch 22kb.
Obwohl ich nur mehr die Bildhöhe in der Function geändert hab.
Keine Ahnung wo ich mich da wieder mal blöd angestellt hab…
Fazit: Das (…,100) hat schon seine Wirkung gezeigt. Und in
Verbindung mit den besseren Funktionen ImageCreatetruecolor und
imagecopyresampled ist sie voll ok.
Naja. Viel Wind um so gut wie gar nix.
So wie die Function jetzt ist, ist sie ok und ist auf jeden
Fall weiter-zu-empfehlen.
Also: Problem gelöst. Wahrscheinliche Ursache: Dumm angestellt.
Vielen Dank!
Gruß marco