generation/maxicode-ext-codetext-builder.js

const MwMaxiCodeExtCodetextBuilder = require("../_mwbridge/_mw-bridge.js").MwMaxiCodeExtCodetextBuilder;
const ExtCodetextBuilder = require("./ext-codetext-builder");

/**
 * Extended codetext generator for MaxiCode barcodes for ExtendedCodetext Mode of MaxiCodeEncodeMode
 * Use TwoDDisplayText property of BarcodeGenerator to set visible text to removing managing characters.
 *
 * This sample shows how to use MaxiCodeExtCodetextBuilder in Extended Mode.
 *
 * @example
 * //create codetext
 * let textBuilder = new MaxiCodeExtCodetextBuilder();
 * textBuilder.addECICodetext(ECIEncodings.Win1251, "Will");
 * textBuilder.addECICodetext(ECIEncodings.UTF8, "犬Right狗");
 * textBuilder.addECICodetext(ECIEncodings.UTF16BE, "犬Power狗");
 * textBuilder.addPlainCodetext("Plain text");
 *
 * //generate codetext
 * let codetext = textBuilder.getExtendedCodetext();
 *
 * //generate
 * let generator = new BarcodeGenerator(EncodeTypes.MAXI_CODE, codetext);
 * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
 * generator.save("test.bmp", BarcodeImageFormat.BMP);
 */
class MaxiCodeExtCodetextBuilder extends ExtCodetextBuilder
{
    constructor()
    {
        super(new MwMaxiCodeExtCodetextBuilder());
    }

    _initializeWrapperMembers()
    {
    }

    /**
     * Generates Extended codetext from the extended codetext list.
     * @return Extended codetext as string
     */
    getExtendedCodetext()
    {
        return this.getJavaClass().getExtendedCodetextSync();
    }
}

module.exports = MaxiCodeExtCodetextBuilder;