It's always bad when the UI offers two ways to do the same thing without really explaining what's the difference. It's equally bad when UI uses some meaningless techno jargon such as "cairo" :) Unfortunately 0.46 was released still in the middle of a transition period which made both these evils inevitable. Now that we're in 0.47, however, I would like to address this issue by switching all of PS, EPS, and PDF output to cairo, removing the builtin Inkscape exporter, and purging the mentions of "cairo" from the UI.
As a matter of fact, this has already partially happened (not sure who did this). Right now both PS export options work via cairo and produce identical output. The Inkscape-native PDF export is nowhere to be seen. The only exporter which still uses native code is EPS. However, since 1.5.2 cairo can produce EPS files too, so this can all be done in one place now (closng several EPS export bugs along the way). The only downside is that it will require cairo >= 1.5.2, is everyone OK with that?
By the way, the latest cairo 1.5.12 finally fixes the bug where zooming in too closely in Outline mode produced messy broken lines. Now everything is neat and clean. Upgrade is recommended.
On 2008-March-14 , at 22:04 , bulia byak wrote:
It's always bad when the UI offers two ways to do the same thing without really explaining what's the difference. It's equally bad when UI uses some meaningless techno jargon such as "cairo" :) Unfortunately 0.46 was released still in the middle of a transition period which made both these evils inevitable. Now that we're in 0.47, however, I would like to address this issue by switching all of PS, EPS, and PDF output to cairo, removing the builtin Inkscape exporter, and purging the mentions of "cairo" from the UI.
As a matter of fact, this has already partially happened (not sure who did this). Right now both PS export options work via cairo and produce identical output. The Inkscape-native PDF export is nowhere to be seen. The only exporter which still uses native code is EPS. However, since 1.5.2 cairo can produce EPS files too, so this can all be done in one place now (closng several EPS export bugs along the way). The only downside is that it will require cairo >= 1.5.2, is everyone OK with that?
Since cairo >1.5.2 is also needed to get decent PDF output (i.e. not rasterized) I think this is not a problem.
By the way, the latest cairo 1.5.12 finally fixes the bug where zooming in too closely in Outline mode produced messy broken lines. Now everything is neat and clean. Upgrade is recommended.
Argh, just did a build two days ago with 1.5.10 :(
BTW, regarding saving in other vector formats, if those become Cairo based, they will probably all offer the same functionality. Said functionality is approaching the one for bitmap export thanks to your recent changes (export only one object, all drawing regardless of page size). So would it be possible to uniformize things a little and move all lossy export solutions (i.e. everything that's not SVG in fact...) to a single export command and dialog? There were several discussions already and the bottom line (one of the bottom lines at least ;)) was that, while the functionality of bitmap and vector exports were not approximately on par, it was not a good idea to put them together. Now that they are it would, IMHO, make more sense. There is a (long) launchpad bug about this https://bugs.launchpad.net/inkscape/+bug/168627
To summarize it all in one usage example: - open and draw something (happily, since it's so cool) in Inkscape - save (as SVG) - save as > foobar.pdf - try to close window file => get nag screen about PDF possibly causing data loss [Hell, why propose it to me then?!] - OK then click "Save as SVG" [Nothing has changed since I first saved it as SVG so why should I save it back once again?...] => Do I want to overwrite the existing SVG file? [Yes I do, I just clicked the button to do that. But wait what I am overwriting exactly? I made no changes to this drawing...] - click cancel => back to the file chooser - click cancel again [OK, back where I started] - close window => nag screen again [Grmlmmrr...] - click "Close withouth saving" and hope for the best The (frustrated) end
Of course I exaggerated a lot but you get the point. I should have used "save a copy" rather than save as, but isn't this menu item precisely proof that these things should be under "export"?
JiHO --- http://jo.irisson.free.fr/
On Fri, Mar 14, 2008 at 6:46 PM, jiho <jo.irisson@...400...> wrote:
BTW, regarding saving in other vector formats, if those become Cairo based, they will probably all offer the same functionality. Said functionality is approaching the one for bitmap export thanks to your recent changes (export only one object, all drawing regardless of page size). So would it be possible to uniformize things a little and move all lossy export solutions (i.e. everything that's not SVG in fact...) to a single export command and dialog? There were several discussions already and the bottom line (one of the bottom lines at least ;)) was that, while the functionality of bitmap and vector exports were not approximately on par, it was not a good idea to put them together. Now that they are it would, IMHO, make more sense. There is a (long) launchpad bug about this https://bugs.launchpad.net/inkscape/+bug/168627
Of course. So, will anyone complain if I just add a little format drop-down (PNG, PS, EPS, PDF) to the Export Bitmap dialog, and rename it to e.g. "Export objects"? We won't even need to gray out anything there for PS/PDF export because bitmap resolution makes sense for them as well, for the filtered objects that will need to be rasterized.
The Adobe formats will still remain in the Save dialog, because a lot of people will still look for them there, although I think we need them to work as if it was "Save a copy", i.e. without Inkscape suddenly deciding that it has a PDF document loaded. Will this satisfy everyone?
There's only one problem: since PS/PDF/etc export is all via extensions, how can I call an extension without it showing its setup dialog? I will need to add quite a number of new parameters to these extensions, and they will be rather technical in nature, not quite suitable for UI. This is already a problem with the "export object with this ID" in the dialog instead of a simple "export selection" checkbox, but I cannot do this because the dialog is created by the extension itself and I cannot control it. So, can I suppress it entirely and pass all parameters from the more user-friendly "export objects" dialog?
On 2008-March-15 , at 01:11 , bulia byak wrote:
On Fri, Mar 14, 2008 at 6:46 PM, jiho <jo.irisson@...400...> wrote:
BTW, regarding saving in other vector formats, if those become Cairo based, they will probably all offer the same functionality. Said functionality is approaching the one for bitmap export thanks to your recent changes (export only one object, all drawing regardless of page size). So would it be possible to uniformize things a little and move all lossy export solutions (i.e. everything that's not SVG in fact...) to a single export command and dialog? There were several discussions already and the bottom line (one of the bottom lines at least ;)) was that, while the functionality of bitmap and vector exports were not approximately on par, it was not a good idea to put them together. Now that they are it would, IMHO, make more sense. There is a (long) launchpad bug about this https://bugs.launchpad.net/inkscape/+bug/168627
Of course. So, will anyone complain if I just add a little format drop-down (PNG, PS, EPS, PDF) to the Export Bitmap dialog, and rename it to e.g. "Export objects"? We won't even need to gray out anything there for PS/PDF export because bitmap resolution makes sense for them as well, for the filtered objects that will need to be rasterized.
great! Some things may need to be tweaked though since a quick review of the current functionality shows: Bitmap PDF ------------------------------------------------ page <-> page drawing <-> drawing selection+hide <-> by ID selection-hide <-> no equivalent (could be achieved by clipping though, or setting a crop box in the pdf) custom <-> no equivalent (idem) (see http://jo.irisson.free.fr/dropbox/test-export.zip for an illustrated version)
(BTW, while you're at it, don't you think it would make sense to suppress the x0/1 y0/1 width and height fields in the bitmap export dialog for all settings that are not the "custom" one, and to set the default in the custom one to the full page when nothing is selected and to the bounding box of the selected objects when something is? There will be no loss in functionality and the dialog will be made simpler and smaller this way).
The Adobe formats will still remain in the Save dialog, because a lot of people will still look for them there, although I think we need them to work as if it was "Save a copy", i.e. without Inkscape suddenly deciding that it has a PDF document loaded. Will this satisfy everyone?
Having "Save as" do something different with current document depending on which format is chosen looks like potentially confusing UI to me. You could probably disable PDF/PS/... altogether in "Save" and "Save as" and only leave them in "Save as copy". But don't you think people will naturally look in "export" if they don't find a specific format in "Save as"? Speaking of what I know, this is the paradigm on OS X: save and save as often do not even provide a format chooser (they save in the native format of the application) and all the rest is under export. To summarise, the simplest and more robust UI (from an user point of view, and in my very humble opinion) would be:
Save Save as -> Inkscape SVG, Inkscape SVGZ, Compressed Inkscape SVG width media (possibly also SVG, and SVGZ but they are still lossy afterall) Export -> Everything else with such a dialog: a file chooser at the top, and file type defaulting to "Guess from extension". batch export all selected object check box * four tabs underneath (Page, Drawing, Objects, Custom)** depending on the file type, enable or disable batch export when batch export is unchecked/unavailable, enable or disable each tab depending on the file type PNG: enable all PDF/PS/EPS: enable page, drawing, objects other graphic formats: enable page or drawing depending on the behaviour of the file type other formats (GPL): disable all
* To simplify matters, if batch export is restricted to PNG, it could be made a separate menu entry in the file menu Indeed, there is very little user interaction left in the dialog when it is checked (basically one can only click "Export") so it may be more efficiently done in one action (File > Batch export to bitmap) instead of three (File > Export bitmap, tick batch export, Click export). With SHIFT+ALT +CTRL+E as keyboard shortcut and a discardable nag screen about the fact that it overwrites previous files it seems like a good solution to me.
** Selection becomes Objects and exports only selected objects (as with "hide all excpet selected objects" now). Custom behaves by default as "Selection" does now: the coordinates are the one of current selection and, when only one object is selected, the filename to which it is saved is saved in the SVG. When coordinates are changed manually and it reverts to how custom works currently. Does that make sense? Another solution would be to have Page, Drawing, Object, Selection/Selected area, Custom but it would make the dialog bigger.
There's only one problem: since PS/PDF/etc export is all via extensions, how can I call an extension without it showing its setup dialog? I will need to add quite a number of new parameters to these extensions, and they will be rather technical in nature, not quite suitable for UI. This is already a problem with the "export object with this ID" in the dialog instead of a simple "export selection" checkbox, but I cannot do this because the dialog is created by the extension itself and I cannot control it. So, can I suppress it entirely and pass all parameters from the more user-friendly "export objects" dialog?
JiHO --- http://jo.irisson.free.fr/
jiho wrote:
Having "Save as" do something different with current document depending on which format is chosen looks like potentially confusing UI to me. You could probably disable PDF/PS/... altogether in "Save" and "Save as" and only leave them in "Save as copy". But don't you think people will naturally look in "export" if they don't find a specific format in "Save as"? Speaking of what I know, this is the paradigm on OS X: save and save as often do not even provide a format chooser (they save in the native format of the application) and all the rest is under export.
I agree completely with this. It makes sense to "save"/"save as" in svg format, and export anything else, since that's the only format Inkscape actually edits.
BTW, is there a difference between "export" and "save a copy"?
JF
-----Original Message----- From: inkscape-devel-bounces@lists.sourceforge.net [mailto:inkscape-devel-bounces@lists.sourceforge.net] On Behalf Of Joshua Facemyer / Impressus Art Sent: zaterdag 15 maart 2008 6:58 To: jiho; inkscape-devel List Subject: Re: [Inkscape-devel] sorting out PS/EPS/PDF export mess
I agree completely with this. It makes sense to "save"/"save as" in svg format, and export anything else, since that's the only format Inkscape actually edits.
BTW, is there a difference between "export" and "save a copy"?
I don't understand the difficulties with the current system. Save = understood Save as = save as different filename. Whatever filetype you want. Save a copy = save as different filename but afterwards stay working on current filename. Again, whatever the type.
Very simple. The user does have to seek any file type. It is always there, and always possible to save to all.
-johan
On 2008-March-17 , at 18:12 , J.B.C.Engelen@...1578... wrote:
To: jiho; inkscape-devel List Subject: Re: [Inkscape-devel] sorting out PS/EPS/PDF export mess
I agree completely with this. It makes sense to "save"/"save as" in svg format, and export anything else, since that's the only format Inkscape actually edits.
BTW, is there a difference between "export" and "save a copy"?
I don't understand the difficulties with the current system. Save = understood Save as = save as different filename. Whatever filetype you want.
To me that's the issue: being able to save current drawing as whatever file type => be annoyed by the nag screen telling you to save it back as svg, and risk data loss if the nag screen is discarded. Why allow the user to shoot him/herself in the foot when there's an easy alternative?
Save a copy = save as different filename but afterwards stay working on current filename. Again, whatever the type.
This is OK. Just redundant with export. Since there's an export panel, that can stay open all the time, with lots of options already there, I was thinking that integrating all export under it would be the best UI.
JiHO --- http://jo.irisson.free.fr/
Hi,
BTW, is there a difference between "export" and "save a copy"?
I think save a copy should die, and let export accept any format including inkscape svg. Then (optionnally) restrict save as to inkscape svg
Also continue adding support to export a rectangle to other fileformats, and the UI would be perfect: want to save your work ? save as gives you a svg, no discovering later that save as pdf was not a real save when told so by a nag screen. Want to produce a drawing in any supported export format: hit export, and you can choose whether you want to export the whole page, just a rectangle, whatever. No seeking for file types, all are under export.
I don't understand the difficulties with the current system. Save = understood
is it? is save ok when the format is not svg? If so, why does inkscape nag users who save their file in a different format?
Save as = save as different filename. Whatever filetype you want.
If you save your file as "whatever filetype you want", and this filetype is not svg, then you have put inkscape in a state where the type of the document is not svg, ie not an editable filetype. Inkscape does not like that state: ctrl-S + exit gives you a nag-screen. We do not want the user to save her work as pdf then exit. We want him to save as svg and use save a copy as pdf. Whether to call that save a copy or export is a minor point, but export seems more standard. I cannot picture anyone knowledgable doing save as for non-svg formats rather than save a copy. Let us not let beginners fall into that pitfall.
Save a copy = save as different filename but afterwards stay working on
current filename. Again, whatever
the type.
Very simple. The user does have to seek any file type. It is always there, and
always possible to save to all.
Whereas with the alternate proposal, the user would not have to seek any file type, they would all be under export.
Florent
On Mon, 17 Mar 2008 18:03:26 +0000 (UTC) florent becker <florent.becker@...1880...> wrote:
I think save a copy should die, and let export accept any format including inkscape svg.
Noooo. :-) "save a copy" is a common option in a lot of apps. for saving backups without changing file names. I.e. your file might be massive_project.svg, and you can use "save a copy" to save massive_project_a.svg, massive_project_b.svg, massive_project_c.svg etc. while you're working in case something goes wrong or you come to regret a design decision. So it's not necessarily related to export at all. I'd say leave it in.
Cheers -Terry
Terry Brown <terry_n_brown@...360...> writes:
On Mon, 17 Mar 2008 18:03:26 +0000 (UTC) florent becker <florent.becker@...360...> wrote:
I think save a copy should die, and let export accept any format including inkscape svg.
Noooo. "save a copy" is a common option in a lot of apps. for saving backups without changing file names. I.e. your file might be massive_project.svg, and you can use "save a copy" to save massive_project_a.svg, massive_project_b.svg, massive_project_c.svg etc. while you're working in case something goes wrong or you come to regret a design decision.
Then you use a vcs, don't you (just kidding, but not that much).
So it's not necessarily related to export at all. I'd say leave it in.
Maybe, but even if we leave it in, it might be nice to export a part of the drawing as a svg file (group1.svg). For this, we would need to have all file formats including inkscape svg in the export dialog. Once you've done that, whether you keep or not the now redundant save a copy is a matter of taste. I agree that if save a copy is removed, it should be duly advertised.
Florent.
I will second this. There are two versions of cairo exporter. One used previously and currently only used by the PS export. And the other used for printing and PDF. The PS one has an option convert objects with filter to bitmap during export. Maintain both path of code seen not wise.
HTH,
Adib. ---
bulia byak schrieb:
It's always bad when the UI offers two ways to do the same thing without really explaining what's the difference. It's equally bad when UI uses some meaningless techno jargon such as "cairo" :) Unfortunately 0.46 was released still in the middle of a transition period which made both these evils inevitable. Now that we're in 0.47, however, I would like to address this issue by switching all of PS, EPS, and PDF output to cairo, removing the builtin Inkscape exporter, and purging the mentions of "cairo" from the UI.
As a matter of fact, this has already partially happened (not sure who did this). Right now both PS export options work via cairo and produce identical output. The Inkscape-native PDF export is nowhere to be seen. The only exporter which still uses native code is EPS. However, since 1.5.2 cairo can produce EPS files too, so this can all be done in one place now (closng several EPS export bugs along the way). The only downside is that it will require cairo >= 1.5.2, is everyone OK with that?
By the way, the latest cairo 1.5.12 finally fixes the bug where zooming in too closely in Outline mode produced messy broken lines. Now everything is neat and clean. Upgrade is recommended.
On Fri, Mar 14, 2008 at 6:04 PM, bulia byak <buliabyak@...400...> wrote:
It's always bad when the UI offers two ways to do the same thing without really explaining what's the difference. It's equally bad when UI uses some meaningless techno jargon such as "cairo" :) Unfortunately 0.46 was released still in the middle of a transition period which made both these evils inevitable. Now that we're in 0.47, however, I would like to address this issue by switching all of PS, EPS, and PDF output to cairo, removing the builtin Inkscape exporter, and purging the mentions of "cairo" from the UI.
I'm glad to report that there's been some progress to this. PDF, PS, and EPS are all exported by the same cairo-based exporter which just uses different cairo back-ends. As a result, PS and EPS export have especially changed (PDF export was cairo-based already). All these formats now support clipping and patterns. In PS/EPS, objects with transparency are rasterized, instead of losing transparency as before. There are probably lots of smaller improvements too.
There are of course problems as well. Known and unknown bugs, not all parameters working as they should, etc. Please help improve this area - now is the time to test your PS/EPS/PDF export, report all bugs (and close old ones which are no longer), and of course hack on the code in extension/internal/cairo-render-*. The big upside is that since most of the code is shared, one fix may fix all three export formats.
The only export format still with "cairo" in its name in the UI is "cairo PNG" - do we need it for anything? I think our regular PNG export is much better anyway, so if there are no objections I will comment it out.
participants (7)
-
unknown@example.com
-
Adib taraben
-
bulia byak
-
florent becker
-
jiho
-
Joshua Facemyer / Impressus Art
-
Terry Brown