Skip to content

PlotDevice v1.0.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 15 Jul 19:09
· 3 commits to main since this release
New Features
  • Runs natively on Intel and Apple Silicon and supports retina displays
  • Python 3 support (including a bundled 3.10 installation in the app)
  • images can now be exported in HEIC format and videos support H.265 (HEVC)
  • SVG files can be drawn to the canvas using the image() command (thanks to the magical SwiftDraw library)
  • image exports have a configurable zoom to create 2x/3x/etc ‘retina’ images
  • revamped var() command for creating GUIs to modify values via sliders, buttons, toggles, etc.
  • updated text editor with multiple tabs, new themes, and additional key-binding modes emulating Sublime Text and VS Code
  • the module's command line interface is now accessible through python3 -m plotdevice
  • the command line tool has a new --install option to download PyPI packages for use within the app
  • document autosaving is now user-configurable
Bugfixes
  • exported images generated on retina machines now have the proper dimensions
  • hex colors can now use lowercase letters
  • automatic variables like WIDTH & HEIGHT correctly support the / operator
  • the Color object's .blend() method is working again
  • the read() command can now handle csv files with spaces in their header row names
  • the translate() command now incorporates non-pixel grid units set via the size() command
  • cmyk exports are working reliably for command line --export and via the export(cmyk=True) method
  • arguments defined using the command line tool's --args options are now passed to the script's sys.argv
Misc. Improvements
  • the command line tool can be exited via ctrl-c in addtion to being Quit from the menu bar
  • simplified unicode handling (and improved support for normalization of user-provided strings)
  • building the module now only requires Xcode command line tools—not a full Xcode.app installation
  • the text() command will always treat its first argument as content (even if it's not a string) unless a str, xml, or src keyword argument is provided
  • the mouse pointer is now visible in full-screen mode (and will auto-hide when inactive)
Unfortunate Casualties
  • The NodeBox Libraries (coreimage, colors, and friends) would require quite a bit of attention to get working properly again.
    A first pass can be found in the plotdevice-libs repository but they're not
    ready for prime-time. If you're interested in contributing, this would be a terrific place to start!