Here is a notepad for quickly noting down good ideas (newest first please). If you're bored, feel free to write these as full feature requests and add to the tracker, or as separate Wiki pages.
FeatureNotePadArchive (dupes, already implemented ideas, those with acceptable workarounds, those that cannot be implemented at all)
Note: there is also a bug/feature request tracker at sourceforge.net.
- 1 Non Editable Linked Offset
- 2 Enhanced Mirror Symmetry
- 3 Minor Grid Improvements
- 4 Gradient Fills
- 5 Fill Gallery
- 6 EPS Export
- 7 openclipart.org Export
- 8 Arbitrary Zoom
- 9 Rotation
- 10 Plain SVG Export
- 11 Extended Stroke Rendering
- 12 Edge-Offsets
- 13 Smooth drawings
- 14 Extrusion and Shadows
- 15 Some small Features
- 16 Orthogonal Lines
- 17 Scribus
- 18 Plugins
- 19 GtkVectDraw
- 20 Small core, great extensions
- 21 Sodipodi
- 22 Gimp
- 23 Nonexisting File
- 24 TIFF-Export
- 25 Multi-Page and Layers
- 26 Dia-Import
- 27 Viewports
- 28 SWF-Export
- 29 Mouse/Pen gestures
- 30 Find enhancements
- 31 Fill & Stroke
- 32 Transform Selection
- 33 Corel Draw and Illustrator Import
- 34 Postscript Export
- 35 Print Preview
- 36 Fill and Stroke Dialog Focus
- 37 Tiled Cones
- 38 MathML Import
- 39 Metadata in Save-Dialog
- 40 SVG Profile Selection
- 41 Inkscape as Tablet Notepad
Non Editable Linked Offset
If we could have an special "non editable Linked Offset" (working title), effect developers could have an powerful tool for creating various effects that involve "copies" of a parent shape or path (like dropshadows, inner shadows, illumination, randomized copies, etc.)
It would behave the same as an un-scaled linked offset, but it would have to also follow the rotation and tearing of parent shape, and the user could not edit its position, shape or scale through the canvas directly (it would not show position markers, and it would not respond to selection). It could only be altered by changing the parent shape, or by an specified effect settings GUI.
This way effect developers can create multiple options that would be free of the risk of the user accidentally changing the scale of the linked offset, resulting in undesired behavior of the effect position.
Also, I think that this method would facilitate the "stacking" of various effects around one shape.
Effects created this way could be grouped under their own effects menu subgroup, and would have the great advantage of working the same for paths and predefined shapes (ellipse, star, polygon, rectangle) without having to convert to path first, so they don't lose their special shape handlers ( corner radius, star angle, etc.). This way the shape remains editable and the effects aplied follow accordingly.
Sinuhe 19:16, 23 March (UTC)
Enhanced Mirror Symmetry
When drawing complex shapes it is often useful to have the left and the right side of the shape look the same. The Mirror Symmetry live path effect does this very nicely, but unfortunately there is no way to *join* the mirrored shape with the original one. The two shapes would have to be sub-pixel perfectly aligned in order to avoid tearing.
So basically there would be an option called "do clipping"(name borrowed from the Blender Mirror Modifier) which when selected makes the mirror modifiers delete all the stuff on a certain side of the mirror line(which side *should* be an option too), makes new nodes where the shape was cut, and connects those nodes with the nodes of the mirrored shape. This way you get ONE path with no seam lines between the mirrored pieces.
Agony 14:23, 14 December 2008 (UTC)
Minor Grid Improvements
Would be handy to have a way for the origin of the grid be the centre of the page, vertically/horizontally/both, or maybe even a percentage, rather than having to calculate where that might be. Also, a feature I've used a lot in tgif is the ability to quickly halve or double the grid size. In tgif it's done by left or right click on the ruler. Lastly, some feedback would be good to show how close an object currently is to the grid, but I've not thought hard about how that might be displayed.
--Daeghnao 11:07, 16 August 2007 (UTC)
Conical (or 'angle') gradient fills would be most useful.
A default fill gallery.
When I want to build an area with a nicely complex multicolored fill of some sort, I don't want to have to build the fill from scratch every time. I want a huge array of default fills to start with, which I can modify to my heart's content using the existing fill editor.
Jonathanbrickman0000 17:06, 3 January 2007 (UTC)
- Extend this Idea to a Stylesheet-Sidebar, where the User can easily drag&drop already used styles to objects. I think on something like Microsoft word does when a user is formatting a text-fragment in a new way: the new formatting is shown in the Formating-Sidebar. MovGP0 19:57, 6 May 2007 (UTC)
A modified version of the eps export.
I m currently working with maya and I can't import eps from inkscape. Except if i modified the text manualy. I need to replace moveto by m and curveto by c. I also need to put my vector in the top right corner.And once import to flip verticaly the line. So if there was an option to record a modified eps I think people making 3d will be really happy.
An easy way to submit clipart to openclipart.org. Currently you have to save a clipart to a file, open a web browser, login to openclipart.org and browse for the previously saved file in order to upload... A "submit selection to openclipart.org" menu entry would be handy, it would remember login and prompt for a cliparts' meta information before upload... Perhaps such functionality should be a plugin...
- I think there should be rather a API that allows write a Plugin doing so, because
- there are more Websites that are an interesting target like Wikipedia's Commons, Flickr (supporting only PNG/JPG-Export instead of SVG), and many others
- openclipart.org is unreachable while I'm writing this and I'm not sure if the Website is still existing at all. Websites can happen to go offline, so its not wise to code for single distributors.
- MovGP0 20:14, 6 May 2007 (UTC)
Arbitrary precision zoom levels:
-Unlimited scaling on zoom would be a very useful feature in some applications, allowing for unlimited detail.
Persistent rotation centers TODO:
- make it work smartly for groups: if a group has center not set, return the center of the first object inside group with the center set
- a separate tab in the Transform dialog, with 9 buttons in the square grid (for setting it to object's corners, sides, and center) as well as x/y fields for setting center to any position
- make center snap to grid/guides/objects and to other centers
- make objects snap with their center to grid/guides/objects]
Plain SVG Export
If we had that, it wouldn't be necessary to use Inkscape's exporter in all situations - it could be used to make plain SVG without user intervention, automatically, and in places where Inkscape isn't even installed - all you need is an XSLT processor. This would be highly cool since some of the programs (I'm looking at YOU, Scribus *and* rsvg) at times choke randomly on Inkscape markup but render Inkscape's plain SVG without problems.
Extended Stroke Rendering
Extend stroke rendering capabilities
Make it possible for the definition of the rendering of a stroke to be scriptable (at stroke time). For instance, I might want to render a path as a series of flames - the size of the flames somewhat randomized, perhaps, along the stroke. Because they are flames, my script would make sure they're always pointing the same direction (up) along the stroke. Similarly, a series of water droplets would always be rendered dripping in a downward direction.
Note that much of this functionality could also be done outside of scripting, using an approach similar to tiled clones.
- Edge offsets in flowed text with automatically drawn linked offsets of the object with no fill or stroke properties.
- Visual cue for selected groups (i.e., solid marquee instead of dashed)
- Undo in draw mode removes last node, not the entire path, same as backspace key
- Set the ruler 0, 0 coordinates by dragging a cross out of the rulers' corner / double click to set precisely, according to 0,0 index of page dimensions.
- Make space bar held down transform cursor to Selector tool until spacebar is released, with any tool except Text.
2.) Sub-pixel resolution in drawing, is possible with XInput i think?
- Again, improves drawing by hand
3.) Smooth drawing, smooth over small irrelegularities from mouse/drawing board
- Same as all of the above, improves drawing, makes it a whole lot more fun! :)
It doesn't seem so hard to implement but it would make a huge diffrence!
Aside from that, I love where Inkscape is going, the interface is great to work with and it just keeps getting better! I find myself building from CVS so I dont't miss out.
GREAT WORK GUYS! :)
Extrusion and Shadows
1.) Extrusion of Objects 2.) Dropshadow, kind of a clone - a bit fuzzy and little shifted behind
I'd like to see these in Inkscape, they are very common effects and I would like to see a faster way to achieve them than the current methods (copy object, relocate it, change color, change blur, change alpha).
The current 3D Border effect works only with paths, not objects, wich is not very useful if you want to later modify the form (you lose the special modyfiers for stars, corner radius on rectangles, etc.) I would also like to see a way to change the color of the shadow created.
Currently the best way to get a drop shadow or inner shadow is with a linked offset, so this "new effect" could just be an automatic sequence for creating the linked offset and change its color, alpha, position and blur to user-specified params. The linked offset works with objects as with paths so its just perfect and no need to convert to path. The main problem I see with this technique is that if you accidentally modify the linked offset scale, it won't follow the parent shape in the same precise way, but in a relative position to where it was first placed.
With a similar tool, we could achieve an "Ilumination Effect" (similar to that in Freehand) by creating a linked offset, erasing fill, changing path color, rising path width and blurring (It would have the same issue with accidentally modifying linked offset).
Maybe we need an special object that is like a linked offset but is not directly editable or selectable? It would speed the creation of many different effects that would work in objects as in paths.
Some small Features
A couple of Small features that would help those of us a lot that like to draw a basic shape and then tweak it in the xml editor:
1) the ablility to convert the SVG coordinates in a path to and fromrelative coordinates (small case m's l's c's a's) except perhaps the initial M
2) the ability to truncate (or even better, round) the SVG coordinates to 1, 2 or zero (etc) decimal places.
3) Set a decimal place limit so the generated SVG will stay within that limit. I don't usually need or want 0.0006 precision!
fantasai seconds these and suggests a way of saving as Plain SVG with metadata, since things like the title, author, and license terms -- which are applicable to published images but not so much to in-process drafts -- shouldn't be thrown out with the "last used zoom level" data, which are just junk in a publication-ready image.
Orthogonal lines best-fit to a pen path would be useful for quickly sketching diagrams.
- I think that Inkscape could adapt techniques from professional CAD Software including the Snap-Functionality:
- Snap to Nodes of a Line/Polygon
- Snap to Line
- Snap to Center of a Circle
- Snap to Quadrants of Cirle
- Snap to Middle-Point of a Line
- Snap ortogonal to a Line
- Snap to Tangents of Curves
- Snap to Crossing of Lines
- Also there could be a kind of
- parametic input methods
- There are more than one possibility to express how a circle gets created - ie. a circle could get defined using the center and a radius/diameter, 3 tagent-points, etc.
- A line could get constructed using a startingpoint, lenght and angle
- and much more...
- the way a specific line was drawn parametrically could get stored in the SVG-file as XML-Extensions using the Inksape-Namespace.
- MovGP0 20:36, 6 May 2007 (UTC)
- Scribus is a DTP coded in C++ (but with Qt). it can work with Python Script.
May be have a look at this could help doing the same in Inkscape.
- If the later can be done, this will help eventually include some of good
Sketch (written in Python) possibilities in Inkscape.
- Also Scribus has good NodeTool, and good text tool featuring textbox (frame)
or text on a path.
plugins for ways to warp and bend things
What I can expect from this project is a better integration with gnome-office. I dream for a really integrated gnome-office with a lot of code sharing via libraries. For example, a vectorial drawing soft has lot of things in common with glabels, AbiShow, etc ... We have a lot to learn from Koffice in this respect.
So please create a fully capable GtkVectDraw library !
Small core, great extensions
Emphasis on a small core plus modular extensions for features (a la Mozilla Firebird)
But *please* maintain a plugin-pack, and ship it with Inkscape. The way Firebird works sucks. Firebird has poor tab-implementation, and there are >10 extensions that try to improve it, while only 1 good version is needed. The list with extensions is chaos, don't let it be so with Inkscape...
The below is in regards to Sodipodi 0.32:
2. The XML viewer doesn't appear to allow selecting multiple items. Often times I want to makes changes to many items at once and sometimes I'll be working in the XML viewer. Since this was the only way I could figure out how to select individual items in a group it seems completely impossible to select several items in a group.
Some notes on feel:
4. The mouse event system feels a bit wonky. For example, if I take a fairly complex design which can be a little bit sluggish when editing and
make adjustments to a path node the cursor doesn't release as soon as I let go of the mouse button. So when I'm working quickly what happens is I tweak a node, let go of the mouse button, then move the mouse and it keeps adjusting the node even though I'm not holding the button. This slows me down considerably because I have to wait after letting go of the mouse button each time. It also does this when scrolling the main view using the middle mouse button. I'll scroll the view over, let go of the mouse button, then when I move the mouse the view still scrolls for a second or two. Very annoying. :)
9. More powerful selection commands. Some examples (from Illustrator):
Select by fill color Select by same stroke and fill etc...
11. (DONE) More and user defined hot-keys. Can I set any command/mode to a hot-key?
I noticed that gimp does a cool hack today, they use an image thumbnail of the drawing as the window manager icon for the drawing window, you should do that with inkscape too and it is actually usefull, consider I have fix inkscape windows with different flags, with this hack I will be able to identify each window in the tasklist and don't have to search so much
Also, I really wish inkscape where session aware like gedit, so that when I asks nautilus to open a new image it does so in the existing inkscape session instead of starting a new instance
http://bugzilla.gnome.org/show_bug.cgi?id=107668 - the discussion in that bug report might be of interest to you guys too. the participants are Dom (librsvg), Owen and the Gimp guys
when given a nonexisting file name on the command line, create that file (with an error report too)
Ability to export to uncompressed TIFF.
I agree. Or perhaps the ability to export a bitmap without any compression (e.g., TIFF or BMP). I would like to create arrays of individual pixels and export them as a bitmap file. After I carefully set up my bitmap with cloning and tiling and export it as a bitmap, the pixels are distorted from the compression.
Multi-Page and Layers
Add multi-page support, default layouts for all pages, etc.
Ability to import Dia objects. Restricted Inkscape mode to work like Dia. There's nothing that Dia can do that is not possible to do in Inkscape.
However you gave me an idea: I can store past viewport not only before I do zoom, but also after that; later, when a next zoom is started, I will compare the current viewport with the last stored and, if it's the same, not store it. This way I will be adding one viewport record if there was no panning between zooms and two records if there was panning, these records storing the first and last viewports at this zoom. I think it will be a bit more convenient this way.
- Well, what I had in mind is that viewport undo steps would be separated by editing operations -- so e.g. consecutive pans/zooms with no edits in between them would be coalesced into a single zoom undo step.
Exporting vectors as swf files. While this is probably not on the top of everyone's wishlist, it would make inkscape the tool of choice for editing shapes for flash, which is an area where the flash editor does a horrible job. Flash import capabilities for vectors are also very limited, making AI a requirement in order to convert between flash and svg.
Given that svg is going to be replacing flash very (very) soon, a flash import capability would also make life easier for a lot of people...
One adition: users (flash devigners) should be able to create symbols and give them proper names for inFlash use. That would make Inkscape very usefull flash design platform. AI has implemented that since CS3.
Add support for mouse gestures. I have used the Mentor Graphics CAD tools for editing schematics and PCB layouts, and the built-in support for mouse
gesture has helped the productivity a lot. Granted CAD drawing is not exactly vector drawing, but it is not too far apart. There is a library libstroke that provides gestures support, but I don't have any idea how usable that would be for inkscape.
- I thik there is some potential in this, ie. for undo/redo operations or tool-selection. Anyway, when you are working ie. with a tablet, its just about hitting the buttons that are doing just that. MovGP0 20:09, 6 May 2007 (UTC)
Find dialog: collapsable panes: Size & Position (X, Y, W, H; tolerance), Attribute (Name, Value). Pasting in the id, style, size/position fields (add buttons for pasting?) pastes the id, style, size/position of the object on clipboard. Add a regexp checkbox, when it's on matches are always exact but with a regexp matcher. Checkboxes: limit search to selection, (later) to current layer, possibly in (in)visible or (in)sensitive only.
Fill & Stroke
Plan for fill&stroke:
- add fill opacity/stroke opacity sliders common to all fill/stroke types (gradients, patterns, color)
- upon reflection, no. It gives nothing compared to master opacity.
- maybe separate it into Fill and Stroke dialogs
- change gradient display/controls to match those of the toolbar!
A new "transform with selection" toggle: font (see FontKerning, toggle between [0 or 1, depending on optimize/preserve] and 2).
Corel Draw and Illustrator Import
Filter to import Corel Draw Files and Adobe Illustrator Files (very important at my opinion)
- Probabbly to dificult to do well, just export to svg
- Actually, current AI files are really just PDFs - should be pretty easy
On export to Postscript, special-case treatment of text/fonts so that, instead of outputting each instance of a character as a separate set of coordinates, output the definition of the character once, and then use it (with matrix transforms) for each instance of that character.
On export to Postscript, allow for specifying use of fonts-and-text (particularly useful when planning to create PDFs).
On export to Postscript a) warn about transparencies, b) attempt to automatically correct for transparencies by i) converting underlying fragments to transformed values (complex) or ii) embed a bitmap-based fill. Possibly allowing optional choice of approach.
Possibly provide a direct-to-PDF export as well?
Possibly allow for a UI mechanism that lets any code in the system define a selection set of objects, displaying their IDs in a floating dialog. Clicking on the IDs would select the object. The postscript export warning about transparent objects, then, would be able to return with a selection set through which the user could iterate in order to fix each transparent object.
Provide a saving option which gathers the fonts used by the SVG file (as well as any other externally referenced files) for transfer to another machine. Preferably stored in a zip or similar mechanism so that they're easy to share. This is basically a "collect resources" feature.
- I sign this one too, because using SVG from LaTeX is hard to do. The usual approach to this is exporting all as bitmap and then use it. I think that a PS export would do much better. MovGP0 20:00, 6 May 2007 (UTC)
Provide a print-preview, print-settings, page-setup style printing framework (a-la Corel, Adobe, etceteras).
Fill and Stroke Dialog Focus
On right-click menu selection of a dialog (fill and stroke, or object properties, for instance), set focus to the dialog selected to avoid the need for a mouse-seek-and-click to do the set-focus.
Under the "Rotation" tab of the "Create Tiled Clones" menu, perhaps have an "Anchor Offset" option "as well as a setting for (px, cm, mm, in, etc - default "px") which could remain at "0" or "centered" or be changed relative to center, say (+ or -) and (x or y):
x = 50, y = 50; x = 50, y = -50; x = -50, y = -50; x = -50, y = 50
This would allow for explicit placement of the rotation anchor.
This could also be used for general rotation as well.
For scientific graphics I often need the possibility to write mathematical Formulas within the SVG-File. A possible way to do so is write the Formulas using TeX, convert to MathML (this is the easy part) convert to PNG and then import to use it. But a Bitmap that is not good for scaling, so you better transform MathML to SVG and import the SVG.
I think that Inkscape should come with a Plugin that can do the MathML to SVG transformation. Later this tool could get extended to convert also simple TeX to MathML to SVG.
Having such a plugin, complex Formulas could get transformed like any SVG (including scaling, rotation, coloring, etc.), but keept as plain MathML in the Sourcecode. This will make inkscape really useful for scientific and technical needs.
MovGP0 19:57, 6 May 2007 (UTC)
Maybe, GtkMathView can be used to render MathML into SVG.
Metadata in Save-Dialog
I think that the Button for editing Document-Metadata should also be shown in the File-Save Dialog, because lazy peoples like myself are ignoring such possibilities if there are not easily accessible.
I think a Button that asks for filling Metadata and another Button for choosing a License (if not filled/choosen already) in the File-Save Dialog would be a good idea.
MovGP0 20:21, 6 May 2007 (UTC)
SVG Profile Selection
There should be a possibility to choose which SVG-Standard a user want to use for his drawing. If choosen one, Inkscape should only show tools that are supported in this standard. So, if a user chooses to use "SVG Mobile 1.0" it doesn't makes sense to present a "SVG 1.2 Full"-only-tool. MovGP0 20:48, 6 May 2007 (UTC)
Inkscape as Tablet Notepad
My purpose is to be able, e.g., to open an inkscape document from an OO presentation, to use as a blackboard, something I can do with gimp (but Inkscape is much better!). Is there a workaround? I could think of a simple one if Inkscape had also a specific extension (an alias), different from .svg. No special format, simply a dedicated extension. Mime processing would then send the file to Inkscape, not to a viewer, as it is now. Does this make any sense?