Rimuovere il corsivo dai sottotitoli
Oppure incollare il testo dei sottotitoli
Opzioni
Un riquadro, sette scelte, e ciascuna scelta ha una pagina propria. Corsivo, grassetto, sottolineato e colore rimuovono quel singolo tipo di intervallo e lasciano stare il resto dello stile della riga. Tutto rimuove ogni intervallo modellato dallo strumento — quei quattro più la temporizzazione karaoke — lasciando intatto tutto il resto del testo. HTML fa lo stesso e poi spazza via anche il markup tra parentesi angolari rimasto nel testo perché lo strumento non lo modella, come i tag di interlocutore <v Bob> di VTT e <c.className>. ASS fa lo stesso invece con i blocchi di override, cancellando i codici {...} non riconosciuti in fase di analisi, come {\fad(500,500)}. Questa pagina riempie il riquadro con la scelta che il suo titolo nomina e non ne elenca altre.
La frequenza dei fotogrammi in cui sono contati i tempi. Nelle pagine di formato è quella che serve a MicroDVD, perché memorizza i tempi come numeri di fotogramma. Nelle pagine della frequenza dei fotogrammi è la cadenza con cui è stato temporizzato il file — la versione per cui sono stati creati i sottotitoli — e il secondo riquadro della pagina accetta la frequenza del video con cui verranno usati. 23,976, 24, 25, 29,97, 30, 50, 59,94 e 60 sono quelle comuni. Sbagliarla sposta l’intera timeline, e nelle pagine della frequenza dei fotogrammi la sposta di un rapporto anziché di un importo fisso.
Questa pagina rimuove ogni intervallo in corsivo da un file di sottotitoli e lascia stare le parole. Trascinate il file, eseguite, e il testo dei blocchi torna esattamente com’era stato scritto — stessa grafia, stessa punteggiatura, stesse interruzioni di riga, stessi orari — senza il markup del corsivo. Non è una conversione e non è una riscrittura: l’unica cosa che cambia è quali porzioni di testo il file dichiara inclinate.
Il corsivo è l’unico elemento di stile in linea che quasi ogni file di sottotitoli usa, perché porta significato invece che decorazione. Il dialogo fuori campo, una voce al telefono, un narratore, una parola straniera, un cartello con un titolo e un pensiero interiore sono tutti convenzionalmente in corsivo. È per questo che la pagina è separata da quella che rimuove il grassetto o il sottolineato: su un file normale volete togliere uno di quegli stili e tenere gli altri, e una pagina che li rimuove tutti non può farlo.
La stessa rimozione funziona comunque il file lo scriva. SRT, WebVTT, SBV e SAMI scrivono `<i>` e `</i>`; ASS e SSA scrivono `{\i1}` e `{\i0}`; TTML scrive uno span con uno stile di carattere. Sono sintassi diverse per lo stesso fatto, e il file viene letto per ciò che è davvero e non per ciò che dichiara la sua estensione, quindi l’esecuzione si comporta allo stesso modo su tutti. Una cosa che la pagina lascia deliberatamente al suo posto è un tag di classe WebVTT come `<c.lawyer>`: è un nome definito dal foglio di stile della pagina, non un intervallo in corsivo, e lo strumento non l’ha mai modellato; la pagina che li elimina lo dice nel suo titolo. Nulla viene caricato: il file viene letto e scritto dentro la scheda del browser, quindi il materiale che non può uscire dalla macchina resta lì, e un file che non aveva corsivi torna byte per byte.
Esempi
Dialogo fuori campo in un file SRT
Ingresso
1
00:00:01,000 --> 00:00:02,000
<i>A voice off screen.</i> The door opens.
2
00:00:03,000 --> 00:00:04,000
<i>I can hear you.</i>
Uscita
1
00:00:01,000 --> 00:00:02,000
A voice off screen. The door opens.
2
00:00:03,000 --> 00:00:04,000
I can hear you.
Se ne vanno entrambi gli intervalli in corsivo, compreso quello che copre un intero blocco, e il testo del secondo blocco resta intatto. Dove un intervallo in corsivo stava accanto a dialogo normale nella stessa riga, le parole ai due lati si chiudono con un solo spazio, che è l’aspetto che la riga aveva comunque per il lettore.
Un file WebVTT che porta anche un tag di classe
Ingresso
WEBVTT
00:00:01.000 --> 00:00:02.000
<c.lawyer><i>The defendant was not present.</i></c>
Uscita
WEBVTT
00:00:01.000 --> 00:00:02.000
<c.lawyer>The defendant was not present.</c>
Il corsivo se ne va e `<c.lawyer>` resta. Un nome di classe non è un intervallo di stile: viene cercato nel foglio di stile della pagina e `<c.lawyer>` è libero di significare qualunque cosa lì. Lasciarlo è la lettura onesta di un tag che lo strumento non ha mai modellato; la pagina che rimuove il markup di quella forma è quella che elimina i tag HTML dai sottotitoli.
Un file senza corsivi
Ingresso
1
00:00:01,000 --> 00:00:02,000
<b>The room was dark.</b>
2
00:00:03,000 --> 00:00:04,000
She left early.
Uscita
1
00:00:01,000 --> 00:00:02,000
<b>The room was dark.</b>
2
00:00:03,000 --> 00:00:04,000
She left early.
Non c’era nulla da rimuovere, quindi il file torna byte per byte e il grassetto resta dov’era. Su un file in cui sospettate i corsivi senza vederli, questo è il modo più economico per scoprirlo, e la pagina non si porterà via il grassetto di nascosto.
Domande frequenti
Che cosa conta come intervallo in corsivo in un file di sottotitoli?
Comunque il file lo scriva. In un file SRT o WebVTT è una coppia di tag `<i>` intorno ad alcune parole; in un file ASS o SSA sono `{\i1}` e `{\i0}`; in TTML è uno span con uno stile di carattere corsivo. Tutte e tre le forme descrivono la stessa cosa, e la pagina legge ogni file per il formato che è davvero, quindi trova l’intervallo qualunque sintassi lo porti. Non indovina: un testo che sembra solo inclinato, come una riga scritta in un carattere decorativo, non ha alcun intervallo in corsivo e non viene toccato.
Rimuovere i corsivi cambia gli orari o il testo?
Né l’uno né l’altro. La pagina riscrive soltanto il markup intorno alle parole, quindi ogni blocco conserva inizio e fine al millisecondo, l’ordine dei blocchi è quello del file e il numero di blocchi non cambia. Il testo è identico byte per byte a parte i caratteri dei tag: non viene aggiunta punteggiatura, nessuna riga viene unita a un’altra e un blocco su due righe ha ancora due righe dopo l’esecuzione.
Posso rimuovere i corsivi da alcuni blocchi e tenerli su altri?
Non su questa pagina: viene fatto l’intero file, ogni blocco e ogni riga. Se una parte del file deve conservare i corsivi, la strada che funziona oggi è eseguire la pagina e poi rimettere i tag sui blocchi che volevate tenere, oppure dividere prima il file ed eseguire la pagina su una sola parte. Una scelta per singolo blocco non è qualcosa che un file trascinato possa esprimere: nel file non c’è nulla da cui la pagina possa leggerla.
Perché i corsivi contano abbastanza da avere una pagina propria?
Perché nei sottotitoli di solito portano significato invece che decorazione. Una riga in corsivo è convenzionalmente una voce che non è sullo schermo, un narratore, una parola in lingua straniera o un pensiero interiore, e chi perde quel segnale perde una parte di ciò che la scena diceva. È anche il motivo per cui la pagina esiste separatamente dalla rimozione di tutta la formattazione: su un file reale spesso volete togliere i corsivi per un manuale di stile mentre il blocco di titolo in grassetto resta in grassetto.
Perché nel mio file è rimasto un tag di classe WebVTT dopo questa esecuzione?
Perché un nome di classe non è un intervallo in corsivo. `<c.lawyer>` non dice che il testo è stilizzato in un certo modo: dice che il testo appartiene a un gruppo con un nome, e l’aspetto di quel gruppo è deciso da un foglio di stile che il file non contiene. Lo strumento non ha mai modellato quei tag, quindi li lascia nel testo invece di cancellare qualcosa che non sa leggere. La pagina che li elimina è quella che rimuove i tag HTML dai sottotitoli, e lo dice nel suo titolo.
La rimozione del corsivo si applica alle parole dentro un blocco o all’intero blocco?
Alla porzione di testo che il file ha marcato, che spesso non è l’intero blocco. Una riga può aprirsi con un inciso in corsivo e poi tornare al carattere normale, e solo l’inciso perde il markup; l’intervallo che copre un intero blocco, che è il caso usuale per il dialogo fuori campo, prende tutta la riga. In entrambi i casi i caratteri non vengono mai riscritti, quindi nulla dipende da dove è iniziato l’intervallo.