vectorcraft/crates
bflatastic 62036eac6c Image Trace: Flat Logo takes the tones of an unevenly lit colour for one colour
A scan's paper is a tenth darker in one corner than in another. Flat Logo found
each tone of it as a colour of its own and traced the bands and the specks
between them: on the scanned inputs 470 paths, 21 px from the art on average.

Two palette colours are now one when the pixels between them are no fewer than
a third of those at the lesser of the two: flat colours leave only their shared
edge between them, tones of one colour fill the gap. Whether the image is flat
art at all is still asked of the tones as found.

Flat Logo on its inputs, all sizes and variants: 3.106 -> 0.090 px off on
average, 88.5 -> 0.82 px at most, 69.9 -> 3.9 paths; clean, aliased, blurred
and noisy art as before.
2026-10-13 13:01:01 +07:00
..
affinity Part of #666: Affinity rectangles keep per-corner radii and straight corners 2026-10-12 15:41:46 +07:00
brush #1172: share an object's appearance with its undo history until it changes 2026-10-11 23:27:21 +07:00
cad fix(cad): a closed control-point DXF SPLINE is read as closed (#1299) 2026-10-12 15:16:43 +07:00
color ICC profiles written here have their tags 4-byte aligned 2026-10-13 10:52:38 +07:00
doc Select Behind: one test of what may be hit for both walks, and random documents checked against the repeated hit test 2026-10-13 10:52:38 +07:00
effects Effects: effect.apply and effect.setParams refuse parameters the effect doesn't take (#1592) 2026-10-13 11:53:38 +07:00
engine Merge pull request #1627 from storytold/u/trace-gradients 2026-10-13 12:24:35 +07:00
eps PDF/EPS import: a clip only counts as covering the page when it does 2026-10-13 08:51:40 +07:00
format Native save: documents whose JSON is large are written compact 2026-10-13 06:34:12 +07:00
geom PDF/EPS import: a clip only counts as covering the page when it does 2026-10-13 08:51:40 +07:00
mcp Effects: effect.apply and effect.setParams refuse parameters the effect doesn't take (#1592) 2026-10-13 11:53:38 +07:00
metafile #1244: smaller objects: Node 352 -> 152 bytes, NodeKind 200 -> 80, and a cheaper undo estimate 2026-10-12 11:02:32 +07:00
pathops Fix #1462: Split Into Grid has its row and column sizes, gutters, totals, Add Guides and Preview 2026-10-13 02:48:36 +07:00
pdf PDF import: a held glyph stroke takes its turn in the page's overprint list 2026-10-13 11:53:38 +07:00
plugins Plug-ins: numeric defaults stay in their declared range 2026-10-13 02:21:35 +07:00
render Palette index: rustfmt 2026-10-13 10:52:38 +07:00
svg SVG import: flowed text with a region too large to place is left out with a warning 2026-10-13 10:52:37 +07:00
testkit Fix #1387: a .ai whose PDF part is only text opens from it 2026-10-12 19:50:53 +07:00
text Fix #1529: Linux reads the font folders fontconfig is set up with 2026-10-13 06:56:37 +07:00
three-d 3D and Materials: Inflate takes Twist, Taper and Cap 2026-10-13 05:22:00 +07:00
tools Fix #1534: a dragged selection snaps to ruler guides with Smart Guides on too 2026-10-13 08:51:43 +07:00
trace Image Trace: Flat Logo takes the tones of an unevenly lit colour for one colour 2026-10-13 13:01:01 +07:00
ui-egui Merge pull request #1627 from storytold/u/trace-gradients 2026-10-13 12:24:35 +07:00