이미지 텍스트 번역: 메뉴·타이틀·버튼에 그려 넣은 글자까지 번역하기
게임 텍스트 중 일부는 텍스트가 아니라 아트워크에 그려져 있습니다. 타이틀 화면, New Game / Continue 버튼, HUD 라벨 같은 것들이죠. 추출기로는 손댈 수 없습니다. RuneTranslate의 이미지 텍스트 번역은 이미지 위의 글자를 상자로 지정하고, 프로젝트의 원본 언어로 인식하고, 직접 고른 공급자로 번역한 뒤, 원본 파일명 그대로 다시 구워 넣게 해 줍니다. 0.24.2 신규: 텍스트 스트로크 인페인팅이 글자만 지우고 그 뒤의 아트워크를 재구성합니다 — 색깔 패치 대신 깔끔한 배경. 작동 방식, 실행 위치(자체 호스팅, 크롭은 폐기), 그리고 Free 대 Supporter.
게임 텍스트 중 일부는 사실 문자 데이터가 전혀 아닙니다 — 아트워크에 그려져 있죠. 타이틀 화면, “New Game / Continue / Options” 버튼, HUD 라벨, CG 위의 도장 같은 것들. 일반적인 번역 과정은 이런 것들을 절대 건드리지 못합니다. 추출할 문자열이 존재하지 않기 때문이죠. 글자가 곧 픽셀입니다. 그래서 번역을 다 끝냈는데도 게임은 맨 첫 화면에서 여전히 일본어로 여러분을 맞이합니다.
이미지 텍스트 번역이 그 공백을 메웁니다. 이미지 안의 글자를 가리키면 RuneTranslate가 그것을 읽어 주고, 여러분은 다른 줄과 똑같이 번역하며, 내보내기 때 번역이 다시 그림 속으로 구워집니다 — 원본 파일명 그대로라서 게임은 추가 단계 없이 불러옵니다. 0.24.2 신규로, 이제 글자도 제대로 지웁니다: 아트워크 위에 색깔 사각형을 찍는 대신, 원래 글자만 제거하고 그 뒤의 아트워크를 재구성합니다.
한눈에 보는 작동 방식
프로젝트 편집기에 새로 생긴 Images 탭으로, 평소의 텍스트 줄 바로 옆에 있습니다. 무엇을 번역할지 정확히 여러분이 통제하도록, 흐름은 일부러 직접 손대는 방식으로 만들어졌습니다:
- 이미지를 고르세요. RuneTranslate가 유력한 후보(엔진의 UI 폴더에서 나온 메뉴 / 타이틀 / 버튼 아트)를 띄워 주거나, 여러분이 직접 아무 이미지나 추가할 수 있습니다.
- 이미지 위 글자 조각 주위에 상자를 그리세요 — 필요한 만큼, 단어나 구절마다 하나씩.
- Recognize는 각 상자를 게임 자체 언어의 편집 가능한 텍스트로 바꿔 줍니다 — OCR 오류가 있으면 바로 거기서 고치세요.
- 다른 곳에서 쓰는 것과 같은 엔진으로 Translate한 뒤, 결과를 다듬으세요.
- Export는 번역된 텍스트를 이미지에 다시 구워 넣고, 원본을
bk_<name>으로 안전하게 보관합니다.
번역할 가치가 있는 이미지 찾기
글자를 찾겠다고 스프라이트 천 개를 스크롤할 필요는 없습니다. Images 탭은 후보 갤러리를 보여 줍니다 — 메뉴 / 타이틀 / 버튼 아트일 가능성이 가장 높은 이미지를(게임 내 위치와 크기로) 띄워 주고, 자잘한 아이콘과 거대한 배경은 건너뛰는 빠른 로컬 처리입니다. 그 목록을 만드는 데 업로드되는 것은 아무것도 없습니다. 그저 여러분 자신의 파일을 읽을 뿐이죠. 갤러리에 없는 것이 있다면 아무 이미지나 손수 추가할 수 있습니다. 어느 것에 실제로 글자가 있는지 눈으로 가늠해 열어 보세요 — CG와 개인 아트는 여러분이 열기로 선택하지 않는 한 절대 건드리지 않습니다.
상자를 그리면 글자가 나온다
후보를 클릭하면 캔버스에 크게 열립니다. 글자 조각 주위로 상자를 드래그하면 — 앱의 다른 곳에서 쓰는 것과 같은 마퀴 선택 — 번호가 매겨진 영역이 되어 이미지 옆에 자기만의 줄로 나타납니다. 대부분의 이미지에는 텍스트 지점이 여럿 있으므로(New Game, Continue, Options, Load…), 각각에 상자를 하나씩 그리기만 하면 작은 목록으로 쌓입니다. 상자는 미세 이동·크기 조절·삭제가 가능합니다.
한 영역에서 Recognize를 누르면 잘라낸 부분이 편집 가능한 텍스트로 되읽힙니다. 이것은 프로젝트의 원본 언어로 인식됩니다 — 일본어로 못 박혀 있지 않습니다. 프로젝트가 중국어, 한국어, 영어, 러시아어, 아랍어, 또는 유럽 언어라면 인식은 자동으로 알맞은 모델을 사용합니다. 상자가 테두리를 물거나 글리프 사이에 걸려 빈 채로 돌아오면, 침묵 대신 “텍스트가 감지되지 않음 — 상자 크기를 조절하세요”라는 안내를 받습니다. 그리고 원본 필드는 항상 편집 가능하니, 고치거나 그냥 직접 글자를 입력해도 됩니다.
다른 줄과 똑같이 번역하기
각 영역에는 Translate 버튼이 있고(이미지별 “모두 번역”도), 대사에 쓰는 것과 같은 번역을 거칩니다 — DeepL과 Google부터 OpenAI나 Claude까지, 여러분이 고른 공급자와 모델로요. 번역된 텍스트는 편집 가능한 필드에 들어오므로, 버튼에 맞게 줄이거나 이미지에 닿기 전에 어조를 다듬을 수 있습니다. 덧붙인 기능이 아니라, 평소의 줄 옆에 자연스럽게 어우러진 하나의 일관된 작업 흐름으로 느껴집니다.
패치가 아니라 깔끔한 배경 (0.24.2 업그레이드)
바로 이 부분이 구워 넣은 글자를 실제로 번역된 것처럼 보이게 만듭니다. 이미지 글자를 바꾸는 순진한 방법은 옛 글자 위에 꽉 찬 사각형을 칠하고 그 위에 새 글자를 쓰는 것입니다. 평평한 버튼에서는 괜찮아 보이지만 — 타이틀 화면에서는 끔찍합니다. 글자가 세밀한 일러스트 위에 얹혀 있고, 그 패치는 엉뚱한 색의 뻔한 덩어리이기 때문이죠.
대신 RuneTranslate는 텍스트 스트로크 인페인팅을 합니다: 실제 글자 획을 감지해 그 픽셀만 제거하고, 그 뒤에 있던 아트워크 — 밤하늘, 캐릭터, 그러데이션 — 를 재구성한 다음, 그 위에 깔끔한 외곽선으로 여러분의 번역을 그립니다. 평평한 버튼에서는 티 없는 교체가 되고, 복잡한 타이틀 CG에서는 글자가 사라지고 아트가 다시 세워져, 다시 굽기가 도달할 수 있는 한 “애초에 일본어였던 적이 없다”에 가장 가깝습니다. (질감이 강한 사진 배경이 어려운 경우로 희미한 흔적이 남을 수 있습니다. 평평하고 은은하게 음영진 아트가 가장 깨끗하게 나옵니다.)
어디서 실행되는가 — 그리고 무엇이 비공개로 남는가
인식과 배경 정리는 RuneTranslate 자체 서버에서 실행됩니다 — 자체 호스팅한 인식기이며, 제3자 OCR 클라우드가 아닙니다. 여러분의 앱은 상자로 지정한 작은 크롭(정리가 재구성할 수 있도록 약간의 여백 포함)만 보낼 뿐, 게임 전체를 보내는 일은 절대 없습니다. 그 크롭 바이트는 메모리에서 읽힌 뒤 즉시 폐기됩니다 — 아무것도 저장되지 않으며, 요청에는 엔진 정보만 태그되고 게임명이나 프로젝트명은 절대 붙지 않습니다. 실제 번역은 대사와 똑같이, 여러분이 고른 공급자를 통해 이뤄집니다.
Free 대 Supporter
서버 측 인식과 깔끔한 인페인트는 Supporter 기능($3/mo)입니다 — 저희 하드웨어를 쓰는 부분으로, 협업 프로젝트 및 클라우드 번역 메모리와 같은 ‘호스팅 비용 지불’ 모델입니다.
Free 사용자도 온전히 자기 컴퓨터에서 진짜 작업 흐름을 누립니다: 상자를 그리고, 원본 텍스트를 직접 입력하고, 자기 공급자로 번역해 내보내면 됩니다 — 다시 굽기는 서버 인페인트 대신 단순한 flat-fill 지우기만 사용합니다. 그러니 자동 인식과 깔끔하게 재구성된 배경이 Supporter 업그레이드이고, 나머지 모든 것은 누구에게나 작동하며, Free 내보내기는 저희 서버에 절대 닿지 않습니다.
다시 굽기와 백업의 작동 방식
다시 굽기는 내보내기 시점에, 내보낸 게임 사본에 대해서만 일어납니다 — 여러분의 원본 파일은 절대 아닙니다. 번역된 영역이 있는 각 이미지에 대해, RuneTranslate는 원본 파일명 위에 새 이미지를 쓰고(그래서 엔진이 설정 없이 불러옵니다) 손대지 않은 원본을 그 옆에 bk_<name>으로 복사합니다. 백업은 한 번만 기록되므로, 다시 내보내도 진짜 원본을 절대 덮어쓰지 않습니다 — 구운 파일을 지우고 bk_ 사본을 되돌려 놓으면 언제든 복원할 수 있습니다. PNG는 무손실을 유지하고, JPEG는 고품질로 재인코딩되며 형식을 그대로 지킵니다.
Kirikiri: XP3 아카이브 안의 이미지 — 그리고 TLG
대부분의 엔진은 이미지를 낱개 파일로 두지만, Kirikiri / KAG 비주얼 노벨은 그렇지 않습니다 — 모든 것을 (흔히 암호화된) .xp3 아카이브 안에 넣고, 상당수는 엔진 밖에서는 아무것도 열 수 없는 Kirikiri 고유의 TLG 이미지 형식(TLG5 / TLG6)으로 저장합니다. RuneTranslate가 이 모두를 대신 처리합니다: 텍스트 번역을 구동하는 것과 같은 복호화를 써서 XP3에서 이미지를 곧바로 읽고, 앱 안에서 TLG를 디코딩하며, 다른 이미지와 똑같이 갤러리에 보여 줍니다 — 압축 해제도, 변환도, 외부 도구도 필요 없습니다.
내보내기 때 번역된 이미지를 다시 주입해 게임이 그냥 불러오게 합니다 — 낱개 파일과 작은 patch2.xp3 오버레이(텍스트 번역이 쓰는 것과 같은 이중 안전장치 override)로요. 그리고 서명된 빌드를 인식합니다(서명 없는 것이 서명 검사를 통과하지 못할 경우 패치 아카이브를 건너뜁니다). TLG 이미지는 원래 이름으로 유효한 .tlg로 다시 구워지므로, 엔진은 차이를 전혀 알지 못합니다.
범위 & 한계
- 현재는 낱개 이미지 엔진과 Kirikiri. RPG Maker MV / MZ(
img/폴더)와 Kirikiri / KAG(XP3 안의 이미지, TLG 포함)를 지금 지원하며, 더 많은 엔진이 뒤따릅니다. 다른 아카이브 형식 안에 봉인된 이미지(일부 Unity / Wolf 팩)는 아직 닿지 못합니다. - 평평하고 일러스트풍인 UI는 빛나고, 빽빽한 사진은 어려운 경우입니다. 버튼, 타이틀, 양식화된 로고는 아름답게 정리되지만, 복잡한 사진 질감 위에 앉은 글자는 희미한 흔적을 남길 수 있습니다.
- 여러분은 항상 과정에 함께합니다. 인식과 번역 둘 다 편집 가능하고, 내보내기 전까지는 이미지에 자동으로 적용되는 것이 아무것도 없습니다 — 그래서 잘못 읽은 것이나 어색한 표현이 뜻밖에 출고되는 일은 없습니다.
여섯 단계로 끝내기
- 프로젝트를 열고 Images 탭으로 전환하세요.
- 갤러리에서 타이틀 / 메뉴 이미지를 고르세요(또는 직접 추가하세요).
- 그 위의 각 글자 조각 주위에 상자를 그리세요.
- 각 상자를 Recognize한 뒤, 원본 필드에서 OCR 오류를 고치세요.
- 여러분의 공급자로 Translate하고 결과를 정돈하세요.
- Export. 번역된 이미지가 원래 이름으로(
bk_백업과 함께) 자리 잡고 게임은 그대로 불러옵니다.
마무리
대사에서 멈추는 번역은 타이틀 화면이 일본어로 뜨는 순간 여전히 절반만 끝난 느낌을 줍니다. 이미지 텍스트 번역이 그 일을 마무리합니다 — 메뉴, 버튼, 타이틀 아트까지 — 그리고 새 인페인트는 그것들이 덧대어진 게 아니라 원래 그렇게 그려진 것처럼 보이게 만듭니다.
RuneTranslate 다운로드하고, Images 탭을 열어, 추출기로는 결코 닿을 수 없던 글자를 번역하세요.
RuneTranslate를 써볼 준비가 되셨나요?
무료 등급에서 모든 엔진과 모든 번역 제공자가 열립니다. Supporter($3/mo)로 최고 속도가 열립니다.
Windows용 다운로드