Google Summer of Code 2006

From Inkscape Wiki
Jump to navigation Jump to search

This page outlines some suggestions for tasks that could be performed for Googles Summer of Code project

File import/export code, (pdf, dxf, etc)

  • Implement a complete import/export cycle relying on no external apps (libs are ok if suitably x-platform) for another mainstream vector format. (ie dxf, pdf, ai...) implementing the import/export as a lib and plugging it in to Inkscape would be prefered, or as a pdf2svg type util that can be called.

Creation of a libpdf from the Scribus code

  • Extract the pdf creation code from Scribus and use it to form a libPDF which we can use. then plug it in. - Kinda linked to the above (This means of effectively having a libPDF for both projects. So, this is not replicating the code and having to maintain both, so you must work with Scribus too)

Convert renderer to Cairo

  • Convert the renderer over to Cairo. This is a major task. It may involve working on Cairo in areas where Cairo is not ready.

Color management

  • Implement a color management system to allow the use of spot colors and color profiles (littleCMS?)

Break out the canvas to a widget

  • Create a GTK SVG canvas widget based off SPCanvas, to allow other projects to easily make use of an SVG canvas.

Create a Clipart Libary interface

  • Create an interface to allow easy insertion of clipart from the open clipart libary (OCAL) into inkscape documents. Allow sorting by categories, search for metadata keyword etc.

Integrate/extend Inkboard

  • Bring the virtual whiteboard functionality of inkboard into the main trunk, and extend it.
  • Use the ability to stream/recieve the changes in a doc to allow a session file to be recorded and played back later.

Marker editing and styling

  • implement a UI for the editing of markers, ideally on-canvas
  • create a widget for previewing and selecting markers, better than the current menu
  • make markers inherit their parent's stroke paint when that is changed (this is not provided by SVG, so we need to do this artificially)

Diagram tools

  • Implement connectors for shapes with automatic line routing.