[Clipart] More discussion about Delineate/Autotrace images

Jonadab the Unsightly One jonadab at bright.net
Fri Oct 1 18:23:16 PDT 2004


"Jonadab the Unsightly One" <jonadab at bright.net> writes:

> Bryce Harrington <bryce at bryceharrington.com> writes:
>
>> I wonder if there's a way to simplify it down further, so that the
>> svg end result is smaller.
>
> I think it should be possible to further simplify it while still
> keeping color, but I'm not sure whether delineate is up to it
> currently.  

Oh, yeah, it's possible to simplify it a *lot* further.

At virtually every color boundary, there are two shapes (one of each
color) using multiple control points to trace the same boundary.  One
of them is behind the other, and can get by with fewer control
points, by running a smaller number of straight lines behind the other
shape(s), rather than following the visible boundary.  This is with
zero impact on the visible result.

> Might have to do some hand editing.  

But it's _easy_ hand editing.  A little tedious, but entirely
straightforward.  I'm almost sure it's possible to write software to
do it.  In fact, I'm almost sure I could write it.  I don't think I
currently have time to add that project to my TODO list, however.  For
one thing, I'd have to learn SVG, and I try to steer clear of learning
two languages at once, because that's too taxing, and I've already got
a language on my plate right now.  For another thing, "possible"
doesn't always mean "easy", and the program would have to be fairly
complex.  For one thing, it would have to be able to figure out which
side of a given curve a certain point is on, so we're basically
talking about a full SVG renderer here.  I could spend months on
that.  No, I will leave it for someone else.

-- 
$;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}}
split//,"ten.thgirb\@badanoj$/ --";$\=$ ;-> ();print$/




More information about the clipart mailing list