Files
RUWIO/package.json
T
thandClaude Opus 4.7 cd9cf91ef0 1.0.1: target size for GIF / APNG / APNG preview
Frame-based exports (GIF, APNG, APNG-preview) accept an optional
target output size. ExportDialog exposes it as a single width
input above the three image-export rows; height is derived live
from the scene's aspect ratio so the user can't squash the output.
The preview HTML mirrors the target dims so a downsized export
previews at its real pixel size.

renderFrames takes targetWidth / targetHeight, sizes its canvas
accordingly and scales the ctx once; drawSceneFrame's own
save/restore preserves the transform across frames, including the
top-level-mask offscreen compositing path.

Target width on dialog open is inherited from the current
scene.canvas — watched via modelValue so resizing the stage and
reopening the dialog picks up the new size (instead of the stale
value from whenever ExportDialog first instantiated).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 17:50:35 +02:00

30 lines
649 B
JSON

{
"name": "ruwio",
"private": true,
"version": "1.0.1",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc --noEmit && vite build",
"preview": "vite preview",
"type-check": "vue-tsc --noEmit",
"pack": "bash scripts/pack.sh"
},
"dependencies": {
"@phosphor-icons/vue": "^2.2.1",
"gifenc": "^1.0.3",
"konva": "^9.3.16",
"pinia": "^2.2.6",
"upng-js": "^2.1.0",
"vue": "^3.5.13",
"vue-konva": "^3.1.2"
},
"devDependencies": {
"@types/node": "^22.10.2",
"@vitejs/plugin-vue": "^5.2.1",
"typescript": "^5.6.3",
"vite": "^6.0.3",
"vue-tsc": "^2.1.10"
}
}