A mini exer­cise for the ‘Bad­ness & Con­flict’ work­shop, an ini­tia­tive of Pierre Huyghe­baert in col­lab­o­ra­tion with http://lgru.net and Con­stant.

first steps first steps

This setup allows to recom­bi­nate lay­ers from mul­ti­ple svg files to one svg file.

svg structure

How it works

The svg files are sep­a­rated in lay­ers, each layer belong­ing to a type, defined in a cus­tom svg attribute typus="XXXX00".

svg structure + xml attribute

The script selects ONE layer of each type from ALL svg files and cre­ates a new svg file.

Nam­ing Conventions

Lay­er­types are defined by a name and a num­ber: NAME00, with NAME being used as dif­fer­en­tia­tor while the num­ber 00 is intended for pos­si­ble vari­a­tions. E.g. if there are lay­ers with the attrib­utes NAME00, NAME01, NAME02 and NAME03 the script will select ONE of them, this means NAME00 OR NAME01 OR NAME02 OR NAME03. The typus attribute MUST end with two digits.

While NAME is the rel­e­vant dif­fer­en­tia­tor, the num­ber suf­fix is needed to force layer pair­ings. You may define a sub­layer with the fol­low­ing syn­tax: PARENT01-CHILD01(-GRANDCHILD01-XXXX01).


E.g. you may define var­i­ous points for the base of an i.

Anno­tated Versions

To ease the eval­u­a­tion we do also cre­ate an anno­tated svg file. Every source svg file gets an indi­vid­ual color (6 char­ac­ters from its md5sum) and there is the pos­si­bil­ity to make com­ments, sim­i­lar to source code com­ments, in a spe­cial color which will be left intact for this rendering.