다국어
한국어·영어 메시지가 들어 있다. 언어는 lang 으로 고르고, 문구 일부는 messages 로 덮어쓴다.
lang
ts
await openDrawing({ lang: "en" });| 값 | 결과 |
|---|---|
"ko", "ko-KR" 등 ko 로 시작 | 한국어 |
비움(undefined) | document.documentElement.lang 을 본다. 그것도 비어 있으면 한국어 |
| 그 밖의 값 | 영어 |
lang 은 string 이다. 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)이고 나머지는 문자열이다.