Difference between revisions of "Inkscape SVG vs. plain SVG"

From Inkscape Wiki
Jump to navigation Jump to search
m (+ languages)
m (→‎Inkscape SVG vs. Plain SVG: Fix missing word)
(2 intermediate revisions by one other user not shown)
Line 4: Line 4:


Some notes about "Inkscape SVG" [http://sourceforge.net/mailarchive/forum.php?thread_id=7412326&forum_id=37513 ref]:
Some notes about "Inkscape SVG" [http://sourceforge.net/mailarchive/forum.php?thread_id=7412326&forum_id=37513 ref]:
* the default mode of saving
* Inkscape's default mode when saving
* standards-conforming (the SVG standard permits these kinds of extensions)
* conforms to the SVG standard which permits extensions like those outlined [[Inkscape SVG vs. plain SVG#list of inkscape: and sodipodi: namespaces (incomplete)|here]]
* should render identically with or without the inkscape extensions
* Inkscape SVG should render identically with or without the Inkscape extensions
* gives Inkscape hints how to treat things in the UI -- for example, whether to treat a given group as a layer, or whether path nodes are cusp/flat/whatever
* gives Inkscape hints how to treat things in the UI -- for example, whether to treat a given group as a layer, or whether path nodes are cusp/flat/whatever
* seems to have a smaller filesize vs "[[PlainSVG]]" for some odd reason
* seems to have a smaller filesize vs "[[PlainSVG]]" for some odd reason
Line 12: Line 12:
"Saving document as 'plain SVG' actually invokes exporter. All objects will be reconstructed from parsed data, but overall object hierarchy will be preserved." -- quote from the documentation.
"Saving document as 'plain SVG' actually invokes exporter. All objects will be reconstructed from parsed data, but overall object hierarchy will be preserved." -- quote from the documentation.


From my perspective,  
From one perspective,  
* Inkscape svg is basically the same as plain svg, just with a few extra commands (in separate namespaces) added, which the Inkscape tools use to keep track of their work
* Inkscape SVG is basically the same as plain SVG, just with a few extra commands (in separate namespaces) added, which the Inkscape tools use to keep track of their work
* if you edit an inkscape svg in any other SVG editor, then it should appear as any other plain SVG, if not, then you can safely remove all references to inkscape: or sodipodi:, and just be left with the plain svg
* if you edit an inkscape SVG in any other SVG editor, then it should appear as any other plain SVG, if not, then you can safely remove all references to inkscape: or sodipodi:, and just be left with the plain SVG
* however, if you then re-edit the SVG in Inkscape (after hand editing, for example) 'without' removing the references to inkscape in the object that has been edited (for an example if you edit a path created using the inkscape star tool), then inkscape will re-generate the SVG path d="" attributes using the information that 'it' has stored under its namespace, and therefore getting rid of any editing to the path of that you, the user have done.
* however, if you then re-edit the SVG in Inkscape (after hand editing, for example) 'without' removing the references to inkscape in the object that has been edited (for an example if you edit a path created using the inkscape star tool), then inkscape will re-generate the SVG path d="" attributes using the information that 'it' has stored under its namespace, and therefore getting rid of any editing to the path of that you, the user have done.


Below is an incomplete list of what is contained in the inkscape: and sodipodi: (preserved for backwards compatibility with its functions) namespaces
== list of inkscape: and sodipodi: namespaces (incomplete) ==
 
(preserved for backwards compatibility with its functions)


*<svg>
*<svg>
Line 41: Line 43:
*<svg:Gradients>
*<svg:Gradients>
** inkscape:collect
** inkscape:collect
*<svg:path >(in patten defs)
*<svg:path >(in pattern defs)
** sodipodi:cx
** sodipodi:cx
** sodipodi:cy
** sodipodi:cy
Line 75: Line 77:
*<svg:g> (id=layer)
*<svg:g> (id=layer)
**inkscape:groupmode
**inkscape:groupmode
**inkscape:lable
**inkscape:label
*(connectors)
*(connectors)
**inkscape:connector-avoid:
**inkscape:connector-avoid:

Revision as of 16:22, 31 December 2016

Other languages: العربية Català Česky Deutsch English Español Français Italiano 日本語 한국어 Polski Português Português do Brasil Русский Slovenčina 中文

Inkscape SVG vs. Plain SVG

Some notes about "Inkscape SVG" ref:

  • Inkscape's default mode when saving
  • conforms to the SVG standard which permits extensions like those outlined here
  • Inkscape SVG should render identically with or without the Inkscape extensions
  • gives Inkscape hints how to treat things in the UI -- for example, whether to treat a given group as a layer, or whether path nodes are cusp/flat/whatever
  • seems to have a smaller filesize vs "PlainSVG" for some odd reason

"Saving document as 'plain SVG' actually invokes exporter. All objects will be reconstructed from parsed data, but overall object hierarchy will be preserved." -- quote from the documentation.

From one perspective,

  • Inkscape SVG is basically the same as plain SVG, just with a few extra commands (in separate namespaces) added, which the Inkscape tools use to keep track of their work
  • if you edit an inkscape SVG in any other SVG editor, then it should appear as any other plain SVG, if not, then you can safely remove all references to inkscape: or sodipodi:, and just be left with the plain SVG
  • however, if you then re-edit the SVG in Inkscape (after hand editing, for example) 'without' removing the references to inkscape in the object that has been edited (for an example if you edit a path created using the inkscape star tool), then inkscape will re-generate the SVG path d="" attributes using the information that 'it' has stored under its namespace, and therefore getting rid of any editing to the path of that you, the user have done.

list of inkscape: and sodipodi: namespaces (incomplete)

(preserved for backwards compatibility with its functions)

  • <svg>
    • inkscape:output_extension
    • inkscape:version
    • (sodipodi:docbase)
    • (sodipodi:docname)
    • sodipodi:modified
    • sodipodi:version
  • <sodipodi:namedview>
    • bordercolor
    • borderopacity
    • id
    • inkscape:cx
    • inkscape:cy
    • inkscape:pageopacity
    • inkscape:pageshadow
    • inkscape:window-height
    • inkscape:window-width
    • inkscape:zoom
    • pagecolor
    • inkscape:current-layer
  • <svg:Gradients>
    • inkscape:collect
  • <svg:path >(in pattern defs)
    • sodipodi:cx
    • sodipodi:cy
    • sodipodi:rx
    • sodipodi:ry
  • <svg:path> (in spiral)
    • sodipodi:argument
    • sodipodi:cx
    • sodipodi:cy
    • sodipodi:expansion
    • sodipodi:radius
    • sodipodi:revolution
    • sodipodi:t0
    • sodipodi:type
  • <svg:path> (in star)
    • inkscape:flatsided
    • inkscape:randomized
    • inkscape:rounded
    • sodipodi:arg1
    • sodipodi:arg2
    • sodipodi:cx
    • sodipodi:cy
    • sodipodi:r1
    • sodipodi:r2
    • sodipodi:sides
    • sodipodi:type
  • (tiled clones)
    • inkscape:tiled-clone-of
    • inkscape:tile-cx
    • inkscape:tile-cy
    • inkscape:tile-h
    • inkscape:tile-w
  • <svg:g> (id=layer)
    • inkscape:groupmode
    • inkscape:label
  • (connectors)
    • inkscape:connector-avoid:
    • inkscape:connector-type
    • inkscape:connector-start
    • inkscape:connector-end
  • (others)
    • sodipodi:nodetypes?