Chuyển ASS sang TXT
Hoặc dán văn bản phụ đề
Chuyển đổi này thay đổi điều gì
6 thứ bị bỏ hoặc cần một quyết định
- Mốc thời gian
toàn bộ dòng thời gian (định dạng đích không ghi mốc thời gian nào)
- Định dạng hiển thị
mọi định dạng hiển thị (đậm, nghiêng, màu, viền, bóng)
- Vị trí
vị trí trên màn hình (mọi cue trở về vị trí mặc định)
- Karaoke
thời gian karaoke (tô sáng từng âm tiết)
- Xuống dòng
xuống dòng (các cue nhiều dòng sẽ được nối thành một dòng)
- Nội dung riêng của định dạng
nội dung mà định dạng nguồn giữ bên ngoài các cue (khối không phải cue, văn bản đầu tệp, thiết lập riêng từng cue, sự kiện bị chú thích) — định dạng đích không có chỗ cho nó
Danh sách này đến từ ma trận năng lực của hai định dạng này, không phải từ tệp cụ thể bạn đã tải lên. Một tệp cụ thể có thể mất nhiều hơn nếu nó dùng các tính năng mà định dạng cho phép nhưng ma trận không mô hình hóa.
Tệp ASS là một script có phần đầu, bảng kiểu và các sự kiện Dialogue:. Trang này chuyển tệp ASS sang TXT. Mỗi dòng phụ đề thành một dòng văn bản, theo đúng thứ tự xuất hiện; không còn số thứ tự hay timecode.
Cái giá của hướng này nằm ở toàn bộ mốc thời gian, kiểu chữ và bảng kiểu, vị trí trên màn hình, thời gian karaoke, chỗ xuống dòng và cấu trúc riêng của định dạng nguồn: TXT không giữ được chúng như ASS. Bạn thấy danh sách trước khi chuyển, và sau khi mở tệp báo cáo còn cho biết tệp của bạn thực sự có bao nhiêu trong số đó.
Phụ đề không rời khỏi máy: công cụ chạy hoàn toàn phía trình duyệt, không tải lên và không cần tài khoản. Cả mùa phim cũng xử lý được — hàng đợi đi lần lượt, có nút hủy, và cuối cùng là một tệp ZIP.
Ví dụ
Một tệp ASS thông thường, chuyển sang TXT
Đầu vào
[Script Info]
Title: Example
ScriptType: v4.00+
WrapStyle: 0
[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
Style: Title,Arial,36,&H0000FFFF,&H000000FF,&H00000000,&H00000000,-1,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:04.00,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:05.00,0:00:08.50,Default,,0,0,0,,{\i1}Italic{\i0} and {\b1}bold{\b0} text.
Dialogue: 0,0:00:09.00,0:00:12.00,Title,,0,0,0,,{\pos(320,240)}Positioned
Dialogue: 0,0:00:13.00,0:00:16.00,Default,,0,0,0,,{\k50}ka{\k30}ra{\k20}o{\k10}ke
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Line one\NLine two
Dialogue: 1,0:00:21.00,0:00:24.00,Default,,0,0,0,,{\an7}Top left
Kết quả
Hello there.
Italic and bold text.
Positioned
karaoke
Line one
Line two
Top left
So hai bên theo từng dòng để thấy phần nào đi qua nguyên vẹn và phần nào đổi khi ra TXT.
Cùng phép chuyển ASS sang TXT trên một tệp lộn xộn
Đầu vào
[Script Info]
; 一份真实的脏文件:BOM + CRLF + 认不出的覆写码 + Comment + 坏时间码
Title: Dirty sample
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,1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Fonts]
fontname: Arial
!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: 0,0:00:00.00,0:00:01.00,Default,,0,0,0,,这是一条注释,不该变成字幕
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello, world
Dialogue: 0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\fad(300,300)}Unmodelled override
Dialogue: 0,0:00:09.00,0:00:12.00,Default,,0,0,0,,{\an7\pos(320,240)}Both, wrong order
Dialogue: 0,0:00:13.00,0:00:16.5,Default,,0,0,0,,One decimal centisecond
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Soft\nbreak
Dialogue: 0,0:00:xx.00,0:00:24.00,Default,,0,0,0,,Broken timecodeKết quả
Hello, world
{\fad(300,300)}Unmodelled override
Both, wrong order
One decimal centisecond
Soft
break
Đây là kiểu hỏng tệp thật hay gặp — xuống dòng lẫn lộn, khoảng trắng thừa, trường bỏ trống. Đặt cạnh ví dụ gọn phía trên để thấy trình đọc tha cho những gì.
Câu hỏi thường gặp
Mốc thời gian của ASS biến mất ở đâu khi sang TXT?
TXT không có gì để cho: bản xuất chữ là từ ngữ, không phải khoảnh khắc. Thứ tự các dòng ASS được giữ, nên dòng thứ bốn mươi trong tệp bạn là dòng thứ bốn mươi ở đây, nhưng không chỗ nào trong đầu ra nói lúc nào nó xuất hiện trên màn hình.
In nghiêng, in đậm và màu trong ASS có được giữ khi sang TXT?
TXT không lưu bất kỳ kiểu nào, nên tất cả bị bỏ: thẻ ghi đè như {\i1} trong phần chữ, hay màu lấy từ bảng kiểu của ASS, đều không có chỗ đứng; mọi dòng ra dưới dạng chữ thuần. Bản thân từ ngữ không bị đổi.
Vị trí phụ đề trên màn hình của ASS có sang TXT không?
TXT không nói được phụ đề nằm ở đâu, nên các mã \pos, \an và \move bị gỡ khi ra khỏi ASS; mọi cue quay về vị trí mặc định của trình phát — thường là đáy khung hình, căn giữa.
Thời gian karaoke trong ASS xử lý thế nào khi sang TXT?
Mốc thời gian mất, chữ còn. Karaoke nằm trong các mã \k, \kf và \ko của từng sự kiện ASS, đánh dấu lúc từng âm tiết sáng lên; TXT không có cách ghi một khoảnh khắc bên trong một dòng, nên các dấu đó được gỡ và âm tiết ra như chữ TXT bình thường.
Một cue ASS hai dòng ra sao trong tệp TXT?
Cả hai dòng đều được ghi, dòng này dưới dòng kia, nhưng tệp không còn nói chúng thuộc cùng một cue: TXT không gom dòng thành cue, nên đọc ngược lại sẽ ra hai phụ đề trong khi tệp ASS có một. Điều đó quan trọng nếu sau này một công cụ dịch hoặc chỉnh thời gian sẽ đọc tệp.
Khối [Script Info] và phần còn lại của script ASS đi đâu khi sang TXT?
Chỉ các dòng Dialogue: thành phụ đề trong TXT. Khối [Script Info] (kể cả tiêu đề), bảng kiểu, các dòng Comment: và mọi thứ nhúng trong [Fonts] hay [Graphics] đều bị bỏ. Với một tệp ASS được viết kiểu thủ công, đây là phần mất lộ rõ nhất.
Khi chuyển ASS sang TXT, tệp đầu ra trông như thế nào?
Chỉ còn chữ: mỗi dòng phụ đề thành một dòng văn bản, không số thứ tự và không timecode. Các dòng ASS đi ra theo đúng thứ tự chúng xuất hiện.
Thứ tự các cue ASS có được giữ khi ra TXT?
Có, và chúng được sắp theo thời điểm bắt đầu trên đường ra — sớm nhất trước, cách mọi định dạng ở đây chờ đợi và trình phát đọc. Nếu tệp ASS liệt kê lộn xộn, đầu ra TXT xếp lại; đó là thay đổi cấu trúc tệp chứ không phải nội dung, và là chủ ý.
Chuyển ngược từ TXT về ASS thì mất những gì?
Hướng TXT về ASS bỏ mốc thời gian và độ chính xác thời gian. Danh sách đó khác với hướng này vì hai định dạng giữ những thứ khác nhau.
Tệp TXT xuất ra dùng encoding gì, và tệp ASS đầu vào thì sao?
Tệp TXT xuất ra luôn là UTF-8, kết thúc dòng kiểu Unix (LF) và không có BOM, bất kể tệp ASS dùng gì. Đầu vào bằng UTF-16 hoặc bảng mã một byte của Windows được giải mã khi đọc, và bảng kết quả ghi lại việc đó; thứ ra khỏi công cụ luôn là cùng một định dạng UTF-8.