Chat-Screenshots zusammenfügen
Wähle die Screenshots aus, die du beim Scrollen durch die Unterhaltung gemacht hast: Das Tool findet den doppelten Teil zwischen einem Screenshot und dem nächsten und behält ihn einmal; auch die obere Leiste und das Eingabefeld erscheinen nur einmal. Fehlt zwischen zwei Screenshots ein Stück, sagt es dir das, statt etwas zu erfinden.
Wann du es brauchst und warum Untereinanderlegen nicht reicht
Screenshots einer Unterhaltung braucht man, wenn die Unterhaltung das Handy verlassen muss: die im Chat getroffene Vereinbarung mit dem Vermieter, das Angebot, das per WhatsApp kam, die Bestellung, die laut Verkäufer nie angekommen ist. Wer sie bekommt, will nicht zwölf Bilder einzeln öffnen: Er will von oben nach unten lesen, wie auf dem Handy.
Viele Handys bieten einen Scroll-Screenshot, aber nicht überall: Unter Android funktioniert die Scroll-Aufnahme nur in Apps, die sie zulassen, und auf dem iPhone gibt es die Option „Ganze Seite“ nur in Safari, und sie speichert ein PDF, kein Bild.
Die Bilder einfach untereinanderzusetzen (dafür gibt es Bilder zusammenfügen) macht es hier nur schlimmer: Jeder Screenshot wiederholt das Ende des vorherigen, und mitten in der Unterhaltung tauchen Uhrzeit, Kontaktname und Eingabefeld jedes Mal wieder auf. Diese Seite findet die Stelle, an der sich zwei Screenshots überlappen, und fügt sie genau dort zusammen.
Wie es die Stelle findet, an der sie sich überlappen
Beim Scrollen bewegt sich der Inhalt, die Leisten bleiben stehen: Zwischen zwei aufeinanderfolgenden Screenshots gibt es einen Streifen identischer Zeilen, im zweiten nur weiter oben. Das Tool vergleicht das Ende des ersten mit dem Anfang des zweiten, den es Zeile für Zeile verschiebt, und sucht die Verschiebung, bei der der gemeinsame Streifen vollständig passt, von einem Rand zum anderen. Die Leisten stehen still und werden nicht mitgezählt.
Eine Zeile wird nicht Pixel für Pixel verglichen, sondern über bis zu 96 senkrechte Streifen, genauer über die mittlere Helligkeit jedes Streifens: Die Toleranz schluckt das Rauschen eines JPEGs mit Qualität 80 und verwechselt trotzdem keine zwei verschiedenen Textzeilen. Außerdem werden nur die Verschiebungen ausprobiert, bei denen schon mindestens drei Konturzeilen (der Rand einer Sprechblase, eine Textzeile) übereinstimmen: So ist bei 1080 mal 2340 Pixeln ein Übergang in wenigen Hundertstelsekunden gefunden.
Die Naht liegt in der Mitte des gemeinsamen Teils, weit weg von den Rändern. Oben bleibt die Leiste des ersten Screenshots mit ihrer Uhrzeit, unten die Leiste des letzten: jeweils einmal. Wenn du sie nicht willst, entferne das Häkchen, dann bleiben nur die Nachrichten.
In den Tests wird ein künstlicher Chat in Screenshots mit vorher festgelegten Überlappungen zerlegt: Bei PNGs muss das zusammengefügte Bild Pixel für Pixel identisch mit dem Original sein, bei JPEGs genau gleich hoch, denn eine Zeile zu viel an einem Übergang verschiebt alles, was danach kommt.
Einfarbiger Hintergrund, wo die Pixel nichts verraten
Der schwierige Fall ist nicht der Text, sondern die Leere. Eine Fläche mit einheitlichem Hintergrund passt bei jeder Verschiebung zu sich selbst: Besteht der gemeinsame Teil zweier Screenshots nur aus Hintergrund, können die Pixel nicht sagen, wie stark sie sich überlappen, und ein Programm, das trotzdem wählt, wählt zufällig.
Deshalb zählt es nicht die Zeilen, die übereinstimmen, sondern die Zeilen, die sich verändern und übereinstimmen: der Rand einer Sprechblase, eine Textzeile, eine Uhrzeit. Die Tests enthalten ein Paar, das 45 Zeilen Nachricht und 365 Zeilen Hintergrund gemeinsam hat: Jede Verschiebung legt Hintergrund auf Hintergrund, aber nur die richtige passt auch bei der Nachricht.
Ist der gemeinsame Teil nur Hintergrund, sagt das Tool das und verbindet die beiden Screenshots mit einer gut sichtbaren Trennlinie, statt zu raten; genauso, wenn wirklich ein Stück fehlt, denn von außen sehen die beiden Fälle gleich aus. Mit einem Foto als Chat-Hintergrund, das stillsteht, während die Nachrichten scrollen, stimmen die Zeilen nie überein und die Übergänge müssen von Hand gesetzt werden; ein dezentes Muster oder ein Farbverlauf als Hintergrund schadet nicht.
Wiederholte Nachrichten, wenn mehr als ein Übergang passt
Die andere Falle sind identische Zeilen. Bei fünf identischen „Ok, bis später!“ hintereinander passt das Ende eines Screenshots an mehreren Stellen zum Anfang des nächsten, an einer pro Nachricht: Kein Pixelvergleich kann wissen, welche die richtige ist.
Der kniffligste Fall ist die doppelt gesendete Nachricht, identisch, aber mit einer Minute Unterschied in der Uhrzeit. Legt man eine Kopie über die andere, passt jede Zeile der Nachricht, bis zur Uhrzeit, die nicht stimmt; der richtige Übergang teilt vielleicht nur das Ende einer Sprechblase, passt aber vollständig. Deshalb zählt eine Zeile, die einem Übergang widerspricht, als Beweis gegen ihn, und es gewinnt der, dem keine Zeile widerspricht. Die Tests enthalten 120 solcher Paare, an jeder Stelle rund um die beiden Nachrichten aufgenommen, dazu 60 Paare von einer Shopseite mit demselben Kasten in jeder Produktkarte: Keines davon wird stillschweigend falsch zusammengefügt.
Wenn die Pixel wirklich nicht reichen, ist der Übergang unsicher: Zuerst kommt der, der von Rand zu Rand passt, darunter die anderen zum Ausprobieren. Und wenn selbst der beste ein paar Zeilen hat, die nicht stimmen, zum Beispiel wegen einer Benachrichtigung über einem Screenshot, gilt er nicht als gefunden: Er wird zur Prüfung markiert und mit seiner Vorschau gezeigt.
Jeder Übergang hat außerdem eine manuelle Korrektur, Zeile für Zeile oder in Zehnerschritten. Sie hilft auch, wenn das Tool nichts findet, du aber weißt, dass sich die beiden Screenshots überlappen: Vergrößere den gemeinsamen Teil, bis die Sätze in der Vorschau nahtlos ineinander übergehen, und die Trennlinie verschwindet.
Wenn ein Stück fehlt oder die Reihenfolge falsch ist
Die Screenshots werden nach Namen sortiert, auch die später hinzugefügten: Bei Handys ist das die Reihenfolge, in der sie aufgenommen wurden. Mit den Pfeilen änderst du die Reihenfolge, und wenn ein Übergang nur andersherum passt, sagt dir der Hinweis, du sollst sie vertauschen; sind alle andersherum, weil du sie beim Hochscrollen im Chat gemacht hast, reicht ein Tipp auf „Reihenfolge umkehren“. Wird derselbe Screenshot zweimal geladen (das kommt vor, mit der Uhr eine Minute weiter), wird er übersprungen.
Wenn zwei Screenshots nichts gemeinsam haben, bleibt die Trennlinie im Bild, dunkelgrau mit einer weißen gestrichelten Linie, damit jeder, der es liest, sieht, dass dort ein Stück fehlt und nicht denkt, die Unterhaltung gehe ohne Unterbrechung weiter.
Sehr lange Bilder und die Grenzen des Browsers
Ein langer Chat wird zu einem sehr hohen Bild, und ein Browser zeichnet Bilder nicht beliebig hoch: Chrome, Edge und Firefox schaffen bis zu 32.767 Zeilen, Safari (und damit jeder Browser auf iPhone und iPad) 16.384 Zeilen und 16,7 Millionen Pixel, also etwa 15.500 Zeilen bei 1080 Pixeln Breite. Die Seite nutzt die Obergrenze deines Browsers; darüber kommt das Bild in mehreren Teilen heraus, geschnitten an einer Zeile mit einfarbigem Hintergrund zwischen zwei Nachrichten.
Das Format ist PNG, das verlustfrei ist und bei Chats, die aus einfarbigen Flächen bestehen, klein bleibt. Enthält die Unterhaltung Fotos, wird das PNG groß: Über 10 MB kommt das Bild als JPEG in hoher Qualität heraus, und die Seite sagt es dir.
Was es nicht macht
Es liest den Text nicht. Das zusammengefügte Bild bleibt ein Bild: Um die Wörter der Unterhaltung zu kopieren, brauchst du Text aus Bild (OCR). Es verdeckt nichts: Enthalten die Screenshots Telefonnummern, Adressen oder Namen, die du vor dem Senden abdecken musst, nutze zuerst Daten im Screenshot schwärzen. Und es macht keine Collagen aus Fotos nebeneinander, das ist die Aufgabe von Bilder zusammenfügen.
Es sendet nichts übers Netz. Die Screenshots werden im Browser geöffnet und zusammengefügt: Es gibt keinen Server, der sie empfängt. Soll aus der Unterhaltung ein PDF zum Anhängen werden, geht das mit Bilder in PDF.