summaryrefslogtreecommitdiffstats
path: root/share/extensions/render_barcode.py
diff options
context:
space:
mode:
authorAaron Spike <aaron@ekips.org>2007-04-25 00:53:02 +0000
committeracspike <acspike@users.sourceforge.net>2007-04-25 00:53:02 +0000
commit16246cb0d733077d7c71fe1663a2af4340c6c953 (patch)
treef8242fe229d98a0bfea4e6215a584f1887ccb100 /share/extensions/render_barcode.py
parentadded missing extensions to POFILES.in (diff)
downloadinkscape-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.py59
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()
+