CTAN Comprehensive TeX Archive Network

CTAN update: pst-barcode

Date: May 15, 2026 10:18:20 AM CEST
Herbert Voß submitted an update to the pst-barcode package. Version: 0.22 License: lppl Summary description: Announcement text:
0.22 2026-05-14 - fix for wrong number of lines 15->17 0.21 2026-03-30 - Alias option handling was simplified and improved. - The text rendering system was generalised to support up to 9 independent text groups. The existing text and extratext options are retained as aliases. - The position of the whitespace guards for EAN/UPC symbols was simplified and better aligned with the text. - The position of the whitespace guards for standalone EAN/UPC addons was fixed. - The text{x,y}align=justify options were fixed for the linear and matrix renderers. - The text processing for the Code 39 Extended and Code 93 Extended encoders was fixed. - The text renderer now centres each character using stringwidth and pathbbox for font-independent alignment in the direct text positioning path. - Text offsets were adjusted for EAN/UPC-based symbologies and addons to account for ink-centre anchoring. Non-EAN encoders with per-character text placement were converted to use centre-aligned single string rendering. - FMLY was added to the encoder metadata. - The C API and SWIG bindings were expanded with support for lazy loading of resource bodies. - Input validation was hardened across all encoders, including data length checks, empty data rejection, and implementation limit guards for large allocations. - The renderers now validate their input structures and the text renderer handles single-character justify alignment correctly. - All resources now clean up the dictionary stack when an error is raised, preventing dict stack leaks in caller contexts. - Renderer error handling was improved: correct graphics state restoration, operand stack cleanup for invalid colors, and redundant gsave/grestore removal from composite rendering paths. - Raw mode input validation was improved for Code 128, Code 16K, Data Matrix, PosiCode, Ultracode, PDF417 and Micro PDF417, including ^NNN format and codeword range checks. - Data exceeding the maximum symbol capacity is now rejected during encoding for QR Code, Data Matrix, Code One, PDF417 and JAB Code. - Codablock F, Code 16K and the matrix renderer now handle large symbols without overflowing the operand stack. - GS1 input validation was improved for DataBar Expanded, DataBar Stacked Omnidirectional, GS1 Composite Component and GS1 North American Coupon. - JAB Code now validates eclevel, mask, colors, rows and columns options. PRNG constants now avoid integer literals exceeding the signed 32-bit range. - PDF417 and Micro PDF417: Fixed text submode optimizer crash with long all-text inputs by increasing the sentinel value used in the Viterbi cost comparison. - JAB Code: Fixed crash in slave symbol mode where metadata encoding referenced an undefined variable. - The AusPost encoder now supports FCC 87 (Routing) and FCC 92 (Redirection) barcodes. - The renderers now support a `default_inkspread` global context setting. - The GS1 AI linter was realigned with the latest release of the GS1 Syntax Dictionary. - User option validation was improved for the Codablock F, Code 16K, Code 49, Micro PDF417 and PDF417 encoders. - User option validation was improved for the linear, matrix and maximatrix renderers. - The encoder for DotCode was fixed to ensure a minimum symbol dimension when the opposite dimension is large. - The performance of the PDF417, Micro PDF417, Code One, OneCode, Data Matrix and GS1 Composite Component encoders was improved. - The time to generate error correction polynomials was improved using a FIFO cache for the QR Code, Data Matrix, PDF47, Micro PDF417, MaxiCode, Dot Code, Han Xin and Ultracode symbologies. - The performance of the Code 128, Codablock F, Posicode and Code 16K encoders was improved. - Stack leaks during error handling were fixed for the Data Matrix, PDF417, Micro PDF417, ISBN, ISMN, AusPost and Telepen symbologies. - The performance of generating the error correction codewords for AusPost symbols was improved. - Several stack leaks were fixed for GS1 AI and DL data processing. - The debug and dontdraw options of all encoders must now be enabled using a pair of global switches. - The performance of generating the error correction codewords for Aztec Code, Han Xin Code, QR Code, Data Matrix, Code One, Maxicode, PDF417, Micro PDF417, Ultracode symbols was improved. - The Ultracode encoder was fixed so that colours are correctly selected for rendering. - The performance of the matrix renderer was further improved. - Common colour handling code was factored out of the renderers into its own resource. - The performance of the matrix renderer was significantly improved. - The QR Code encoder performance was enhanced by precalculating the mask function patterns and applying them simultaneously to the data bitstream. - A mechanism to "preload" the lazy variables via global context was added. - Switch from loadctx/unloadctx mechanism to a more direct method of preloading static state, with lazy initialisation. - The Two-Track Pharmacode encoder's text positioning was fixed. - The USPS Intelligent Mail encoder's text positioning was fixed. - Common text rendering code was factored out of the linear and matrix renderers into its own resource.
This package is located at https://mirrors.ctan.org/graphics/pstricks/contrib/pst-barcode More information is at https://ctan.org/pkg/pst-barcode
Thanks for the upload. For the CTAN Team Manfred Lotz CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs .

pst-barcode – Print barcodes using PostScript

The pst-barcode package allows printing of barcodes, in a huge variety of formats, including quick-response (qr) codes (see documentation for details).

As a PSTricks package, the package requires pstricks. The package uses PostScript for calculating the bars. For PDF output use a multi-pass mechanism such as pst-pdf.

Packagepst-barcode
Version0.22
MaintainerTerry Burton
Herbert Voß

Announcements

more

Guest Book Sitemap Contact Contact Author