자막 위치 일괄 변경
또는 자막 텍스트를 붙여넣으세요
옵션
미리 정한 아홉 칸과 제거가 있습니다. 기록되는 표시는 숫자 키패드 순서의 {\anN}이며 7/8/9가 윗줄, 4/5/6이 가운데, 1/2/3이 아랫줄입니다. 각 자막 블록의 첫 줄 앞에 붙습니다. ASS와 SSA는 이것을 실제 정렬 코드로 읽고, SRT에서는 libass, VLC, mpv가 존중하고 더 단순한 플레이어는 글자 그대로 인쇄하는 텍스트입니다. 기존 \pos 좌표는 건드리지 않습니다. 위치 표시를 넣지 않고 지우려면 마지막 값을 고르세요.
이 페이지는 자막의 모든 큐를 화면의 아홉 위치 가운데 하나로 옮기거나, 파일에 있는 위치 표시를 없앱니다. 표시는 `{\anN}` 코드이고 ASS 기반 플레이어가 기본으로 읽습니다. N은 숫자 키패드를 따릅니다. 위 줄이 7, 8, 9이고 가운데 줄이 4, 5, 6, 아래 줄이 1, 2, 3입니다. 그래서 왼쪽 위는 7이고 왼쪽 아래는 1이며, 여섯 차이가 나는 것은 읽는 순서가 아니라 키패드 순서를 따르기 때문입니다.
표시는 첫 줄 텍스트의 맨 앞에 붙고 줄을 따로 차지하지 않습니다. 타임코드와 큐 번호와 빈 줄은 그대로라서 파일은 유효한 SRT로 남고 큐마다 네 글자가 더해질 뿐입니다. 두 줄짜리 큐라도 첫 줄에만 표시가 붙습니다. 위치는 줄이 아니라 큐에 속하기 때문입니다. 모든 줄에 붙이면 기껏해야 중복이고, ASS에서는 같은 일을 하는 두 번째 오버라이드 블록이 됩니다.
이미 있던 정렬 표시는 새 표시를 쓰기 전에 지웁니다. 파일이 정렬을 둘이 아니라 하나 갖게 하기 위해서입니다. 중복이 남으면 플레이어가 마지막 것을 따르게 되고, 그것은 이 실행에서 아무도 고르지 않은 값입니다. 같은 위치를 두 번 적용해도 결과는 바이트 단위로 같고 변경된 큐가 없다고 보고합니다. 검토를 한 바퀴 돌며 다시 실행해도 무언가가 조용히 달라지지 않습니다.
`\pos(x,y)`는 건드리지 않습니다. 픽셀 좌표와 정렬 코드는 다른 지시이기 때문입니다. `\an`은 플레이어에게 화면에 맞춰 위치를 계산하라고 하고, `\pos`는 특정 해상도의 한 점에 큐를 고정합니다. 손으로 놓은 `\pos`를 지우면 의도한 작업을 되돌리는 셈이라서 이 페이지는 정렬만 쓰고 이전 정렬만 지웁니다. 업로드는 없고, 받는 형식은 SRT, ASS, SSA 세 가지입니다.
예시
평범한 SRT 큐 두 개를 위 가운데로
입력
1
00:00:01,000 --> 00:00:02,000
Hello there.
2
00:00:03,000 --> 00:00:04,000
Second line.
결과물
1
00:00:01,000 --> 00:00:02,000
{\an8}Hello there.
2
00:00:03,000 --> 00:00:04,000
{\an8}Second line.
`\an8`은 위 가운데 칸, 곧 숫자 키패드 위 줄의 가운데 키입니다. 표시는 자기 줄을 차지하지 않고 텍스트 맨 앞에 붙고, 타임코드와 큐 번호와 빈 줄은 그대로라서 파일은 여전히 유효한 SRT이고 큐마다 네 글자가 더해졌을 뿐입니다.
같은 파일을 왼쪽 위와 왼쪽 아래로
입력
1
00:00:01,000 --> 00:00:02,000
Hello there.
결과물
1
00:00:01,000 --> 00:00:02,000
{\an7}Hello there.
왼쪽 위는 `7`이고 왼쪽 아래는 `1`입니다. 여섯 차이가 나는 것은 번호가 읽는 순서가 아니라 키패드를 따르기 때문입니다. 손으로 작업할 때 가장 자주 틀리는 대응이고, 이 페이지에 아홉 프리셋 각각의 예시가 있는 이유입니다. 숫자 하나가 바뀌어도 누군가 영상을 보기 전까지는 보이지 않습니다.
이미 왼쪽 위에 있던 ASS 큐 옮기기
입력
[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:01.00,0:00:02.00,Default,,0,0,0,,{\an7\i1}Hello there{\i0}
결과물
[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:01.00,0:00:02.00,Default,,0,0,0,,{\an2}{\i1}Hello there{\i0}
옛 `\an7`을 지우고 `\an2`를 쓰므로 큐는 정렬을 둘이 아니라 하나 가집니다. 중복이 남으면 플레이어가 마지막 것을 따르게 되는데, 그것은 이 실행에서 아무도 고르지 않은 값입니다. 기울임 짝은 있던 자리에 그대로 있습니다. ASS에서 표시는 진짜 오버라이드 코드라서 화면에 텍스트로 보이지 않습니다.
서로 다른 표시가 둘 있는 파일에서 없애기
입력
1
00:00:01,000 --> 00:00:02,000
{\an8}Hello there.
2
00:00:03,000 --> 00:00:04,000
{\an2}Second line.
결과물
1
00:00:01,000 --> 00:00:02,000
Hello there.
2
00:00:03,000 --> 00:00:04,000
Second line.
제거는 고를 수 있었던 프리셋 하나가 아니라 있던 표시를 무엇이든 지우고 아무것도 쓰지 않습니다. 이 실행을 지난 파일은 플레이어의 기본 위치에서 재생되고 그것이 요점입니다. 어떤 위치도 위치가 없다는 것으로 표현되지 않으므로 표시에서 평범한 텍스트로 돌아가는 유일한 길이기 때문입니다.
자주 묻는 질문
`{\an1}`은 화면 어디이고 왜 왼쪽 위에서 시작하지 않나요?
`1`은 왼쪽 아래 구석입니다. 아홉 값이 숫자 키패드를 따르므로 `7` `8` `9`가 위 줄, `4` `5` `6`이 가운데 줄, `1` `2` `3`이 아래 줄입니다. 그래서 왼쪽 위는 `7`, 가운데는 `5`, 오른쪽 아래는 `3`입니다. 페이지의 위치 목록은 읽는 순서로 쓰여 있고 이 숫자로 번역해 주며, 손으로 표시를 편집하지 않고 이 페이지를 쓰는 주된 이유입니다.
이 페이지가 WebVTT, SAMI, TTML 파일에도 동작하나요?
아니요, 받는 형식이 SRT, ASS, SSA 셋뿐인 것은 의도된 것입니다. WebVTT와 TTML에는 `line:`이나 `align:` 같은 큐 설정, `tts:` 속성 같은 자체 배치 문법이 있고 이 페이지는 그것을 쓰지 않습니다. 받으면 실행이 위치 변경을 보고하는데 파일은 그대로 나오게 됩니다. 수평 값 다섯 개를 가진 JSON의 위치 필드도 같은 이유로 빠집니다.
SRT 파일에서 표시가 텍스트로 보이나요?
플레이어에 따라 다르고 이 페이지가 바꿀 수 있는 일이 아닙니다. SRT에는 배치 문법이 없어 `{\an8}`이 줄 맨 앞의 평범한 글자로 저장됩니다. VLC나 mpv 같은 libass 기반 플레이어는 그것을 정렬 지시로 읽어 큐를 그에 맞게 놓고, 더 단순한 플레이어는 글자로 취급해 네 글자를 화면에 보여 줍니다. 모든 기기에서 위치를 보장해야 한다면 영상에 구워 넣어야 하고, 그것은 자막 파일이 할 수 있는 일 밖입니다.
기존 `\pos(x,y)`가 새 위치로 덮어써지나요?
아니요, `\pos`는 있던 그대로 둡니다. 픽셀 좌표와 정렬 코드는 서로 다른 지시입니다. `\an`은 플레이어에게 지금 화면에 맞춰 위치를 계산하라고 하고, `\pos`는 큐를 한 해상도의 한 점에 고정합니다. 손으로 놓은 `\pos`를 지우면 의도한 작업을 되돌리는 셈이라서 이 페이지는 정렬만 쓰고 이전 정렬만 지우며 좌표는 절대 건드리지 않습니다.
큐가 두 줄이면 줄마다 표시가 붙나요?
첫 줄에만 붙습니다. 위치는 줄이 아니라 큐에 속하기 때문입니다. 모든 줄에 붙이면 기껏해야 중복이고, ASS에서는 첫 번째와 같은 일을 하는 두 번째 오버라이드 블록이 됩니다. 표시를 없앨 때도 같은 규칙이 반대로 적용됩니다. 첫 줄 맨 앞의 표시만 벗겨지고 문장 중간에 쓰인 것은 대화의 일부로 취급됩니다.
같은 위치를 두 번 적용하면 어떻게 되나요?
아무 일도 없습니다. 두 번째 실행은 바이트 단위로 같은 파일을 내고 변경된 큐가 없다고 보고합니다. 페이지가 새 표시를 쓰기 전에 있던 표시를 지우므로 이미 가진 프리셋을 다시 적용하면 같은 네 글자를 지웠다가 다시 더할 뿐입니다. 파일이 검토를 한 바퀴 도는 상황에서 중요합니다. 위치가 적용됐는지 확인하려고 다시 실행해도 무엇도 움직이지 않고 내려받는 파일은 조용히 다른 무언가가 든 사본이 아니라 같은 파일입니다.