1

我正在尝试找出如何在我的 Zend 条形码中包含 FNC3 控制字符。

例如,此条码包含 FNC3 字符,然后是 0B

条码

将其与不包含此字符的条形码进行比较。

在此处输入图像描述

我无法弄清楚如何 (1) 更改 128 型条形码的字符集。(2) 在 type128 条码中包含一个控制字符 (FNC1-4)。

我尝试将如下各种组合传递到选项数组的“文本”参数中。 http://framework.zend.com/manual/en/zend.barcode.objects.html

这可能吗?如何通过 FNC3 字符。这是文字字符串'FNC3'还是我遗漏了什么。

编辑:

我曾尝试在我的文本字符串中使用 ü / Ç 字符,但 PHP 每次都会出错。

4

1 回答 1

2

似乎没有办法在当前版本的 \Zend\Barcode\Object\Code128 中包含 FNC3 字符。我会复制 Code128.php,将“FNC3”替换为字符码大于 128 的字符,例如chr(228)(根据http://www.barcoderesource.com/code128_barcode_map.html ,它是条形码字体中字符的 ASCII 码) :

protected $charSets = array(
    'A' => array(
    /*...*/
        chr(228), 'FNC2', 'SHIFT', 'Code C', 'Code B', 'FNC4', 'FNC1',
    /*...*/
    'B' => array(
    /*...*/
        chr(228), 'FNC2', 'SHIFT', 'Code C', 'FNC4', 'Code A', 'FNC1',

然后在你的字符串中使用 chr(228) (例如chr(228).'0B')。最后,您可以使用 composer 的加载器或创建一个模块以标准方式覆盖原始类。

于 2012-11-17T17:33:55.503 回答