Skip to content

다국어

한국어·영어 메시지가 들어 있다. 언어는 lang 으로 고르고, 문구 일부는 messages 로 덮어쓴다.

lang

ts
await openDrawing({ lang: "en" });
결과
"ko", "ko-KR"ko 로 시작한국어
비움(undefined)document.documentElement.lang 을 본다. 그것도 비어 있으면 한국어
그 밖의 값영어

langstring 이다. Lang 타입("ko" | "en")은 내장 메시지 묶음의 이름일 뿐 lang 옵션의 타입이 아니다.

messages

Partial<Messages> 를 주면 고른 언어 위에 덮어쓴다.

ts
import { openDrawing, messagesEn } from "@newtil/drawing";

await openDrawing({ lang: "en", messages: { done: "Insert", title: "Annotate" } });

// 다른 언어를 통째로 만들 때는 messagesKo / messagesEn 을 바탕으로
const ja: Messages = { ...messagesEn, title: "描画", done: "完了", /* … */ };
await openDrawing({ lang: "ja", messages: ja });

메시지 키

Messages 인터페이스의 키 전부. 한국어 기본값은 messagesKo, 영어는 messagesEn.

한국어 기본값쓰이는 곳
title그림판대화상자 aria-label
toolSelect선택·이동 (V)도구 버튼 툴팁
toolPen펜 (P)
toolHighlighter형광펜 (H)
toolLine직선 (L)
toolArrow화살표 (A)
toolArrow2양쪽 화살표
toolRect사각형 (R)
toolEllipse타원 (E)
toolText글자 (T)
toolBadge번호 배지 (B)
color색 견본 버튼
customColor다른 색…색 고르기 입력
strokeWidth선 굵기굵기 슬라이더
fillNone채우기 없음채우기 버튼
fillTranslucent반투명 채우기
fillSolid채우기
dashed점선점선 버튼
opacity투명도투명도 라벨·슬라이더
undo되돌리기 (⌘Z)편집 버튼
redo다시 실행 (⇧⌘Z)
delete지우기 (Delete)
duplicate복제 (⌘D)
bringForward앞으로
sendBackward뒤로
background배경 이미지…발 영역 버튼
clearBackground배경 지우기정의만 있고 0.1.0 UI 에는 해당 버튼이 없다
zoomFit화면에 맞춤정의만 있고 0.1.0 UI 에는 해당 버튼이 없다(맞춤은 자동)
done완료발 영역 버튼
cancel취소
saving저장 중…저장 훅 진행 중 완료 버튼
textPrompt넣을 글자정의만 있고 0.1.0 UI 에서는 쓰이지 않는다(글자는 판 위 textarea 로 입력)
pasteHint캡처를 붙여넣거나(⌘V / Ctrl+V) 배경 이미지를 고르세요. 빈 판에 바로 그려도 됩니다.빈 판 안내
discardConfirm그린 것을 버릴까요?취소 확인(window.confirm)
exportFailed그림을 이미지로 만들지 못했습니다.정의만 있고 0.1.0 UI 에서는 쓰이지 않는다(굽기 실패도 saveFailed 로 보인다)
saveFailed(reason) => "그림을 저장하지 못했습니다. 다시 시도하거나 취소하세요.\n\n" + reason완료 실패 알림(window.alert). 함수 라는 점에 주의

saveFailed 만 함수((reason: string) => string)이고 나머지는 문자열이다.