Jevn ut linjeskift i undertekster
Eller lim inn underteksttekst
Innstillinger
Én boks, fem valg, og hvert valg har sin egen side. Bryt legger hver tekstblokk om til kolonnetallet, som like gjerne kan forkorte en linje som var for lang, som det kan trekke en kort linje opp igjen. Del lange linjer bryter bare linjene som er over tallet og lar resten stå nøyaktig som de var. Balanser beholder antallet linjer hver tekstblokk allerede har og flytter ordene mellom dem til den lengste linjen er så kort den kan bli. Slå sammen setter hver tekstblokk på én linje. Begrens lar hver tekstblokk som allerede er innenfor linjeantallet, være. Denne siden fyller boksen med valget tittelen navngir og lister ingen andre.
Hvilken bildefrekvens tidene telles i. På formatsidene er det dette MicroDVD trenger, fordi det lagrer tid som bildenummer. På sidene for bildefrekvens er det frekvensen filen ble tidsstyrt mot — versjonen undertekstene ble laget for — og sidens andre boks tar frekvensen til videoen du skal bruke dem med. 23,976, 24, 25, 29,97, 30, 50, 59,94 og 60 er de vanlige. Tar du feil, forskyves hele tidslinjen, og på bildefrekvenssidene forskyves den med et forhold i stedet for et fast beløp.
Denne siden jevner ut linjene en blokk allerede har. Den beholder antall linjer nøyaktig slik filen skrev dem og flytter ord mellom dem til den lengste blir så kort den kan bli. En blokk som kommer inn på to linjer på 63 og 5 kolonner, går ut på to linjer på 33 og 35, og blokken ved siden av som allerede var jevn, flytter seg ikke i det hele tatt.
Det er dette som skiller siden fra de som bryter eller deler. Bryting arbeider mot et kolonnetall du setter og står fritt til å legge til eller fjerne linjer; delingssiden rører bare linjer som er over tallet. Her er antall linjer ikke en inndata i det hele tatt — det er et faktum lest fra filen, tatt som noe du eller avspilleren din allerede har avgjort — og det eneste som endres, er hvor ordene sitter inne i det.
Regelen siden følger, er at den lengste linjen skal være så kort som mulig, som ikke er det samme som å spre ordene jevnt. Ord har forskjellig lengde, så å dele ordene i like store antall gir én lang linje og én kort. Siden spør i stedet hvor smale linjene kunne være hvis blokken fortsatt hadde så mange av dem, og legger dem ut til den bredden. I praksis kommer de to linjene ut seende like lange, som er det du legger merke til på skjermen.
Noen blokker får stå helt i fred, og siden sier det ved å ikke rapportere noe i stedet for å hevde en vellykket kjøring. En blokk med én linje har ingen andre linje å flytte ord inn i. En blokk der hver linje allerede holder ett eneste ord, er så kort som så mange linjer kan bli. Og en linje som begynner med en tankestrek, markerer et talerbytte: de blokkdelene holdes atskilt fra hverandre, fordi å flytte halvparten av den ene personens linje inn i den andres ikke er en jevn deling men en sammenblanding. Alt kjører i nettleseren din, uten opplasting, på tvers av de elleve formatene som bærer mer enn én linje per blokk: SRT, WebVTT, ASS, SSA, SBV, SAMI, LRC, MicroDVD, TTML, JSON og CSV.
Eksempler
En kort andre linje og en lang første
Inndata
1
00:00:01,000 --> 00:00:04,000
We could take the train and be there by six
or wait for the later one.
Resultat
1
00:00:01,000 --> 00:00:04,000
We could take the train and be there
by six or wait for the later one.
Den første linjen var 43 kolonner og den andre 26, så siden flyttet `by six` ned fra første linje til den andre og stoppet der: 36 og 33 kolonner er det nærmeste dette paret kan bringes, og å presse lenger ville gjort den andre linjen til den lengste av de to. Blokken har fortsatt to linjer, antallet ord er det samme i samme rekkefølge, og tidene og blokknummeret er urørt.
En blokk som allerede er jevn
Inndata
1
00:00:01,000 --> 00:00:04,000
The train leaves at six
in the evening Seven.
Resultat
1
00:00:01,000 --> 00:00:04,000
The train leaves at six
in the evening Seven.
23 og 21 kolonner, som er det jevneste dette paret med linjer kan bli, så siden har ingenting å gjøre og filen kommer tilbake byte for byte. Ingenting rapporteres heller, fordi en kjøring som ikke fant arbeid, ikke er en kjøring som gjorde noe. Dette er verdt å se én gang: et verktøy som skrev om linjene likevel, ville risikert å endre en fil som allerede var riktig, og det ville ikke stått noe i rapporten som varslet deg.
Et kinesisk ord mot en engelsk linje
Inndata
WEBVTT
00:00:01.000 --> 00:00:04.000
你好
Good morning to you everyone
Resultat
WEBVTT
00:00:01.000 --> 00:00:04.000
你好 Good morning
to you everyone
Den kinesiske linjen er to tegn, som er 4 kolonner, mot en engelsk linje på 28 — en blokk ingen leser ville kalle balansert, og siden er enig. Den trekker `Good morning` opp så linjene blir 17 og 15 kolonner. Å telle tegn i stedet for kolonner ville kalt den kinesiske linjen to enheter lang og flyttet nesten ingenting, så ubalansen denne siden finnes for å rette, ville blitt stående. Det er hvordan de to linjene ser ut på skjermen som jevnes ut, ikke antallet tegn i dem.
Ofte stilte spørsmål
Hva endrer det egentlig å jevne ut linjeskift i undertekster?
Hvor ordene sitter inne i en blokk, og ingenting annet. Antallet linjer er det samme, antallet ord og rekkefølgen deres er det samme, og starttid, sluttid og blokknummer er filens egne. Det er siden du bruker når linjeantallet allerede er riktig for avspilleren eller husstilen din, og problemet bare er at én linje er mye lengre enn naboen.
Hvorfor er jevning ikke det samme som å dele ordene likt?
Fordi ord ikke er like lange, så et likt antall ord per linje gir et ujevnt utseende. En linje som holder `I` og en som holder `internasjonalisering`, ville hatt ett ord hver, og én av dem er 20 kolonner bred. Siden spør hvor smale linjene kunne være mens det fortsatt er så mange av dem, og legger teksten ut til den bredden, som er hvorfor de to linjene kommer ut med nesten samme bredde i stedet for nesten samme ordantall.
Endrer jevningen antall linjer en undertekst har?
Nei, og det er poenget med siden. Linjeantallet leses fra blokken og brukes som en fast ramme, så en blokk med to linjer kommer tilbake med to linjer og en med tre med tre. Vil du ha et annet antall linjer, arbeider brytesiden mot et kolonnetall du gir den og kan gi flere eller færre linjer, og siden som setter et tak per undertekst, arbeider mot et maksimum i stedet.
Hvorfor ble tankestreklinjene mine stående ujevne?
Fordi en tankestrek i starten av en linje markerer et talerbytte, og de to delene jevnes ut hver for seg og ikke mot hverandre. To linjer på 14 og 18 kolonner forblir 14 og 18: å flytte en del av den ene personens ord over på den andres linje ville satt to personers replikker på én linje, som er det motsatte av det strekene er der for. En del som er én enkelt linje, har ingenting å flytte innenfor seg.
Hva skjer med en blokk som bare har én linje, eller ett ord per linje?
Den kommer tilbake uendret, og kjøringen rapporterer ingenting for den. Én linje har ingen andre linje å flytte ord inn i. En blokk der hver linje holder ett eneste ord, er allerede så kort som det antallet linjer kan bli, siden ingen ord kan deles. I begge tilfellene går filen gjennom uten å bli skrevet om, og rapporten forblir tom i stedet for å telle en blokk som behandlet.
Hvilke formater kan få linjeskiftene jevnet ut?
De elleve der en blokk kan holde mer enn én linje: SRT, WebVTT, ASS, SSA, SBV, SAMI, LRC, MicroDVD, TTML, JSON og CSV. Ren tekst er utelatt fordi én tekstlinje er én blokk der, så hver blokk har nøyaktig én linje og jevning kan aldri gjøre noe. De elleve leses for det de er og ikke for filtypen, og ingenting lastes opp mens siden kjører.