Skip to content

Releases: jzbrooks/vgo

v3.0.0

30 Nov 03:52
06097d9
Compare
Choose a tag to compare

Added

  • com.jzbrooks.vgo.core.util.math.Surveyor, which computes the bounding box of an arbitrary list of commands
  • Bézier curve interpolation for all variants and elliptical arc bounding box functions

Changed

  • vgo-plugin (com.jzbrooks.vgo.plugin) no longer requires a particular version of Android Gradle Plugin.
    Note: :vgo is an abstract implementation of the tool which does not assume either a cli or plugin context. CLI related logic has been relocated into :vgo-cli.
  • Breaking: CubicCurve<*>.interpolate has been split into CubicBezierCurve.interpolate and SmoothCubicBezierCurve.interpolate
  • com.jzbrooks.vgo.core.optimization.MergePaths constructor accepts constraints. See com.jzbrooks.vgo.core.optimization.MergePaths.Constraints.
  • Paths with an even odd fill rule can be merged

Fixed

  • Overlapping paths are no longer merged, which avoids some image warping issues (#88, #101)
  • Conversions without a specified output file will write a file the file extension corresponding to the format.
  • Decimal separators are locale-invariant. (#60)
  • Crash when using the CLI to convert an SVG containing a clip path to vector drawable.
  • (Vector Drawable) Path merging avoids merging a single path data string beyond the framework string length limit (#82)
  • Paths with an initial relative command are modified to make that command absolute when merged (#111)

v2.4.0

02 Oct 16:59
9368889
Compare
Choose a tag to compare

Changed

  • Support AGP 8.7.0. This is a stop-gap solution which will be improved in #89.

v2.3.0

21 Sep 18:27
114fb08
Compare
Choose a tag to compare

Added

  • Validate binary compatibility of vgo-core's API

Changed

  • Rolled back the JVM requirement to 17

v2.2.3

16 Sep 19:50
Compare
Choose a tag to compare

Fixed

  • A bug that would sometimes introduce a grouping comma into a large number, breaking path data. This most often occurred in the convert curves to arcs optimization when an arc with a large radius was more compact than the corresponding Bézier curve.
  • Thread safety issues that prevented the shrinkVectorArtwork task from being executed in parallel in a highly-modularized parallel Gradle build.

v2.2.2

30 Aug 20:18
aaa8639
Compare
Choose a tag to compare

Fixed

  • A crash when running shrinkVectorArtwork in a highly-modularized parallel Gradle build

v2.2.1

21 Aug 03:26
Compare
Choose a tag to compare

Fixed

  • Gradle plugin hangs for projects with no vector drawables

v2.2.0

13 Aug 00:54
Compare
Choose a tag to compare

Added

  • More robust SVG → vector conversions by Android Studio tools (#47)
  • More compact printing of 2D coordinates when y < 0 for vector drawables

Fixed

  • In rare cases, subpath start points were tracked incorrectly which resulted in a crash (#57)
  • Disabled ConvertCurvesToArcs until some edge cases can be worked out (#65)

2.1.0

15 Sep 02:17
Compare
Choose a tag to compare

2.0.2

03 Jun 01:44
Compare
Choose a tag to compare

2.0.1

02 Jun 01:57
Compare
Choose a tag to compare