delacroix01
Eroge Addict
Tool dùng để xóa tag k0 cho Aegisub 1.1. Viết lâu lắm rồi giờ chả nhớ để source đâu nên cứ post tạm rồi tính sau.
=============================================
Author : delacroix01
License : Freeware
Language : C++
Compiler : Microsoft Visual C++ 6.0 (in MS Visual Studio 6.0)
Type : Console application + Command line
Size : 160-168KB
Version : 1.1 beta
Download : 1 trong 3 mirror sau
http://www.megaupload.com/?d=WWQ7SR4L
http://www.zshare.net/download/4035278df52514/
http://www.mediafire.com/?4dnpox0bwts
=============================================
Lâu lắm mới xài lại C++. Do nhu cầu làm karaoke nên tớ viết 1 tool đơn giản để xử lý file karaoke ass nhằm import vô AE bằng script của Shinjipierre. Mục đích của chương trình này là diệt các tag {\k0} nằm trong file ass sinh ra khi timing. Bình thường với người làm karaoke bằng k-replacer thì đoạn mã sẽ có dạng sau :
Code:
{\k1}{\k37}A{\k36}na{\k37}ta {\k39}no {\k39}mu{\k37}ko{\k40}u
Việc này ko có ảnh hưởng gì nếu xài k-replacer. Tuy nhiên, khi sử dụng lua script mà để như vậy thì bạn sẽ thấy ngay hậu quả, vì nếu khoảng trống ko đứng riêng thành syllable mà nằm trong syllable khác, độ dài syllable sẽ bị bỏ đi phần khoảng trống này. Vì vậy việc tính toán tọa độ sẽ sai lệch, tạo ra khoảng trống thừa khi bạn apply effect (ko tin thử đi thì biết). Để khắc phục điều này, các khoảng trống giữa các từ liên tục sẽ được set tag {\k0} nhằm điều chỉnh đúng tọa độ như sau :
Code:
{\k1}{\k37}A{\k36}na{\k37}ta{\k0} {\k39}no{\k0} {\k39}mu{\k37}ko{\k40}u
Tuy nhiên vấn đề khác lại xảy ra khi import file này vô AE. Script của Shinji hỗ trợ nhiều keyframe style nên tiện khi import. Tuy nhiên nhược điểm rất lớn ngoài việc căn khoảng cách ko đúng nữa là việc ko chấp nhận tag {\k0}. Tất cả các ký tự nằm sau đó sẽ ko thể import vào được. Nếu xóa thủ công thì quá mất công nên tớ đã viết 1 tool đơn giản để xóa tất cả các tag này khỏi file ass mà ko làm ảnh hưởng tới timing các syllable. Cách sử dụng như sau :
- Mở file ass hay ssa bằng Notepad hay Text Editor nào tương tự, xóa dòng dưới cùng đi (Đây là dòng trống. Nếu ko xóa thì lúc chạy chương trình sẽ bị lỗi. Lỗi này liên quan tới ký tự EOF và hiện tớ chưa biết cách fix. Ai muốn giúp fix thì bảo tớ tớ đưa source cho mà fix). Sau khi xóa, con trỏ sẽ nằm cuối dòng karaoke cuối cùng.
- Đặt file sub cùng thư mục với file zerokill.exe hoặc zerokillcmd.exe. Nếu ko thích gõ command line, bạn chạy file zerokill.exe rồi làm theo chỉ thị. Ngược lại gõ lệnh sau :
Code:
zerokillcmd source.ass destination.ass
Nếu file source tồn tại, chương trình sẽ tạo ra file destination. Lúc này bạn có thể thoải mái import. Ngược lại chương trình sẽ báo lỗi ko tìm thấy file.
____________
Đã update lên 1.1. Link download ở post #1
Thay đổi so với bản đầu tiên :
- Fix các tag {\ko} và {\kf} thành {\k} vì script của Shinji ko nhận được các tag này. Tag {\K} để sau này rảnh rồi fix sau.
- Nhược điểm : Bug ở bản trước chưa fix được. Chỉ có khoảng 95% số tag {\ko} được chuyển. 1 vài tag vẫn còn lại nên cần sử dụng notepad search để kiểm tra lại. Tớ đang tìm cách fix cái này.