我试图用法语创建条形码图像,但是它抛出以下异常
条码128不允许使用无效字符,
注意:
为了创建条形码图像,我使用了itextsharp组件。
有人帮我解决这个问题吗?
码:
var content = "attribué"
var bc = new Barcode128
{
Code = content,
StartStopText = false,
CodeType = Barcode.CODE128,
Extended = true,
ChecksumText = false,
GenerateChecksum = false,
};
bc.CreateImageWithBarcode(cb, Color.BLACK, Color.BLACK);
最佳答案
Code128最初仅支持ASCII,并且要使用ISO / IEC 8859-1,您必须添加FNC4扩展代码:
FNC4 = '\u00c8'
例:
var content = "attribué"
var encodedFNC = new StringBuilder(Barcode128.FNC4);
encodedFNC.Append(encodedFNC4);
~~~
var bc = new Barcode128
{
Code = encodedFNC.ToString(),
~~~
注意:我假设iTextSharp支持它,因为已经定义了FNC4,否则iText7会...