diff options
| author | Nicolas Dufour <nicoduf@yahoo.fr> | 2009-11-29 19:20:07 +0000 |
|---|---|---|
| committer | JazzyNico <nicoduf@yahoo.fr> | 2009-11-29 19:20:07 +0000 |
| commit | a2f98a2d2b6be3d2a5d666a92fb77f37e24b57b3 (patch) | |
| tree | 298e5bc0903ab349ff1dc2422536262ed85da934 | |
| parent | Deprecation warning fix on xcf export (diff) | |
| download | inkscape-a2f98a2d2b6be3d2a5d666a92fb77f37e24b57b3.tar.gz inkscape-a2f98a2d2b6be3d2a5d666a92fb77f37e24b57b3.zip | |
Scour extension update
Fixed bugs:
- https://launchpad.net/bugs/453737
(bzr r8847)
| -rwxr-xr-x | share/extensions/scour.inkscape.py | 53 | ||||
| -rw-r--r-- | share/extensions/scour.inx | 29 |
2 files changed, 77 insertions, 5 deletions
diff --git a/share/extensions/scour.inkscape.py b/share/extensions/scour.inkscape.py index 531dfb46c..9e8775782 100755 --- a/share/extensions/scour.inkscape.py +++ b/share/extensions/scour.inkscape.py @@ -1,8 +1,51 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -import sys +import sys, inkex from scour import scourString -input = file(sys.argv[1], "r") -sys.stdout.write(scourString(input.read()).encode("UTF-8")) -input.close() -sys.stdout.close() + +class ScourInkscape (inkex.Effect): + + def __init__(self): + inkex.Effect.__init__(self) + self.OptionParser.add_option("--tab", + action="store", type="string", + dest="tab") + self.OptionParser.add_option("--simplify-colors", type="inkbool", + action="store", dest="simple_colors", default=True, + help="won't convert all colors to #RRGGBB format") + self.OptionParser.add_option("--style-to-xml", type="inkbool", + action="store", dest="style_to_xml", default=True, + help="won't convert styles into XML attributes") + self.OptionParser.add_option("--group-collapsing", type="inkbool", + action="store", dest="group_collapse", default=True, + help="won't collapse <g> elements") + self.OptionParser.add_option("--enable-id-stripping", type="inkbool", + action="store", dest="strip_ids", default=False, + help="remove all un-referenced ID attributes") + self.OptionParser.add_option("--embed-rasters", type="inkbool", + action="store", dest="embed_rasters", default=True, + help="won't embed rasters as base64-encoded data") + self.OptionParser.add_option("--keep-editor-data", type="inkbool", + action="store", dest="keep_editor_data", default=False, + help="won't remove Inkscape, Sodipodi or Adobe Illustrator elements and attributes") + self.OptionParser.add_option("--strip-xml-prolog", type="inkbool", + action="store", dest="strip_xml_prolog", default=False, + help="won't output the <?xml ?> prolog") + self.OptionParser.add_option("-p", "--set-precision", + action="store", type=int, dest="digits", default=5, + help="set number of significant digits (default: %default)") + self.OptionParser.add_option("--indent", + action="store", type="string", dest="indent_type", default="space", + help="indentation of the output: none, space, tab (default: %default)") + + + def effect(self): + input = file(sys.argv[11], "r") + sys.stdout.write(scourString(input.read(), self.options).encode("UTF-8")) + input.close() + sys.stdout.close() + + +if __name__ == '__main__': + e = ScourInkscape() + e.affect(output=False) diff --git a/share/extensions/scour.inx b/share/extensions/scour.inx index 57884b6aa..d5cddeea5 100644 --- a/share/extensions/scour.inx +++ b/share/extensions/scour.inx @@ -5,6 +5,35 @@ <dependency type="executable" location="extensions">scour.py</dependency> <dependency type="executable" location="extensions">svg_regex.py</dependency> <dependency type="executable" location="extensions">yocto_css.py</dependency> + <param name="tab" type="notebook"> + <page name="Options" _gui-text="Options"> + <param name="simplify-colors" type="boolean" _gui-text="Simplify colors">true</param> + <param name="style-to-xml" type="boolean" _gui-text="Style to xml">true</param> + <param name="group-collapsing" type="boolean" _gui-text="Group collapsing">true</param> + <param name="enable-id-stripping" type="boolean" _gui-text="Enable id stripping">false</param> + <param name="embed-rasters" type="boolean" _gui-text="Embed rasters">true</param> + <param name="keep-editor-data" type="boolean" _gui-text="Keep editor data">false</param> + <param name="strip-xml-prolog" type="boolean" _gui-text="Strip xml prolog">false</param> + <param name="set-precision" type="int" _gui-text="Set precision">5</param> + <param name="indent" type="enum" _gui-text="Indent"> + <_item value="space">Space</_item> + <_item value="tab">Tab</_item> + <_item value="none">None</_item> + </param> + </page> + <page name="Help" _gui-text="Help"> + <_param name="instructions" type="description" xml:space="preserve">This extension optimize the SVG file according to the following options: + * Simplify colors: convert all colors to #RRGGBB format. + * Style to xml: convert styles into XML attributes. + * Group collapsing: collapse <g> elements. + * Enable id stripping: remove all un-referenced ID attributes. + * Embed rasters: embed rasters as base64-encoded data. + * Keep editor data: don't remove Inkscape, Sodipodi or Adobe Illustrator elements and attributes. + * Strip xml prolog: don't output the xml prolog. + * Set precision: set number of significant digits (default: 5). + * Indent: indentation of the output: none, space, tab (default: space).</_param> + </page> + </param> <output> <extension>.svg</extension> <mimetype>image/svg+xml</mimetype> |
