3.6 KiB
3.6 KiB
OpenPencil v0.8.2
v0.8.2 is a prerelease focused on higher-fidelity imports, lower transient
memory use, smoother large-document workflows, and safer .op persistence.
Highlights
- Figma imports more closely preserve component instances and swaps, masks, blend modes, page backgrounds, tiled images, vectors, text, child order, and absolute positioning.
- Desktop Figma conversion runs outside the UI thread and writes a sibling
.opfile. An existing target is never silently overwritten: replace it, keep both with a numbered copy, or cancel the import. - Large documents use a focused active-page render scene. Switching pages releases the previous scene, then fits and centers the newly active page.
- Desktop Save and Save As run as serialized background jobs, reducing UI stalls and avoiding unnecessary full-document clones for clean files.
- Older
.opfiles open through the compatibility loader and can be upgraded in place, saved as a numbered copy, or opened without conversion. - HTML import now accepts complete pages, multi-file projects, and ZIP packages with local CSS, images, nested imports, and common text encodings.
Figma and Editing Fidelity
- Component properties, instance overrides, swap targets, authored geometry, and style references survive conversion more reliably.
- Alpha, vector, and luminance masks, layer and fill blend modes, image tile scale, and page background color render on native and web surfaces and are configurable in the property inspector.
- Boolean geometry, vector bounds, image fills, text measurement, layout positioning, and paint order more closely match the source design.
Performance and Reliability
- Figma conversion reuses prepared values, text measurements, image lookups, and component data instead of recomputing them for every node.
- Desktop
.oploading uses memory-mapped input and a fast path for safe Preserve-mode documents. - Web Figma conversion runs in a short-lived worker with IndexedDB staging, so conversion memory can be released before the document is installed in the editor.
- Native publication is atomic, web saves are queued and coalesced, and an externally changed target is preserved by falling back to a numbered copy.
- Windows desktop startup recovers when the preferred native OpenGL path is unavailable.
Compatibility
- The current
.opformat marker is1.2. - Legacy upgrades preserve unknown top-level and nested fields; new optional schema fields and generated TypeScript bindings remain backward compatible.
- A current-format document does not trigger migration merely because optional editor metadata is absent.
- Active-page rendering reduces renderer memory, but the canonical document still retains all page data while it is open.
- Future incompatible format majors are rejected instead of being rewritten.
- OpenPencil account sign-in is temporarily hidden in this prerelease and is planned to return in a later version.
- The public web SDK remains a read-only viewer surface, and the retired TypeScript application workspace is not part of this release.
Web SDK and Distribution
@zseven-w/op-web-sdk,@zseven-w/op-web-sdk-react, and@zseven-w/op-web-sdk-vueare synchronized at0.8.2and published under the npmnexttag.- Desktop installers and standalone
opCLI archives are built for macOS, Windows, and Linux. - Platform-specific VS Code extension packages are attached to the prerelease and published through Open VSX.
- The Rust web host is published as
ghcr.io/zseven-w/openpencil-web:v0.8.2. - Homebrew and Scoop manifests are updated after the GitHub prerelease is published.