Plotdevice

Latest version: v1.0.0

Safety actively analyzes 629052 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 6

1.0rc3

--------------
* Paths returned from rect, oval, line, star, arrow, endpath and textpath now return an un-transformed path. Drawing the path does the transformation. This gives a proper value when asking the bounds() for a path. (bug 62)
* textpath ignores the align state when no width is given. (bug 63)
* New NodeBox icon.

1.0rc2

--------------
* Fixed PDF export. (One of the resource files still referred to DrawBot)

1.0rc1

--------------
* image command has a working w (width) and h (height) parameter, that constrain the bounds of the image to the given width and height.
* the image cache is now updated in the imagesize command. Previously, if the image was not in cache, imagesize would keep reloading it from disk. Also, caches are kept between runs and check the modification date on the file.
* All geometry commands (rect, oval, line, star, arrow, endpath) have a draw parameter that can be set to False. Each of them return the (transformed) path.
* Added beginclip and endclip. Beginclip takes a path to use as the clipping path.
* Added textpath command which returns a (transformed) path of the text. Works exactly as the standard text command. (using optional width and height)
* Fixed bug where having a last line with a tab character would fail the compile.
* Fixed interface and unicode problems on the variables panel. Default values can now be accented strings.
* Default color is now real black instead of DrawBot-black.
* Fixed bug where drawing text without width parameter, but with align set to center or right would not display text.
* Giving tuples as arguments to fill and stroke work again. (E.g. fill((1,0,0)) )
* Switched from bundlebuilder to py2app.
* Cleared up the confusion when using two controller panels: they now get the name of the document they're connected to.
* Fixed bug that displayed EPS files on a different position than bitmap files.
* Added roundness parameter to the rectangle function.
* The BezierPath object got a major overhaul: it now integrates nicely with the state model (using the transformedpath method) and is actually a list containing PathElement objects that contain a command, x and y coordinates and (optionally) control points.
* All 'w' and 'h' parameters were changed to 'width' and 'height' (image, strokewidth)
* All of the major state change commands return their state: font, fontsize, lineheight, align, colormode, fill, stroke, strokewidth, transform.
* Documentation is user-friendler and inside of the DrawBot application, so that it can be accessed through Apple's Help system.

0.10.0

-----------------

CORE
* Much faster import times on 10.10+ thanks to a bundled copy of PyObjC 3.0.4
* Support for Python 3 and Homebrew builds of the interpreter
* Now using core animation layers to (hopefully) speed up graphics rendering
* `plot()` command can now override grob attributes like `x`, `y`, `width`, or `fill` when a
new value is passed as a keyword arg
* HTTP is now handled by the requests module and caches responses locally
* Primitives can now accept Point, Size, and Region types as arguments
(e.g., `rect(text("foo",20,20).bounds)`)
* `transform()` now accepts a `matrix` keyword arg to fully specify an affine transform

TYPOGRAPHY
* Enhanced `font()` command with support for OpenType/AAT features (currently
supporting `lig`, `sc`, `osf`, `tab`, `vpos`, and `frac` args).
* New `layout()` command handles ‘paragraph styles’ including: `align`,
`hyphenate`, `leading`, `spacing`, `indent`, and `margin` (replacing the
`align()` and `lineheight()` commands).
* `text()` supports all `font()` and `layout()` keyword args for one-off styling
* `text()` can now read text from file paths or urls passed as its `src` keyword arg
* Letterspacing can now be set (in terms of thousandths of an em) via the
`tracking` arg to font/text/stylesheet
* New `paginate()` command will break a long string into as many Text objects as
necessary to fully lay out long runs of type
* New `Text.flow()` method will break long text runs into multiple columns
* New [Tutorial](http://plotdevice.io/tut/Typography) in the user manual documenting
the changes

BUGFIXES
* Added 130+ unit tests (run them with `python setup.py test`)
* Fixes for `measure()`, `textpath()`, `Bezier.fit()`, and `read()` (which was crashing on
URLs that didn't provide a Last-Modified header)
* `__file__` global variable now defined for .pv scripts
* The `Preferences` dialog box now works on systems with non-standard homedir locations

0.9.4

----------------
* External scripts can use `from plotdevice import *` to create a drawing environment.
* Color commands now support gradients and image-based patterns
* Strokes can now be dashed lines of configurable segment lengths
* Added `pen()` command, incorporating `strokewidth()`, `joinstyle()`, and `capstyle()`
* The canvas `size()` can be set to non-pixel units (`cm`, `inch`, `pica`, etc.)
* Commands dealing with angles can be switched between radians & degrees with `geometry()`
* Added compositing support via the `blend()`, `alpha()`, and `shadow()` commands
* New utility methods: `fonts()`, `export()`, `read()`, `measure()`, `ordered()`, `shuffled()`
* Font styles can be set at the character level using the `stylesheet()` command
* The `font()` command accepts separate family and weight strings (not just PostScript Names)
* In addition to `rect()` and `oval()` you can now use `poly()` and `arc()`
* Grobs can be manually added/removed from the canvas with `plot()` and `clear()`
* New `halt()` command to "gracefully" bail out of an animation
* Libraries no longer require `ximport()` (since they now use `plotdevice.lib.register`)
* Quitting the app and re-launching will restore all open (auto-saved) documents
* Integrated the Sparkle framework for auto-updating of official builds
* Replaced the NSTextView-based editor with the much more capable ace.js
* Modernized document-window UI, keyboard shortcuts, and prefs panel
* Revised and extended User Manual

0.9

---------------------------
* Enhanced command line interface.
* Video export in H.264 or animated gif formats (with GCD-based i/o).
* Virtualenv support (for both installation of the module and running in-app with dependencies).
* Build system now works with Xcode or `py2app` for the application and `pip` for the module.
* A few more text colors are configurable in the preferences pane.
* Disabled scrollWheel and wheelDelta event data (to support ‘responsive scrolling’)
* Simplified bezier path API (including `with` statement support): `bezier()`, `clip()`
* Transformation commands all support the `with` statement
* Added support for external editors by reloading the source when changed.
* Example scripts are now embedded in the app and accessed from the menu bar
* Python 2.7, virtualenv support, and 64 bit extensions (now requires OS X 10.9+).

Page 4 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.