Files
SpineViewer/_locales/ko_KR.json
T
tianmo bb73cc9227 1.1.1版本审核修复
[spine-utils.js (line 35)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/js/spine-utils.js:35) 统一拦截绝对路径、..、Windows 盘符、UNC、URI、控制字符和符号链接越界。
跨素材贴图只能使用已枚举、验证且位于 Eagle 素材目录内的文件。
[spine-render.js (line 62)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/js/spine-render.js:62) 已删除未经验证的路径备用拼接。
自动缩略图只写当前回调提供的 dest,不再调用接口改写同组素材。
已删除后台整组补刷进程及 relatedDataPaths。
[viewer/spine.html (line 482)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/viewer/spine.html:482) 的手动缩略图只针对当前素材,并核对素材 ID、文件名和扩展名。
当前素材已有自定义缩略图时,会提示替换后无法自动恢复并要求确认。
手动生成的中间文件改存系统临时目录,API 失败时不再直接写 Eagle 素材目录。
八种语言文案及 README 已同步。
处理历史日志遗留问题
2026-09-17 13:38:22 +08:00

82 lines
5.3 KiB
JSON

{
"manifest": {
"app": {
"name": "SpineViewer"
}
},
"viewer": {
"title": "Spine 미리보기",
"skin": "스킨",
"play": "▶ 재생",
"pause": "⏸ 일시정지",
"static": "▮ 정지",
"staticLabel": "정지",
"playPauseTitle": "재생 / 일시정지(스페이스)",
"loop": "반복",
"speed": "속도",
"pma": "미리 곱함",
"pmaTitle": "Premultiplied Alpha(PMA)로 내보낸 텍스처용",
"background": "배경",
"backgroundTitle": "50×50 체커 배경. 캔버스 이동·확대를 따라가며 블렌드 모드에도 참여합니다",
"thumbnail": "현재 항목 썸네일로 설정",
"thumbnailTitle": "현재 프레임을 이 항목의 400×400 사용자 지정 썸네일로 설정",
"versionTitle": "Spine 버전",
"reloadTitle": "폴더 다시 불러오기",
"animationList": "애니메이션 목록",
"animations": "애니메이션",
"errorTitle": "미리볼 수 없음",
"durationPlaceholder": "길이 --",
"keyframesLegend": "파란 선: 키프레임",
"keyframesLegendTitle": "파란 선은 하나 이상의 본·슬롯·컨스트레인트 속성에 키프레임이 있는 시점을 나타냅니다",
"keyframesHint": "파란 선은 애니메이션 키프레임입니다. 선에 마우스를 올리면 시간과 프레임이 표시됩니다",
"timePlaceholder": "0.00 / 0.00 초 · 0 / 0 프레임",
"staticPoseTitle": "정지 자세 · 1 프레임",
"keyframeTitle": "키프레임 · {time} · {frame} 프레임",
"timelineStatic": "정지 · 1 프레임",
"timelineDuration": "길이 {time} · {frames} 프레임",
"readoutStatic": "정지 · 1 / 1 프레임",
"readout": "{time} / {total} · {frame} / {totalFrames} 프레임",
"rulerStatic": "0초 (정지)",
"seconds": "{value}초",
"imagePreview": "이미지 미리보기 (함께 있는 Spine 리소스를 찾지 못했습니다)",
"generating": "Eagle 썸네일을 생성하고 갱신하는 중…",
"thumbUpdated": "Eagle 썸네일을 갱신했습니다 · {format} {size}KB",
"thumbWrittenNoRefresh": "썸네일을 저장했지만 자동 새로고침에 실패했습니다: {error}",
"recentered": "캔버스를 가운데로 되돌렸습니다",
"pmaOn": "미리 곱한 알파 켜짐",
"pmaOff": "미리 곱한 알파 꺼짐",
"pmaRemembered": "{state} · 이 에셋의 설정으로 저장했습니다",
"pmaSaveFailed": "전환했지만 설정 저장에 실패했습니다: {error}",
"badgeFailed": "Spine 배지를 불러오지 못했습니다",
"runtimeFailed": "Spine 런타임을 불러올 수 없습니다: {file}",
"compoundName": "Eagle이 복합 확장자를 아직 동기화하지 않았습니다. 라이브러리를 다시 열어 주세요",
"txtRegistered": "이 항목은 아직 TXT로 등록되어 있습니다. Eagle에서 썸네일을 다시 생성하고 라이브러리를 다시 열어 주세요",
"apiHttp": "Eagle API가 HTTP {status}를 반환했습니다",
"noSkeletonForThumb": "스켈레톤이 로드되지 않아 썸네일을 생성할 수 없습니다",
"noItemId": "에셋 경로에서 Eagle 항목 ID를 찾을 수 없습니다",
"itemMismatch": "미리보기 파일과 Eagle 항목 정보가 일치하지 않아 썸네일 업데이트를 취소했습니다",
"replaceCustomThumbnailConfirm": "이 항목에는 이미 사용자 지정 썸네일이 있습니다. 계속하면 교체되며 플러그인에서 이전 이미지를 자동 복원할 수 없습니다. 계속하시겠습니까?",
"thumbnailFailed": "썸네일 생성 실패: {error}",
"imageLoadFailed": "이미지를 불러오지 못했습니다",
"settingsNotReady": "에셋 설정이 아직 준비되지 않았습니다",
"noSkeletonFile": "스켈레톤 파일을 찾을 수 없음",
"noSkeletonFileMsg": "선택한 파일과 짝을 이루는 Spine 스켈레톤 파일(.skel / .skel.bytes / .json)을 찾지 못했습니다.\n\n같은 Spine 내보내기 세트를 Eagle에 함께 가져와 주세요.",
"noAtlas": "Atlas를 찾을 수 없음",
"noAtlasMsg": "짝을 이루는 .atlas / .atlas.txt 파일을 찾지 못했습니다.",
"unsupportedVersion": "지원하지 않는 버전",
"unsupportedVersionMsg": "인식할 수 없는 Spine 버전: {version}\n지원 버전: {list}",
"unknownVersion": "알 수 없음",
"runtimeLoadFailed": "런타임 로드 실패",
"atlasLoadFailed": "Atlas 로드 실패",
"emptySkeleton": "스켈레톤 데이터가 비어 있음",
"emptySkeletonMsg": "유효한 스켈레톤 데이터를 읽지 못했습니다.",
"missingFile": "파일 없음",
"missingFileMsg": "파일 경로 매개변수가 전달되지 않았습니다.",
"fileNotExist": "파일이 존재하지 않음",
"loadFailed": "불러오기 실패",
"notSpineText": "이 파일은 .atlas.txt 또는 .skel.bytes 형식의 Spine 리소스가 아닙니다.",
"truncated256": "\n\n(앞부분 256 KB만 표시)",
"truncated1m": "\n\n(파일이 커서 앞부분 1 MB만 표시)"
}
}