Slashdot Mirror


Introduction To Inkscape And Its Future

WarriorC writes "Bryce Harrington, Inkscape's founder, wrote an article introducing his brainchild and where its development is heading (see: Illustrator-killer). Some screenshots of the latest CVS version are included." It's also a nice glimpse into an "unorganized" but nonetheless successful open source process.

31 of 206 comments (clear)

  1. Speaking of Vector Graphics program by JoeShmoe950 · · Score: 5, Informative

    Another interesting Vector Graphics program is Flash 4 Linux; http://f4l.sourceforge.net/ Although in Alpha, it is quite usefull. Its a flashlike program (very similar interface to flash studio), and it is quite far along. It does animations and everything (I believe it doesn't have full flash script abilities yet). It can create flash files.

    1. Re:Speaking of Vector Graphics program by Anonymous Coward · · Score: 2, Informative

      Although a very good looking and interesting project that F4L one, looking at its CVS commits, it seems abandoned. Last changes were made 8 months ago! :(

    2. Re:Speaking of Vector Graphics program by jaaron · · Score: 3, Informative

      Yes, and speaking of other open source vector graphics programs someone should also point out that Inkscape is a fork of Sodipodi. And if I understand the story correctly, Sodipodi was based on earlier efforts called "Gill" for GNOME Illustrator. I'm not sure why the Inkscape team forked Sodipodi.

      --
      Who said Freedom was Fair?
    3. Re:Speaking of Vector Graphics program by ZaMoose · · Score: 4, Informative

      I believe politics (both development and global) played a roll in this. The primary developer on SodiPodi was being a bit authoritarian and capricious in the ways he incorporated changes, etc. and some people didn't care for that.

      --
      I wish I had a kryptonite cross, because then you could keep Dracula and Superman away.
  2. Cool by Short+Circuit · · Score: 1, Informative

    It's a great discussion on how, when you've got the right players and attitude, Open Source can really work.

  3. Re:This bothers me by grasshoppa · · Score: 3, Informative

    So...which is worse? Not reading the article and commenting, or reading the article and only reading what you are looking for?

    Right before your quote, "We quickly double-checked that the licensing was clean, that the code was the author's original work, and that it indeed implemented the feature as promised; it passed on all counts.".

    Did ya miss that on your way to bash these folks?

    --
    Mod me down with all of your hatred and your journey towards the dark side will be complete!
  4. Re:This bothers me by _Sprocket_ · · Score: 4, Informative


    The patch in question, a boolean operations patch, is said to be PD in the article. But this attitude is a major landmine for GPL (or any other free license) projects.


    Perhapse you missed in the paragraph above the one you quoted:

    We quickly double-checked that the licensing was clean, that the code was the author's original work, and that it indeed implemented the feature as promised...
  5. I'm waiting for milestone 9, EPS, PDF export by elwinc · · Score: 3, Informative

    according to the roadmap, pdf and eps export will arrive at milestone 9 (inkscape 0.43). The project has currently completed milestone 4 (inkscape 0.39, though .38 is what sourceforge has for download). It'll start to get real interesting for me when I can make .eps and .pdf objects

    --
    --- Often in error; never in doubt!
    1. Re:I'm waiting for milestone 9, EPS, PDF export by MenTaLguY · · Score: 4, Informative

      We (the Inkscape developers, anyway) currently use Scribus for PDF and EPS output when we need it.

      Scribus is kind of a sister project, and we've been working closely with them to get perfect import of Inkscape SVGs.

      That's not to say that Inkscape shouldn't have PDF etc support in the future, but it's already not too painful if you have Scribus handy.

      --

      DNA just wants to be free...
    2. Re:I'm waiting for milestone 9, EPS, PDF export by Anonymous Coward · · Score: 1, Informative

      *cough* gnome-print *cough*

      compile Inkscape with gnome-print for PDF export

    3. Re:I'm waiting for milestone 9, EPS, PDF export by scribusdocs · · Score: 3, Informative

      We on the Scribus Team have begun over the past few months working closely with the Inkscape devels on improving SVG import export with with both apps. You can take your Inkscape created SVG, import it into Scribus and create a highly compliant "press-ready" CMYK or PDF/X-3 PDF. Thanks to steady efforts and collaboration, support is improving daily. A few notes and comments:

      • SVG is a large and somewhat complex spec. However, it has many excellent features. Props to the Inkscape Team for making a goal of real compliance to the W3C spec. Not even Adobe can match all the spec.
      • We on the Scribus team really consider Inkscape to be the future of SVG drawing in the open source world. The Inkscape project is very well managed and has approached their development roadmap with enviable discipline and professionalism. We have a lot of respect for the know how of their devels.
      • EPS/PS import/export is not trivial by any means. Not every app on the planet exports good EPS and some introduce their own quirks. After 3 years of development, we are finally getting EPS import to where we want it to be.
      • Likewise, exporting PDF is not particularly easy. The kinds of effects and transparency Inkscape is capable of creating requires high level PDF 1.4 features, which not all apps can support properly. A simple bitmap dump is not likely to obtain satisfactory results all the time. This is one area where Scribus really shines and the collaboration has allowed end users the ability to reliably export high quality PDF 1.4 with commercial grade reliabilty.
      • Most importantly, they are a great bunch of folks who are very attentive to end users and lots of fun to work with.
  6. Since OS News gets /.'ed all the time... by Anonymous Coward · · Score: 0, Informative

    Scalable Vector Graphics and the Open Source Community

    Inkscape is a program for viewing, making, and editing two-dimensional vector drawings. This is different from "raster" drawing, as in MS Paint, Photoshop, or The GIMP. In those tools you're essentially just "painting" destructively on a canvas. By "vector" drawing I mean that when you create a shape like a rectangle, it retains its identity. You can easily go back and resize it, change its color, or move it around without disturbing the rest of the drawing. Vector drawing is what you'd be doing in Illustrator, Corel Draw, Freehand, Dia, Visio or even PowerPoint.

    There have been a number of popular Open Source vector graphics tools such as tgif, idraw, Sketch, and xfig, but one of Inkscape's distinguishing features is that it stores its drawings in a web-friendly XML format -- SVG. SVG, an acronym for "Scalable Vector Graphics", is a W3C standard that is gaining support worldwide, in proprietary and public software alike.

    The Open Source community is now adopting the SVG format for everything from desktop icons and company logos to web page animation and artistic Illustration. Inkscape (by way of Lauris Kaplinski's popular Sodipodi project) is derived from Gill, one of the first Open Source SVG editors, and so follows a long history of serving the SVG needs of the community.

    In the five years since Raph Levien began work on Gill, a huge range of features and capabilities had been added to the codebase. Node editing, alpha blended gradients, object alignment, text handling, localization and more had augmented the basic underlying drawing capabilities to make the tool potentially useful for real drawing work. However, there was one glaring omission for which we and scores of users had been seeking a remedy...
    The Contribution of Boolean Operations to Inkscape

    I read the email again just to be sure.

    "I've been sent a new patch that implements boolean operations... The license is public domain. It's been uploaded to the patch tracker." -- Bulia, November 2003

    This was very cool. Boolean operations are a way of taking two shapes and combining them together in various ways to create a single resultant shape. Users of Adobe Illustrator might recognize them in the "Pathfinder". The four basic operations are Union, Difference, Intersection, and Exclusion. It's an absolute requirement for creating any artistically sophisticated drawing, and it's lack had held the tool back.

    Once before, someone had contributed a patch to add boolean operations, but that patch relied on a polygon clipping library provided under an incompatible license. There's little more frustrating than having a solution in hand, only to be hamstrung by legal problems. Even though it was an important feature for us, we regretfully postponed development of it into the distant future on our roadmap and proceeded with other work.

    Here in my inbox, unsolicited and totally unexpected, was the answer. We quickly double-checked that the licensing was clean, that the code was the author's original work, and that it indeed implemented the feature as promised; it passed on all counts. Fred's boolean patch had arrived right as we were releasing Inkscape 0.36, so as soon as that release was out the door we merged his patch and started working with it.

    Following our policy to "Patch first, ask questions later", we integrated the new feature as soon as practical, without wasting time arguing about it on a mailing list. We figure that the best way to evaluate an idea is to code it up and see how it works in practice. A working feature now is better than a perfect implementation that still isn't done. Along with that, maintaining a low barrier to entry for new developers is vital; we don't want anyone to give up on contributing out of fear their contributions won't be accepted.

    Inkscape, Page 2/2
    One of the first areas of focus was to add menu items and keyboard shortcuts for the commands it provides. Mentalguy had just recentl

  7. Request Features here. by Anonymous Coward · · Score: 1, Informative

    If you like inkscape, but you find there is a feature you need is missing, request it here.

    The Inkscape developers have implemtneted loads of cool features already, and you can help it make it even beter.

    You can even contribute patches if your feeling bold.

    Also, here is the Roadmap on their wiki.

  8. Re:Trivial? by Bishop923 · · Score: 4, Informative

    It isn't serializing the data, it is actually creating a Scalable Vector Graphics file which is an XML based language that you could then use on a web page or in any app that can read it. Think png vs psd.

    (Yes I know that PSD is a published format...)

  9. Re:Why SVG? by farnerup · · Score: 4, Informative
    SVG is a lot easier to support than EPS.

    The EPS format is just a set of comments around a PostScript program. Now, postscript is a complete programming language. People have implemented things like ray tracers and web servers in postscript, and there is nothing to prevent you from putting things as complex as that in your EPS files

    Even if your program had a complete postscript interpreter, how would it translate an arbitrary program to something that makes sense in a gui?

  10. Re:Autopackage! by IamTheRealMike · · Score: 2, Informative
    There are already nightly builds of Inkscape CVS available for autopackage 0.5.1 here. To those who haven't used autopackage before, download and run that file.

    Note: there are known issues with certain (rare) setups which have a non standard umask and X security settings. If you are on a stock Red Hat/Fedora install all should go smoothly (let us know if it does not). If you have tweaked your umask or have X security too restrictive (programs run as root must be able to connect) things will break.

    If you want to test inkscape quickly and you are on x86 Linux, this is an easy way to do it. Just be careful. autopackage is in beta. If it breaks you get to keep the pieces.

  11. Re:Trivial? by Alan+Shutko · · Score: 3, Informative

    The feature is that it stores its drawings in SVG, not any random XML format. That's a bit harder, and far more useful, than just using an XML format instead of a binary one.

    Come on, you only needed to read just a sentence or two more of the article to get the explanation.

  12. Re:web-friendly XML format ? by Anonymous Coward · · Score: 1, Informative

    Judging a format on the base of its file size is stupid, to put it mildly. You can always save your files as SVGZ (gzipped SVG) and get nice small binary files. Inkscape supports reading and writing SVGZ transparently.

  13. Re:Trivial? by Anonymous Coward · · Score: 1, Informative

    > "...one of Inkscape's distinguishing features is that it stores its drawings in a web-friendly XML format"

    You did not read the sentence fully.

    It is:

    "...one of Inkscape's distinguishing features is that it stores its drawings in a web-friendly XML format -- SVG"

    And that is huge. Inkscape is an SVG editor.

  14. Re:Anyway to import Illustrator files??? by MrLee · · Score: 2, Informative

    Illustrator from version 10 on can save in SVG format and Inkscape reads them in perfectly!

    --
    -- Now more the mirth, scrape here in the face...
  15. Reasons to fork by Anonymous Coward · · Score: 3, Informative

    Well, I think the main motivations were to change the code to C++, to rely on third-party libraries if these were actively maintained and (I think) were available on different platforms, to get an interface more HIG-compliant and to make emphasis on a small core with extension capabilities.

    But you could read it better in this pages of Inkscape's wiki.

  16. Re:Cool by Omnifarious · · Score: 2, Informative

    No, vector graphics are a different enough beast, that you need a completely different set of tools for dealing with them. What you really want is for gimp to be able to import external SVG things and convert them to an arbitrarily scaled bitmap representation in a layer. From what I've seen, gimp 2.0 can already do that.

    Though, It would be nice if gimp could regenerate the layer automatically when the source SVG file changes. I don't think it can do that yet.

  17. Missing important features by PastaAnta · · Score: 3, Informative

    Last time I tried Inkscape I was surprised that no support for Layers could be found. IMHO Layers is an essential feature in any decent modern graphic editor. And what is the deal with the "Spiral" tool as a main drawing tool? Does anybody ever have a need for a spiral drawing tool? In my eyes it seem like the featureset is more determined by the inherent capabilites of the SVG format rather than the needs of the users.

    But OK, OK... it may be because my need is for technical drawing tool more than an artistic drawing tool. You may also read the opinions in the The Grumpy Editor's diagram editor followup

  18. Re:Cool by Deusy · · Score: 4, Informative

    Sodipodi is pretty good, IIRC.

    Inkscape is a fork of Sodipodi, with a more open approach and an emphasis on using C++. The result is a program that builds upon Sodipodi's good points by adding a better user interface, handsome new features (like boolean operations), as well as being a lot more stable.

    My impression is that Lauris Kaplinski (the Sodipodi maintainer) was doing a David Dawes impression and holding Sodipodi development back in one way or another, and Inkscape is the result of all the frustration that built up. Now the momentum is with Inkscape which has a bright future with a lot of active developers.

    Also, the "unorganised approach to open source" comment in the story is very unfair. Inkscape is a very well organised project and Bryce in particular is very diligent about keeping the future well mapped out. The "unorganised" jibe is really because Bryce and Co let people hack on features they want to hack on, and readily accept them if they meet a decent standard. But isn't that what open source is all about? And isn't the reason for many forks and/or project stagnation due to this being prevented? I'd say "open minded" is a more appropriate term.

    --

    Free Gamer - Free games list and commentary

  19. Re:As a user, I'm disturbed by Anonymous Coward · · Score: 2, Informative
    With Photoshop, Illustrator, etc the vendor waits until a feature works, then releases it. It may not have all the bells & whistles that people want, and it does get refined as time goes on, but they do wait until its perfect (in its current state) before releasing it.

    You and I must be living in different universes, then. Propeprietary vendors are at least as bad feature whores as Open Sourcerors... those bells'n whistles are THE very first thing sales people get added, well before things that would make things more stable or easier to use.

    And yes, I'm software engineer and have worked for a few shrink-wrap software vendors, including Adobe's biggest competitor.

    This is not to say developers shouldn't try to think carefully about what to add, how and when, just to point out commercial companies are not much better. It's just that THEIR process is a black box, and outsiders generally do not see how screwed up it is, whereas process (or lack thereof), goals, philosophies and practices of Open Source projects are usually transparent and can be freely debated.

  20. Correction about "brainchild" by Bryce · · Score: 5, Informative

    Bryce Harrington, Inkscape's founder, wrote an article introducing his brainchild and where its development is heading

    Quick correction - I was one of several people that founded the Inkscape project, but I definitely can't claim credit for the application itself. As mentioned in the article, it derives from Gill and Sodipodi, so if it is anyone's "brainchild" it would be the developers of those projects. That said, Inkscape as it is today is the amalgam of a number of people's ideas and hard work, so it is most definitely a team effort. :-)

  21. Re:Layers by MenTaLguY · · Score: 3, Informative

    Basically, the plan is groups = layers. I implemented a first cut at that a long time ago (set inkscape:groupmode="layer" on a group [hopefully I'm remembering the attribtue name here..]), but nobody's gotten around to doing UI for it yet.

    I expect it'll get done fairly soon since even I'm beginning to feel the pain of not having it implemented all the way yet. ^_-

    --

    DNA just wants to be free...
  22. Re:This bothers me by Bryce · · Score: 4, Informative
    The patch in question, a boolean operations patch, is said to be PD in the article. But this attitude is a major landmine for GPL (or any other free license) projects.

    Perhapse you missed in the paragraph above the one you quoted:

    We quickly double-checked that the licensing was clean, that the code was the author's original work, and that it indeed implemented the feature as promised...

    And also note that before this there had been another patch that implemented booleans that we had to reject on licensing problems with a General Polygon Clipping library it used. We'd contacted the GPC author to see if he would let us use it under the GPL, but his license was firm (it allowed for educational, non-commercial use only IIRC), so we ended up not being able to use it.

    "Check licensing, then patch, and ask other questions later" doesn't quite have the same ring though. ;-)

  23. Re:Oy – first the GIMP. . . by MenTaLguY · · Score: 3, Informative

    Agreed.

    I'm one of the founding developers. We might joke about being an Illustrator killer occasionally, but really that's not what we're about. That wouldn't be a healthy focus, and the _best_ we could hope for in that case would be becoming a (marginally) better Illustrator clone.

    That wouldn't be so great, IMO. Illustrator does a lot of things, but it doesn't always do them well, and the UI is painful at times.

    Realistically, we are going to do some things well which Illustrator does poorly, and we will do some things poorly which Illustrator does well.

    We just wanna make a good and useful tool and be the best we can be dammit. All this "foo-killer" stuff is silliness. ^^;

    --

    DNA just wants to be free...
  24. Re:Why SVG? by Ignominious+Cow+Herd · · Score: 2, Informative

    EPS is PostScript. There are maybe a half dozen things that you can't do in EPS or must do that you otherwise have freedom to ignore in PS.

    The problem with EPS as a file format is that it is too powerful. It is a language far more than it is a standard file format. To make a EPS importer you need a major chunk of code to parse all the possible EPS files that one could generate. You need a PostScript parser - a complete one. You just don't need the PS renderer. You need all the memory management and font handling.

    I am not an SVG expert (I'm not sure I qualify as a PS expert either, but I work with it for a living), but I think it is much simpler in theory to implement one than a PS interpreter. Especially since the base language is XML and the parser for that already exists. I also believe that animations (automation?) in SVG is based on Javascript (and/or others?) so that already exists too.

    Last, SVG has a nice structure. (E)PS is pretty damn free-form. Writiing tools to work with SVG without actually having to parse all of it is much easier than doing the same with EPS.

    --
    Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
  25. Re:Why SVG? by WWWWolf · · Score: 3, Informative

    As I see it, SVG is "The Future." As for "real world", I believe SVG will be in the "real world" pretty quickly, and it's already gaining a lot of foothold, which can only be a good thing.

    It works fine as an editable format that can be worked on in many different applications without losing any data in between (EPS is just an intermediate format that loses editing-related information) - there's common stuff that specifies the image data and additional, program-specific stuff can be added with additional XML namespaces (sodipodi and inkscape both do this).

    Also, you can put any kind of XML metadata inside SVG, for example, Dublin Core elements, Creative Commons tags, you name it. You can do that much hot "semantic web" stuff in it, I suppose.

    SVG also interfaces nicely with web browsers, right through the DOM. (At least in theory. Let's wait until Mozilla finally gets SVG out of the alpha, and Microsoft to catch up within a decade or two =) Think Flash, but without a stone wall between the plugin and the browser.

    Also, SVG supports graphically stuff that's pretty hard to find in PS world. I still have slight problems getting alpha blending to work beautifully in EPS files (at least in OSS apps!), but I've not had any problems with that in SVG.

    SVG is technically easy to work with. It's just XML with some plain-text sublanguages (like path declarations). It is not a Turing-complete language like PS, but it's rather purely just data, so it's probably far easier to work with. Yeah, in this respect, it's perhaps not as "powerful" as PS, but I've mostly seen PS's "power" being used only in gimmicky situations. Algorithms may get you to the stars, but Data gets you pretty damn far in real world.