Ticket #85 (new proposed-project)

Opened 7 years ago

Last modified 7 years ago

Haven vector graphics

Reported by: Leon P Smith Owned by: none
Priority: Keywords:
Cc: Topic: Graphics
Difficulty: unknown Mentor: not-accepted

Description (last modified by Leon P Smith) (diff)

 Haven is a vector grapics library for Haskell, currently implemented via the  Java 2D rendering API. While potentially very useful, Haven is also unmaintained, undocumented, and tricky to get working. Problems have also cropped up with the toolchain it depends on. For example,  GCJNI hasn't had a release in several years and changes to Cygwin have made it tricky to compile on Windows platforms.

Goals for this project would be to:

  • Implement a stand-alone backend that generates output in Adobe's ubiquitous PDF format.
    • Time permitting, implement a binding from Haven to Apple's Quartz rendering API.
  • Write documentation for Haven.
  • Place Haven into the Cabal.

Implementing the PDF generator would give this library functionality very comparable to  ReportLab and  PDF::Writer, two libraries for Python and Ruby respectively. These libraries have a very similar API. A major annoyance of mine is that points are passed as two floating-point arguments, preventing the composition of functions. Haven's API is quite a bit different. Much effort was put into making Haven's API compositional, above and beyond this annoyance.

Interested Mentors

  • ?

Interested Students

  • Leon P Smith <leon.p.smith@…>

Change History

Changed 7 years ago by Leon P Smith

  • description modified (diff)
Note: See TracTickets for help on using tickets.