Hi all,
I've been using Inkscape latest SVN extensively for a while to produce a scientific poster. My first words are: thank you so much! I've hesitated and tested inkscape, scribus, omnigraffle, adobe illustrator and even keynote (power point like program from apple) before choosing inkscape. I hoped to make the SCALE people benefit from my experience but it seems that there will be no actual poster there... too bad ;-)
I don't know if it's good enough for the showcase section of the web site but here are some screenshots and small accompanying texts: -------------------------- A scientific poster has to be precisely organized, full of information yet visually attracting and should be printable at different scales (poster + handouts). Though Inkscape was not directly intended for such use, all these goals were achieved with it! http://jo.irisson.free.fr/dropbox/inkscape/ poster_publish_ghostscript.pdf [WARNING: big file. 7.5 Mb]
The layers and outline mode allowed to work on this complicated file while keeping things responsive enough. When it got to the point that the whole file was just too big (over 5000 objects) it was cut down in pieces and all files were merged in the final document by import or copy/paste. http://jo.irisson.free.fr/dropbox/inkscape/poster_inkscape_outline.png
The gradients and scripts from the new "Effects" menu helped to create an attractive look (well, attractive to me at least!). The bitmap tracing feature and open clipart library provided scale independent eye candy for some icons and other stuff. http://jo.irisson.free.fr/dropbox/inkscape/poster_inkscape_eye_candy.png
The text was flowed into custom shaped frames so that it had a "clever" position with respect to the graphics. It was edited though the Text Tool palette which was easier on the eye and helped to focus on content rather than on layout for a while. http://jo.irisson.free.fr/dropbox/inkscape/poster_inkscape_text.png
All the vector graphics were produced in SVG and were therefore completely editable within the poster which allowed to have a unified look (for the fonts, line width, colors etc.). The "Apply style" command (SHIFT+CTRL+V), the styles minibar and the swatches panel, helped to unify the styles quickly. http://jo.irisson.free.fr/dropbox/inkscape/poster_inkscape_style1.png http://jo.irisson.free.fr/dropbox/inkscape/poster_inkscape_style2.png
In the end the SVG file was exported to EPS and converted to PDF in order to be printed. The text was outlined to avoid font problems when printing on some other computer for 2mx1m output. The PDF was scaled down to A4 sheets in order to produce handouts. --------------------------
The above text gives you some the "Pros" of using inkscape for this work. Thank you again for all these functionalities which made my life easier (especially the latest additions which made it worth using SVN) and developed rather than restraint my creativity (well I'm a scientist but let say I can be creative anyway ;-) ). Unfortunately there are still some "Cons" :-). I listed them in decreasing order of importance:
1. An important problem was speed. As I mentioned, hiding layers and using the great outline mode helped but responsiveness was still not always optimal. I worked (remotely though, by X -query) on a big dual Xeon with lot of RAM. Try to move something with the mouse on the final file: http://jo.irisson.free.fr/dropbox/inkscape/poster_publish.svg [WARNING 12.1 Mb] On this file I experience a delay of 1 to 3 seconds when moving complex objects, especially when many snapping options are enabled.
2. I encountered regular crashes (20 to 30 in the total editing time which is around 30 hours I think). Their impact was diminished by the auto saving feature though (thanks, I think I would have gone crazy without it). Many occurred at the end of a long editing process, with many documents open, but were not reproducible when I reopened the autosaved document and retry the same modification. I guess they are related to some memory failure somewhere. They often happen when adding layers of ungrouping complex sets of objects but I cannot be more precise sorry... Some others I managed to reproduce are in the bug tracker: http://sourceforge.net/tracker/index.php? func=detail&aid=1429043&group_id=93438&atid=604306 http://sourceforge.net/tracker/index.php? func=detail&aid=1429049&group_id=93438&atid=604306 And a RFE: http://sourceforge.net/tracker/index.php? func=detail&aid=1429035&group_id=93438&atid=604309
3. PDF export would have been great for transparency. Well this is known but I mention it here to be exhaustive.
3. I missed some text editing features, especially for large flowed texts. I realize Inkscape is not intended for such use but justified text (through the GUI), hyphenation, columns and bulleted lists would have been useful. Furthermore, changing fonts would have been easier if the font list was searchable. In addition, the edition of text in the Text Palette was great but clicking the "Apply" button applies the modifications to the text AND applies the style selected in the other tab of the Palette to the whole text... which erases all modifications of the style of some words (like title in bold, some words in italics...). It would be great if this kind of "story editor" respected the styles already applied on the text and used them (like: writes in bold when editing after a word in bold etc.). Related RFEs: justify: http://sourceforge.net/tracker/index.php? func=detail&aid=1395787&group_id=93438&atid=604309 http://sourceforge.net/tracker/index.php? func=detail&aid=1223576&group_id=93438&atid=604309 hyphenation: http://sourceforge.net/tracker/index.php? func=detail&aid=1429051&group_id=93438&atid=604309 bulleted list/collumns: http://sourceforge.net/tracker/index.php? func=detail&aid=1429056&group_id=93438&atid=604309 Text and Font Palette: http://sourceforge.net/tracker/index.php? func=detail&aid=1429151&group_id=93438&atid=604309 http://sourceforge.net/tracker/index.php? func=detail&aid=1214021&group_id=93438&atid=604309
4. The swatches and styles minibar were great...but could be even better. I would have liked to see drag and drop from the swatches panel/palette to the styles rectangles in the minibar which would make the minibar a good quick replacement for the Fill and Stroke Palettte. I would have liked the swatches panel/palette to remember which set I used on a per document basis. I also could have used a "custom styles" section in the swatches panel where I could have imported styles (fill+stroke) from my document. Eventually I would vote for the square color previews in the minibar because I guess I am less agile than bulia with my pen and don't always aim right! I think it would be easier with squares. Related RFEs: drag and drop http://sourceforge.net/tracker/index.php? func=detail&aid=1429027&group_id=93438&atid=604309 swatches pannel state http://sourceforge.net/tracker/index.php? func=detail&aid=1429025&group_id=93438&atid=604309 custom styles http://sourceforge.net/tracker/index.php? func=detail&aid=856716&group_id=93438&atid=604309 http://sourceforge.net/tracker/index.php? func=detail&aid=1066385&group_id=93438&atid=604309
5. The lack of transparency prevented me to use the "Blur Edges" extension do produce dropshadow effects. Though this extension is great some real gradients/dropshadow effects would have been even better. I guess this is also known but I cannot find it under this name as an RFE.
Thanks for reading all this. I realize that some of these request are probably not directly in the scope of Inkscape and I tried to set their priority according to this. Thanks again for this great software.
JiHO --- Windows, c'est un peu comme le beaujolais nouveau : a chaque nouvelle cuvee on sait que ce sera degueulasse, mais on en prend quand meme par masochisme. --- http://jo.irisson.free.fr/
Hi Inkscapers,
Re: the earlier discussion I've checked in my first attempt at code to perform auto layout on a connector network. This raises some discussion points:
1) It depends on the boost graph library (libboost-graph-dev debian package). - Note, this is a compile-time dependency only as this library is header only. - I've added a rule to configure.am that checks if these headers are installed and if not, the boost dependent layout code is #ifdefed away. So inkscape compiles regardless of whether you have boost installed. - A warning message is printed to stdout if the layout is initiated and inkscape is compiled without boost
2) You'll see a new button in the align-and-distribute dialog (ctrl-shift-a) - I made the icon very quickly... anyone with an eye for graphic design is welcome to redo it. - Maybe this button should be invisible if inkscape is compiled without boost?
Anyway, to try it out... currently you just need to install the boost graph library, then svn up and make. Run inkscape and create a little network of rectangles linked by connectors. Select all, then hit the afore mentioned button.
Thanks go to Peter Moulder and Michael Wybrow for their help on this.
I'm going to be doing a lot more work on this... all feedback welcome!
Tim
Here's a test example...
1) Install boost and boost graph lib 2) Build inkscape 3) Run inkscape: inkscape messy-connector-network.svg 4) select all: ctrl-a 5) open align-and-distribute dialog: ctrl-shift-a 6) hit the new lower-left most button
Tadah! Result should look like pretty-connector-network.svg
Cheers
Tim
Tim Dwyer wrote:
Hi Inkscapers,
Re: the earlier discussion I've checked in my first attempt at code to perform auto layout on a connector network. This raises some discussion points:
- It depends on the boost graph library (libboost-graph-dev debian
package).
- Note, this is a compile-time dependency only as this library is
header only.
- I've added a rule to configure.am that checks if these headers
are installed and if not, the boost dependent layout code is #ifdefed away. So inkscape compiles regardless of whether you have boost installed.
- A warning message is printed to stdout if the layout is initiated
and inkscape is compiled without boost
- You'll see a new button in the align-and-distribute dialog
(ctrl-shift-a)
- I made the icon very quickly... anyone with an eye for graphic
design is welcome to redo it.
- Maybe this button should be invisible if inkscape is compiled
without boost?
Anyway, to try it out... currently you just need to install the boost graph library, then svn up and make. Run inkscape and create a little network of rectangles linked by connectors. Select all, then hit the afore mentioned button.
Thanks go to Peter Moulder and Michael Wybrow for their help on this.
I'm going to be doing a lot more work on this... all feedback welcome!
Tim
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&da... _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Tim Dwyer wrote:
- You'll see a new button in the align-and-distribute dialog
(ctrl-shift-a)
Let me start with... thank you Tim!
I like it a lot already and can't wait to see where it goes from here. Being curious (as usual), I decided to see what would happen if I tried it on objects that were /not/ connected and it resulting in placing all objects in a circle. I personally think that this aspect of it is worthy enough to have it's own button in the distribute section (otherwise people probably won't find it... and it just plain rocks :-) ).
Jon Cruz: It's definitely *not* rotate clones, but it does the clock example correctly and in a very simple way. I tried the ellipse with a radial gradient, tile clones (11 columns is the only parameter to be set), selected all, hit the new button in align & distribute, and it did the clock face correctly. For note, the distance of ellipses furthest from each (left to right) other determines the diameter of the resulting circle.
Anyway, the auto-layout of graphs is great on it's own, but that bonus function was a nice surprise!
Bob, where in my win32 libs do I need to stick the boost-graph headers? (and in case you repackage the libs, gtk+ 2.8.11 has no new bugs that I've seen...)
-Josh
Joshua A. Andler wrote:
Bob, where in my win32 libs do I need to stick the boost-graph headers? (and in case you repackage the libs, gtk+ 2.8.11 has no new bugs that I've seen...)
-Josh
My DSL has been intermittent recently, so I have missed a lot of chat and email for the last week. Where did these come from? Have people agreed on adding another dependency? If everyone is OK with it, fine, but wouldn't boost-graph require boost in its entirety? :-) I'm doing my best to -remove- a dep (info-zip).
bob
Bob Jamison wrote:
Joshua A. Andler wrote:
Bob, where in my win32 libs do I need to stick the boost-graph headers? (and in case you repackage the libs, gtk+ 2.8.11 has no new bugs that I've seen...)
-Josh
My DSL has been intermittent recently, so I have missed a lot of chat and email for the last week. Where did these come from? Have people agreed on adding another dependency? If everyone is OK with it, fine, but wouldn't boost-graph require boost in its entirety? :-) I'm doing my best to -remove- a dep (info-zip).
From the previous thread ( http://sourceforge.net/mailarchive/forum.php?thread_id=9612501&forum_id=... ) it seemed like there were mixed feelings... the closest thing to an answer I saw was that Mental had said he'd prefer if it isn't brought in-tree but instead just a separate dependency.
The separate dependency is currently how Tim implemented it, so that's why I asked about where to add to the win32 libs. As for if it needs the entire boost library, that's a great question... I figure we can try without the whole shebang first and see if that works (note that on Ubuntu boost-graph was dependent on the parent boost library).
What are people's thoughts? I personally like what Tim has added so far and would love to see it working on win32 also. Just my .02.
-Josh
Quoting "Joshua A. Andler" <joshua@...533...>:
The separate dependency is currently how Tim implemented it, so that's why I asked about where to add to the win32 libs.
If I understand correctly that boost is a header-only library, there shouldn't be any new run-time dependencies.
In that case, we really just need to make sure that it's available in the win32 build environment; you needn't bundle anything extra in the library package.
What are people's thoughts?
I'm cool with it at this point.
-mental
On Feb 13, 2006, at 2:44 PM, Joshua A. Andler wrote:
What are people's thoughts? I personally like what Tim has added so far and would love to see it working on win32 also. Just my .02.
Well... personally it still gives me the itchy-shivers, but that's just mainly from the potential for sneaky bugs and bloat attack. So the "feel" is just one of "keep a careful eye on the potential problems and then they won't creep up and bite you". It's not to the "ewww, don't let that in here" level or anything.
:-)
Although moving forward... that ties in a bit with some stuff Ted and Ishmal were talking about. It turns out that there are certain things in ODF output that would be best solved by finishing the DOM work for extensions and hooking things in live. Would the graphing parts, or specifically anything involving BOOST, be good candidates for ending up on the other side of our "next gen extensions" interface?
I know Ted would love us to get more work done on it, and I think there are several areas and features that could benefit from it. I'd *think* that getting things to the state to allow that graphing to be done as an extension but with all first-class-citizen abilities ties in to our long term goal of getting to that general architecture.
Anyway, to try it out... currently you just need to install the boost graph library, then svn up and make.
Tim, this is great news but I have graphviz installed. Can you use that, too? Is your code written such that the graph libraries can be exchanged easily? That would be Good Design[tm].
ralf
Ralf Stephan wrote:
Tim, this is great news but I have graphviz installed. Can you use that, too? Is your code written such that the graph libraries can be exchanged easily? That would be Good Design[tm].
Does anyone know what the deal is with the AT&T license (under which graphviz is released)? Can we use graphviz code?
I suspect boost is a much lighter weight option than the graphviz libraries... also more actively developed (outside AT&T research).
Graphviz tools are able to output svg. It would be nice if they could embed the appropriate connector tags so that inkscape could preserve the edges as connectors. I wonder if we can persuade AT&T to do this?
Quoting Ralf Stephan <ralf@...748...>:
Tim, this is great news but I have graphviz installed. Can you use that, too? Is your code written such that the graph libraries can be exchanged easily? That would be Good Design[tm].
Interchangability doesn't always correspond to good design.
Also, graphviz has a totally different function to the boost graph library.
-mental
I'm afraid some sort of new dependency is inevitable. There's just too much (unnecessary) work in implementing our own graph data-structures and algorithms.
Of the open source ones available I think boost and graphviz are definitely the two most viable options.
Currently I'm leaning towards boost for the following reasons - please correct me if I'm wrong about anything:
- Boost is header only while graphviz is shared libraries. Obviously there are pros and cons to each of these - but in the short term header only seems a bit easier to handle across all the different platforms inkscape needs to support.
- Boost seems to offer a larger collection of graph algorithms, while graphviz is mostly aimed at visualisation. We are planning to use these tools to implement our own new layout algorithms, rather than just using the existing layout tools.
- Boost has quite an elegant C++ template interface, while graphviz is good old-fashioned pure C.
- Boost seems to be a more active / open community, while graphviz seems to be developed mostly in-house at AT&T research. They're both open-source, but of the two the Boost license seems a little less restrictive (though IANAL).
Anyway, having said all that, graphviz also has some nice stuff. Their hierarchical layout is very good (though hooking it up to inkscape would be a bit scary - handling dummy nodes, spline edge routing, etc, etc). If anyone has strong opinions on this choice now is the time to let me know what you think.
Cheers
Tim
mental@...3... wrote:
Quoting Ralf Stephan <ralf@...748...>:
Tim, this is great news but I have graphviz installed. Can you use that, too? Is your code written such that the graph libraries can be exchanged easily? That would be Good Design[tm].
Interchangability doesn't always correspond to good design.
Also, graphviz has a totally different function to the boost graph library.
-mental
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmdlnk&kid%103432&bid#0486&dat%1... _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
On Tue, 2006-02-14 at 13:08 +1100, Tim Dwyer wrote:
I'm afraid some sort of new dependency is inevitable. There's just too much (unnecessary) work in implementing our own graph data-structures and algorithms.
I don't know if you guys already have a list of algorithms you'd like to implement, but I have a request. I currently use GRAMPS to store some genealogical data, not a lot, but some. I'd really like to be able to generate a family tree. GRAMPS supports output to Graphviz, but I haven't been able to get anything similar to the "classic family tree" style layout.
Also, I think it would probably be useful for your work to write a dot file to "Inkscape SVG" translator. There are already lots of programs that output the dot file format (and it's simple). If you want really complex layouts you can use something like egypt (which does call diagrams from source code) and run it across the Inkscape codebase. I generated some large SVGs that way with Graphviz. The layout took a while too.
--Ted
Okay, you convinced me to drop graphviz.
Why a dependency? What arguments are there against including it? I'm hearing already people complaining about getting it.
ralf
Josh,
Going back to your original question, I guess that it would be a subdirectory of /gtk28/include . Maybe /gtk28/include/boost ?
Heh. Sorry that we grumpy old men took a week to answer your email.
On a lighter note, a kerfuffle:
A guy walks into a bar. The bartender asks, "what is this, some kind of joke?"
bob
participants (8)
-
unknown@example.com
-
Bob Jamison
-
jiho
-
Jon A. Cruz
-
Joshua A. Andler
-
Ralf Stephan
-
Ted Gould
-
Tim Dwyer