diff options
| author | Aaron Spike <aaron@ekips.org> | 2007-04-25 00:53:02 +0000 |
|---|---|---|
| committer | acspike <acspike@users.sourceforge.net> | 2007-04-25 00:53:02 +0000 |
| commit | 16246cb0d733077d7c71fe1663a2af4340c6c953 (patch) | |
| tree | f8242fe229d98a0bfea4e6215a584f1887ccb100 /share/extensions/render_barcode.py | |
| parent | added missing extensions to POFILES.in (diff) | |
| download | inkscape-16246cb0d733077d7c71fe1663a2af4340c6c953.tar.gz inkscape-16246cb0d733077d7c71fe1663a2af4340c6c953.zip | |
Add doctormo's barcode extension. Patch 1681456. Still need to make it work with the make-chinery for installation and distribution.
(bzr r2958)
Diffstat (limited to 'share/extensions/render_barcode.py')
| -rw-r--r-- | share/extensions/render_barcode.py | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/share/extensions/render_barcode.py b/share/extensions/render_barcode.py new file mode 100644 index 000000000..c35507a95 --- /dev/null +++ b/share/extensions/render_barcode.py @@ -0,0 +1,59 @@ +''' +Copyright (C) 2007 Martin Owens + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +''' + +import inkex +import sys +from Barcode import getBarcode + +class InsertBarcode(inkex.Effect): + def __init__(self): + inkex.Effect.__init__(self) + self.OptionParser.add_option("-l", "--height", + action="store", type="int", + dest="height", default=30, + help="Barcode Height") + self.OptionParser.add_option("-t", "--type", + action="store", type="string", + dest="type", default='', + help="Barcode Type") + self.OptionParser.add_option("-d", "--text", + action="store", type="string", + dest="text", default='', + help="Text to print on barcode") + + def effect(self): + x, y = self.view_center + object = getBarcode( self.options.type, { + 'text' : self.options.text, + 'height' : self.options.height, + 'document' : self.document, + 'x' : x, + 'y' : y, + } ) + if object: + barcode = object.generate() + if barcode: + self.current_layer.appendChild(barcode) + else: + sys.stderr.write("No barcode was generated\n") + else: + sys.stderr.write("Unable to make barcode with: " + str(self.options) + "\n") + +e = InsertBarcode() +e.affect() + |
