Skip to content

Commit

Permalink
Merge branch 'master' of github.com:bwipp/postscriptbarcode
Browse files Browse the repository at this point in the history
  • Loading branch information
terryburton committed Aug 29, 2016
2 parents 77d64da + f479c13 commit 34e0f1f
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 23 deletions.
65 changes: 42 additions & 23 deletions docs/barcodewriter.html
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,8 @@ <h1>Contents</h1>
</ul></li>
<li><a href="#bar-properties">Bar Properties</a><ul>
<li><a href="#inkspread">inkspread</a></li>
<li><a href="#inkspreadh">inkspreadh</a></li>
<li><a href="#inkspreadv">inkspreadv</a></li>
</ul></li>
<li><a href="#text-properties">Text Properties</a><ul>
<li><a href="#includetext">includetext</a></li>
Expand Down Expand Up @@ -303,7 +305,7 @@ <h1 id="barcode-writer-in-pure-postscript">Barcode Writer in Pure PostScript</h1
<li>Source: <a href="https://github.com/bwipp/postscriptbarcode.git" class="uri">https://github.com/bwipp/postscriptbarcode.git</a></li>
<li>Issue tracker: <a href="https://github.com/bwipp/postscriptbarcode/issues" class="uri">https://github.com/bwipp/postscriptbarcode/issues</a></li>
<li>Mailing list: <a href="http://groups.google.co.uk/group/postscriptbarcode" class="uri">http://groups.google.co.uk/group/postscriptbarcode</a></li>
<li>Presentation materials: <a href="http://goo.gl/dth54z" class="uri">http://goo.gl/dth54z</a></li>
<li>Presentation: Slides: <a href="http://goo.gl/WqYB6A" class="uri">http://goo.gl/WqYB6A</a> Materials: <a href="http://goo.gl/dth54z" class="uri">http://goo.gl/dth54z</a></li>
</ul>
<p>Barcode Writer in Pure Postscript (BWIPP) generates all barcode formats entirely within PostScript so that the process of converting the input data into the printed output can be performed by the printer or RIP itself. This is ideal for variable data printing (VDP) and avoids the need to re-implement the barcode generation process whenever your language needs change.</p>
<p>Since this resource is written in PostScript and interpreted within the virtual machine of a printer it is compatible with any operating system and hardware platform.</p>
Expand Down Expand Up @@ -2651,7 +2653,8 @@ <h4 id="example-26">Example</h4>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAABICAMAAAAu9YzIAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZQTFRFAAAA////pdmf3QAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAABgSURBVGje7c7bCQAgDAPAdP+lRaSi4ARyfvhIoF6SqppbetW6r3Q/+uj4zK7qnT0m7eL4OVcHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAT0NWgAQooTIakjLYMAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMDItMTJUMTM6Mzk6MDYrMDA6MDBjoLWXAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTAyLTEyVDEzOjM5OjA2KzAwOjAwEv0NKwAAAD90RVh0U29mdHdhcmUAQmFyY29kZSBXcml0ZXIgaW4gUHVyZSBQb3N0U2NyaXB0IC0gVmVyc2lvbiAyMDE1LTAxLTExxAIgDAAAADx0RVh0U291cmNlAGh0dHA6Ly93d3cudGVycnlidXJ0b24uY28udWsvYmFyY29kZXdyaXRlci9nZW5lcmF0b3Ivf1pwcQAAAABJRU5ErkJggg==" /></p>
<h2 id="bar-properties">Bar Properties</h2>
<h3 id="inkspread">inkspread</h3>
<p>Amount by which to reduce the bar widths to compensate for inkspread, in points.</p>
<p>For linear barcodes, the amount by which to reduce the bar widths to compensate for inkspread, in points.</p>
<p>For matrix barcodes, the amount by which the reduce the width and height of dark modules to compensate for inkspread, in points.</p>
<h4 id="notes-2">Notes</h4>
<ul>
<li>Negative values will increase the bar width.</li>
Expand All @@ -2662,6 +2665,11 @@ <h4 id="example-27">Example</h4>
Options: inkspread=0.6
Encoder: code39</code></pre>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAE8AAABICAMAAACA71gMAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZQTFRFAAAA////pdmf3QAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAAA/SURBVFjD7cyBCQAgCATAd/+lkySKZjhE8FEvqaruTE+ddDY37fm/fv/D4/F4PB6Px+PxeDwej8fj8Xg8XqcFW20MYeFfd6IAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMDItMTJUMTM6NDA6MTkrMDA6MDCMbPupAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTAyLTEyVDEzOjQwOjE5KzAwOjAw/TFDFQAAAD90RVh0U29mdHdhcmUAQmFyY29kZSBXcml0ZXIgaW4gUHVyZSBQb3N0U2NyaXB0IC0gVmVyc2lvbiAyMDE1LTAxLTExxAIgDAAAADx0RVh0U291cmNlAGh0dHA6Ly93d3cudGVycnlidXJ0b24uY28udWsvYmFyY29kZXdyaXRlci9nZW5lcmF0b3Ivf1pwcQAAAABJRU5ErkJggg==" /></p>
<h3 id="inkspreadh">inkspreadh</h3>
<p>For matrix barcodes, the amount by which the reduce the width of dark modules to compensate for inkspread, in points.</p>
<p>Note: inkspreadh is most useful for stacked-linear type barcodes such as PDF417 and Codablock F.</p>
<h3 id="inkspreadv">inkspreadv</h3>
<p>For matrix barcodes, the amount by which the reduce the height of dark modules to compensate for inkspread, in points.</p>
<h2 id="text-properties">Text Properties</h2>
<h3 id="includetext">includetext</h3>
<p>Show human readable text for data in symbol.</p>
Expand Down Expand Up @@ -2740,22 +2748,30 @@ <h3 id="textyoffset">textyoffset</h3>
<p>The vertical position of the text in points relative to the default position.</p>
<h2 id="border-properties">Border Properties</h2>
<h3 id="showborder">showborder</h3>
<h3 id="borderwidth">borderwidth</h3>
<h3 id="borderleft">borderleft</h3>
<h3 id="borderright">borderright</h3>
<h3 id="bordertop">bordertop</h3>
<h3 id="borderbottom">borderbottom</h3>
<p>Display a border around the symbol of the specified width with the specified margin gap, in points.</p>
<p>Display a border around the symbol.</p>
<h4 id="example-31">Example</h4>
<p>Display a customised border around this Codabar symbol:</p>
<pre><code>Data: A3+14-63B
Options: includetext showborder borderwidth=2 borderbottom=8
Encoder: rationalizedCodabar</code></pre>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIcAAABTCAMAAACCluQBAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACdQTFRFAAAA////7u7uu7u7qqqqzMzMmZmZd3d3VVVViIiI3d3dZmZmREREyWaZ3AAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAAEZSURBVGje7dLh1sIgCAZgEZXU7v96c6sFTL7z/ezPS+00poNnrJQQt6ArEr2z5M4/n2QOv3peuXbSdwe5+7SSr//pDAcccMABBxxwwAEHHHDAAQcccMABBxxwwAEHHHDAAQcccMABBxxwwAEHHHDAAcdPHfp7HDnbu8l6b2fWodc195WS6RU5iEs1i6W08k2OSroirEl+MEXRSwkqjeabhA7q3a+LEl0zm3UOHVzjSuukb5tvjlqbfWwWrfWno3LsaMU8t6kkVGXbfHMIs7PmKxsyp4zQ0TUZsuLatTr3oNLZwz5s5Gj2Tbyb/DuPVbaF8zi/e6WjwTZA75BJeWrrZv+nddgec2qPMfc5nxMoLajEzzWzeB4IEy+51hq4/62VwwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNS0wMi0xMlQxMzo0NDoyMCswMDowMJ6QGeMAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTUtMDItMTJUMTM6NDQ6MjArMDA6MDDvzaFfAAAAP3RFWHRTb2Z0d2FyZQBCYXJjb2RlIFdyaXRlciBpbiBQdXJlIFBvc3RTY3JpcHQgLSBWZXJzaW9uIDIwMTUtMDEtMTHEAiAMAAAAPHRFWHRTb3VyY2UAaHR0cDovL3d3dy50ZXJyeWJ1cnRvbi5jby51ay9iYXJjb2Rld3JpdGVyL2dlbmVyYXRvci9/WnBxAAAAAElFTkSuQmCC" /></p>
<h3 id="borderwidth">borderwidth</h3>
<p>Width of the border, in points.</p>
<h3 id="borderleft">borderleft</h3>
<p>Gap between the left edge of the border and the symbol, in points.</p>
<h3 id="borderright">borderright</h3>
<p>Gap between the right edge of the border and the symbol, in points.</p>
<h3 id="bordertop">bordertop</h3>
<p>Gap between the top edge of the border and the symbol, in points.</p>
<h3 id="borderbottom">borderbottom</h3>
<p>Gap between the bottom edge of the border and the symbol, in points.</p>
<h2 id="symbol-colors">Symbol Colors</h2>
<h3 id="barcolor">barcolor</h3>
<p>Color of the bars or dark modules, either as a hex <code>RRGGBB</code> value or a hex <code>CCMMYYKK</code> value.</p>
<h3 id="backgroundcolor">backgroundcolor</h3>
<p>Color of the light background or light modules, either as a hex <code>RRGGBB</code> value or a hex <code>CCMMYYKK</code> value.</p>
<h3 id="bordercolor">bordercolor</h3>
<p>Color of the border, either as a hex <code>RRGGBB</code> value or a hex <code>CCMMYYKK</code> value.</p>
<h3 id="textcolor">textcolor</h3>
<p>Color of the respective component, either as a hex <code>RRGGBB</code> value or a hex <code>CCMMYYKK</code> value.</p>
<h4 id="examples-46">Examples</h4>
Expand All @@ -2771,46 +2787,49 @@ <h4 id="examples-46">Examples</h4>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIgAAABRCAMAAAA+VR6HAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAFFQTFRFhgBOV1B6D8PzGr7pXVJ4ZFR2mCVRnzRTnCxSlB1QoztTiQdOqkpVrlJWp0NUkRZQ////4b2y7tnT3LOn8uPe5ca96dDI+/b02Kqcz5eG9+zpbRa/aAAAAAFiS0dEEJWyDSwAAAAJcEhZcwAACxMAAAsTAQCanBgAAAFOSURBVGje7dHtboMwDAVQQhml7CshicN4/wcdBNsN0Far9mearkUby3bCAarqz4SRqE1d1+vKef7xvylqh5nr7NLjTPPtft1pcpUDEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEkH8AkfVUjKzZSbOmMQrZx1J7Mfv+soNv22w7W8gx2nN3yWt/4cq57VruaVa9vnG774tB7r73/Qfv6Drufmp2DFvZY7h8zTEMXJlXr23JnLSvrSEUx0Tt+t25t+IWJOY7lxBrg5p8kIq0XXTEO4mUIigi4rmY7PhbSCDtJifPVzi5NiPdrmRdCPxuLMXn3sjx0xQOvcMwuKg1r48Qd2OW8rWd+yGEXMyCOI7rseHL+1FefpRjp5GP9VpLjgQS5BtRlG4gl56C2HR/3k7pYS08OC1N94+131Pbb3CKDTMKAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE1LTAyLTEyVDEzOjQ1OjQ3KzAwOjAwcppF1AAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNS0wMi0xMlQxMzo0NTo0NyswMDowMAPH/WgAAAA/dEVYdFNvZnR3YXJlAEJhcmNvZGUgV3JpdGVyIGluIFB1cmUgUG9zdFNjcmlwdCAtIFZlcnNpb24gMjAxNS0wMS0xMcQCIAwAAAA8dEVYdFNvdXJjZQBodHRwOi8vd3d3LnRlcnJ5YnVydG9uLmNvLnVrL2JhcmNvZGV3cml0ZXIvZ2VuZXJhdG9yL39acHEAAAAASUVORK5CYII=" /></p>
<h2 id="ean-upc-add-ons">EAN-UPC Add Ons</h2>
<h3 id="addontextfont">addontextfont</h3>
<h3 id="addontextsize">addontextsize</h3>
<p>The font name and size of the add on text in points</p>
<p>The font name of the add on text.</p>
<h4 id="notes-7">Notes</h4>
<ul>
<li>The font name must be the literal name of a PostScript available font.</li>
<li>These options must be used in combination with the <strong>includetext</strong> option.</li>
</ul>
<h3 id="addontextsize">addontextsize</h3>
<p>The size of the add on text, in points</p>
<h4 id="notes-8">Notes</h4>
<ul>
<li>These options must be used in combination with the <strong>includetext</strong> option.</li>
</ul>
<h4 id="example-32">Example</h4>
<p>Customise the human readable text of this USPS POSTNET symbol</p>
<pre><code>Data: 64501
Options: includetext textfont=Times textsize=9
Encoder: postnet</code></pre>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAQCAMAAADNs8o/AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAC1QTFRFAAAA////3d3d7u7uzMzMd3d3iIiIu7u7REREqqqqVVVVZmZmmZmZIiIiMzMz7i0rqQAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAACjSURBVDjL7ZLRDsMgCEVBvUWt2/9/7jb3sF66ROfbkhISwQAHUBHtIl0/It6iQ9SFU6J8KSFygf4DJAf93ZoLvUDroPdzBR1IHAWMpIMSPGgzcpFBfkDZOMHqBCicghKDwu4agWl2M+YJENC44diMQe3WfFXwzFOgbFrT8bKouTKx+qoroGcOCATsp2X51dWF1QUY3DVPhFaokddncBnlPvi4D120B6Szs3gQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE1LTAyLTEyVDEzOjQzOjAxKzAwOjAwmB4OUwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNS0wMi0xMlQxMzo0MzowMSswMDowMOlDtu8AAAA/dEVYdFNvZnR3YXJlAEJhcmNvZGUgV3JpdGVyIGluIFB1cmUgUG9zdFNjcmlwdCAtIFZlcnNpb24gMjAxNS0wMS0xMcQCIAwAAAA8dEVYdFNvdXJjZQBodHRwOi8vd3d3LnRlcnJ5YnVydG9uLmNvLnVrL2JhcmNvZGV3cml0ZXIvZ2VuZXJhdG9yL39acHEAAAAASUVORK5CYII=" /></p>
<h3 id="addontextxoffset">addontextxoffset</h3>
<p>Overrides the default horizontal positioning of the add on text.</p>
<h3 id="addontextyoffset">addontextyoffset</h3>
<p>Overrides the default positioning algorithm for the add on text.</p>
<p>Overrides the default vertical positioning of the add on text.</p>
<h2 id="ean-upc-guards">EAN-UPC Guards</h2>
<h3 id="guardwhitespace">guardwhitespace</h3>
<h3 id="guardwidth">guardwidth</h3>
<h3 id="guardheight">guardheight</h3>
<p>Display white space guards of the specified width and height, in points.</p>
<h4 id="note-2">Note</h4>
<ul>
<li>Usually the encoder specific default value of <strong>guardwidth</strong> and <strong>guardheight</strong> are sufficient.</li>
</ul>
<p>Display white space guards.</p>
<h4 id="example-33">Example</h4>
<p>ISBN-13 with tiny white space guard:</p>
<pre><code>Data: 978-1-873671-00
Options: includetext guardwhitespace guardwidth=3 guardheight=3
Encoder: isbn</code></pre>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHUAAABWCAMAAADG4ikWAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAADBQTFRF////zMzM7u7umZmZu7u7d3d33d3dqqqqZmZmiIiIREREAAAAMzMzVVVVERERIiIis0JylgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAKYSURBVGje7ZpJgtwgDEUFSNjYLvv+t40mhhqyyjKiuwAN/CcwSwC0pQzfLRcEIKIKUDec3j4zpyakbTNPMnsmQdaQ9UMVd6xAWAjqjgXTDql5vEBCYMUE0LTXhtT1zKkJSadJlNWeSZy11d4PVZA4STL3XGLZoG9rg9w0jX8Za5cZgt0pCamIdE3dnlRSh/VTlfRkGh/xjoSALXdq2uQwXJRy5bNzQZuK841KiLhQLYug//sqVRWRKiVYPQhlfEKoLFAR1lKXbbizop+kWDgXjBOWbVg/VNtBiffIKDyIGu4Zy9yrV86VUD9hWeAnbM6iN6RV2bBUXN6S+JO10U9Vw/+4wpCXi51/JnxN81+z8i/V/62d8nfKTw2wmTlOnVqS5ow/6P6Z7WvHYJOgBjWoQQ1qUIMa1KAGNahBDWpQgxrUoAY1qEENalCDGtSgBjWoQQ1qUP+Nmou/SpAIEtnLl+JPD+whiVo9ltUynUQ4Az17o2Uw+U9qvl50b2/Us0J35kceV5jlsXztYqkOXfS0sciz94Nu7IPLf1LbwVVdnSqNWOdhJwfoPGUvblms8Ix/kl3vDGnvAc9O7CyvPrj8J5WIazwXauUSRK691ImrpTF5Z/PS7HJktEcX9YKeLZx69sHlJ9XG8rDkSj30Hcv53LXrTEtjkK6najYd13GXGdBs4cDZB5df9qqXFeh+aKGiVI13YsmuMyy0HUHd7YSJJdO9BL6pLv9FleLveeJ7gbHyXcdj+prIz+lYA54tN4AFffiU95VyVWifXj3KNpb0L6WWxV62SPbMe8URWG4BC/rwKd/b6zqu+Q7H9PL4YKLTLY9d1/H4KzR6dOpF+C1ozy5V+PAuP1vCn878VwunVfGHojt9+CH/BxLsoXrhB4UQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE1LTAyLTEyVDEzOjQ2OjU1KzAwOjAwwpjvYAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNS0wMi0xMlQxMzo0Njo1NSswMDowMLPFV9wAAAA/dEVYdFNvZnR3YXJlAEJhcmNvZGUgV3JpdGVyIGluIFB1cmUgUG9zdFNjcmlwdCAtIFZlcnNpb24gMjAxNS0wMS0xMcQCIAwAAAA8dEVYdFNvdXJjZQBodHRwOi8vd3d3LnRlcnJ5YnVydG9uLmNvLnVrL2JhcmNvZGV3cml0ZXIvZ2VuZXJhdG9yL39acHEAAAAASUVORK5CYII=" /></p>
<h3 id="guardwidth">guardwidth</h3>
<p>Width of the whitespace guards, in points.</p>
<h3 id="guardheight">guardheight</h3>
<p>Height of the whitespace guards, in points.</p>
<h3 id="guardleftpos">guardleftpos</h3>
<p>Override the default horizontal position of the left whitespace guard.</p>
<h3 id="guardrightpos">guardrightpos</h3>
<p>Override the default horizontal position of the right whitespace guard.</p>
<h3 id="guardleftypos">guardleftypos</h3>
<p>Override the default vertical position of the left whitespace guard.</p>
<h3 id="guardrightypos">guardrightypos</h3>
<p>Amount of white space to guard to left and right of the symbol and vertical position of the guard symbols, in points.</p>
<h4 id="note-3">Note</h4>
<ul>
<li>The encoder specific default value of each of these parameters is normally sufficient.</li>
</ul>
<p>Override the default vertical position of the right whitespace guard.</p>
<h4 id="example-34">Example</h4>
<p>EAN-8 with very mangled white space guards:</p>
<pre><code>Data: 01335583
Expand Down
Binary file modified docs/barcodewriter.pdf
Binary file not shown.
4 changes: 4 additions & 0 deletions libs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ It is hoped that these can provide a stable and robust interface to BWIPP that
avoids the need for frontends to parse and process the PostScript resource file
directly or embed lots of static data about the resources in their code.

The library implements parsing of the Metadata Specification provided here:

https://github.com/bwipp/postscriptbarcode/wiki/Metadata-Specification


Building
--------
Expand Down

0 comments on commit 34e0f1f

Please sign in to comment.