メインコンテンツへスキップ
SubtitleMatrix

TXT を ASS に変換

形式変換プレーンテキスト
字幕テキストを貼り付けることもできます

オプション

元のファイルに終了時刻がない場合(プレーンテキストや LRC)に使います。出力の時間軸は変換ではなくここで生成されるため、この値がそのまま表示時間になります。

この変換で変わること

2 項目が失われるか、判断が必要です

  • タイミング

    時間軸そのもの(元の形式がタイミングを記録していないため、出力の時間軸は変換ではなく生成されます)

  • 精度

    タイミングの精度(変換先の時計はより粗いため、すべてのタイムスタンプは 10 ms 単位に丸められます)

この一覧は、読み込んだファイルではなく、この2つの形式の機能対応表から作られています。形式としては許されているが対応表が扱っていない機能を使っている場合、そのファイルではさらに多くが失われることがあります。

このページは TXT を ASS に変換します。ファイルをドロップするか、テキストを貼り付けてください。ASS 形式で返ります。変換はすべてブラウザ内で実行され、ファイルはアップロードされません。登録も不要です。

TXT にはタイミングがまったくありません。時間軸はこのページで組み立てられ、先頭行が 0 から始まり、各行は既定で 2000 ms ずつ、前の行の終わりから次の行が始まります。生成された時刻は ASS の 100 分の 1 秒に丸められるため、指定した位置から最大 5 ms ずれます。上の一覧は、読み込んだファイルではなく、2 つの形式がそれぞれ表現できるものから算出しています。だからファイルを開く前から同じ答えになります。

1 本でも、シーズン全体でも構いません。キューは順番に処理され、結果は 1 つの ZIP にまとめてダウンロードできます。

例

TXT ファイルを ASS に変換した例

入力

The quick brown fox jumps over the lazy dog.

Second paragraph, first line.
Second paragraph, second line.

出力

[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:00.00,0:00:02.00,Default,,0,0,0,,The quick brown fox jumps over the lazy dog.
Dialogue: 0,0:00:02.00,0:00:04.00,Default,,0,0,0,,Second paragraph, first line.
Dialogue: 0,0:00:04.00,0:00:06.00,Default,,0,0,0,,Second paragraph, second line.

この出力で失われるもの:終了時刻、精度(100 分の 1 秒への丸め)。それ以外は行単位で一致します。

同じ変換を扱いにくい入力で行った例

入力


Hello world.

Second block.

出力

[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:00.00,0:00:02.00,Default,,0,0,0,,Hello world.
Dialogue: 0,0:00:02.00,0:00:04.00,Default,,0,0,0,,Second block.

実際のファイルには、混在した改行コード、余分な空白、空のフィールドなどがあります。上の整った例と比べて、パーサーがどこまで許容するかを確認してください。

よくある質問

TXT を ASS に変換すると、タイムコードは作られるのですか?

はい。TXT にはタイミングがまったくないため、ASS 出力の時間軸は変換されるのではなく、このページで組み立てられます。先頭行は 0 から始まり、以降の各行は前の行が終わったところから始まります。間隔は均等で、順序はファイルのままです。各枠の長さはページ上の表示時間フィールドで決まり、既定は 2000 ms です。

TXT を ASS に変換するとタイムコードはなぜ変わるのですか?

TXT には移すべきタイムコードがなく、この変換の時間軸はこのページで組み立てられます。ASS は時刻を 0:00:04.13 で保存するため、生成された枠は書き出し時に 10 ms 単位へ丸められます。並べ替えはなく、各行情報はこのページが置いた位置から最大 5 ms しか動きません。

TXT を ASS に変換した出力はどんな形ですか?

ASS らしく、cue 番号はありません。各字幕は [Events] セクションの Dialogue: 行になり、SRT が番号を持つ位置にはレイヤーフィールドが入ります。TXT の各 cue は同じ順序・同じ本文で 1 つの ASS cue になります。

TXT の cue の順序は ASS 出力でも保たれますか?

はい。書き出し時に開始時刻の昇順へ並べ替えます。早いものが先で、これは本サイトのすべての形式が前提とする順序であり、プレーヤーが読み取る順序でもあります。TXT ファイルの cue が順不同だった場合、ASS 出力では順序が直ります。これは内容ではなくファイル構造の変更で、意図した動作です。

ASS を TXT に戻せますか?

はい。ただし逆方向には独自の損失一覧があります。ASS から TXT への変換では終了時刻、スタイル(フォント・色・縁取り)、画面位置、カラオケのタイミング、行のまとまり(改行)、形式固有の情報が失われます。2 つの形式が保持する情報が違うため、一覧は上とは別になります。

ASS 出力は TXT ファイルの文字コードを引き継ぎますか?

いいえ。入力が何であっても、出力は UTF-8、Unix 改行、BOM なしです。UTF-16 や Windows のシングルバイト文字コードで届いたファイルは読み込み時にデコードし、そのことは結果パネルに表示されます。出てくるのは常に同じ UTF-8 の ASS です。

関連ツール