Zum Hauptinhalt springen
SubtitleMatrix

Untertitelfarbe ändern

Text und GestaltungTextfarbe ändern
Oder Untertiteltext einfügen

Optionen

#ffcc00

Wählen Sie die Farbe, in die sich die ganze Datei verwandelt. Vorhandene Farben auf einer Zeile werden ersetzt statt gestapelt, ein Lauf hinterlässt also genau eine Farbe pro Zeile; Fett, Kursiv, Unterstrichen und Karaoke-Zeitangaben bleiben in Ruhe. Geschrieben wird nur #rrggbb — das ist die eine Schreibweise, die alle neun akzeptierten Formate exakt tragen können. Nicht jeder Player zeichnet Inline-Farbe, und SRT hat keinen Standard dafür: Die Datei enthält die Farbe, ob sie erscheint, hängt aber vom Player ab.

Diese Seite färbt jede Zeile einer Untertiteldatei in einer einzigen Farbe ein. Sie liest die Datei nach ihrem tatsächlichen Inhalt statt nach der Endung, derselbe Lauf funktioniert also für neun Formate, und jedes erhält die Farbe in der Schreibweise, die es ohnehin versteht: <font color="#rrggbb"> in SRT, WebVTT, SBV und SAMI, einen Override-Block in ASS und SSA, ein <span tts:color> in TTML, das Tag-Array in JSON und dieselbe Inline-Auszeichnung in den zitierten Zellen einer CSV.

Die gewählte Farbe ersetzt das Vorhandene, statt sich darüberzustapeln. Eine Zeile, die teilweise grün ankam, kommt ganz in der neuen Farbe zurück – eine Spanne über die ganze Zeile statt eines <font> in einem <font>, das manche Player als innere Farbe darstellen und andere ganz ignorieren. Fett, Kursiv, Unterstreichung und Karaoke-Timing bleiben, wo sie waren, und eine ausgezeichnete Spanne deckt weiterhin genau dieselben Zeichen ab.

Es ist eine Farbe für die ganze Datei, mit Absicht. Untertitelfarbe ist meist eine Lieferentscheidung – ein Hausweiß, ein Gelb, das eine helle Szene übersteht, eine Farbe für eine bestimmte Art von Sprecher –, und eine Datei mit zwei Farben bräuchte jemanden, der entscheidet, welche Zeilen welche bekommt; das ist ein Fall für einen Texteditor und nicht für einen einzelnen Wert im Panel. Ein Block ohne Text bekommt nichts: Es gibt keine Spanne zum Färben, und eine Farbspanne der Länge null wäre ein Tag von der Größe nichts.

Nichts wird hochgeladen, nichts verlässt den Browser-Tab. Farbe ist eines der wenigen Stilmittel, die eine Untertiteldatei ohne Renderer tragen kann; ob der Betrachter sie sieht, entscheidet jedoch der Player – diese Seite schreibt die Markierung, und die Fragen unten sagen offen, auf welcher Seite dieser Grenze sie steht.

Beispiele

Zwei schlichte SRT-Blöcke

Eingabe

1
00:00:01,000 --> 00:00:02,000
Hello there.

2
00:00:03,000 --> 00:00:04,000
Second line.

Ausgabe

1
00:00:01,000 --> 00:00:02,000
<font color="#ffcc00">Hello there.</font>

2
00:00:03,000 --> 00:00:04,000
<font color="#ffcc00">Second line.</font>

Ein <font> pro Zeile, um die ganze Zeile gelegt, während Zeitcodes und Leerzeilen genau so ankommen, wie sie waren. Das Tag ist eine Spanne über die Zeile und keine Eigenschaft des Blocks; deshalb bekommt ein Block mit zwei hart umbrochenen Zeilen zwei Tags und nicht eines über den Umbruch hinweg.

Eine Zeile mit vorhandener Farbe und Kursivschrift

Eingabe

1
00:00:01,000 --> 00:00:02,000
<i>Hello</i> <font color="#00ff00">there</font>.

Ausgabe

1
00:00:01,000 --> 00:00:02,000
<font color="#ffcc00"><i>Hello</i> there.</font>

Die grüne Spanne wird entfernt, bevor die neue Farbe aufgetragen wird; das Ergebnis ist ein <font> um die Zeile mit der Kursivschrift darin – kein <font> in einem <font>, wo die Verschachtelungsregeln vom Player abhängen und das Ergebnis auf jedem Gerät still anders ausfällt. Was grün war, hat jetzt dieselbe Farbe wie alles andere, was die ehrliche Lesart eines Panels mit genau einer Farbe ist.

Derselbe Block in einer ASS-Datei

Eingabe

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize
Style: Default,Arial,20

[Events]
Format: Layer, Start, End, Style, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,Hello there

Ausgabe

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize
Style: Default,Arial,20

[Events]
Format: Layer, Start, End, Style, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,{\c&H0000CCFF&}Hello there{\c}

ASS kennt kein <font>; die Farbe ist ein Override-Code, der vor dem Text öffnet und durch ein bloßes {\c} danach geschlossen wird, damit der Rest der Zeile nicht versehentlich mitgefärbt wird. Das PrimaryColour des Stylesheets wird nicht bearbeitet – der Override auf Blockebene ist die stärkere Anweisung und die einzige, die nur diesen Block betrifft.

Ein Block ohne Text

Eingabe

1
00:00:01,000 --> 00:00:02,000

2
00:00:03,000 --> 00:00:04,000
Hi.

Ausgabe

1
00:00:01,000 --> 00:00:02,000

2
00:00:03,000 --> 00:00:04,000
<font color="#ffcc00">Hi.</font>

Der leere Block bleibt leer, statt ein <font> um nichts zu bekommen. Ein leerer Block ist ohnehin ein strukturelles Problem – die Prüfseiten melden ihn –, und ein Markup-Tag ohne Text darin würde das nicht beheben, sondern nur vor einer Suche verstecken. Der Block mit Text wird normal gefärbt.

Häufige Fragen

Welche Formate schreibt diese Farbseite, und wie sieht die Markierung in jedem aus?

Neun: SRT, WebVTT, ASS, SSA, SBV, SAMI, TTML, JSON und CSV. SRT, WebVTT, SBV und SAMI nehmen <font color="#rrggbb">, ASS und SSA einen Override {\c&H…&}, der mit {\c} geschlossen wird, TTML nimmt <span tts:color="#rrggbb">, JSON schreibt die Farbe als Tag-Spanne über die Zeile, und eine CSV behält dieselbe <font>-Auszeichnung in ihrer zitierten Textzelle. Formate ohne Ort für Inline-Farbe werden von dieser Seite gar nicht angenommen – eine LRC- oder MicroDVD-Datei hat keine Farbsyntax, ein Lauf dort würde eine Änderung melden und nichts schreiben.

Warum steht in der ASS-Ausgabe &H0000CCFF&, obwohl ich #ffcc00 gewählt habe?

Weil eine ASS-Farbe ihre Bytes in umgekehrter Reihenfolge schreibt: &HAABBGGRR, zuerst der Alphawert, dann die Paare für Blau, Grün und Rot. #ffcc00 ist Rot 255, Grün 204, Blau 0, daraus wird also Alpha 00, Blau 00, Grün CC, Rot FF – &H0000CCFF&. Der Wert ist die gewählte Farbe, und ein Player, der sie anzeigt, zeigt dasselbe Gelb; die Zahlen sehen nur umgestellt aus, weil das Format sie von hinten nach vorn speichert.

Zeigt wirklich jeder Videoplayer die neue Farbe an?

Nein, und das ist die ehrliche Grenze dieser Seite. <font color> gehört nicht zur SRT-Spezifikation – es ist eine Auszeichnung, die die meisten Player dulden und manche ignorieren –, und ASS-Override-Codes werden von libass-basierten Playern wie VLC und mpv beachtet, von jedem Hardware-Receiver aber nicht. Die Seite schreibt die Markierung korrekt, und das Ergebnis ist in der Datei selbst nachprüfbar; ob ein bestimmter Player sie zeigt, entscheidet dieser Player. Muss die Farbe auf dem Bildschirm garantiert sein, muss sie ins Bild eingebrannt werden, und das ist eine andere Aufgabe.

Was passiert mit Farben, die die Datei bereits hatte?

Sie werden ersetzt und nicht übereinandergelegt. Jede Farbspanne einer Zeile wird zuerst entfernt, dann wird eine Spanne über die ganze Zeile gesetzt; das Ergebnis ist ein einzelnes <font> statt eines <font> in einem <font>. Verschachtelte Farb-Tags sind der Fall, bei dem Player am stärksten auseinandergehen – manche nehmen die innere, manche die äußere, manche plätten beide –, eine durch diese Seite gelaufene Datei enthält also genau eine eindeutige Antwort.

Färbt die Seite einzelne Wörter oder die ganze Untertiteldatei?

Die ganze Datei, eine Farbe, jede Zeile. Es gibt auf dieser Seite keinen Bereich pro Block oder pro Wort, und das ist Absicht: Das Panel hält einen einzigen Wert, und ein Lauf, dessen Ergebnis davon abhinge, welche Blöcke man angeklickt hat, wäre aus der Datei nicht reproduzierbar. Eine Zeile, in der ein Wort hervorgehoben werden soll, ist eine Textbearbeitung und keine Farbänderung; die Suchen-und-Ersetzen-Seiten dieser Website erledigen den gezielten Teil davon.

Bleiben Fett, Kursiv, Unterstreichung und Karaoke-Timing beim Färben erhalten?

Sie bleiben erhalten, und ihre Spannen hängen weiterhin an denselben Zeichen. Nur Farbspannen werden entfernt und neu gesetzt; die anderen vier Arten bleiben unberührt, ein kursives Wort innerhalb einer Zeile bleibt also innerhalb der neuen Farbe kursiv. In ASS bedeutet das, dass {\i1} und das schließende {\i0} weiterhin an denselben Stellen um den Text stehen, mit dem Farb-Override davor geöffnet und danach geschlossen.

Verwandte Werkzeuge