Skift placering af undertekster
Eller indsæt underteksttekst
Indstillinger
Ni forudindstillede felter plus en fjernelse. Markøren, der skrives, er {\anN} i numerisk-tastaturrækkefølge – 7/8/9 er den øverste række, 4/5/6 den midterste, 1/2/3 den nederste – og den sættes foran hver tekstbloks første linje. ASS og SSA læser den tilbage som en rigtig justeringskode; i SRT er den bogstavelig tekst, som libass, VLC og mpv respekterer, og enklere afspillere viser den som tekst. Eksisterende \pos-koordinater røres aldrig. Vælg den sidste mulighed for at fjerne positionsmarkører i stedet for at tilføje en.
Dette værktøj flytter hver tekstblok i en undertekstfil til en af ni skærmpositioner eller fjerner positionsmarkøren fra en fil, der allerede har en. Det skriver en `{\anN}`-justeringskode i begyndelsen af hver tekstbloks første linje, hvor N nummererer cellerne som på et numerisk tastatur: `7` `8` `9` hen over toppen, `4` `5` `6` ned ad midten, `1` `2` `3` langs bunden. Det layout er ikke en læserækkefølge, og sidens egne eksempler findes især for at gøre det umuligt at vælge øverst til venstre og få nederst til venstre ved et uheld.
Markøren er det ene stykke placering, som tre formater er enige om. I ASS og SSA er den en lovlig override-kode, der læses tilbage i tekstblokken som dens eget felt og skrives igen i den dokumenterede rækkefølge bag en eventuel `\pos` — så en fil, der aldrig forlader ASS, overlever rundturen præcis. I SRT findes der slet ingen placeringssyntaks, så markøren skrives som bogstavelig tekst foran linjen: libass-baserede afspillere som VLC og mpv respekterer den, og en afspiller, der ikke kender den, vil printe de fire tegn på skærmen. Siden siger det ligeud i stedet for at love en placering, den ikke kan garantere.
Position behandles som en egenskab ved hele tekstblokken, så markøren sættes kun foran den første linje, også når tekstblokken er to eller tre linjer lang. En eksisterende `\pos(x,y)` lades i fred: en pixelkoordinat låser tekstblokken til én skærmstørrelse og går i stykker på alle andre, mens en justeringskode lader afspilleren beregne positionen selv, og at flytte en tekstblok, som nogen har placeret i hånden, er ikke det, denne side blev bedt om.
At vælge Fjern i positionslisten er en rigtig instruktion og ikke en tiende position. Den fjerner den indledende markør og den gemte justering fra hver tekstblok — den eneste måde at få en SRT tilbage til sin almindelige, markørfri form — mens en markør skrevet midt i en linje lades, hvor den er, fordi den er replik og ikke placering. Intet uploades, og tidsstemplerne røres aldrig.
Eksempler
To almindelige SRT-tekstblokke flyttet til øverst i midten
Input
1
00:00:01,000 --> 00:00:02,000
Hello there.
2
00:00:03,000 --> 00:00:04,000
Second line.
Resultat
1
00:00:01,000 --> 00:00:02,000
{\an8}Hello there.
2
00:00:03,000 --> 00:00:04,000
{\an8}Second line.
`\an8` er cellen øverst i midten — den midterste tast på tastaturets øverste række. Markøren sættes i begyndelsen af teksten og ikke på sin egen linje, og tidsstemplerne, tekstbloknumrene og de tomme linjer er urørte, så filen stadig er en gyldig SRT, der blot bærer fire ekstra tegn pr. tekstblok.
Samme fil i øverste venstre og nederste venstre hjørne
Input
1
00:00:01,000 --> 00:00:02,000
Hello there.
Resultat
1
00:00:01,000 --> 00:00:02,000
{\an7}Hello there.
Øverst til venstre er `7`, mens nederst til venstre er `1` — seks fra hinanden, fordi nummereringen følger et tastatur og ikke en læserækkefølge. Det er den tilknytning, der oftest bliver forkert, når man gør det i hånden, og derfor har hver af de ni forudindstillinger sit eget eksempel på denne side: et enkelt ombyttet ciffer er ellers usynligt, indtil nogen ser videoen.
Flytning af en ASS-tekstblok, der allerede var øverst til venstre
Input
[Script Info]
ScriptType: v4.00+
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,,0,0,0,,{\an7\i1}Hello there{\i0}
Resultat
[Script Info]
ScriptType: v4.00+
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,,0,0,0,,{\an2}{\i1}Hello there{\i0}
Den gamle `\an7` ryddes, før `\an2` skrives, så tekstblokken bærer én justering i stedet for to — en dublet ville efterlade afspilleren med den, der kommer sidst, hvilket er en værdi, ingen i denne kørsel valgte. Kursivparret bliver præcis, hvor det var. I ASS er markøren en rigtig override-kode, så intet her vises som tekst på skærmen.
Fjernelse af markører fra en fil med to forskellige
Input
1
00:00:01,000 --> 00:00:02,000
{\an8}Hello there.
2
00:00:03,000 --> 00:00:04,000
{\an2}Second line.
Resultat
1
00:00:01,000 --> 00:00:02,000
Hello there.
2
00:00:03,000 --> 00:00:04,000
Second line.
Fjern fjerner, hvad der end stod, og ikke kun den forudindstilling, du selv ville have valgt, og skriver intet tilbage. En fil, der kommer ud af denne kørsel, afspilles på afspillerens egen standardposition, og det er pointen: det er den eneste vej tilbage fra en markør til ren tekst, fordi ingen position udtrykkes som fraværet af en.
Ofte stillede spørgsmål
Hvilken skærmposition er `{\an1}` på, og hvorfor begynder den ikke øverst til venstre?
`1` er nederste venstre hjørne. De ni værdier følger det numeriske tastatur: `7` `8` `9` er den øverste række celler, `4` `5` `6` den midterste, `1` `2` `3` den nederste. Så øverst til venstre er `7`, midten er `5`, og nederst til højre er `3`. Sidens positionsliste er skrevet i læserækkefølge og oversættes til disse tal for dig, hvilket er den vigtigste grund til at bruge den i stedet for at redigere markøren i hånden.
Virker denne side på WebVTT-, SAMI- eller TTML-filer?
Nej, og listen over accepterede formater er kort med vilje: kun SRT, ASS og SSA. WebVTT og TTML har deres egen placeringssyntaks — cue-indstillinger som `line:` og `align:` eller `tts:`-attributter — og denne side skriver dem ikke; at acceptere dem ville betyde, at kørslen rapporterer en positionsændring, mens filen kommer uændret ud. Samme ræsonnement udelukker JSON, hvis positionfelt har fem vandrette værdier i stedet for ni celler.
Er markøren synlig som tekst i en SRT-fil?
Det afhænger af afspilleren, og denne side kan ikke ændre det. SRT har ingen placeringssyntaks, så `{\an8}` gemmes som almindelige tegn i begyndelsen af linjen. Afspillere bygget på libass — VLC og mpv blandt dem — læser den som en justeringsinstruktion og placerer tekstblokken derefter; enklere afspillere behandler den som tekst og viser de fire tegn på skærmen. Skal placeringen garanteres på enhver enhed, skal tekstblokken brændes ind i billedet, og det ligger uden for, hvad en undertekstfil kan.
Bliver en eksisterende `\pos(x,y)` overskrevet af den nye position?
Nej — `\pos` lades præcis, som den var. En pixelkoordinat og en justeringskode er forskellige instruktioner: `\an` beder afspilleren beregne positionen for den skærm, den er på, mens `\pos` låser tekstblokken til ét punkt ved én opløsning. At fjerne en håndplaceret `\pos` ville fortryde bevidst arbejde, så denne side skriver kun justering og rydder kun en tidligere justering, aldrig en koordinat.
En tekstblok er to linjer lang — får hver linje sin egen markør?
Kun den første linje får en, fordi en position tilhører tekstblokken og ikke linjen. En markør på hver linje ville i bedste fald være overflødig og i ASS være en anden override-blok, der gør det samme som den første. Når markøren fjernes, gælder samme regel omvendt: kun en markør helt foran den første linje fjernes, og en, der står midt i en sætning, behandles som en del af replikken.
Hvad sker der, hvis jeg anvender samme position to gange på en ASS-fil?
Intet — den anden kørsel giver en byte-identisk fil og rapporterer, at ingen tekstblok blev ændret. Siden rydder enhver eksisterende markør, før den nye skrives, så en gentagen anvendelse af en forudindstilling, filen allerede har, fjerner og tilføjer de samme fire tegn. Det betyder noget, når en fil går gennem en gennemlæsningsrunde: at køre siden igen for at være sikker på, at positionen er anvendt, kan ikke flytte noget, og downloadet er den samme fil og ikke en kopi med noget stiltiende anderledes i.