Zielgröße
Eine Datei unter die Größe bringen, die ein Formular verlangt
Manche Stellen, die Ihr Bild wollen, wollen es unter einer Anzahl Kilobytes. Das Feld für die Zielgröße nimmt diese Zahl und arbeitet auf sie zu, und es ist eine Obergrenze, kein Versprechen einer genauen Größe.
Kibibytes, Kilobytes und die Zahl auf dem Formular
Das Feld für die Zielgröße nimmt eine Anzahl Kibibyte. Ein Kibibyte sind 1024 Bytes und nicht 1000, ein Ziel von 200 sind also 204.800 Bytes. Sagt ein Formular 200 KB, kann es die dezimalen 200.000 Bytes meinen, und das sind etwa 195 KiB. Lesen Sie also die Einheit, die es benutzt, und rechnen Sie um, statt die Zahl zu übernehmen.
Der Unterschied zwischen den beiden Einheiten ist Rechnen, aus zwei Konstanten und sonst nichts: 1024 Bytes auf ein Kibibyte und 1000 Bytes auf ein dezimales Kilobyte. Schreiben Sie die Grenze zuerst in Bytes (200 dezimale KB sind 200.000 Bytes), und teilen Sie sie dann durch 1024: das ist die Zahl, die dieses Feld will.
| Eine Grenze, geschrieben als | Ein Ziel, das hineinpasst |
|---|---|
| 20 KB | 19 KiB |
| 50 KB | 48 KiB |
| 100 KB | 97 KiB |
| 200 KB | 195 KiB |
| 500 KB | 488 KiB |
| 1 MB | 976 KiB |
Umgekehrt gelesen ist es dasselbe Rechnen mit vertauschten Zahlen, und das ist die Richtung, die wehtut. Ein Ziel von 100 sind mehr Bytes, als ein dezimales 100 KB erlaubt, sodass eine Datei, die genau bei diesem Ziel herauskommt, immer noch über der Ihnen gegebenen Grenze liegen kann. Runden Sie die Zahl ab statt auf, und die Datei bleibt darunter. Nichts hier ist eine Einsparung oder ein Prozentsatz; es sind in beiden Richtungen dieselben zwei Konstanten.
Ein Megabyte auf einem Datenblatt ist nicht immer dezimal. Definiert das Blatt sein eigenes MB in 1024-Byte-Einheiten, ist eine Grenze von 1 MB gleich 1024 KiB, und 1024 ist es, was dieses Feld nimmt. Wo ein Blatt eine Zahl ganz ohne Einheit gibt, gehört die Mehrdeutigkeit zu dem Blatt und nicht zu dem Werkzeug, und die fertige Zeile entscheidet den Fall: sie zeigt die Größe vorher und die Größe nachher in KiB, der Einheit, die dieses Feld nimmt, sodass sich eine KiB-Grenze direkt an ihr ablesen lässt. Für eine dezimale Grenze vergleichen Sie die Zeile mit der rechten Spalte der Tabelle, oder lesen Sie die Größe der heruntergeladenen Datei in Bytes.
Ein Ziel ist eine Obergrenze mit einem Band darunter
Das ist der Unterschied, der auf dieser Seite am meisten zählt. Ein Ziel ist eine Grenze, bei der die Ausgabe liegen muss oder darunter, keine Größe, die das Werkzeug erzeugt. Das Werkzeug kodiert zuerst mit Ihrer Qualitätseinstellung und sucht dann nach einer Qualität, deren Ausgabe unter Ihrer Zahl bleibt, in die eine Richtung oder die andere.
Liegt die erste Kodierung über dem Ziel, senkt die Suche die Qualität, bis hinunter zu 1, bis die Datei passt. Kommt die erste Kodierung weit unter dem Ziel heraus, geht die Suche in die andere Richtung: nach oben ab Ihrer Einstellung, niemals über 100, für die höchste Qualität, die noch passt. Nur diese Suche nach oben ist durch Ihre Einstellung begrenzt. Sie nach unten zu senken ist der Weg, auf dem das Werkzeug Ihre Zahl erreicht, sodass eine Datei, die über dem Ziel lag, rauer zurückkommen kann als die Qualität, die Sie gewählt haben.
Die Suche zielt auf ein Band: höchstens Ihre Zahl und mindestens 95% davon. Die Qualität bewegt sich in ganzen Zahlen, und ein Schritt kann über das ganze Band springen, sodass die Datei darin landet, wenn ein Schritt hineinfällt, und die nächstliegende Kodierung unter Ihrem Ziel ist, wenn keiner hineinfällt. Das ist die ehrliche Form der Zusage. Wenn eine Qualität passt, liegt die Datei an Ihrer Zahl oder darunter; sie ist kein Versprechen, dass sie knapp unter Ihrer Zahl landet oder innerhalb von 5% davon.
Ein Ziel über dem, was das Format überhaupt herstellen kann, ist einen eigenen Fall wert. Die Qualitätsskala endet bei 100, ein weit größeres Ziel als die beste eigene Kodierung des Bildes kann also nicht gefüllt werden, indem Sie die Datei größer machen. Dort bekommen Sie die größte Datei, die das Format gemacht hat, und die liegt immer noch unter Ihrer Zahl, und die Zeile meldet das Ziel als erreicht, weil die Datei an der Obergrenze oder darunter liegt. Das Urteil der Zeile fällt über die Bytes, die Sie tatsächlich herunterladen, gezählt nach jedem EXIF, das Sie behalten wollten, Sie hören also nie, dass eine Grenze eingehalten wurde, wenn die Datei auf Ihrer Platte darüber liegt.
Welche Größen eine Qualitätseinstellung erreicht und welche zuerst skaliert werden müssen
Qualität ist der einzige Regler, den diese Suche ausgibt, also hat die Frage, ob Ihre Zahl überhaupt möglich ist, eine ehrliche Antwort mit mehr als einem Teil. Der gewöhnliche Fall: eine kleinere Obergrenze ist nur ein schmaleres Band, in dem man landen muss. Die Suche senkt die Qualität ab Ihrer Einstellung, bis hinunter zu 1, bis die Datei passt, und füllt von Ihrer Einstellung nach oben auf, wenn die erste Kodierung weit unter Ihrer Zahl herauskommt.
Drei Fälle kommen anders heraus als dieser gewöhnliche, und jeder hat seine eigene Antwort.
Ein Bild, das bei Qualität 1 noch über dem Ziel liegt, erreicht es nicht. Qualität 1 ist der Boden der Skala, also bleibt keine niedrigere Einstellung übrig, die die Suche ausgeben könnte, und die Zeile meldet die Verfehlung. Was zum Ausgeben übrig bleibt, sind Pixel.
Ein PNG kann die Suche gar nicht ausgeben, weil es verlustfrei ist und die Qualität nicht sein Regler ist. Ein eigener Abschnitt weiter unten behandelt diesen Fall.
Ein behaltener EXIF-Block wird nach der Suche geschrieben und nicht in das Budget, auf das die Suche hingearbeitet hat, sodass eine passende Datei über der Obergrenze herauskommen kann, sobald Sie das Behalten der Metadaten einschalten. Lassen Sie diese Umschaltung aus, wenn eine harte Grenze zählt, und das ist auch die Voreinstellung.
Eine Obergrenze über dem, was Qualität 100 herstellt, ist auch kein Fehlschlag: Sie bekommen die Kodierung in Qualität 100, die immer noch unter Ihrer Zahl liegt, und die Zeile sagt, das Ziel sei erreicht. Der Abschnitt oben setzt diesen Fall vollständig auseinander.
Die Reihenfolge, die funktioniert, ist also in jedem Fall dieselbe: setzen Sie eine Breite mit der Größenänderung und lassen Sie das Ziel im selben Durchlauf, denn das Werkzeug skaliert zuerst und sucht dann die Qualität auf dem kleineren Bild. Die halbe Breite ist ein Viertel der Pixel, und die Größe fällt mit den Pixeln, während die Qualität nur verändert, was jedes Pixel kostet. Auch das Ausgabeformat bewegt die Zahl, und die WebP-Seite behandelt diese Wahl, einschließlich der Tatsache, dass eine JPEG-Ausgabe Transparenz vor dem Kodieren auf Weiß flachdrückt.
Wenn die Zeile sagt, das Ziel sei verfehlt
Eine Verfehlung lohnt das Lesen, bevor Sie es erneut versuchen. Sie wurde an der Datei entschieden, die Sie herunterladen, und nicht an der Kodierung, die nahe dran war, also wird eine Datei, bei der die Suche beinahe gelandet wäre, als über der Grenze gemeldet, wenn sie es ist.
Es gibt drei ehrliche Gründe für eine Verfehlung.
Skalieren Sie im selben Durchlauf: setzen Sie eine Breite mit der Größenänderung und lassen Sie das Ziel, wo es ist. Qualität 1 ist der Boden der Suche, also lässt sich eine Datei, die dort verfehlt wird, nicht durch weiteres Senken der Qualität retten, und weniger Pixel können es, weil die Größe mit ihnen fällt.
Wenn Sie das Behalten der Metadaten eingeschaltet haben, wird der EXIF-Block nach der Suche geschrieben, sodass eine passende Datei über der Obergrenze herauskommen kann. Schalten Sie diese Umschaltung aus und führen Sie den Durchlauf erneut aus, bevor Sie skalieren.
Ist die Datei ein PNG, lief die Suche überhaupt nie, also gibt es keinen zweiten Versuch, auf den Sie warten müssten, und nichts einzustellen. Der Abschnitt unten behandelt, was ein PNG kann und was nicht.
Wenn Sie das Ergebnis doch behalten, beurteilen Sie es an den beiden Vorschauen, die die Zeile Ihnen gibt: das Bild, das Sie gewählt haben, neben dem, das Sie bekommen. Dieser Vergleich entscheidet, ob die Datei in dieser Größe einen Wert hat.
Ein PNG unter einer Größengrenze
PNG ist verlustfrei und ignoriert die Qualitätseinstellung vollständig, und das ist der ganze Grund, warum sich ein Ziel auf einem PNG anders verhält als ein Ziel auf einem JPEG. Es gibt keinen Regler zum Herunterdrehen, also hat die Suche nichts auszugeben: ein PNG, dessen erste Kodierung über Ihrer Zahl liegt, bekommt keinen Qualitätsschritt, und nur der optimierende Durchgang unten kann es noch unter Ihre Zahl bringen.
Es gibt noch einen Durchgang, und es lohnt sich, ihn zu kennen. Jede PNG-Ausgabe geht durch einen zweiten optimierenden Durchgang, und seine Bytes werden nur behalten, wenn sie weniger sind als die der ersten Kodierung. Also kann ein PNG kleiner zurückkommen und unter ein Ziel fallen, das die erste Kodierung verfehlt hat, und kann es ebenso gut nicht. Nichts hier lässt diesen Durchgang nach Ihrer Zahl suchen: er liefert entweder weniger Bytes oder er tut es nicht.
Das lässt zwei ehrliche Wege zu einem kleineren PNG. Weniger Pixel wirken in jedem Format, also ist der erste Versuch eine Größenänderung. Auch ein verlustbehaftetes Ausgabeformat wirkt, und dort hat die Qualitätssuche einen Regler zum Ausgeben, also ist die Umwandlung des PNG in WebP die Antwort, wenn die Obergrenze weit unter dem liegt, was eine verlustfreie Datei dieses Bildes erreichen kann. Das ist ein Handel und kein freier Gewinn: was der Encoder aufgibt, um die Zahl zu erreichen, sehen Sie sich in der Vorschau an, bevor Sie die Datei behalten.
Metadaten behalten fügt Bytes nach der Suche hinzu
Das ist eine Feinheit, die Leute überrascht. Die Größensuche läuft, bevor ein EXIF-Block geschrieben wird, weil die Encoder standardmäßig keinen schreiben und der Block ganz am Ende hinzukommt, wenn Sie ihn behalten wollen. Der Block ist also nicht in dem Budget, auf das die Suche hingearbeitet hat.
Das Werkzeug geht damit ehrlich um, statt es stillschweigend zu übergehen: Es zählt die endgültigen Bytes, den Block eingeschlossen. Schiebt das Behalten der Metadaten die Datei über Ihr Ziel, meldet die Zeile das Ziel als verfehlt, obwohl die Kodierung allein darunter lag. Lassen Sie die Umschaltung aus, wenn eine harte Grenze zählt, und das ist auch die Voreinstellung.
Das Urteil lesen
Jede fertige Zeile trägt eine von zwei Aussagen, wenn Sie ein Ziel setzen: dass die Datei daran oder darunter liegt, oder dass sie es nicht tut. Lesen Sie sie, statt sie anzunehmen. Ein Durchlauf meldet ein verfehltes Ziel nie als erreicht, eine Zeile, die sagt, es sei verfehlt worden, bedeutet also, dass die Datei auf Ihrer Platte über der Grenze liegt. Der Abschnitt über die Verfehlungen oben sagt, welche Änderung das behebt.
Wenn eine Datei abgelehnt wird
Eine Eingabe über 32 MiB wird schon wegen ihrer Größe abgewiesen, bevor ihre Bytes gelesen werden. Eine Eingabe über 40.000.000 Pixel wird gelesen und dann abgewiesen, bevor irgendetwas sie dekodiert, weil die Pixelanzahl erst bekannt ist, wenn ihr Kopf gelesen wurde. Beide Zahlen sind fest und keine Messung Ihrer Maschine. Die abgewiesene Datei nennt die Grenze, die sie abgewiesen hat, und jede andere Datei im Durchlauf wird trotzdem fertig.
Was Sie als Nächstes tun können
Setzen Sie das Ziel in KiB, lesen Sie das Urteil, und wenn es verfehlt wurde, skalieren Sie das Bild und führen Sie es erneut aus, statt die Qualität weiter zu senken. Kam die Grenze aus einem Formular oder einem Portal statt aus Ihrer eigenen Wahl, liest die Seite zu Grenzen für Fotos dieses Blatt und sagt, welchen Teil davon dieses Werkzeug einhalten kann. Sind Ihre Arbeiten meistens Fotos, behandelt die Seite zu JPEG die Qualitätsseite genauer, und ist das Format die offene Frage, behandelt die WebP-Seite das.
Häufige Aufgaben
Mehr zu diesem Thema
Verwandte Themen: Erste Schritte
Probieren Sie ein Ziel an Ihrer eigenen Datei
Das Werkzeug steht auf der Startseite. Setzen Sie ein Ziel in KiB und lesen Sie, was jede Zeile dazu sagt.