SOC Original Project Prompts

From Inkscape Wiki
Jump to navigation Jump to search

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.
  • DXF Import
  • DXF Export

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.

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 an Open Clip Art Library interface

  • Create an interface to allow easy insertion of clip art from the Open Clip Art Library (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.

Diagram tools

  • Implement connectors for shapes with automatic line routing.

Color management

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

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)