r20271 by craig - #13203: Fix some of .ui title strings

scribus-commit scribus-commit at lists.scribus.net
Fri Jul 24 21:38:06 UTC 2015


Author: craig
Date: Fri Jul 24 21:38:06 2015
New Revision: 20271

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=20271
Log:
#13203: Fix some of .ui title strings

Modified:
    trunk/Scribus/scribus/plugins/barcodegenerator/barcode.ps
    trunk/Scribus/scribus/plugins/barcodegenerator/barcodegenerator.cpp
    trunk/Scribus/scribus/plugins/export/pixmapexport/exportform.ui
    trunk/Scribus/scribus/plugins/import/pdf/pdfimportoptions.ui
    trunk/Scribus/scribus/plugins/import/xps/xpsimportoptions.ui
    trunk/Scribus/scribus/ui/aligndistribute.ui
    trunk/Scribus/scribus/ui/createrange.ui
    trunk/Scribus/scribus/ui/smcellstylewidget.ui
    trunk/Scribus/scribus/ui/smcstylewidget.ui

Modified: trunk/Scribus/scribus/plugins/barcodegenerator/barcode.ps
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/plugins/barcodegenerator/barcode.ps
==============================================================================
--- trunk/Scribus/scribus/plugins/barcodegenerator/barcode.ps (original)
+++ trunk/Scribus/scribus/plugins/barcodegenerator/barcode.ps Fri Jul 24 21:38:06 2015
@@ -1,6 +1,6 @@
 %!PS
 
-% Barcode Writer in Pure PostScript - Version 2014-12-11
+% Barcode Writer in Pure PostScript - Version 2015-07-14
 % http://bwipp.terryburton.co.uk
 %
 % Copyright (c) 2004-2014 Terry Burton
@@ -32,7 +32,7 @@
 % --BEGIN TEMPLATE--
 
 % --BEGIN RESOURCE preamble--
-%%BeginResource: Category uk.co.terryburton.bwipp 0.0 2014121100 35431 31768
+%%BeginResource: Category uk.co.terryburton.bwipp 0.0 2015071400 29749 32822
 %%BeginData:          6 ASCII Lines
 currentglobal
 true setglobal
@@ -46,7 +46,7 @@
 
 % --BEGIN RESOURCE raiseerror--
 % --REQUIRES preamble--
-%%BeginResource: uk.co.terryburton.bwipp raiseerror 0.0 2014121100 112145 43907
+%%BeginResource: uk.co.terryburton.bwipp raiseerror 0.0 2015071400 153420 39943
 %%BeginData:         13 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -67,7 +67,7 @@
 
 % --BEGIN RENDERER renlinear--
 % --REQUIRES preamble raiseerror--
-%%BeginResource: uk.co.terryburton.bwipp renlinear 0.0 2014121100 80415 79633
+%%BeginResource: uk.co.terryburton.bwipp renlinear 0.0 2015071400 82511 85187
 %%BeginData:        237 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -312,7 +312,7 @@
 
 % --BEGIN RENDERER renmatrix--
 % --REQUIRES preamble raiseerror--
-%%BeginResource: uk.co.terryburton.bwipp renmatrix 0.0 2014121100 54629 54335
+%%BeginResource: uk.co.terryburton.bwipp renmatrix 0.0 2015071400 51741 54721
 %%BeginData:         66 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -386,7 +386,7 @@
 
 % --BEGIN RENDERER renmaximatrix--
 % --REQUIRES preamble raiseerror--
-%%BeginResource: uk.co.terryburton.bwipp renmaximatrix 0.0 2014121100 55829 55803
+%%BeginResource: uk.co.terryburton.bwipp renmaximatrix 0.0 2015071400 52341 55461
 %%BeginData:         79 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -477,7 +477,7 @@
 % --EXAM: 90200
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ean5 0.0 2014121100 64068 63875
+%%BeginResource: uk.co.terryburton.bwipp ean5 0.0 2015071400 68958 65237
 %%BeginData:        135 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -624,7 +624,7 @@
 % --EXAM: 05
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ean2 0.0 2014121100 62753 62505
+%%BeginResource: uk.co.terryburton.bwipp ean2 0.0 2015071400 67275 63603
 %%BeginData:        120 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -756,7 +756,7 @@
 % --EXAM: 2112345678900
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ean13 0.0 2014121100 87471 83758
+%%BeginResource: uk.co.terryburton.bwipp ean13 0.0 2015071400 88049 87856
 %%BeginData:        215 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -983,7 +983,7 @@
 % --EXAM: 02345673
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ean8 0.0 2014121100 84693 80881
+%%BeginResource: uk.co.terryburton.bwipp ean8 0.0 2015071400 84495 84203
 %%BeginData:        196 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -1191,7 +1191,7 @@
 % --EXAM: 416000336108
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp upca 0.0 2014121100 92328 88533
+%%BeginResource: uk.co.terryburton.bwipp upca 0.0 2015071400 93690 93311
 %%BeginData:        248 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -1451,7 +1451,7 @@
 % --EXAM: 00123457
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp upce 0.0 2014121100 97037 93389
+%%BeginResource: uk.co.terryburton.bwipp upce 0.0 2015071400 99311 98871
 %%BeginData:        287 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -1750,7 +1750,7 @@
 % --EXAM: 978-1-56581-231-4 52250
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp isbn 0.0 2014121100 92829 99144
+%%BeginResource: uk.co.terryburton.bwipp isbn 0.0 2015071400 100737 96394
 %%BeginData:        252 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -2014,7 +2014,7 @@
 % --EXAM: 979-0-2605-3211-3
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ismn 0.0 2014121100 89401 95601
+%%BeginResource: uk.co.terryburton.bwipp ismn 0.0 2015071400 96581 92331
 %%BeginData:        231 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -2257,7 +2257,7 @@
 % --EXAM: 0311-175X 00 17
 % --EXOP: includetext guardwhitespace
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp issn 0.0 2014121100 80698 83843
+%%BeginResource: uk.co.terryburton.bwipp issn 0.0 2015071400 85790 81901
 %%BeginData:        177 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -2443,11 +2443,11 @@
 % --BEGIN ENCODER code128--
 % --REQUIRES preamble raiseerror renlinear--
 % --DESC: Code 128
-% --EXAM: Count01234567^FNC2!
-% --EXOP: includetext parsefnc
+% --EXAM: Count01234567!
+% --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code128 0.0 2014121100 122003 121439
-%%BeginData:        421 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp code128 0.0 2015071400 139795 135653
+%%BeginData:        455 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -2602,7 +2602,7 @@
             (FNC1) fn1
             (FNC2) fn2
             (FNC3) fn3
-            (FNC4) fn4
+%            (FNC4) fn4    Not user accessible as encoded automatically
             (LNKA) lka
             (LNKC) lkc
         >> def
@@ -2630,6 +2630,40 @@
         /msg msg 0 j getinterval def
         /msglen msg length def
         /text text 0 j getinterval def
+
+        % Standard and extended ASCII runlength at position
+        /numSA [ msglen {0} repeat 0 ] def
+        /numEA [ msglen {0} repeat 0 ] def
+        msglen 1 sub -1 0 {
+            /i exch def
+            msg i get 0 ge {
+                msg i get 128 ge {
+                    numEA i numEA i 1 add get 1 add put
+                } {
+                    numSA i numSA i 1 add get 1 add put
+                } ifelse
+            } if
+        } for
+
+        % FNC4 codeword insertion for extended ASCII
+        /ea false def /msgtmp [] def
+        0 1 msglen 1 sub {
+            /i exch def
+            /c msg i get def
+            ea c 128 lt xor not c 0 ge and {  % Other mode required
+                ea {numSA} {numEA} ifelse i get dup  % Runlength of other mode
+                i add msglen eq {3} {5} ifelse       % Does run terminate symbol
+                lt {  % Shift
+                    /msgtmp [ msgtmp aload pop fn4 ] def
+                } {   % Latch
+                    /msgtmp [ msgtmp aload pop fn4 fn4 ] def
+                    /ea ea not def
+                } ifelse
+            } if
+            /msgtmp [ msgtmp aload pop c 0 ge {c 127 and} {c} ifelse ] def
+        } for
+        /msg msgtmp def
+        /msglen msg length def
 
         % Determine digit runlength and characters from given position
         /numsscr {
@@ -2879,7 +2913,7 @@
 % --EXAM: (01)95012345678903(3103)000123
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp gs1-128 0.0 2014121100 73938 76998
+%%BeginResource: uk.co.terryburton.bwipp gs1-128 0.0 2015071400 75886 75488
 %%BeginData:        157 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3045,11 +3079,11 @@
 % --BEGIN ENCODER ean14--
 % --REQUIRES preamble raiseerror renlinear code128--
 % --DESC: GS1-14
-% --EXAM: (01)04601234567893
+% --EXAM: (01) 0 46 01234 56789 3
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp ean14 0.0 2014121100 63855 67029
-%%BeginData:         93 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp ean14 0.0 2015071400 67748 67344
+%%BeginData:        105 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -3057,6 +3091,123 @@
 dup /code128 dup /uk.co.terryburton.bwipp findresource put
 begin
 /ean14 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Strip spaces from the given data
+    /text barcode def
+    barcode dup length string exch 0 exch
+    {dup 32 ne {3 copy put pop 1 add} {pop} ifelse} forall
+    0 exch getinterval /barcode exch def
+    /hasspace text length barcode length ne def
+ 
+    % Validate the input
+    barcode 0 4 getinterval (\(01\)) ne {
+        /bwipp.ean14badAI (GS1-14 must begin with (01) application identifier) //raiseerror exec
+    } if
+    barcode length 17 ne barcode length 18 ne and {
+        /bwipp.ean14badLength (GS1-14 must be 13 or 14 digits) //raiseerror exec
+    } if
+    barcode 4 barcode length 4 sub getinterval {
+        dup 48 lt exch 57 gt or {
+            /bwipp.ean14badCharacter (GS1-14 must contain only digits) //raiseerror exec
+        } if
+    } forall
+
+    % Calculate checksum and add to end of barcode
+    /checksum 0 def
+    0 1 12 {
+        /i exch def
+        /checksum checksum barcode i 4 add get 48 sub i 2 mod 0 eq {3 mul} if add def
+    } for 
+    /checksum 10 checksum 10 mod sub 10 mod def
+    barcode length 18 eq {
+        barcode 17 get checksum 48 add ne {
+            /bwipp.ean14badCheckDigit (Incorrect GS1-14 check digit provided) //raiseerror exec
+        } if
+    } {
+        18 string
+        dup 0 barcode putinterval
+        dup 17 checksum 48 add put
+        /barcode exch def
+        text length hasspace {2} {1} ifelse add string
+        dup dup length 2 sub ( ) putinterval
+        dup dup length 1 sub checksum 48 add put
+        dup 0 text putinterval
+        /text exch def
+    } ifelse
+    /gtin barcode 4 14 getinterval def
+
+    % Compose input to code128
+    /barcode 21 string def
+    barcode 0 (^FNC101) putinterval
+    barcode 7 gtin putinterval
+
+    % Get the result of encoding with code128
+    options (dontdraw) true put
+    options (parsefnc) true put
+    /args barcode options //code128 exec def
+
+    args (txt) [ [text textxoffset textyoffset textfont textsize] ] put
+    args (textxalign) (center) put
+    args (opt) options put
+    args
+ 
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/ean14 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER ean14--
+
+% --BEGIN ENCODER sscc18--
+% --REQUIRES preamble raiseerror renlinear code128--
+% --DESC: SSCC-18
+% --EXAM: (00) 0 0614141 123456789 0
+% --EXOP: includetext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp sscc18 0.0 2015071400 67760 67351
+%%BeginData:        105 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code128 dup /uk.co.terryburton.bwipp findresource put
+begin
+/sscc18 {
 
     20 dict begin            % Confine variables to local scope
 
@@ -3088,110 +3239,12 @@
     /textyoffset textyoffset cvr def
     /height height cvr def 
 
-    % Validate the input
-    barcode 0 4 getinterval (\(01\)) ne {
-        /bwipp.ean14badAI (GS1-14 must begin with (01) application identifier) //raiseerror exec
-    } if
-    barcode length 17 ne barcode length 18 ne and {
-        /bwipp.ean14badLength (GS1-14 must be 13 or 14 digits) //raiseerror exec
-    } if
-    barcode 4 barcode length 4 sub getinterval {
-        dup 48 lt exch 57 gt or {
-            /bwipp.ean14badCharacter (GS1-14 must contain only digits) //raiseerror exec
-        } if
-    } forall
-
-    % Calculate checksum and add to end of barcode
-    /checksum 0 def
-    0 1 12 {
-        /i exch def
-        /checksum checksum barcode i 4 add get 48 sub i 2 mod 0 eq {3 mul} if add def
-    } for 
-    /checksum 10 checksum 10 mod sub 10 mod def
-    barcode length 18 eq {
-        barcode 17 get checksum 48 add ne {
-            /bwipp.ean14badCheckDigit (Incorrect GS1-14 check digit provided) //raiseerror exec
-        } if
-    } if
-    18 string
-    dup 0 barcode putinterval
-    dup 17 checksum 48 add put
-    /barcode exch def
-    /gtin barcode 4 14 getinterval def
-
-    % Compose input to code128
+    % Strip spaces from the given data
     /text barcode def
-    /barcode 21 string def
-    barcode 0 (^FNC101) putinterval
-    barcode 7 gtin putinterval
-
-    % Get the result of encoding with code128
-    options (dontdraw) true put
-    options (parsefnc) true put
-    /args barcode options //code128 exec def
-
-    args (txt) [ [text textxoffset textyoffset textfont textsize] ] put
-    args (textxalign) (center) put
-    args (opt) options put
-    args
- 
-    dontdraw not //renlinear if
- 
-    end
-
-} bind def
-/ean14 dup load /uk.co.terryburton.bwipp defineresource pop
-end
-/setpacking where {pop setpacking} if
-%%EndData
-%%EndResource
-% --END ENCODER ean14--
-
-% --BEGIN ENCODER sscc18--
-% --REQUIRES preamble raiseerror renlinear code128--
-% --DESC: SSCC-18
-% --EXAM: (00)006141411234567890
-% --EXOP: includetext
-% --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp sscc18 0.0 2014121100 63867 67036
-%%BeginData:         93 ASCII Lines
-/setpacking where {pop currentpacking true setpacking} if
-1 dict
-dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
-dup /renlinear dup /uk.co.terryburton.bwipp findresource put
-dup /code128 dup /uk.co.terryburton.bwipp findresource put
-begin
-/sscc18 {
-
-    20 dict begin            % Confine variables to local scope
-
-    /options exch def  % We are given an option string
-    /barcode exch def  % We are given a barcode string
-
-    /dontdraw false def
-    /includetext false def    % Enable/disable text
-    /textfont /Courier def
-    /textsize 10 def
-    /textxoffset 0 def
-    /textyoffset -7 def
-    /height 1 def
- 
-    % Parse the input options
-    options type /stringtype eq {
-        1 dict begin
-        options {
-            token false eq {exit} if dup length string cvs (=) search
-            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
-        } loop
-        currentdict end /options exch def
-    } if
-    options {def} forall
-
-    /textfont textfont cvlit def
-    /textsize textsize cvr def
-    /textxoffset textxoffset cvr def
-    /textyoffset textyoffset cvr def
-    /height height cvr def 
+    barcode dup length string exch 0 exch
+    {dup 32 ne {3 copy put pop 1 add} {pop} ifelse} forall
+    0 exch getinterval /barcode exch def
+    /hasspace text length barcode length ne def
 
     % Validate the input
     barcode 0 4 getinterval (\(00\)) ne {
@@ -3217,15 +3270,20 @@
         barcode 21 get checksum 48 add ne {
             /bwipp.sscc18badCheckDigit (Incorrect SSCC-18 check digit provided) //raiseerror exec
         } if
-    } if
-    22 string
-    dup 0 barcode putinterval
-    dup 21 checksum 48 add put
-    /barcode exch def
+    } {
+        22 string
+        dup 0 barcode putinterval
+        dup 21 checksum 48 add put
+        /barcode exch def
+        text length hasspace {2} {1} ifelse add string
+        dup dup length 2 sub ( ) putinterval
+        dup dup length 1 sub checksum 48 add put
+        dup 0 text putinterval
+        /text exch def
+    } ifelse
     /sscc barcode 4 18 getinterval def
 
     % Compose input to code128
-    /text barcode def
     /barcode 25 string def
     barcode 0 (^FNC100) putinterval
     barcode 7 sscc putinterval
@@ -3258,7 +3316,7 @@
 % --EXAM: THIS IS CODE 39
 % --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code39 0.0 2014121100 69000 68552
+%%BeginResource: uk.co.terryburton.bwipp code39 0.0 2015071400 75290 71442
 %%BeginData:        141 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3411,7 +3469,7 @@
 % --EXAM: Code39 Ext!
 % --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code39ext 0.0 2014121100 67871 70945
+%%BeginResource: uk.co.terryburton.bwipp code39ext 0.0 2015071400 67979 67699
 %%BeginData:        110 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3463,7 +3521,7 @@
     } if
 
     % Validate the input
-    barcode 4 barcode length 4 sub getinterval {
+    barcode {
         128 ge {
             /bwipp.code39extBadCharacter (Code 39 Extended must contain only ASCII characters) //raiseerror exec
         } if
@@ -3533,7 +3591,7 @@
 % --EXAM: 01234567
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code32 0.0 2014121100 64608 67911
+%%BeginResource: uk.co.terryburton.bwipp code32 0.0 2015071400 65260 65001
 %%BeginData:         99 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3644,7 +3702,7 @@
 % --EXAM: 123456
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp pzn 0.0 2014121100 64783 67907
+%%BeginResource: uk.co.terryburton.bwipp pzn 0.0 2015071400 65507 65173
 %%BeginData:        100 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3756,7 +3814,7 @@
 % --EXAM: THIS IS CODE 93
 % --EXOP: includetext includecheck
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code93 0.0 2014121100 67695 67503
+%%BeginResource: uk.co.terryburton.bwipp code93 0.0 2015071400 73201 69561
 %%BeginData:        148 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -3916,7 +3974,7 @@
 % --EXAM: Code93 Ext!
 % --EXOP: includetext includecheck
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code93ext 0.0 2014121100 68040 71146
+%%BeginResource: uk.co.terryburton.bwipp code93ext 0.0 2015071400 68324 67972
 %%BeginData:        114 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -4042,7 +4100,7 @@
 % --EXAM: 2401234567
 % --EXOP: height=0.5 includecheck includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp interleaved2of5 0.0 2014121100 67459 67031
+%%BeginResource: uk.co.terryburton.bwipp interleaved2of5 0.0 2015071400 73301 69657
 %%BeginData:        150 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -4201,11 +4259,11 @@
 % --BEGIN ENCODER itf14--
 % --REQUIRES preamble raiseerror renlinear interleaved2of5--
 % --DESC: ITF-14
-% --EXAM: 04601234567893
+% --EXAM: 0 46 01234 56789 3
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp itf14 0.0 2014121100 63768 66890
-%%BeginData:         95 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp itf14 0.0 2015071400 68114 67750
+%%BeginData:        109 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -4225,7 +4283,7 @@
     /textfont /Courier def
     /textsize 10 def
     /textxoffset 0 def
-    /textyoffset -10 def
+    /textyoffset 3 def
     /height 0.5 def
     /showborder true def
     /borderwidth 4 def
@@ -4252,6 +4310,13 @@
     /borderleft borderleft cvr def
     /borderright borderright cvr def
 
+    % Strip spaces from the given data
+    /text barcode def
+    barcode dup length string exch 0 exch
+    {dup 32 ne {3 copy put pop 1 add} {pop} ifelse} forall
+    0 exch getinterval /barcode exch def
+    /hasspace text length barcode length ne def
+
     % Validate the input
     barcode length 13 ne barcode length 14 ne and {
         /bwipp.itf14badLength (ITF-14 must be 13 or 14 digits) //raiseerror exec
@@ -4273,11 +4338,17 @@
         barcode 13 get checksum 48 add ne {
             /bwipp.itf14badCheckDigit (Incorrect ITF-14 check digit provided) //raiseerror exec
         } if
-    } if
-    14 string
-    dup 0 barcode putinterval
-    dup 13 checksum 48 add put
-    /barcode exch def
+    } {
+        14 string
+        dup 0 barcode putinterval
+        dup 13 checksum 48 add put
+        /barcode exch def
+        text length hasspace {2} {1} ifelse add string
+        dup dup length 2 sub ( ) putinterval
+        dup dup length 1 sub checksum 48 add put
+        dup 0 text putinterval
+        /text exch def
+    } ifelse
 
     % Get the result of encoding with interleaved2of5
     options (dontdraw) true put
@@ -4287,9 +4358,10 @@
     options (borderright) borderright put
     options (height) height put
     options (textyoffset) textyoffset put
-    options (includecheckintext) includecheckintext put
     /args barcode options //interleaved2of5 exec def
 
+    args (txt) [ [text textxoffset textyoffset textfont textsize] ] put
+    args (textxalign) (center) put
     args (opt) options put
     args
  
@@ -4311,7 +4383,7 @@
 % --EXAM: 563102430313
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp identcode 0.0 2014121100 63813 66907
+%%BeginResource: uk.co.terryburton.bwipp identcode 0.0 2015071400 64217 63957
 %%BeginData:         91 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -4414,7 +4486,7 @@
 % --EXAM: 21348075016401
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp leitcode 0.0 2014121100 63805 66903
+%%BeginResource: uk.co.terryburton.bwipp leitcode 0.0 2015071400 64209 63953
 %%BeginData:         91 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -4517,7 +4589,7 @@
 % --EXAM: (01)24012345678905
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databaromni 0.0 2014121100 113396 115580
+%%BeginResource: uk.co.terryburton.bwipp databaromni 0.0 2015071400 124848 120150
 %%BeginData:        418 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -4947,7 +5019,7 @@
 % --EXAM: (01)24012345678905
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarstacked 0.0 2014121100 68587 65080
+%%BeginResource: uk.co.terryburton.bwipp databarstacked 0.0 2015071400 64161 64092
 %%BeginData:         73 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -5032,7 +5104,7 @@
 % --EXAM: (01)24012345678905
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarstackedomni 0.0 2014121100 68687 65056
+%%BeginResource: uk.co.terryburton.bwipp databarstackedomni 0.0 2015071400 64261 64172
 %%BeginData:         73 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -5117,7 +5189,7 @@
 % --EXAM: (01)24012345678905
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databartruncated 0.0 2014121100 68613 65096
+%%BeginResource: uk.co.terryburton.bwipp databartruncated 0.0 2015071400 64187 64108
 %%BeginData:         73 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -5202,7 +5274,7 @@
 % --EXAM: (01)15012345678907
 % --EXOP:
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp databarlimited 0.0 2014121100 86959 85912
+%%BeginResource: uk.co.terryburton.bwipp databarlimited 0.0 2015071400 96649 92282
 %%BeginData:        276 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -5490,7 +5562,7 @@
 % --EXAM: (01)95012345678903(3103)000123
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarexpanded 0.0 2014121100 199499 218773
+%%BeginResource: uk.co.terryburton.bwipp databarexpanded 0.0 2015071400 216007 231655
 %%BeginData:        871 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6373,7 +6445,7 @@
 % --EXAM: (01)95012345678903(3103)000123
 % --EXOP: segments=4
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarexpandedstacked 0.0 2014121100 67280 63708
+%%BeginResource: uk.co.terryburton.bwipp databarexpandedstacked 0.0 2015071400 58902 58768
 %%BeginData:         43 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6428,7 +6500,7 @@
 % --EXAM: 117480
 % --EXOP: showborder
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp pharmacode 0.0 2014121100 61048 60791
+%%BeginResource: uk.co.terryburton.bwipp pharmacode 0.0 2015071400 65042 61257
 %%BeginData:         91 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6531,7 +6603,7 @@
 % --EXAM: 117480
 % --EXOP: includetext showborder
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp pharmacode2 0.0 2014121100 61823 61489
+%%BeginResource: uk.co.terryburton.bwipp pharmacode2 0.0 2015071400 65777 62123
 %%BeginData:         96 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6637,9 +6709,9 @@
 % --REQUIRES preamble raiseerror renlinear--
 % --DESC: Code 25
 % --EXAM: 01234567
-% --EXOP: version=iata includetext includecheck includecheckintext
+% --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code2of5 0.0 2014121100 69481 69040
+%%BeginResource: uk.co.terryburton.bwipp code2of5 0.0 2015071400 75635 71666
 %%BeginData:        150 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6795,13 +6867,348 @@
 %%EndResource
 % --END ENCODER code2of5--
 
+% --BEGIN ENCODER industrial2of5--
+% --REQUIRES preamble raiseerror renlinear code2of5--
+% --DESC: Industrial 2 of 5
+% --EXAM: 01234567
+% --EXOP: includetext includecheck includecheckintext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp industrial2of5 0.0 2015071400 57761 57507
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code2of5 dup /uk.co.terryburton.bwipp findresource put
+begin
+/industrial2of5 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=industrial
+    options (dontdraw) true put
+    options (version) (industrial) put
+
+    /args barcode options //code2of5 exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/industrial2of5 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER industrial2of5--
+
+% --BEGIN ENCODER iata2of5--
+% --REQUIRES preamble raiseerror renlinear code2of5--
+% --DESC: IATA 2 of 5
+% --EXAM: 01234567
+% --EXOP: includetext includecheck includecheckintext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp iata2of5 0.0 2015071400 57731 57483
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code2of5 dup /uk.co.terryburton.bwipp findresource put
+begin
+/iata2of5 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=iata
+    options (dontdraw) true put
+    options (version) (iata) put
+
+    /args barcode options //code2of5 exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/iata2of5 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER iata2of5--
+
+% --BEGIN ENCODER matrix2of5--
+% --REQUIRES preamble raiseerror renlinear code2of5--
+% --DESC: Matrix 2 of 5
+% --EXAM: 01234567
+% --EXOP: includetext includecheck includecheckintext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp matrix2of5 0.0 2015071400 57741 57491
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code2of5 dup /uk.co.terryburton.bwipp findresource put
+begin
+/matrix2of5 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=matrix
+    options (dontdraw) true put
+    options (version) (matrix) put
+
+    /args barcode options //code2of5 exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/matrix2of5 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER matrix2of5--
+
+% --BEGIN ENCODER coop2of5--
+% --REQUIRES preamble raiseerror renlinear code2of5--
+% --DESC: COOP 2 of 5
+% --EXAM: 01234567
+% --EXOP: includetext includecheck includecheckintext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp coop2of5 0.0 2015071400 57731 57483
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code2of5 dup /uk.co.terryburton.bwipp findresource put
+begin
+/coop2of5 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=coop
+    options (dontdraw) true put
+    options (version) (coop) put
+
+    /args barcode options //code2of5 exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/coop2of5 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER coop2of5--
+
+% --BEGIN ENCODER datalogic2of5--
+% --REQUIRES preamble raiseerror renlinear code2of5--
+% --DESC: Datalogic 2 of 5
+% --EXAM: 01234567
+% --EXOP: includetext includecheck includecheckintext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp datalogic2of5 0.0 2015071400 57756 57503
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /code2of5 dup /uk.co.terryburton.bwipp findresource put
+begin
+/datalogic2of5 {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=datalogic
+    options (dontdraw) true put
+    options (version) (datalogic) put
+
+    /args barcode options //code2of5 exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/datalogic2of5 dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER datalogic2of5--
+
 % --BEGIN ENCODER code11--
 % --REQUIRES preamble raiseerror renlinear--
 % --DESC: Code 11
 % --EXAM: 0123456789
 % --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp code11 0.0 2014121100 70977 70345
+%%BeginResource: uk.co.terryburton.bwipp code11 0.0 2015071400 78435 74483
 %%BeginData:        158 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -6971,7 +7378,7 @@
 % --EXAM: BC412
 % --EXOP: semi includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp bc412 0.0 2014121100 66446 66096
+%%BeginResource: uk.co.terryburton.bwipp bc412 0.0 2015071400 72256 68610
 %%BeginData:        148 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -7131,7 +7538,7 @@
 % --EXAM: A0123456789B
 % --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp rationalizedCodabar 0.0 2014121100 71473 70757
+%%BeginResource: uk.co.terryburton.bwipp rationalizedCodabar 0.0 2015071400 78699 74871
 %%BeginData:        156 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -7299,7 +7706,7 @@
 % --EXAM: 0123456709498765432101234567891
 % --EXOP: barcolor=FF0000
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp onecode 0.0 2014121100 105083 104845
+%%BeginResource: uk.co.terryburton.bwipp onecode 0.0 2015071400 113597 109935
 %%BeginData:        335 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -7646,7 +8053,7 @@
 % --EXAM: 01234
 % --EXOP: includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp postnet 0.0 2014121100 67140 66826
+%%BeginResource: uk.co.terryburton.bwipp postnet 0.0 2015071400 73030 69396
 %%BeginData:        140 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -7798,7 +8205,7 @@
 % --EXAM: 01234567890
 % --EXOP: includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp planet 0.0 2014121100 67000 66690
+%%BeginResource: uk.co.terryburton.bwipp planet 0.0 2015071400 72826 69196
 %%BeginData:        141 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -7951,7 +8358,7 @@
 % --EXAM: LE28HS9Z
 % --EXOP: includetext barcolor=FF0000
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp royalmail 0.0 2014121100 67915 67664
+%%BeginResource: uk.co.terryburton.bwipp royalmail 0.0 2015071400 73773 70098
 %%BeginData:        145 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8108,7 +8515,7 @@
 % --EXAM: 5956439111ABA 9
 % --EXOP: includetext custinfoenc=character
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp auspost 0.0 2014121100 78727 78454
+%%BeginResource: uk.co.terryburton.bwipp auspost 0.0 2015071400 85969 82272
 %%BeginData:        202 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8322,7 +8729,7 @@
 % --EXAM: 1231FZ13XHS
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp kix 0.0 2014121100 63057 62851
+%%BeginResource: uk.co.terryburton.bwipp kix 0.0 2015071400 67819 64293
 %%BeginData:        111 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8445,7 +8852,7 @@
 % --EXAM: 6540123789-A-K-Z
 % --EXOP: includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp japanpost 0.0 2014121100 68076 67796
+%%BeginResource: uk.co.terryburton.bwipp japanpost 0.0 2015071400 74350 70750
 %%BeginData:        162 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8619,7 +9026,7 @@
 % --EXAM: 0123456789
 % --EXOP: includetext includecheck includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp msi 0.0 2014121100 73223 72733
+%%BeginResource: uk.co.terryburton.bwipp msi 0.0 2015071400 77937 74127
 %%BeginData:        139 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8770,7 +9177,7 @@
 % --EXAM: 01234ABCD
 % --EXOP: includetext includecheckintext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp plessey 0.0 2014121100 69717 69236
+%%BeginResource: uk.co.terryburton.bwipp plessey 0.0 2015071400 75839 72142
 %%BeginData:        146 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -8925,10 +9332,10 @@
 % --BEGIN ENCODER telepen--
 % --REQUIRES preamble raiseerror renlinear--
 % --DESC: Telepen
-% --EXAM: 123456
-% --EXOP: numeric includetext
+% --EXAM: ABCDEF
+% --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp telepen 0.0 2014121100 71123 70715
+%%BeginResource: uk.co.terryburton.bwipp telepen 0.0 2015071400 76797 73069
 %%BeginData:        173 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -9107,14 +9514,81 @@
 %%EndResource
 % --END ENCODER telepen--
 
+% --BEGIN ENCODER telepennumeric--
+% --REQUIRES preamble raiseerror renlinear telepen--
+% --DESC: Telepen Numeric
+% --EXAM: 01234567
+% --EXOP: includetext
+% --RNDR: renlinear
+%%BeginResource: uk.co.terryburton.bwipp telepennumeric 0.0 2015071400 57741 57487
+%%BeginData:         55 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renlinear dup /uk.co.terryburton.bwipp findresource put
+dup /telepen dup /uk.co.terryburton.bwipp findresource put
+begin
+/telepennumeric {
+
+    20 dict begin            % Confine variables to local scope
+
+    /options exch def  % We are given an option string
+    /barcode exch def  % We are given a barcode string
+
+    /dontdraw false def
+    /includetext false def    % Enable/disable text
+    /textfont /Courier def
+    /textsize 10 def
+    /textxoffset 0 def
+    /textyoffset -7 def
+    /height 1 def
+ 
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    /textfont textfont cvlit def
+    /textsize textsize cvr def
+    /textxoffset textxoffset cvr def
+    /textyoffset textyoffset cvr def
+    /height height cvr def 
+
+    % Get the result of encoding with code2of5 with version=industrial
+    options (dontdraw) true put
+    options (numeric) true put
+
+    /args barcode options //telepen exec def
+
+    args (opt) options put
+    args
+
+    dontdraw not //renlinear if
+ 
+    end
+
+} bind def
+/telepennumeric dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER telepennumeric--
+
 % --BEGIN ENCODER posicode--
 % --REQUIRES preamble raiseerror renlinear--
 % --DESC: PosiCode
 % --EXAM: ABC123
 % --EXOP: version=b inkspread=-0.5 parsefnc includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp posicode 0.0 2014121100 109732 109034
-%%BeginData:        389 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp posicode 0.0 2015071400 124692 120728
+%%BeginData:        423 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -9270,7 +9744,7 @@
             (FNC1) fn1
             (FNC2) fn2
             (FNC3) fn3
-            (FNC4) fn4
+%            (FNC4) fn4        Not user accessible as encoded automatically
         >> def
 
         % Convert input into bytes accounting for FNC characters 
@@ -9297,13 +9771,47 @@
         /msglen msg length def
         /text text 0 j getinterval def
 
+        % Standard and extended ASCII runlength at position
+        /numSA [ msglen {0} repeat 0 ] def
+        /numEA [ msglen {0} repeat 0 ] def
+        msglen 1 sub -1 0 {
+            /i exch def
+            msg i get 0 ge {
+                msg i get 128 ge {
+                    numEA i numEA i 1 add get 1 add put
+                } {
+                    numSA i numSA i 1 add get 1 add put
+                } ifelse
+            } if
+        } for
+
+        % FNC4 codeword insertion for extended ASCII
+        /ea false def /msgtmp [] def
+        0 1 msglen 1 sub {
+            /i exch def
+            /c msg i get def
+            ea c 128 lt xor not c 0 ge and {  % Other mode required
+                ea {numSA} {numEA} ifelse i get dup  % Runlength of other mode
+                i add msglen eq {3} {5} ifelse       % Does run terminate symbol
+                lt {  % Shift
+                    /msgtmp [ msgtmp aload pop fn4 ] def
+                } {   % Latch
+                    /msgtmp [ msgtmp aload pop fn4 fn4 ] def
+                    /ea ea not def
+                } ifelse
+            } if
+            /msgtmp [ msgtmp aload pop c 0 ge {c 127 and} {c} ifelse ] def
+        } for
+        /msg msgtmp def
+        /msglen msg length def
+
         % Convert the input message to codewords
         /enc {
             exch get cws exch j exch put
             /j j 1 add def
         } bind def
 
-        /cws barcode length 2 mul array def
+        /cws msglen 2 mul array def
         /i 0 def /j 0 def /cset (set0) def
         {
             i msglen eq {exit} if
@@ -9514,8 +10022,8 @@
 % --EXAM: CODABLOCK F 34567890123456789010040digit
 % --EXOP: columns=8
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp codablockf 0.0 2014121100 136007 135295
-%%BeginData:        512 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp codablockf 0.0 2015071400 150719 146673
+%%BeginData:        521 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -9641,9 +10149,9 @@
     
     /fncvals <<
         (FNC1) fn1
-        (FNC2) fn2
+%        (FNC2) fn2      Not permitted for Codablock F
         (FNC3) fn3
-        (FNC4) fn4
+%        (FNC4) fn4      Not user accessible as encoded automatically
     >> def
     /msg barlen array def
     /i 0 def /j 0 def {
@@ -9662,6 +10170,15 @@
         /j j 1 add def
     } loop
     /msg msg 0 j getinterval def
+    /msglen msg length def
+
+    % FNC4 codeword insertion for extended ASCII
+    /msgtmp [] def
+    msg {
+        /char exch def
+        /msgtmp [ msgtmp aload pop char 128 lt {char} {fn4 char 127 and} ifelse ] def
+    } forall
+    /msg msgtmp def
     /msglen msg length def
 
     % Determine digit runlength and characters from given position
@@ -10038,8 +10555,8 @@
 % --EXAM: Abcd-1234567890-wxyZ
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp code16k 0.0 2014121100 156180 158943
-%%BeginData:        710 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp code16k 0.0 2015071400 179284 175053
+%%BeginData:        744 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
@@ -10190,7 +10707,7 @@
             (FNC1) fn1
             (FNC2) fn2
             (FNC3) fn3
-            (FNC4) fn4
+%            (FNC4) fn4        Not user accessible as encoded automatically
         >> def
         /msg barlen array def
         /i 0 def /j 0 def {
@@ -10210,7 +10727,41 @@
         } loop
         /msg msg 0 j getinterval def
         /msglen msg length def
-    
+ 
+        % Standard and extended ASCII runlength at position
+        /numSA [ msglen {0} repeat 0 ] def
+        /numEA [ msglen {0} repeat 0 ] def
+        msglen 1 sub -1 0 {
+            /i exch def
+            msg i get 0 ge {
+                msg i get 128 ge {
+                    numEA i numEA i 1 add get 1 add put
+                } {
+                    numSA i numSA i 1 add get 1 add put
+                } ifelse
+            } if
+        } for
+
+        % FNC4 codeword insertion for extended ASCII
+        /ea false def /msgtmp [] def
+        0 1 msglen 1 sub {
+            /i exch def
+            /c msg i get def
+            ea c 128 lt xor not c 0 ge and {  % Other mode required
+                ea {numSA} {numEA} ifelse i get dup  % Runlength of other mode
+                i add msglen eq {3} {5} ifelse       % Does run terminate symbol
+                lt {  % Shift
+                    /msgtmp [ msgtmp aload pop fn4 ] def
+                } {   % Latch
+                    /msgtmp [ msgtmp aload pop fn4 fn4 ] def
+                    /ea ea not def
+                } ifelse
+            } if
+            /msgtmp [ msgtmp aload pop c 0 ge {c 127 and} {c} ifelse ] def
+        } for
+        /msg msgtmp def
+        /msglen msg length def
+ 
         % Determine digit runlength and characters from given position
         /numsscr {
             /n 0 def /s 0 def
@@ -10760,7 +11311,7 @@
 % --EXAM: MULTIPLE ROWS IN CODE 49
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp code49 0.0 2014121100 264067 280283
+%%BeginResource: uk.co.terryburton.bwipp code49 0.0 2015071400 274149 273389
 %%BeginData:       1076 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -11848,7 +12399,7 @@
 % --EXAM: 3493
 % --EXOP: height=0.5 includetext 
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp channelcode 0.0 2014121100 70263 69772
+%%BeginResource: uk.co.terryburton.bwipp channelcode 0.0 2015071400 74649 70942
 %%BeginData:        149 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -12009,7 +12560,7 @@
 % --EXAM: 11099
 % --EXOP: inkspread=-0.25 showborder borderleft=0 borderright=0
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp flattermarken 0.0 2014121100 59859 59559
+%%BeginResource: uk.co.terryburton.bwipp flattermarken 0.0 2015071400 63805 60081
 %%BeginData:         93 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -12114,7 +12665,7 @@
 % --EXAM: 331132131313411122131311333213114131131221323
 % --EXOP: height=0.5
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp raw 0.0 2014121100 55669 55558
+%%BeginResource: uk.co.terryburton.bwipp raw 0.0 2015071400 58495 54960
 %%BeginData:         52 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -12178,7 +12729,7 @@
 % --EXAM: FATDAFTDAD
 % --EXOP:
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp daft 0.0 2014121100 58923 58681
+%%BeginResource: uk.co.terryburton.bwipp daft 0.0 2015071400 62389 58827
 %%BeginData:         76 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -12266,7 +12817,7 @@
 % --EXAM: fima
 % --EXOP: backgroundcolor=DD000011
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp symbol 0.0 2014121100 58527 58256
+%%BeginResource: uk.co.terryburton.bwipp symbol 0.0 2015071400 61969 58378
 %%BeginData:         72 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -12348,9 +12899,9 @@
 % --REQUIRES preamble raiseerror renmatrix--
 % --DESC: PDF417
 % --EXAM: This is PDF417
-% --EXOP:
+% --EXOP: columns=2
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp pdf417 0.0 2014121100 196239 198381
+%%BeginResource: uk.co.terryburton.bwipp pdf417 0.0 2015071400 215009 210623
 %%BeginData:        873 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -13229,13 +13780,68 @@
 %%EndResource
 % --END ENCODER pdf417--
 
+% --BEGIN ENCODER pdf417compact--
+% --REQUIRES preamble raiseerror renmatrix pdf417--
+% --DESC: Compact PDF417
+% --EXAM: This is compact PDF417
+% --EXOP: columns=2
+% --RNDR: renmatrix
+%%BeginResource: uk.co.terryburton.bwipp pdf417compact 0.0 2015071400 56103 55850
+%%BeginData:         43 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renmatrix dup /uk.co.terryburton.bwipp findresource put
+dup /pdf417 dup /uk.co.terryburton.bwipp findresource put
+begin
+/pdf417compact {
+
+    20 dict begin                 % Confine variables to local scope
+
+    /options exch def       % We are given an option string
+    /barcode exch def       % We are given a barcode string
+
+    /dontdraw false def
+
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    % Get the result of encoding with pdf417 with compact option
+    options (dontdraw) true put
+    options (compact) true put
+
+    /args barcode options //pdf417 exec def
+
+    args (opt) options put
+    args
+ 
+    dontdraw not //renmatrix if
+
+    end
+
+} bind def
+/pdf417compact dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER pdf417compact--
+
 % --BEGIN ENCODER micropdf417--
 % --REQUIRES preamble raiseerror renmatrix--
 % --DESC: MicroPDF417
 % --EXAM: MicroPDF417
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp micropdf417 0.0 2014121100 206374 212034
+%%BeginResource: uk.co.terryburton.bwipp micropdf417 0.0 2015071400 227056 225988
 %%BeginData:        952 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -14199,7 +14805,7 @@
 % --EXAM: This is Data Matrix!
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp datamatrix 0.0 2014121100 198474 217339
+%%BeginResource: uk.co.terryburton.bwipp datamatrix 0.0 2015071400 224484 233229
 %%BeginData:        844 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -14512,11 +15118,11 @@
                     C exit
                 } if
                 /char msg i k add get def
-                /ac ac isD {1 2 div add} {isEA {ceiling 2 add} {1 add       } ifelse} ifelse def
-                /cc cc isC {2 3 div add} {isEA { 8 3 div add } { 4 3 div add} ifelse} ifelse def
-                /tc tc isT {2 3 div add} {isEA { 8 3 div add } { 4 3 div add} ifelse} ifelse def
-                /xc xc isX {2 3 div add} {isEA {13 3 div add } {10 3 div add} ifelse} ifelse def
-                /ec ec isE {3 4 div add} {isEA {17 4 div add } {13 4 div add} ifelse} ifelse def
+                /ac ac isD {1 2 div add} {isEA {ceiling 2 add} {ceiling 1 add} ifelse} ifelse def
+                /cc cc isC {2 3 div add} {isEA { 8 3 div add } { 4 3 div add } ifelse} ifelse def
+                /tc tc isT {2 3 div add} {isEA { 8 3 div add } { 4 3 div add } ifelse} ifelse def
+                /xc xc isX {2 3 div add} {isEA {13 3 div add } {10 3 div add } ifelse} ifelse def
+                /ec ec isE {3 4 div add} {isEA {17 4 div add } {13 4 div add } ifelse} ifelse def
                 /bc bc isFN {4 add} {1 add} ifelse def
                 k 4 ge {
                     true [   cc tc xc ec bc] {ac 1 add exch le and} forall {A exit} if
@@ -15055,7 +15661,7 @@
 % --EXAM: http://goo.gl/0bis
 % --EXOP: eclevel=M
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp qrcode 0.0 2014121100 261342 297027
+%%BeginResource: uk.co.terryburton.bwipp qrcode 0.0 2015071400 283672 312389
 %%BeginData:       1004 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -16065,13 +16671,68 @@
 %%EndResource
 % --END ENCODER qrcode--
 
+% --BEGIN ENCODER microqrcode--
+% --REQUIRES preamble raiseerror renmatrix qrcode--
+% --DESC: Micro QR Code
+% --EXAM: 1234
+% --EXOP:
+% --RNDR: renmatrix
+%%BeginResource: uk.co.terryburton.bwipp microqrcode 0.0 2015071400 56107 55856
+%%BeginData:         43 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renmatrix dup /uk.co.terryburton.bwipp findresource put
+dup /qrcode dup /uk.co.terryburton.bwipp findresource put
+begin
+/microqrcode {
+
+    20 dict begin                 % Confine variables to local scope
+
+    /options exch def       % We are given an option string
+    /barcode exch def       % We are given a barcode string
+
+    /dontdraw false def
+
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    % Get the result of encoding with qrcode with format=micro
+    options (dontdraw) true put
+    options (format) (micro) put
+
+    /args barcode options //qrcode exec def
+
+    args (opt) options put
+    args
+ 
+    dontdraw not //renmatrix if
+
+    end
+
+} bind def
+/microqrcode dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER microqrcode--
+
 % --BEGIN ENCODER maxicode--
 % --REQUIRES preamble raiseerror renmaximatrix--
 % --DESC: MaxiCode
 % --EXAM: [)>^03001^02996152382802^029840^029001^0291Z00004951^029UPSN^02906X610^029159^0291234567^0291/1^029^029Y^029634 ALPHA DR^029PITTSBURGH^029PA^029^004
 % --EXOP: mode=2 parse
 % --RNDR: renmaximatrix
-%%BeginResource: uk.co.terryburton.bwipp maxicode 0.0 2014121100 125796 124711
+%%BeginResource: uk.co.terryburton.bwipp maxicode 0.0 2015071400 141318 136913
 %%BeginData:        564 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -16647,7 +17308,7 @@
 % --EXAM: This is Aztec Code
 % --EXOP: format=full
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp azteccode 0.0 2014121100 173685 186101
+%%BeginResource: uk.co.terryburton.bwipp azteccode 0.0 2015071400 196247 195103
 %%BeginData:        679 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -17332,31 +17993,28 @@
 %%EndResource
 % --END ENCODER azteccode--
 
-% --BEGIN ENCODER codeone--
-% --REQUIRES preamble raiseerror renmatrix--
-% --DESC: Code One
-% --EXAM: Code One
-% --EXOP: version=B
+% --BEGIN ENCODER azteccodecompact--
+% --REQUIRES preamble raiseerror renmatrix azteccode--
+% --DESC: Compact Aztec Code
+% --EXAM: 1234
+% --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp codeone 0.0 2014121100 104659 104025
-%%BeginData:        328 ASCII Lines
+%%BeginResource: uk.co.terryburton.bwipp azteccodecompact 0.0 2015071400 56135 55879
+%%BeginData:         43 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
 dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
 dup /renmatrix dup /uk.co.terryburton.bwipp findresource put
+dup /azteccode dup /uk.co.terryburton.bwipp findresource put
 begin
-/codeone {
-
-    20 dict begin
-
-    /options exch def
-    /barcode exch def
+/azteccodecompact {
+
+    20 dict begin                 % Confine variables to local scope
+
+    /options exch def       % We are given an option string
+    /barcode exch def       % We are given a barcode string
 
     /dontdraw false def
-    /version (unset) def
-    /encoding (ascii) def
-    /raw false def
-    /parse false def
 
     % Parse the input options
     options type /stringtype eq {
@@ -17369,8 +18027,117 @@
     } if
     options {def} forall
 
-    /stype version 0 1 getinterval (S) eq def
-    stype {/raw true def} if
+    % Get the result of encoding with azteccode with format=compact
+    options (dontdraw) true put
+    options (format) (compact) put
+
+    /args barcode options //azteccode exec def
+
+    args (opt) options put
+    args
+ 
+    dontdraw not //renmatrix if
+
+    end
+
+} bind def
+/azteccodecompact dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER azteccodecompact--
+
+% --BEGIN ENCODER aztecrune--
+% --REQUIRES preamble raiseerror renmatrix azteccode--
+% --DESC: Aztec Runes
+% --EXAM: 1
+% --EXOP:
+% --RNDR: renmatrix
+%%BeginResource: uk.co.terryburton.bwipp aztecrune 0.0 2015071400 56104 55855
+%%BeginData:         43 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renmatrix dup /uk.co.terryburton.bwipp findresource put
+dup /azteccode dup /uk.co.terryburton.bwipp findresource put
+begin
+/aztecrune {
+
+    20 dict begin                 % Confine variables to local scope
+
+    /options exch def       % We are given an option string
+    /barcode exch def       % We are given a barcode string
+
+    /dontdraw false def
+
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
+
+    % Get the result of encoding with azteccode with format=rune
+    options (dontdraw) true put
+    options (format) (rune) put
+
+    /args barcode options //azteccode exec def
+
+    args (opt) options put
+    args
+ 
+    dontdraw not //renmatrix if
+
+    end
+
+} bind def
+/aztecrune dup load /uk.co.terryburton.bwipp defineresource pop
+end
+/setpacking where {pop setpacking} if
+%%EndData
+%%EndResource
+% --END ENCODER aztecrune--
+
+% --BEGIN ENCODER codeone--
+% --REQUIRES preamble raiseerror renmatrix--
+% --DESC: Code One
+% --EXAM: Code One
+% --EXOP:
+% --RNDR: renmatrix
+%%BeginResource: uk.co.terryburton.bwipp codeone 0.0 2015071400 220393 229423
+%%BeginData:        851 ASCII Lines
+/setpacking where {pop currentpacking true setpacking} if
+1 dict
+dup /raiseerror dup /uk.co.terryburton.bwipp findresource put
+dup /renmatrix dup /uk.co.terryburton.bwipp findresource put
+begin
+/codeone {
+
+    20 dict begin
+
+    /options exch def
+    /barcode exch def
+
+    /dontdraw false def
+    /version (unset) def
+    /parse false def
+    /parsefnc false def
+
+    % Parse the input options
+    options type /stringtype eq {
+        1 dict begin
+        options {
+            token false eq {exit} if dup length string cvs (=) search
+            true eq {cvlit exch pop exch def} {cvlit true def} ifelse
+        } loop
+        currentdict end /options exch def
+    } if
+    options {def} forall
 
     % Parse ordinals of the form ^NNN to ASCII
     parse {
@@ -17395,69 +18162,594 @@
 
     /barlen barcode length def
 
-    raw {/encoding (raw) def} if
-
-    encoding (raw) eq {
-        /cws barlen array def
-        /i 0 def /j 0 def
-        { % loop
+    /stype version 0 1 getinterval (S) eq def
+
+    stype {
+        /vals [
+            (1)
+            (1010)
+            (1100100)
+            (1111101000)
+            (10011100010000)
+            (11000011010100000)
+            (11110100001001000000)
+            (100110001001011010000000)
+            (101111101011110000100000000)
+            (111011100110101100101000000000)
+            (1001010100000010111110010000000000)
+            (1011101001000011101101110100000000000)
+            (1110100011010100101001010001000000000000)
+            (10010001100001001110011100101010000000000000)
+            (10110101111001100010000011110100100000000000000)
+            (11100011010111111010100100110001101000000000000000)
+            (100011100001101111001001101111110000010000000000000000)
+            (101100011010001010111100001011101100010100000000000000000)
+        ] def
+
+        /normalize {
+            /base exch def
+            /num exch def
+            num length 1 sub -1 1 {
+                /i exch def
+                num i 1 sub 2 copy get num i get base idiv add put
+                num i num i get base mod put
+            } for
+            { %loop - extend input as necessary
+                num 0 get base lt {exit} if
+                /num [0 num {} forall] def
+                num 0 num 0 get num 1 get base idiv add put
+                num 1 num 1 get base mod put
+            } loop
+            % Trim leading zeros
+            /num [/i true def num {dup 0 eq i and {pop} {/i false def} ifelse} forall] def
+            num length 0 eq {/num [0] def} if
+            num
+        } bind def
+
+        /bigadd {
+            2 copy length exch length
+            2 copy sub abs /offset exch def
+            lt {exch} if
+            /a exch def /b exch def
+            0 1 b length 1 sub {
+                dup a exch offset add 2 copy get b 5 -1 roll get add put
+            } for
+            a
+        } bind def
+
+        % Convert value plus one to binary
+        /v [ 1 ] def
+        0 1 barlen 1 sub {
+            /i exch def
+            [ vals i get {48 sub barcode barlen i sub 1 sub get 48 sub mul} forall ]
+            v bigadd /v exch def
+        } for
+        /v v 2 normalize def
+
+        % Split into 5-bit codewords
+        /v [ 5 v length 5 mod sub 5 mod {0} repeat v aload pop ] def
+        /cws v length 5 idiv array def
+        0 1 cws length 1 sub {
+            /i exch def
+            v i 5 mul 5 getinterval
+            0 exch {add 2 mul} forall 2 idiv
+            cws exch i exch put
+        } for
+
+    } {  % Standard and type-T
+
+        % Convert input into bytes accounting for FNC characters
+        /fnc1 -1 def  /fnc3 -2 def
+        /fncvals <<
+            (FNC1) fnc1
+            (FNC3) fnc3
+        >> def
+        /msg barlen array def
+        /i 0 def /j 0 def {
             i barlen eq {exit} if
-            /cw barcode i 1 add 3 getinterval cvi def
-            cws j cw put
-            /i i 4 add def
+            /char barcode i get def
+            parsefnc char 94 eq and i barlen 4 sub lt and {
+                barcode i 1 add get 94 ne {
+                    /char fncvals barcode i 1 add 4 getinterval get def
+                    /i i 4 add def
+                } {
+                    /i i 1 add def
+                } ifelse
+            } if
+            msg j char put
+            /i i 1 add def
             /j j 1 add def
         } loop
-        /cws cws 0 j getinterval def
-    } if
-
-    encoding (ascii) eq {
-        /cws barlen 2 mul array def
-        /i 0 def /j 0 def
-        { % loop
-            i barlen eq {exit} if
-            /char barcode i get def
-            char 48 ge char 57 le and i barlen 1 sub lt and {
-                barcode i 1 add get dup 48 ge exch 57 le and {  % Digit pair
-                    cws j barcode i 2 getinterval cvi 130 add put
+        /msg msg 0 j getinterval def
+        /msglen msg length def
+
+        % Basic metrics for the each symbol
+        %     ver    row col dcol dcws rscw rsbl  ro ri rl
+        /metrics [
+            [ (A)     16  18   16   10   10    1   4 99  6 ]
+            [ (B)     22  22   20   19   16    1   4 99  8 ]
+            [ (C)     28  32   28   44   26    1   4 22 11 ]
+            [ (D)     40  42   36   91   44    1   4 16 16 ]
+            [ (E)     52  54   48  182   70    1   4 22 22 ]
+            [ (F)     70  76   68  370  140    2   4 22 31 ]
+            [ (G)    104  98   88  732  280    4   6 21 47 ]
+            [ (H)    148 134  120 1480  560    8   6 20 69 ]
+            [ (S-10)   8  11   10    4    4    1  99 99 99 ]
+            [ (S-20)   8  21   20    8    8    1  99 99 99 ]
+            [ (S-30)   8  31   30   12   12    1  99 99 99 ]
+            [ (T-16)  16  17   16   10   10    1  99 99 99 ]
+            [ (T-32)  16  33   32   24   16    1  99 99 99 ]
+            [ (T-48)  16  49   48   38   22    1  99 99 99 ]
+        ] def
+    
+        % Select metrics of an appropriate symbol
+        /fullcws [] def
+        metrics {
+            /m exch def
+            /vers m 0 get def           % Version of symbol
+            /dcws m 4 get def           % Data codewords in symbol
+            /okay true def
+            version (unset) eq {
+                vers length 1 ne {/okay false def} if
+            } {
+                version vers ne {/okay false def} if
+            } ifelse
+            okay {/fullcws [ fullcws aload pop dcws ] def} if
+        } forall
+        /numremcws [ 1480 {10000} repeat ] def
+        fullcws {numremcws exch 1 sub 1 put} forall
+        1478 -1 0 {
+            /i exch def
+            numremcws i get 1 ne {
+                numremcws i numremcws i 1 add get 1 add put
+            } if
+        } for
+   
+        % Special characters
+        /lC    -5 def  /lB    -6 def  /lX    -7 def  /lT    -8 def  /lD    -9 def  /unl -10 def
+        /fnc2 -11 def  /fnc4 -12 def  /sft1 -13 def  /sft2 -14 def  /sft3 -15 def  /eci -16 def  /pad -17 def  /fnc1lD -18 def
+        /unlcw 255 def
+      
+        /Avals <<
+            0 1 128 {dup 1 add} for
+            pad 129
+            0 1 99 {  % Double digits
+                dup 10 2 string cvrs (00) 2 string copy dup 2 3 index length sub 4 -1 roll putinterval
+                exch 130 add
+            } for
+            229 [ lC lB fnc1 fnc2 fnc3 fnc4 fnc1lD ] {exch 1 add dup} forall pop
+            lX 238
+            lT 239
+            % 240-255 lD + 4 bits
+        >> def
+        /Avals <<
+            Avals {[exch]} forall
+        >> def
+        
+        /CNvals <<
+            sft1 0
+            sft2 1
+            sft3 2
+            32   3
+            48 1 57 {dup 44 sub} for  % 0-9
+            65 1 90 {dup 51 sub} for  % A-Z
+        >> def
+        /C1vals << 0 1 31 {dup} for >> def
+        /C2vals <<
+            33 1 47 {dup 33 sub} for
+            58 1 64 {dup 43 sub} for
+            91 1 95 {dup 69 sub} for
+            fnc1 27
+            fnc2 28
+            fnc3 29
+            fnc4 30
+            pad  31
+        >> def
+        /C3vals << 96 1 127 {dup 96 sub} for >> def
+        /Cvals <<
+            CNvals {[exch]} forall
+            C1vals {[exch CNvals sft1 get exch]} forall
+            C2vals {[exch CNvals sft2 get exch]} forall
+            C3vals {[exch CNvals sft3 get exch]} forall
+        >> def
+        
+        /TNvals <<
+            sft1 0
+            sft2 1
+            sft3 2
+            32   3
+            48 1  57 {dup 44 sub} for  % 0-9
+            97 1 122 {dup 83 sub} for  % a-z
+        >> def
+        /T1vals << 0 1 31 {dup} for >> def
+        /T2vals <<
+            33 1 47 {dup 33 sub} for
+            58 1 64 {dup 43 sub} for
+            91 1 95 {dup 69 sub} for
+            fnc1 27
+            fnc2 28
+            fnc3 29
+            fnc4 30
+            pad  31
+        >> def
+        /T3vals <<
+             96 0
+             65 1  90 {dup 64 sub} for
+            123 1 127 {dup 96 sub} for
+        >> def
+        /Tvals <<
+            TNvals {[exch]} forall
+            T1vals {[exch TNvals sft1 get exch]} forall
+            T2vals {[exch TNvals sft2 get exch]} forall
+            T3vals {[exch TNvals sft3 get exch]} forall
+        >> def
+        
+        % Extended ASCII mappings
+        128 1 255 {
+            /i exch def
+            Avals i [ Avals fnc4 get aload pop Avals i 128 sub get aload pop ] put
+            Cvals i [ Cvals fnc4 get aload pop Cvals i 128 sub get aload pop ] put
+            Tvals i [ Tvals fnc4 get aload pop Tvals i 128 sub get aload pop ] put
+        } for
+        
+        /Xvals <<
+            13 0
+            42 1
+            62 2
+            32 3
+            48 1 57 {dup 44 sub} for
+            65 1 90 {dup 51 sub} for
+        >> def
+        /Xvals <<
+            Xvals {[exch]} forall
+        >> def
+        
+        /Bvals <<
+            0 1 255 {dup} for
+        >> def
+        /Bvals <<
+            Bvals {[exch]} forall
+        >> def
+ 
+        /encvals [ Avals Cvals Tvals Xvals -1 Bvals ] def
+ 
+        /numD [ msglen {0} repeat 0 ] def
+        /nextXterm [ msglen {0} repeat 9999 ] def
+        /nextNonX  [ msglen {0} repeat 9999 ] def
+        msglen 1 sub -1 0 {
+            /i exch def
+            /barchar msg i get def
+            barchar 48 ge barchar 57 le and {
+                numD i numD i 1 add get 1 add put
+            } if
+            barchar 13 eq barchar 42 eq or barchar 62 eq or {
+                nextXterm i 0 put
+            } {
+                nextXterm i nextXterm i 1 add get 1 add put
+            } ifelse
+            Xvals barchar known not {
+                nextNonX i 0 put
+            } {
+                nextNonX i nextNonX i 1 add get 1 add put
+            } ifelse
+        } for
+        /nextXterm [nextXterm {dup 10000 gt {pop 10000} if} forall] def
+        /nextNonX  [nextNonX  {dup 10000 gt {pop 10000} if} forall] def
+ 
+        /isD  {char 48 ge char 57 le and} bind def
+        /isC  {CNvals char known} bind def
+        /isT  {TNvals char known} bind def
+        /isX  {Xvals char known} bind def
+        /isEA {char 127 gt} bind def
+        /isFN {char 0 lt} bind def
+        /XtermFirst {dup nextXterm exch get exch nextNonX exch get lt} bind def
+        
+        /A 0 def  /C 1 def  /T 2 def  /X 3 def  /D 4 def  /B 5 def
+    
+        /lookup {
+            /ac 1 def /cc 2 def /tc 2 def /xc 2 def /bc 3 def
+            mode A eq {/ac 0 def /cc 1 def /tc 1 def /xc 1 def /bc 2 def} if
+            mode C eq {/cc 0 def} if
+            mode T eq {/tc 0 def} if
+            mode X eq {/xc 0 def} if  % Assume mistake in spec
+            mode B eq {/bc 0 def} if
+            1 {  % common exit
+                /k 0 def {  % loop
+                    i k add msglen eq {
+                        true [ac cc tc xc   ] {bc         exch ceiling le and} forall {B exit} if
+                        true [   cc tc xc bc] {ac         exch ceiling le and} forall {A exit} if
+                        true [      tc xc   ] {cc ceiling exch ceiling le and} forall {C exit} if
+                        true [         xc   ] {tc ceiling exch ceiling le and} forall {T exit} if
+                        X exit
+                    } if
+                    /char msg i k add get def
+                    /ac ac isD {1 2 div add} {isEA {ceiling 2 add} {ceiling 1 add} ifelse} ifelse def
+                    /cc cc isC {2 3 div add} {isEA { 8 3 div add } { 4 3 div add } ifelse} ifelse def
+                    /tc tc isT {2 3 div add} {isEA { 8 3 div add } { 4 3 div add } ifelse} ifelse def
+                    /xc xc isX {2 3 div add} {isEA {13 3 div add } {10 3 div add } ifelse} ifelse def
+                    /bc bc isFN {3 add} {1 add} ifelse def
+                    k 3 ge {
+                        true [ac cc tc xc   ] {bc 1 add exch ceiling le and} forall {B exit} if
+                        true [   cc tc xc bc] {ac 1 add exch ceiling le and} forall {A exit} if
+                        true [ac cc    xc bc] {tc 1 add exch ceiling le and} forall {T exit} if
+                        true [ac    tc      ] {cc 1 add exch ceiling le and} forall {
+                            cc ceiling xc ceiling lt {C exit} if
+                            cc xc eq {i k add 1 add XtermFirst {X exit} {C exit} ifelse} if
+                        } if
+                        true [ac cc tc    bc] {xc 1 add exch lt and} forall {X exit} if
+                    } if
+                    /k k 1 add def
+                } loop
+            } repeat
+        } bind def
+        
+        /addtocws {
+            dup cws exch j exch putinterval
+            /j exch length j add def
+        } bind def
+        
+        /tobin {
+            string dup length 1 sub 0 exch 1 exch {1 index exch 48 put} for
+            dup 3 -1 roll 2 2 index length string cvrs dup length 2 index length exch sub exch putinterval
+            [ exch {48 sub} forall ]
+        } bind def
+    
+        /encA {
+            1 {  % Common exit
+                numD i get 21 ge {
+                    /Dbits [ 1 1 1 1 ] def
+                    /mode D def
+                    exit
+                } if
+                numD i get dup 13 ge exch i add msglen eq and {
+                    /Dbits [ 1 1 1 1 ] def
+                    /mode D def
+                    exit
+                } if
+                numD i get 2 ge {
+                    2 string dup 0 msg i get put dup 1 msg i 1 add get put Avals exch get addtocws
                     /i i 2 add def
-                    /j j 1 add def
-                } {  % Singular digit
-                    cws j char 1 add put
-                    /i i 1 add def
-                    /j j 1 add def
+                    exit
+                } if
+                msg i get fnc1 eq {
+                    numD i 1 add get 15 ge {
+                        Avals fnc1lD get addtocws
+                        /i i 1 add def
+                        /Dbits [] def
+                        /mode D def
+                        exit
+                    } if
+                    numD i 1 add get dup 7 ge exch i add 1 add msglen eq and {
+                        Avals fnc1lD get addtocws
+                        /i i 1 add def
+                        /Dbits [] def
+                        /mode D def
+                        exit
+                    } if
+                } if
+                /newmode lookup def
+                newmode mode ne {
+                    Avals [-1 lC lT lX lD lB] newmode get get addtocws
+                    /mode newmode def
+                    exit
+                } if
+                Avals msg i get get addtocws
+                /i i 1 add def
+                exit
+            } repeat
+        } bind def
+        
+        /CTXvalstocws {
+            /in exch def
+            mark
+            0 3 in length 1 sub {
+                in exch 3 getinterval 0 exch {add 40 mul} forall 40 idiv 1 add
+                dup 256 idiv exch 256 mod
+            } for
+            counttomark array astore exch pop
+        } bind def
+        
+        /encCTX {
+            /p 0 def
+            /ctxvals 2220 array def
+        
+            % Lookup the values for each character
+            {
+                i msglen eq {exit} if
+                encvals mode get msg i get known not {exit} if
+                p 3 mod 0 eq {
+                    numD i get 12 ge {
+                        [unlcw] addtocws
+                        /mode A def
+                        exit
+                    } if
+                    numD i get dup 8 ge exch i add msglen eq and {
+                        [unlcw] addtocws
+                        /mode A def
+                        exit
+                    } if
+                    lookup mode ne {
+                        ctxvals 0 p getinterval CTXvalstocws addtocws
+                        [unlcw] addtocws
+                        /mode A def
+                        exit
+                    } if
+                    msglen i sub 3 le {  % Check end of data conditions
+                        /remcws numremcws j p 3 idiv 2 mul add get def
+                        /remvals [
+                            msg i msglen i sub getinterval {
+                                dup encvals mode get exch known {
+                                    encvals mode get exch get aload pop
+                                } {  % Unencodable X12 characters
+                                    pop -1 -1 -1 -1
+                                } ifelse
+                            } forall
+                        ] def
+                        remcws 2 eq remvals length 3 eq and {
+                            % Encode and omit unlatch
+                            [
+                                ctxvals 0 p getinterval aload pop
+                                remvals aload pop
+                            ] CTXvalstocws addtocws
+                            /mode A def
+                            /i msglen def
+                            exit
+                        } if
+                        remcws 2 eq remvals length 2 eq and mode X ne and {
+                            % Encode with sft1 as third value, omit unlatch
+                            [
+                                ctxvals 0 p getinterval aload pop
+                                remvals aload pop
+                                encvals mode get sft1 get aload pop
+                            ] CTXvalstocws addtocws
+                            /mode A def
+                            /i msglen def
+                            exit
+                        } if
+                        remcws 2 eq remvals length 1 eq and {
+                            % Unlatch to ASCII
+                            ctxvals 0 p getinterval CTXvalstocws addtocws
+                            [unlcw] addtocws
+                            Avals msg i get get addtocws
+                            /mode A def
+                            /i msglen def
+                            exit
+                        } if
+                        remcws 1 eq remvals length 1 eq and {
+                            % Implied unlatch to ASCII
+                            ctxvals 0 p getinterval CTXvalstocws addtocws
+                            Avals msg i get get addtocws
+                            /mode A def
+                            /i msglen def
+                            exit
+                        } if
+                    } if
+                } if
+                encvals mode get msg i get get
+                dup ctxvals exch p exch putinterval
+                /p exch length p add def
+                /i i 1 add def
+            } loop
+    
+            % Backtrack to a boundary and return to ASCII
+            mode A ne {
+                {
+                    p 3 mod 0 eq {exit} if
+                    /i i 1 sub def
+                    /p p encvals mode get msg i get get length sub def
+                } loop
+                [
+                    ctxvals 0 p getinterval aload pop
+                ] CTXvalstocws addtocws
+                [unlcw] addtocws
+                /mode A def
+                % Encode something to avoid latching immediately back
+                i msglen ne {
+                    numD i get 2 ge {
+                        2 string dup 0 msg i get put dup 1 msg i 1 add get put Avals exch get addtocws
+                        /i i 2 add def
+                    } {
+                        Avals msg i get get addtocws
+                        /i i 1 add def
+                    } ifelse
+                } if
+            } if
+        
+        } bind def
+    
+        /encD {
+    
+            {  % loop
+
+                numD i get 3 lt {
+
+                    /Drem 8 Dbits length 8 mod sub 8 mod def
+                    /remcws numremcws j Dbits length 8 idiv add get def
+
+                    % Final codeword with no data
+                    numremcws j Dbits length 8 idiv add 1 sub get 1 sub 0 eq
+                    i msglen eq and {exit} if
+    
+                    % Final digit into final codeword as ASCII
+                    i msglen 1 sub eq numD i get 1 eq and
+                    remcws 1 eq and Drem 0 eq and {exit} if
+     
+                    % Latch to ASCII unless 4 or 6 bits remain in final codeword
+                    i msglen 1 sub eq numD i get 1 eq and
+                    remcws 1 eq and Drem 4 eq Drem 6 eq or and not {
+                      /Dbits [ Dbits aload pop 1 1 1 1 1 1 ] def
+                      /Drem 8 Dbits length 8 mod sub 8 mod def
+                    } if
+
+                    % Try to encode a digit in remaining bits
+                    Drem 4 eq Drem 6 eq or {
+                        numD i get 1 ge {
+                            /Dbits [ Dbits aload pop msg i get 48 sub 1 add 4 tobin aload pop ] def
+                            /i i 1 add def
+                        } {
+                            /Dbits [ Dbits aload pop 1 1 1 1 ] def
+                        } ifelse
+                        /Drem Drem 4 sub def
+                    } if
+                    Drem 2 eq {
+                        /Dbits [ Dbits aload pop 0 1 ] def
+                        /Drem 0 def
+                    } if
+
+                    exit
+    
+                } if
+    
+                % Three digit value plus one to ten bits
+                /Dbits [
+                    Dbits aload pop
+                    0 msg i 3 getinterval {48 sub add 10 mul} forall 10 idiv
+                    1 add 10 tobin aload pop
+                ] def
+                /i i 3 add def
+    
+            } loop
+
+            mark
+            0 8 Dbits length 1 sub {
+                Dbits exch 8 getinterval 0 exch {add 2 mul} forall 2 idiv
+            } for
+            counttomark array astore exch pop addtocws
+            /mode A def
+
+        } bind def
+    
+        /encB {
+            /p 0 def /bvals 1480 array def {
+                i msglen eq {exit} if
+                msg i get 0 lt {exit} if  % Function character
+                lookup mode ne {exit} if
+                bvals p msg i get put
+                /p p 1 add def
+                /i i 1 add def
+            } loop
+            /remcws numremcws j p add get 1 sub def
+            /bvals [
+                remcws 0 eq i msglen eq and {  % Terminates symbol
+                    0
+                } {
+                    p 250 lt {p} {p 250 idiv 249 add p 250 mod} ifelse
                 } ifelse
-            } { char 127 le {  % ASCII
-                cws j char 1 add put
-                /i i 1 add def
-                /j j 1 add def
-            } {  % Extended ASCII
-                cws j 235 put
-                cws j 1 add char 127 sub put
-                /i i 1 add def
-                /j j 2 add def
-            } ifelse } ifelse
+                bvals 0 p getinterval aload pop
+            ] def
+            bvals addtocws
+            /mode A def
+        } bind def
+
+        % Derive the codewords
+        /cws 1480 array def
+        /mode A def /i 0 def /j 0 def {
+            i msglen ge {exit} if
+            [ /encA /encCTX /encCTX /encCTX /encD /encB ] mode get load exec
         } loop
         /cws cws 0 j getinterval def
-    } if
-
-    % Basic metrics for the each symbol
-    %     ver    row col dcol dcws rscw rsbl  ro ri rl
-    /metrics [
-        [ (A)     16  18   16   10   10    1   4 99  6 ]
-        [ (B)     22  22   20   19   16    1   4 99  8 ]
-        [ (C)     28  32   28   44   26    1   4 22 11 ]
-        [ (D)     40  42   36   91   44    1   4 16 16 ]
-        [ (E)     52  54   48  182   70    1   4 22 22 ]
-        [ (F)     70  76   68  370  140    2   4 22 31 ]
-        [ (G)    104  98   88  732  280    4   6 21 47 ]
-        [ (H)    148 134  120 1480  560    8   6 20 69 ]
-        [ (S-10)   8  11   10    4    4    1  99 99 99 ]
-        [ (S-20)   8  21   20    8    8    1  99 99 99 ]
-        [ (S-30)   8  31   30   12   12    1  99 99 99 ]
-        [ (T-16)  16  17   16   10   10    1  99 99 99 ]
-        [ (T-32)  16  33   32   24   16    1  99 99 99 ]
-        [ (T-48)  16  49   48   38   22    1  99 99 99 ]
-    ] def
+    
+    } ifelse
 
     % Select metrics of an appropriate symbol
     /i 0 def
@@ -17485,7 +18777,9 @@
     % Extend cws to ncws codewords by addition of pad characters
     stype not {
         /cws [ cws aload pop dcws cws length sub {129} repeat ] def
-    } if
+    } {
+        /cws [ dcws cws length sub {0} repeat cws aload pop ] def
+    } ifelse
 
     % De-interleave the codewords into blocks
     /cwbs rsbl array def  % Array of data codeword blocks
@@ -17678,7 +18972,7 @@
 % --EXAM: (01)95012345678903(3103)000123
 % --EXOP: ccversion=b cccolumns=4
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp gs1-cc 0.0 2014121100 208010 203774
+%%BeginResource: uk.co.terryburton.bwipp gs1-cc 0.0 2015071400 199420 205136
 %%BeginData:        650 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -18340,7 +19634,7 @@
 % --EXAM: 2112345678900|(99)1234-abcd
 % --EXOP: includetext
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp ean13composite 0.0 2014121100 84954 88322
+%%BeginResource: uk.co.terryburton.bwipp ean13composite 0.0 2015071400 81918 81974
 %%BeginData:         72 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -18424,7 +19718,7 @@
 % --EXAM: 02345673|(21)A12345678
 % --EXOP: includetext
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp ean8composite 0.0 2014121100 88815 88768
+%%BeginResource: uk.co.terryburton.bwipp ean8composite 0.0 2015071400 82363 82420
 %%BeginData:         75 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -18511,7 +19805,7 @@
 % --EXAM: 416000336108|(99)1234-abcd
 % --EXOP: includetext
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp upcacomposite 0.0 2014121100 84932 88301
+%%BeginResource: uk.co.terryburton.bwipp upcacomposite 0.0 2015071400 82000 81953
 %%BeginData:         72 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -18595,7 +19889,7 @@
 % --EXAM: 00123457|(15)021231
 % --EXOP: includetext
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp upcecomposite 0.0 2014121100 85886 92764
+%%BeginResource: uk.co.terryburton.bwipp upcecomposite 0.0 2015071400 86810 83224
 %%BeginData:         87 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -18694,7 +19988,7 @@
 % --EXAM: (01)03612345678904|(11)990102
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databaromnicomposite 0.0 2014121100 97855 88807
+%%BeginResource: uk.co.terryburton.bwipp databaromnicomposite 0.0 2015071400 82965 82853
 %%BeginData:        100 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -18806,7 +20100,7 @@
 % --EXAM: (01)03412345678900|(17)010200
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarstackedcomposite 0.0 2014121100 87821 90984
+%%BeginResource: uk.co.terryburton.bwipp databarstackedcomposite 0.0 2015071400 85145 84788
 %%BeginData:         96 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -18914,7 +20208,7 @@
 % --EXAM: (01)03612345678904|(11)990102
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarstackedomnicomposite 0.0 2014121100 87897 90952
+%%BeginResource: uk.co.terryburton.bwipp databarstackedomnicomposite 0.0 2015071400 85221 84860
 %%BeginData:         96 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19022,7 +20316,7 @@
 % --EXAM: (01)03612345678904|(11)990102
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databartruncatedcomposite 0.0 2014121100 88891 91934
+%%BeginResource: uk.co.terryburton.bwipp databartruncatedcomposite 0.0 2015071400 86215 89370
 %%BeginData:        100 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19134,7 +20428,7 @@
 % --EXAM: (01)03512345678907|(21)abcdefghijklmnopqrstuv
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarlimitedcomposite 0.0 2014121100 81640 81749
+%%BeginResource: uk.co.terryburton.bwipp databarlimitedcomposite 0.0 2015071400 91878 79211
 %%BeginData:         79 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19225,7 +20519,7 @@
 % --EXAM: (01)93712345678904(3103)001234|(91)1A2B3C4D5E
 % --EXOP:
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp databarexpandedcomposite 0.0 2014121100 84742 88135
+%%BeginResource: uk.co.terryburton.bwipp databarexpandedcomposite 0.0 2015071400 82412 85813
 %%BeginData:         98 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19335,7 +20629,7 @@
 % --EXAM: (01)00012345678905(10)ABCDEF|(21)12345678
 % --EXOP: segments=4 
 % --RNDR: renmatrix renlinear
-%%BeginResource: uk.co.terryburton.bwipp databarexpandedstackedcomposite 0.0 2014121100 87600 90640
+%%BeginResource: uk.co.terryburton.bwipp databarexpandedstackedcomposite 0.0 2015071400 85028 84548
 %%BeginData:         95 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19442,7 +20736,7 @@
 % --EXAM: (00)030123456789012340|(02)13012345678909(37)24(10)1234567ABCDEFG
 % --EXOP: ccversion=c
 % --RNDR: renlinear renmatrix
-%%BeginResource: uk.co.terryburton.bwipp gs1-128composite 0.0 2014121100 92047 87940
+%%BeginResource: uk.co.terryburton.bwipp gs1-128composite 0.0 2015071400 85883 92248
 %%BeginData:        100 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 2 dict
@@ -19554,7 +20848,7 @@
 % --EXAM: (01)03453120000011(17)120508(10)ABCD1234(410)9501101020917
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp gs1datamatrix 0.0 2014121100 76851 79937
+%%BeginResource: uk.co.terryburton.bwipp gs1datamatrix 0.0 2015071400 72451 72101
 %%BeginData:        134 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -19700,7 +20994,7 @@
 % --EXAM: (01)03453120000011(8200)http://www.abc.net(10)ABCD1234(410)9501101020917
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp gs1qrcode 0.0 2014121100 76691 83197
+%%BeginResource: uk.co.terryburton.bwipp gs1qrcode 0.0 2015071400 72413 75387
 %%BeginData:        133 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -19845,7 +21139,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp hibccode39 0.0 2014121100 64068 67295
+%%BeginResource: uk.co.terryburton.bwipp hibccode39 0.0 2015071400 65088 64857
 %%BeginData:         92 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -19949,7 +21243,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP: includetext
 % --RNDR: renlinear
-%%BeginResource: uk.co.terryburton.bwipp hibccode128 0.0 2014121100 63971 67258
+%%BeginResource: uk.co.terryburton.bwipp hibccode128 0.0 2015071400 64991 64716
 %%BeginData:         91 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -20052,7 +21346,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp hibcdatamatrix 0.0 2014121100 62602 69050
+%%BeginResource: uk.co.terryburton.bwipp hibcdatamatrix 0.0 2015071400 61778 61374
 %%BeginData:         74 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -20138,7 +21432,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp hibcpdf417 0.0 2014121100 61835 65021
+%%BeginResource: uk.co.terryburton.bwipp hibcpdf417 0.0 2015071400 62167 61791
 %%BeginData:         78 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -20228,7 +21522,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp hibcmicropdf417 0.0 2014121100 61885 64952
+%%BeginResource: uk.co.terryburton.bwipp hibcmicropdf417 0.0 2015071400 62217 61826
 %%BeginData:         78 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -20318,7 +21612,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp hibcqrcode 0.0 2014121100 65786 68742
+%%BeginResource: uk.co.terryburton.bwipp hibcqrcode 0.0 2015071400 61722 64874
 %%BeginData:         74 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict
@@ -20404,7 +21698,7 @@
 % --EXAM: A123BJC5D6E71
 % --EXOP:
 % --RNDR: renmatrix
-%%BeginResource: uk.co.terryburton.bwipp hibccodablockf 0.0 2014121100 61522 64700
+%%BeginResource: uk.co.terryburton.bwipp hibccodablockf 0.0 2015071400 61758 61374
 %%BeginData:         74 ASCII Lines
 /setpacking where {pop currentpacking true setpacking} if
 1 dict

Modified: trunk/Scribus/scribus/plugins/barcodegenerator/barcodegenerator.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/plugins/barcodegenerator/barcodegenerator.cpp
==============================================================================
--- trunk/Scribus/scribus/plugins/barcodegenerator/barcodegenerator.cpp (original)
+++ trunk/Scribus/scribus/plugins/barcodegenerator/barcodegenerator.cpp Fri Jul 24 21:38:06 2015
@@ -59,13 +59,13 @@
 	                                 "[0-9a-zA-Z\\-\\.\\ \\*\\$\\/\\+\\%]*",
 	                                 true, true);
 //    "Code-93"] = "code93"
-	map[tr("Code-128")] = BarcodeType("code128", "^104^102Count^0991234^101!",
-	                                  tr("Variable number of ASCII characters and special function symbols, starting with the appropriate start character for the initial character set. UCC/EAN-128s must have a mandatory FNC 1 symbol immediately following the start character."),
-	                                  "\\^[0-9a-zA-Z\\^\\!]*",
-	                                  true, true);
-	map[tr("UCC/EAN-128")] = BarcodeType("code128", "^104^102Count^0991234^101!",
-	                                     tr("Variable number of ASCII characters and special function symbols, starting with the appropriate start character for the initial character set. UCC/EAN-128s must have a mandatory FNC 1 symbol immediately following the start character."),
-	                                     "\\^[0-9a-zA-Z\\^\\!]*");
+	map[tr("Code-128")] = BarcodeType("code128", "Count1234567!",
+	                                  tr("Any data."),
+	                                  ".*",
+	                                  false, false);
+	map[tr("GS1-128")] = BarcodeType("gs1-128", "(01)95012345678903(3103)000123",
+										 tr("GS1 Application Identifier standard format. FNC1 characters are included automatically."),
+										 ".*",false,false);
 	map[tr("Rationalized Codabar")] = BarcodeType("rationalizedCodabar", "A0123456789D",
 	                                              tr("Variable number of digits and any of the symbols -$:/.+ABCD."),
 	                                              "[0-9A-D\\-\\$\\:\\/\\.\\+]*",

Modified: trunk/Scribus/scribus/plugins/export/pixmapexport/exportform.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/plugins/export/pixmapexport/exportform.ui
==============================================================================
--- trunk/Scribus/scribus/plugins/export/pixmapexport/exportform.ui (original)
+++ trunk/Scribus/scribus/plugins/export/pixmapexport/exportform.ui Fri Jul 24 21:38:06 2015
@@ -188,7 +188,7 @@
         <item row="6" column="0">
          <widget class="QLabel" name="imageSizeLabel">
           <property name="text">
-           <string>TextLabel</string>
+           <string/>
           </property>
          </widget>
         </item>

Modified: trunk/Scribus/scribus/plugins/import/pdf/pdfimportoptions.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/plugins/import/pdf/pdfimportoptions.ui
==============================================================================
--- trunk/Scribus/scribus/plugins/import/pdf/pdfimportoptions.ui (original)
+++ trunk/Scribus/scribus/plugins/import/pdf/pdfimportoptions.ui Fri Jul 24 21:38:06 2015
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>452</width>
-    <height>449</height>
+    <width>477</width>
+    <height>468</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -41,7 +41,7 @@
         </sizepolicy>
        </property>
        <property name="text">
-        <string>TextLabel</string>
+        <string/>
        </property>
       </widget>
      </item>

Modified: trunk/Scribus/scribus/plugins/import/xps/xpsimportoptions.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/plugins/import/xps/xpsimportoptions.ui
==============================================================================
--- trunk/Scribus/scribus/plugins/import/xps/xpsimportoptions.ui (original)
+++ trunk/Scribus/scribus/plugins/import/xps/xpsimportoptions.ui Fri Jul 24 21:38:06 2015
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>192</width>
-    <height>239</height>
+    <width>213</width>
+    <height>272</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -40,8 +40,14 @@
          <verstretch>0</verstretch>
         </sizepolicy>
        </property>
+       <property name="minimumSize">
+        <size>
+         <width>0</width>
+         <height>0</height>
+        </size>
+       </property>
        <property name="text">
-        <string>TextLabel</string>
+        <string/>
        </property>
       </widget>
      </item>

Modified: trunk/Scribus/scribus/ui/aligndistribute.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/ui/aligndistribute.ui
==============================================================================
--- trunk/Scribus/scribus/ui/aligndistribute.ui (original)
+++ trunk/Scribus/scribus/ui/aligndistribute.ui Fri Jul 24 21:38:06 2015
@@ -6,12 +6,12 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>253</width>
-    <height>284</height>
+    <width>269</width>
+    <height>304</height>
    </rect>
   </property>
   <property name="windowTitle">
-   <string>DockWidget</string>
+   <string>Align and Distribute</string>
   </property>
   <widget class="QWidget" name="dockWidgetContents">
    <layout class="QVBoxLayout" name="verticalLayout_3">
@@ -25,7 +25,16 @@
         <string>Align</string>
        </attribute>
        <layout class="QVBoxLayout">
-        <property name="margin">
+        <property name="leftMargin">
+         <number>0</number>
+        </property>
+        <property name="topMargin">
+         <number>0</number>
+        </property>
+        <property name="rightMargin">
+         <number>0</number>
+        </property>
+        <property name="bottomMargin">
          <number>0</number>
         </property>
         <item>

Modified: trunk/Scribus/scribus/ui/createrange.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/ui/createrange.ui
==============================================================================
--- trunk/Scribus/scribus/ui/createrange.ui (original)
+++ trunk/Scribus/scribus/ui/createrange.ui Fri Jul 24 21:38:06 2015
@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>562</width>
+    <width>605</width>
     <height>437</height>
    </rect>
   </property>
@@ -14,20 +14,8 @@
    <string>Create Range</string>
   </property>
   <layout class="QGridLayout">
-   <property name="margin">
-    <number>9</number>
-   </property>
-   <property name="spacing">
-    <number>6</number>
-   </property>
    <item row="0" column="0">
     <layout class="QHBoxLayout">
-     <property name="spacing">
-      <number>6</number>
-     </property>
-     <property name="margin">
-      <number>0</number>
-     </property>
      <item>
       <widget class="QLabel" name="pageCountLabel">
        <property name="text">
@@ -41,7 +29,7 @@
      <item>
       <widget class="QLabel" name="pageCountValueLabel">
        <property name="text">
-        <string>Doc Page Range</string>
+        <string/>
        </property>
        <property name="wordWrap">
         <bool>false</bool>
@@ -92,24 +80,12 @@
        <string>Basic Range Selection</string>
       </attribute>
       <layout class="QGridLayout">
-       <property name="margin">
-        <number>9</number>
-       </property>
-       <property name="spacing">
-        <number>6</number>
-       </property>
        <item row="0" column="1">
         <widget class="QGroupBox" name="groupBox1">
          <property name="title">
           <string>Range of Pages</string>
          </property>
          <layout class="QGridLayout">
-          <property name="margin">
-           <number>9</number>
-          </property>
-          <property name="spacing">
-           <number>6</number>
-          </property>
           <item row="2" column="1">
            <widget class="QPushButton" name="basicRangeDelButton">
             <property name="text">
@@ -174,12 +150,6 @@
           <string>Add a Range of Pages</string>
          </property>
          <layout class="QGridLayout">
-          <property name="margin">
-           <number>9</number>
-          </property>
-          <property name="spacing">
-           <number>6</number>
-          </property>
           <item row="0" column="0" colspan="5">
            <widget class="QRadioButton" name="basicConsecutiveRadioButton">
             <property name="text">
@@ -241,12 +211,6 @@
           </item>
           <item row="6" column="0" colspan="5">
            <layout class="QHBoxLayout">
-            <property name="spacing">
-             <number>6</number>
-            </property>
-            <property name="margin">
-             <number>0</number>
-            </property>
             <item>
              <spacer>
               <property name="orientation">
@@ -318,12 +282,6 @@
        <string>Advanced Reordering</string>
       </attribute>
       <layout class="QGridLayout">
-       <property name="margin">
-        <number>9</number>
-       </property>
-       <property name="spacing">
-        <number>6</number>
-       </property>
        <item row="2" column="0" colspan="5">
         <spacer>
          <property name="orientation">
@@ -359,7 +317,7 @@
        <item row="1" column="2" colspan="2">
         <widget class="QLabel" name="advSampleOrderExampleLabel">
          <property name="text">
-          <string>Page Order</string>
+          <string/>
          </property>
          <property name="wordWrap">
           <bool>false</bool>
@@ -411,12 +369,6 @@
    </item>
    <item row="2" column="0">
     <layout class="QHBoxLayout">
-     <property name="spacing">
-      <number>6</number>
-     </property>
-     <property name="margin">
-      <number>0</number>
-     </property>
      <item>
       <spacer>
        <property name="orientation">
@@ -461,8 +413,8 @@
  <customwidgets>
   <customwidget>
    <class>ScrSpinBox</class>
-   <extends>QSpinBox</extends>
-   <header location="global">ui/scrspinbox.h</header>
+   <extends>QDoubleSpinBox</extends>
+   <header>ui/scrspinbox.h</header>
   </customwidget>
  </customwidgets>
  <resources/>

Modified: trunk/Scribus/scribus/ui/smcellstylewidget.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/ui/smcellstylewidget.ui
==============================================================================
--- trunk/Scribus/scribus/ui/smcellstylewidget.ui (original)
+++ trunk/Scribus/scribus/ui/smcellstylewidget.ui Fri Jul 24 21:38:06 2015
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>378</width>
-    <height>478</height>
+    <height>535</height>
    </rect>
   </property>
   <layout class="QVBoxLayout" name="verticalLayout_2">
@@ -42,6 +42,12 @@
        <layout class="QHBoxLayout" name="horizontalLayout">
         <item>
          <widget class="QLabel" name="fillColorIcon">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
           <property name="maximumSize">
            <size>
             <width>22</width>
@@ -49,7 +55,7 @@
            </size>
           </property>
           <property name="text">
-           <string>TextLabel</string>
+           <string/>
           </property>
           <property name="buddy">
            <cstring>fillColor</cstring>
@@ -61,8 +67,14 @@
         </item>
         <item>
          <widget class="QLabel" name="fillShadeLabel">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
           <property name="text">
-           <string>Text</string>
+           <string/>
           </property>
          </widget>
         </item>

Modified: trunk/Scribus/scribus/ui/smcstylewidget.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=20271&path=/trunk/Scribus/scribus/ui/smcstylewidget.ui
==============================================================================
--- trunk/Scribus/scribus/ui/smcstylewidget.ui (original)
+++ trunk/Scribus/scribus/ui/smcstylewidget.ui Fri Jul 24 21:38:06 2015
@@ -1,40 +1,35 @@
-<ui version="4.0" >
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
  <class>SMCStyleWidget</class>
- <widget class="QWidget" name="SMCStyleWidget" >
-  <property name="geometry" >
+ <widget class="QWidget" name="SMCStyleWidget">
+  <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>378</width>
-    <height>478</height>
+    <width>398</width>
+    <height>513</height>
    </rect>
   </property>
-  <layout class="QVBoxLayout" >
+  <layout class="QVBoxLayout">
    <item>
-    <layout class="QHBoxLayout" >
-     <property name="spacing" >
-      <number>6</number>
-     </property>
-     <property name="margin" >
-      <number>0</number>
-     </property>
+    <layout class="QHBoxLayout">
      <item>
-      <widget class="QLabel" name="parentLabel" >
-       <property name="text" >
+      <widget class="QLabel" name="parentLabel">
+       <property name="text">
         <string>Based On:</string>
        </property>
-       <property name="wordWrap" >
+       <property name="wordWrap">
         <bool>false</bool>
        </property>
-       <property name="buddy" >
+       <property name="buddy">
         <cstring>parentCombo</cstring>
        </property>
       </widget>
      </item>
      <item>
-      <widget class="QComboBox" name="parentCombo" >
-       <property name="sizePolicy" >
-        <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+      <widget class="QComboBox" name="parentCombo">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
          <horstretch>5</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
@@ -44,20 +39,20 @@
     </layout>
    </item>
    <item>
-    <widget class="QGroupBox" name="basicGroup" >
-     <property name="title" >
+    <widget class="QGroupBox" name="basicGroup">
+     <property name="title">
       <string>Basic Formatting</string>
      </property>
-     <layout class="QVBoxLayout" >
-      <item>
-       <widget class="SMFontComboH" native="1" name="fontFace_" >
-        <property name="sizePolicy" >
-         <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
+     <layout class="QVBoxLayout">
+      <item>
+       <widget class="SMFontComboH" name="fontFace_" native="true">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
-        <property name="minimumSize" >
+        <property name="minimumSize">
          <size>
           <width>0</width>
           <height>62</height>
@@ -66,100 +61,100 @@
        </widget>
       </item>
       <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="QLabel" name="fontSizeLabel_" >
-          <property name="minimumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string/>
-          </property>
-          <property name="buddy" >
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="QLabel" name="fontSizeLabel_">
+          <property name="minimumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>fontSize_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="fontSize_" >
-          <property name="minimum" >
+         <widget class="SMScrSpinBox" name="fontSize_">
+          <property name="minimum">
            <number>1</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>2048</number>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="QLabel" name="trackingLabel_" >
-          <property name="minimumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string/>
-          </property>
-          <property name="buddy" >
+         <widget class="QLabel" name="trackingLabel_">
+          <property name="minimumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>tracking_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="tracking_" >
-          <property name="suffix" >
+         <widget class="SMScrSpinBox" name="tracking_">
+          <property name="suffix">
            <string> %</string>
           </property>
-          <property name="minimum" >
+          <property name="minimum">
            <number>-300</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>300</number>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="QLabel" name="widthSpaceLabel" >
-          <property name="minimumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="textInteractionFlags" >
+         <widget class="QLabel" name="widthSpaceLabel">
+          <property name="minimumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="textInteractionFlags">
            <set>Qt::NoTextInteraction</set>
           </property>
-          <property name="buddy" >
+          <property name="buddy">
            <cstring>widthSpaceSpin</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="widthSpaceSpin" >
-          <property name="suffix" >
+         <widget class="SMScrSpinBox" name="widthSpaceSpin">
+          <property name="suffix">
            <string> %</string>
           </property>
-          <property name="minimum" >
+          <property name="minimum">
            <number>1</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>199</number>
           </property>
-          <property name="value" >
+          <property name="value">
            <number>100</number>
           </property>
          </widget>
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>40</width>
             <height>20</height>
@@ -170,16 +165,16 @@
        </layout>
       </item>
       <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="SMStyleSelect" native="1" name="effects_" >
-          <property name="sizePolicy" >
-           <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="SMStyleSelect" name="effects_" native="true">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
             <horstretch>0</horstretch>
             <verstretch>0</verstretch>
            </sizepolicy>
           </property>
-          <property name="minimumSize" >
+          <property name="minimumSize">
            <size>
             <width>30</width>
             <height>0</height>
@@ -189,13 +184,13 @@
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeType" >
+          <property name="sizeType">
            <enum>QSizePolicy::Expanding</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>20</width>
             <height>40</height>
@@ -207,13 +202,13 @@
       </item>
       <item>
        <spacer>
-        <property name="orientation" >
+        <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
-        <property name="sizeType" >
+        <property name="sizeType">
          <enum>QSizePolicy::MinimumExpanding</enum>
         </property>
-        <property name="sizeHint" stdset="0" >
+        <property name="sizeHint" stdset="0">
          <size>
           <width>300</width>
           <height>0</height>
@@ -225,106 +220,124 @@
     </widget>
    </item>
    <item>
-    <widget class="QGroupBox" name="advGroup" >
-     <property name="title" >
+    <widget class="QGroupBox" name="advGroup">
+     <property name="title">
       <string>Advanced Formatting</string>
      </property>
-     <layout class="QVBoxLayout" >
-      <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="QLabel" name="hscaleLabel_" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+     <layout class="QVBoxLayout">
+      <item>
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="QLabel" name="hscaleLabel_">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>fontHScale_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="fontHScale_" >
-          <property name="suffix" >
+         <widget class="SMScrSpinBox" name="fontHScale_">
+          <property name="suffix">
            <string> %</string>
           </property>
-          <property name="minimum" >
+          <property name="minimum">
            <number>10</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>400</number>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="QLabel" name="vscaleLabel_" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+         <widget class="QLabel" name="vscaleLabel_">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>fontVScale_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="fontVScale_" >
-          <property name="suffix" >
+         <widget class="SMScrSpinBox" name="fontVScale_">
+          <property name="suffix">
            <string> %</string>
           </property>
-          <property name="minimum" >
+          <property name="minimum">
            <number>10</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>400</number>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="QLabel" name="baselineOffsetLabel_" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+         <widget class="QLabel" name="baselineOffsetLabel_">
+          <property name="minimumSize">
+           <size>
+            <width>10</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>baselineOffset_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScrSpinBox" name="baselineOffset_" >
-          <property name="suffix" >
+         <widget class="SMScrSpinBox" name="baselineOffset_">
+          <property name="suffix">
            <string> %</string>
           </property>
-          <property name="minimum" >
+          <property name="minimum">
            <number>-100</number>
           </property>
-          <property name="maximum" >
+          <property name="maximum">
            <number>100</number>
           </property>
          </widget>
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>40</width>
             <height>20</height>
@@ -335,26 +348,26 @@
        </layout>
       </item>
       <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="QLabel" name="languageLabel_" >
-          <property name="text" >
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="QLabel" name="languageLabel_">
+          <property name="text">
            <string>Language:</string>
           </property>
-          <property name="buddy" >
+          <property name="buddy">
            <cstring>language_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMScComboBox" name="language_" />
+         <widget class="SMScComboBox" name="language_"/>
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>40</width>
             <height>20</height>
@@ -366,13 +379,13 @@
       </item>
       <item>
        <spacer>
-        <property name="orientation" >
+        <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
-        <property name="sizeType" >
+        <property name="sizeType">
          <enum>QSizePolicy::MinimumExpanding</enum>
         </property>
-        <property name="sizeHint" stdset="0" >
+        <property name="sizeHint" stdset="0">
          <size>
           <width>300</width>
           <height>0</height>
@@ -384,61 +397,73 @@
     </widget>
    </item>
    <item>
-    <widget class="QGroupBox" name="smColorGroup" >
-     <property name="title" >
+    <widget class="QGroupBox" name="smColorGroup">
+     <property name="title">
       <string>Colors</string>
      </property>
-     <layout class="QVBoxLayout" >
-      <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="QLabel" name="FillIcon" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+     <layout class="QVBoxLayout">
+      <item>
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="QLabel" name="FillIcon">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>fillColor_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMColorCombo" name="fillColor_" />
-        </item>
-        <item>
-         <widget class="QLabel" name="fillShadeLabel" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+         <widget class="SMColorCombo" name="fillColor_"/>
+        </item>
+        <item>
+         <widget class="QLabel" name="fillShadeLabel">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>fillShade_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMShadeButton" name="fillShade_" >
-          <property name="text" >
+         <widget class="SMShadeButton" name="fillShade_">
+          <property name="text">
            <string/>
           </property>
          </widget>
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>40</width>
             <height>20</height>
@@ -449,55 +474,67 @@
        </layout>
       </item>
       <item>
-       <layout class="QHBoxLayout" >
-        <item>
-         <widget class="QLabel" name="StrokeIcon" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+       <layout class="QHBoxLayout">
+        <item>
+         <widget class="QLabel" name="StrokeIcon">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>strokeColor_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMColorCombo" name="strokeColor_" />
-        </item>
-        <item>
-         <widget class="QLabel" name="strokeShadeLabel" >
-          <property name="maximumSize" >
-           <size>
-            <width>22</width>
-            <height>22</height>
-           </size>
-          </property>
-          <property name="text" >
-           <string>TextLabel</string>
-          </property>
-          <property name="buddy" >
+         <widget class="SMColorCombo" name="strokeColor_"/>
+        </item>
+        <item>
+         <widget class="QLabel" name="strokeShadeLabel">
+          <property name="minimumSize">
+           <size>
+            <width>20</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="maximumSize">
+           <size>
+            <width>22</width>
+            <height>22</height>
+           </size>
+          </property>
+          <property name="text">
+           <string/>
+          </property>
+          <property name="buddy">
            <cstring>strokeShade_</cstring>
           </property>
          </widget>
         </item>
         <item>
-         <widget class="SMShadeButton" name="strokeShade_" >
-          <property name="text" >
+         <widget class="SMShadeButton" name="strokeShade_">
+          <property name="text">
            <string/>
           </property>
          </widget>
         </item>
         <item>
          <spacer>
-          <property name="orientation" >
+          <property name="orientation">
            <enum>Qt::Horizontal</enum>
           </property>
-          <property name="sizeHint" stdset="0" >
+          <property name="sizeHint" stdset="0">
            <size>
             <width>40</width>
             <height>20</height>
@@ -509,13 +546,13 @@
       </item>
       <item>
        <spacer>
-        <property name="orientation" >
+        <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
-        <property name="sizeType" >
+        <property name="sizeType">
          <enum>QSizePolicy::MinimumExpanding</enum>
         </property>
-        <property name="sizeHint" stdset="0" >
+        <property name="sizeHint" stdset="0">
          <size>
           <width>72</width>
           <height>0</height>
@@ -528,7 +565,7 @@
    </item>
   </layout>
  </widget>
- <layoutdefault spacing="6" margin="11" />
+ <layoutdefault spacing="6" margin="11"/>
  <customwidgets>
   <customwidget>
    <class>SMScComboBox</class>




More information about the scribus-commit mailing list