mesh-avatar-studio
Turn one illustration into an animated 2D mesh avatar with a coding agent and a local editor
翻譯準備中
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Compare images, PDFs and TIFFs side by side in the browser. Synchronized zoom and pan, per-pane offsets, video + operation log recording. Files never leave your machine.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A browser-based viewer for arranging images, PDFs, and TIFFs in multiple panes. Use it to inspect files side by side with synchronized zooming and panning. 画像・PDF・TIFFを複数のペインに並べて表示し、同期ズームやパンで見比べられるブラウザービューアーです。 PaneViewer is for visual inspection only. It does not guarantee that files match. このアプリは視覚的に確認を行うもので、ファイル間の一致を保証するものではありません。檢視完整 README ↗
A browser-based viewer for arranging images, PDFs, and TIFFs in multiple panes. Use it to inspect files side by side with synchronized zooming and panning.
画像・PDF・TIFFを複数のペインに並べて表示し、同期ズームやパンで見比べられるブラウザービューアーです。
PaneViewer is for visual inspection only. It does not guarantee that files match.
このアプリは視覚的に確認を行うもので、ファイル間の一致を保証するものではありません。
localStorage (three keys, prefixed image-viewer.). The contents and names of the files you open are never stored.Drop one or more files onto a pane, or click an empty pane to select files. The first file replaces the target pane; the rest fill empty panes in pane order. The grid expands automatically, up to nine panes. Other loaded images are kept; if there is not enough room, a message reports how many files were not loaded. Click a loaded pane's file name to choose replacement files.
複数ファイルのドロップ・選択に対応しています。1枚目を操作したペインへ、残りを空きペインへ 順に配置し、最大9ペインまで表示を自動で広げます。ほかの画像は保持し、空きが足りない分は 件数を通知します。読み込み済みのファイル名をクリックして、別のファイルへ変更できます。
| Input | Action |
|---|---|
| Two-finger scroll (trackpad) | Pan |
| Pinch, or ⌥ + wheel | Zoom |
| Mouse wheel | Zoom |
| Drag | Pan |
| Double click | Fit the pane |
0 / 1 | Fit / actual size |
+ / - | Zoom in / out |
Ctrl(⌘)+Space+click | Zoom in 2× at the pointer |
Ctrl(⌘)+Alt(⌥)+Space+click | Zoom out 2× at the pointer |
| Arrow keys | Pan |
R / Shift+R | Rotate right / left |
H / V | Flip horizontally / vertically |
S / Shift+S | Toggle sync / align panes |
Ctrl(⌘)+S | Save a PNG |
Ctrl(⌘)+Shift+C | Copy a PNG to the clipboard |
Single-key shortcuts fire only without a modifier, so ⌘R, ⌘H and the rest
stay with the browser. The combinations with Ctrl(⌘) above are the only
exceptions.
The recording button writes compare_<timestamp>.mp4 (or .webm) plus
compare_<timestamp>.json. Browsers allow only one automatic download at a
time, so the toast keeps a button to save the log by hand if the second file is
blocked.
Developed and tested on Chrome. Recording uses MediaRecorder, whose container
support differs between browsers: Chrome and Safari produce MP4, Firefox
produces WebM, which QuickTime and PowerPoint may not play. Everything else
relies on widely supported APIs.
Use Node.js 24.22.1, matching the Duo Checker build environment.
The version is recorded in .nvmrc and used by CI.
nvm install
nvm use
npm ci
npm run dev # http://localhost:5173
npm test # vitest
npm run typecheck
npm run build # production build into dist/
predev and prebuild copy PDF.js's cmaps/, standard_fonts/, wasm/ and iccs/ into
public/. Without them, PDFs whose fonts are not embedded render with missing
text, so do not remove that step. Generated PDF.js files are not tracked; public/_headers and public/favicon.svg are tracked.
Tests cover the parts that can break silently: the relative-sync transform, orientation math, the operation-log format, trackpad detection, and settings migration. Rendering, recording and file loading are still verified by hand.
wrangler.jsonc is the configuration for the author's own Cloudflare Workers
deployment. A fork should change name and routes before running
npm run deploy, or delete the file and serve dist/ with any static host.
PaneViewer is released under the MIT License. See LICENSE and THIRD-PARTY-NOTICES.md for application and dependency license information. Security reports go to SECURITY.md.