파일 핸들러 사용법 http://nscc4.tistory.com/4


핸들러는 기본적으로 2개의 파일로 구성됩니다.


위의 그림처럼 Main.psc 파일과 FileHandler.psl 두개의 파일이 존재합니다.
자세한 관리에 대해서는 아래에서 다루도록 하겠습니다.


1. cc4 설치 폴더->Handler->FileHandler.psl을 열어서 아래 빨간 부분을 추가해줍니다.



2. 추가해주고 나면 아래처럼 핸들러 항목에 추가됩니다.



3. 이제 cc4 설치 폴더->Handler->Main.psc 파일을 열어 코드를 넣어주시면 됩니다.

http://nscc4.tistory.com/59 (  를 일괄적으로 넣어 줄 수 있는 매크로를 한번 핸들러에 넣어 봤습니다.)





Posted by 투명인간취급
,

핸들러 기능 참고 http://nscc4.tistory.com/4, http://nscc4.tistory.com/50



1. 핸들러에 저장시 <br>태그 넣기와 2. Sync 태그를 대문자로 바꾸기는 기능을 매크로에서 써보겠습니다.


매크로에서 사용가능한 명령어 http://nscc4.tistory.com/19





1. 저장시 <br> 넣기 매크로로 쓰기

http://nscc4.tistory.com/50 이 코드에서 var부터 복사해서 매크로에 넣어 쓰시면 됩니다.


var
  ClearTagFlag: Boolean;
  CommentTagFlag: Boolean; //주석 태그 체크
  StartTagFlag: Boolean;
  LoopVar: Integer;//줄번호
  CurrentLine: WideString; //현재 줄
  NextLine: WideString; //다음 줄

  AddBRCount: Integer; //<br> 추가 개수
begin

  ClearTagFlag := False;
  StartTagFlag := False;
  For LoopVar := 0 To CC_CURRENTLINECOUNT-2 Do
  Begin

     CurrentLine := TrimW(CC_GETLINETEXT(LoopVar));
     NextLine := TrimW(CC_GETLINETEXT(LoopVar+1));
// 싱크 중간 긴 주석문에 <br> 안 들어가게 하는 체크문
     If (CommentTagFlag) and (Pos('-->', CurrentLine) > 0) or (CommentTagFlag) and (Pos('-->', NextLine) > 0) Then CommentTagFlag := False;

     If CC_ISSYNCLINE(LoopVar) Then
     Begin
        If Not StartTagFlag Then StartTagFlag := True;
        Continue;
     End;
    
     If Not StartTagFlag Then Continue;

     If CC_ISSYNCLINE(LoopVar+1) Then
        Continue;

// 대사, &nbsp; 아래 줄에 공백일 때 <br> 안 들어가게 하는 if문
     If (CurrentLine = '') or (CurrentLine = '&nbsp;') or (NextLine = '') or (NextLine = '&nbsp;') Then
     Begin
        ClearTagFlag := True;
        Continue;
     End;

// 싱크 중간 긴 주석문에 <br> 안 들어가게 하는 체크문
     If (Pos('<!--', CurrentLine) > 0) or (Pos('<!--', NextLine) > 0) Then CommentTagFlag := True;
     If (CommentTagFlag) and (Pos('-->', CurrentLine) > 0) or (CommentTagFlag) and (Pos('-->', NextLine) > 0) Then CommentTagFlag := False;

     If (Pos('-->', CurrentLine) > 0) and (Pos('-->', CurrentLine) > Length(CurrentLine)-3) or (Pos('-->', NextLine) > 0) and (Pos('-->', NextLine) > Length(NextLine)-3) Then Continue;
     If (CurrentLine <> '') or (CurrentLine <> '&nbsp;') or (NextLine <> '') or (NextLine <> '&nbsp;') Then ClearTagFlag := False;

     If ClearTagFlag or CommentTagFlag Then Continue;

     If (Pos('</BODY', UpperCase(CurrentLine)) <> 0) or (Pos('</BODY', UpperCase(NextLine)) <> 0) Then Break;

     If UpperCase( Copy(CurrentLine, Length(CurrentLine)-3, 4) ) <> '<BR>' Then
     Begin
        CC_MODIFYLINE(LoopVar, CurrentLine+'<BR>');
        AddBRCount := AddBRCount + 1;
     End;

  End;

//핸들러로 <br> 추가 개수가 1개 이상이면 메시지박스 출력,
//<br> 1개라도 추가한 게 없으면 메세지박스 안 뜨게 했습니다.
if AddBRCount > 0 then ShowMessage('총 '+IntToStr(AddBRCount) + ' 개의 <BR> 태그가 추가되었습니다.');

end; 


2. Sync태그 대문자로 바꾸기 매크로로 쓰기

http://nscc4.tistory.com/50 이 코드에서 이 코드에서 var부터 복사해서 매크로에 넣어 쓰시면 됩니다.


var
  LoopVar: Integer;
  CurrentLine: WideString;   
begin
  For LoopVar := 0 To CC_CURRENTLINECOUNT-1 Do
  Begin
     CurrentLine := TrimW(CC_GETLINETEXT(LoopVar));

     If Pos('<SYNC', UpperCase(CurrentLine)) > 0 Then
     Begin       
        CurrentLine := CC_STRINGREPLACE(CurrentLine, '<SYNC', '<SYNC');
        CC_MODIFYLINE(LoopVar, CurrentLine);
     End;
  End;
end;


Posted by 투명인간취급
,

 

  유니코드 지원 차이

읽기(열기)

쓰기(저장)

 

ANSI

유니코드(UTF-16LE)

UTF-8

ANSI

유니코드(UTF-16LE)

UTF-8

 SMISyncW

O

O

O

O

O

O

 NS Caption Creator 4

O

O

O

O

O

X

 자막 한방에~

O

O

X

O

O

X

 ccmp

O

X

X

O

X

X

 사미빌더

O

X

X

O

X

X

 icm

O

X

X

O

X

X

 

 

  자동백업 지원 차이

 

 

 

 

자동백업(지정시간)

.bak 파일생성(저장시)

비정상 종료 시 복원용 파일 별도생성

 SMISyncW

O

X

 _tmp_editing.txt 파일생성

NS Caption Creator 4

O

O

Backup에 .cch.bak와 .sg1~.sg5 파일생성

 자막 한방에~

X

O

X

 ccmp

O

X

설치폴더에 AutoSave.smi 파일생성

 사미빌더

O

X

c드라이브에 AutoSave.smi 파일생성

 icm

O

X

설치폴더에 _ICMSavedTemp.smi 파일생성

 

 

프로그램 다운로드

주소

 

 

 SMISyncW

SMISyncW_v250_20100207(2)_Setup.zip
다운로드

http://simiy.cafe24.com/dboard/dboard.php?id=util&no=38&exec=view

 NS Caption Creator 4

http://nscc4.tistory.com/35

 자막 한방에~

http://blog.naver.com/breadu/110031425057

 ccmp

ccmp.zip
다운로드

 사미빌더

SAMIbuilder1.2.3.zip
0.37MB


http://nethe.tistory.com/8

 icm

http://iceworld.tistory.com/508

 

 

 

 

소스 유실로 업데이트 중단된 자막툴 : ccmp, 사미빌더, NS Caption Creator 4

 

 

Posted by 투명인간취급
,

1. 색상 뽑기 기능 선택하면 마우스 포인터가 + 로 바뀌면서
마우스 포인터가 위치한 곳에 색을 뽑아서 편집기에 색상코드값을 출력해줍니다.


패치 파일: http://nscc4.tistory.com/70



Posted by 투명인간취급
,

편집기 창에서 커서를 놓고 마우스우클릭



위에 기능을 쓰시면 스폰서 논스폰서 등 자막 싱크 수정시 블록 지정이 좀 편해집니다.

Posted by 투명인간취급
,

편집기 창에서 싱크 위치에 커서를 놓고 마우스우클릭




자막파일 싱크값 위치에서 사용하면 영상 재생 위치가 이동됩니다.


단축키는 Ctrl + F12

Posted by 투명인간취급
,

1. 편집-텍스트만 복사 하시면 자막파일에서 텍스트만 추출이 됩니다.



Posted by 투명인간취급
,

1. 아래 빨간 표시에 회색의 가는 줄이 보이실 겁니다.


아래 스샷은 문자 수 20자 기준으로 회색 줄이 설정되어 있습니다.

(영어, 숫자는 1바이트, 한글은 2바이트라서 한글은 영어, 숫자에 딱 절반 정도에 가이드라인이 설정됩니다.)

글꼴 종류에 따라 가이드 라인 수가 안 맞을 수 있습니다.



2. 도구-프로그램 설정



3. 아래 나온 항목에서 [글꼴 모양, 크기, 스타일 수정](4. 항목 참고),


문자수 가이드 라인 사용함 (이 기능은 고정폭 글꼴에서만 정상적으로 보입니다) 체크

위치 설정: [원하는 문자 수 기록] 자 위치에 배치




4. 위에 [글꼴 모양, 크기, 스타일 수정]을 눌러 나온 아래 항목에서 굴림체를 선택 후 확인 해줍니다.






Posted by 투명인간취급
,

1. cc4 메뉴-편집-도구-프로그램 설정



2. 아래 빨간 표시 부분에 내용을 편집해주시면 다음 작업 때 편집된 헤더 내용으로 넣을 수 있습니다.




3. 헤더 넣는 법 cc4 메뉴-편집-smi 헤더 넣기



Posted by 투명인간취급
,