Barcode Plugin Development: Difference between revisions
Jump to navigation
Jump to search
Terryburton (talk | contribs) No edit summary |
Terryburton (talk | contribs) mNo edit summary |
||
Line 7: | Line 7: | ||
==Simple tasks== | ==Simple tasks== | ||
* Hexify the data and options string input from Scribus to BWIPP to prevent PostScript injection by means of unescaped ")" or otherwise. See this discussion [https://bitbucket.org/whosaysni/elaphe/issue/18/make-codestring-optionstring-hexilified here]. NOW MERGED | * <s>Hexify the data and options string input from Scribus to BWIPP to prevent PostScript injection by means of unescaped ")" or otherwise. See this discussion [https://bitbucket.org/whosaysni/elaphe/issue/18/make-codestring-optionstring-hexilified here].</s> NOW MERGED | ||
* Add an advanced textbox that allows the user to directly provide the options string to the library for advanced users who follow the [https://github.com/bwipp/postscriptbarcode/wiki BWIPP reference]. NOW MERGED | * <s>Add an advanced textbox that allows the user to directly provide the options string to the library for advanced users who follow the [https://github.com/bwipp/postscriptbarcode/wiki BWIPP reference].</s> NOW MERGED | ||
==Moderate tasks== | ==Moderate tasks== | ||
* Add support for the remaining barcode symbologies that are supported by BWIPP | * <s>Add support for the remaining barcode symbologies that are supported by BWIPP.</s> NOW MERGED | ||
* To make the presentation of the list of barcode formats manageable we should sort the list of barcodes in the same/similar way as the web-based generator [http://www.terryburton.co.uk/barcodewriter/generator/ here]. PARTIAL | * To make the presentation of the list of barcode formats manageable we should sort the list of barcodes in the same/similar way as the web-based generator [http://www.terryburton.co.uk/barcodewriter/generator/ here]. PARTIAL | ||
** The list is still long and may be unworkable on certain platforms. Consider a multi-combo approach or other. | ** The list is still long and may be unworkable on certain platforms. Consider a multi-combo approach or other. | ||
* Extract descriptions, example data and example options from the barcode.ps metadata by scanning for DESC, EXAM and EXOP stanzas within BEGIN/ENCODER ENCODER blocks. NOW MERGED | * <s>Extract descriptions, example data and example options from the barcode.ps metadata by scanning for DESC, EXAM and EXOP stanzas within BEGIN/ENCODER ENCODER blocks.</s> NOW MERGED | ||
* Use the BWIPP error reporting mechanism to provide specific error messages to users so that they can understand why a given input is invalid. IN PROGRESS | * Use the BWIPP error reporting mechanism to provide specific error messages to users so that they can understand why a given input is invalid. IN PROGRESS | ||
* Allow the location of the barcode.ps file to be configured by the user so that non-admins users can provide a local version and distributions that deprecate bundled libraries can provide a separately packaged version. cbradney TO REVIEW. | * Allow the location of the barcode.ps file to be configured by the user so that non-admins users can provide a local version and distributions that deprecate bundled libraries can provide a separately packaged version. cbradney TO REVIEW. |
Revision as of 22:57, 15 August 2015
Installation • Usability • MacOS • Fonts • Other |
This page is intended to provide a collaboration point to coordinate improvements to the barcode plugin which is based on Barcode Writer in Pure PostScript (BWIPP). Please extend, debate and discuss as appropriate.
The BWIPP wiki provides some recommendations for frontends.
Simple tasks
Hexify the data and options string input from Scribus to BWIPP to prevent PostScript injection by means of unescaped ")" or otherwise. See this discussion here.NOW MERGEDAdd an advanced textbox that allows the user to directly provide the options string to the library for advanced users who follow the BWIPP reference.NOW MERGED
Moderate tasks
Add support for the remaining barcode symbologies that are supported by BWIPP.NOW MERGED- To make the presentation of the list of barcode formats manageable we should sort the list of barcodes in the same/similar way as the web-based generator here. PARTIAL
- The list is still long and may be unworkable on certain platforms. Consider a multi-combo approach or other.
Extract descriptions, example data and example options from the barcode.ps metadata by scanning for DESC, EXAM and EXOP stanzas within BEGIN/ENCODER ENCODER blocks.NOW MERGED- Use the BWIPP error reporting mechanism to provide specific error messages to users so that they can understand why a given input is invalid. IN PROGRESS
- Allow the location of the barcode.ps file to be configured by the user so that non-admins users can provide a local version and distributions that deprecate bundled libraries can provide a separately packaged version. cbradney TO REVIEW.
Harder tasks
- Create a new type of Scribus Barcode Item:
- A vector item that cannot be ungrouped
- Initially fixed aspect ratio
- Stores the value behind the created barcode: codeEdit, optionsEdit, lnColor, bgColor, txtColor (Checkbox states unnecessary as encoded in optionsEdit)
- Ideally, double-clicking on such an item would bring up the barcode dialogue (not the Group Tab of the PP), so that a user can change the data, and the barcode drawing would be updated after clicking an "Update" button. This would, obviously, require some extensions to the Scribus core, as well as changes to the file format.
- Render the preview in a background QThread so that updating the preview image doesn't snatch attention away from the UI. See here.
- Allow the barcode plugin to be driven from ScripterNG.
Collaborative tasks
The following tasks require some degree of coordination between Scribus and Terry Burton, the author of BWIPP.
- Extend the barcode.ps metadata to describe the options that are available for each encoder so that any frontends such as the Scribus plugin can be light on compiled in data and enhanced with new format by simply replacing the barcode.ps file.
- Mentor a GSOC student on this barcode plugin.