Started at #hackmtl - Arts Numeriques: http://www.eventbrite.com/e/hackmtl-arts-numeriques-tickets-11431175955

  1. linearize svg
  2. obtain curves from arabic script
  3. registration points

http://www.clker.com/clipart-2968.html

http://www.researchgate.net/publication/2573172_Automatic_Artistic_Calligraphy_Generation

http://tympanus.net/codrops/2012/01/24/arctext-js-curving-text-with-css3-and-jquery/

find out how arabic is encoded in unicode

tracing.js

function trace:: svg -> (point, direction, height)

trace = wander o pointize

pointize :: svg -> [ (point, height) ]

wander :: [ (point, height) ] -> (point, direction, height)

use a js svg render to obtain the basic points + order use heuristics to obtain the directions

registering.js

register :: (point, direction, height) -> text -> (point, direction, fontsize, text)

pick next point pick next character random size near previous size and height consume all points over it advance random number of points, centered around inter character space

evolving.js

evolving :: svg -> text -> svg

evolving = evolve( text, trace(svg))