๐ Logos InkPen.IO v1.0.1 โ Initial Public Release
๐จ Logos InkPen.IO v1.0.1
Six months of development โ one professional vector illustration app.
โ๏ธ Drawing & Pen Tools
- Full FreeHand-style pen tool with calligraphic ink simulation
- Embed original inkpen data in Autodesk SVG exports
- Remove stroke expansion from selection hit test for better performance
- Pressure-sensitive drawing support
- Stroke simplification, deduplication, and smoothing filters
๐ฑ๏ธ Selection & Direct Selection
- Direct selection tool with paint/fill-based selection (FreeHand/Illustrator style)
- Option+Click select behind for direct selection tool
- Direct selection moves individual points; arrow key nudging for selected points
- Auto-select topmost member when switching to direct select with group
- Direct selection UI moves with shape during live nudge preview
- Move dialog support for selected points in direct selection mode
๐ Offset Path & Transform
- Offset Path feature with document units and ยฑ12 picas / ยฑ50px ranges
- Offset path uses document units with 0.1 precision
- Clamp offset slider when document units change
- Scale X, Scale Y, and Rotate fields in toolbar
- Transform box with direct opacity control
- Bounding box rectangle button in document toolbar
๐ Alignment & Anchors
- Align X and Align Y menu items in Object menu
- Separate X-only and Y-only anchor point alignment buttons
- Alignment anchor preference with locked item priority
- Simplified single align button in toolbar
๐ Import & Export
- SVG import: shapes added to new layer instead of replacing Guides layer
- SVG text import preserves UUID and textPosition
- PDF export fix for groups using memberIDs
- Autodesk SVG export uses true 96 DPI coordinates
- PNG export fix (was upside down from File menu)
- Dynamic format version in SVG and PDF metadata
๐๏ธ Layers & Groups
- Delete layer button in LayersPanel
- Lock icon as toggle button synced with layers panel
- Layer panel displays group members using memberIDs
- Sync direct selection when selecting from layers panel
- Track selection order in layers panel
- Copy/paste groups with unique UUIDs for all members
- Pasted groups keep members inside group
- Group color/stroke/opacity changes via memberIDs
- Fix nested group rendering to display sub-groups
๐ฏ Snapping, Zoom & View
- Fit screen on first open, never open minimized
- Fit to Page max zoom increased to 16,000%
- Classic Space+Cmd zoom shortcut
- Auto fit-to-page when window is resized
- Snap Page to Artwork/Selection captures all object types
- Show Grid, Snap to Grid, Grid on Top toggles
- Major grid line interval per unit type
- Grid renders above background layer
๐ Color, Opacity & Gradients
- CPU SIMD optimization for color + gradient operations
- Live updates for opacity and width sliders on groups
- Preserve opacity when changing colors
- Fix color picker for groups with memberIDs
- Replace NSColor with PlatformColor and Color.platform* helpers
- Replace GradientSwatchNSView with SwiftUI Canvas
- Migrate to CGColor across PDF, cursors, eyedropper
๐ค Text & Typography
- Stroke placement support for text (center, inside, outside)
- Text to outlines with undo support
- Preserve text stroke and layer positions when converting to outlines
- Optimize text stroke rendering โ outline once per text
- SVG text import with UUID and textPosition preservation
โ๏ธ Path Operations & Clipping
- Combine path operation with unionMultiplePaths support
- Clipping mask with cross-layer support and undo
- Fix path operations duplicate IDs and undo count
- Fix release clipping mask reversing object order
- Fix clipping mask duplicating objects from other layers
๐ Units, Dimensions & Coordinates
- Unit-aware Transform X Y W H coordinates
- Show drawing dimensions in document unit
- 3 decimal places for dimension display
- Unit formats standardized to 2โ3 decimal places
- Fix guide drag speed โ canvasDelta already in doc coords
โฎ๏ธ Undo & Redo
- Selection/deselection in undo/redo
- Fix undo not available until deselection
- Undo support for group transforms, nested group drag, and property changes
- Undo for path operations, clipping masks, and corner radius changes
- Refactored nudge, text handling, corner radius, and transform controls to use undo helpers
๐งฉ Toolbar & UI
- Interpolation quality popup menu
- Add onTapGesture for instant button response
- Optimize LayersPanel reactivity
- Fix duplicate button actions
โก Performance โ SIMD Optimizations
- SIMD optimize pan and coordinate transforms
- SIMD optimize Canvas views, GridView, TextCanvas, GPUMathAccelerator
- SIMD optimize CornerRadiusEditTool, PenPlusMinusTool, UnifiedObjectView gradient
- SIMD8 batch optimization with type aliases
- Exponential zoom easing with SIMD
- Optimize bounding box rectangle for faster response
- O(1) clipped objects cache
- Skip guides in layer rendering โ use GuidesView only
- Skip viewport culling for text objects
๐ Bug Fixes & Stability
- Fix tile rendering gaps with pixel-aligned sizes
- Fix tile culling coordinate conversion
- Fix Metal texture color space conversion
- Fix rectangle corner handle directions for cusp conversion
- Fix grid alignment and mm spacing
- Fix keyline view not rendering shapes
- Fix layout recursion warning on startup
- Fix orphaned objects from offset path operation
- Fix fitToPage centering calculation
- Various compile error fixes and warning cleanups
Full Changelog: https://github.com/macOS26/logos/commits/v1.0.1