[]
Data Matrix 是一种高密度的二维条形码,其正方形模块通常以正方形或矩形矩阵模式排列。数据矩阵最常用的应用是标记小对象,因为代码可以在2~3平方毫米的面积上编码50个字符,并且DataMatrix只需要20%的对比率就可以被读取。
下面的图片中展示了PDF文档中的DataMatrix条形码。
你可以使用以下公式在工作表中设置Data Matrix:
=BC_DataMatrix(value, color, backgroudColor, eccMode, ecc200SymbolSize, ecc200EndcodingMode, ecc00_140Symbole, structureAppend, structureNumber, fileIdentifier, quietZoneRight, quietZoneTop, quietZoneBottom)
名称 | 描述 |
---|---|
value | 表示Data Matrix编码的字符串。 |
color | 表示Data Matrix条形码颜色。默认值为“rgb(0,0,0)”。 |
backgroundColor | 表示Data Matrix条形码的背景颜色。默认值是"rgb(255, 255, 255)"。 |
eccMode | 表示使用哪种ecc编码规则。它具有以下值:“ECC000、ECC050、ECC080、ECC100、ECC140、ECC200”。 |
ecc200SymbolSize | ECC200专用设置,用于设置字符编码大小,默认值是"squareAuto"。 |
ecc200EndcodingMode | ECC200专用设置,用于设置编码格式,默认值是"auto"。 |
ecc00_140Symbole | 用于在ECC000-140中设置字符编码大小,默认值是"auto"。 |
structureAppend | ECC200专用设置,表示是否是链接编码模式,默认值是false。 |
structureNumber | ECC200专用设置,表示链接编码模式中的索引,只能是0~15,默认值是0。 |
fileIdentifier | ECC200专用设置,表示编码的文件标识,只能是1~254,默认值是0。 |
quietZoneRight | 表示右侧空白区域大小的值。 |
quietZoneTop | 表示顶部空白区域大小的值。 |
quietZoneBottom | 表示底部空白区域大小的值。 |
这是一个创建DataMatrix 二维码的实例。
// Create a new workbook
Workbook workbook = new Workbook();
// Set worksheet layout and data
IWorksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getRange("B:F").setColumnWidth(15);
worksheet.getRange("4:7").setRowHeight(60);
worksheet.getRange("A:A").setColumnWidth(5);
worksheet.getRange("B2").setValue("Data Matrix");
worksheet.getRange("B2:F2").setMergeCells(true);
worksheet.getRange("B3:F3").setValue(new Object[][] { { "Server", "Data", "Default", "ECC100", "ECC200" } });
worksheet.getRange("B4:C7").setHorizontalAlignment(HorizontalAlignment.Center);
worksheet.getRange("B4:C7").setVerticalAlignment(VerticalAlignment.Center);
worksheet.getRange("B2:F3").setHorizontalAlignment(HorizontalAlignment.Center);
worksheet.getRange("B2:F3").setVerticalAlignment(VerticalAlignment.Center);
worksheet.getRange("B4:C7")
.setValue(new Object[][] { { "Police", "911" }, { "Telephone Directory Assistance", "411" },
{ "Non-emergency Municipal Services", "311" }, { "Travel Info Call 511", "511" } });
worksheet.getRange("B4:B7").setWrapText(true);
worksheet.getPageSetup().setPrintGridlines(true);
// Set formula
for (int i = 4; i < 8; i++) {
String value = "CONCAT(B" + i + ",\":\",C" + i + ")";
worksheet.getRange("D" + i).setFormula("=BC_DataMatrix" + "(" + value + ")");
worksheet.getRange("E" + i).setFormula("=BC_DataMatrix" + "(" + value + ", , ,\"ECC000\")");
worksheet.getRange("F" + i).setFormula("=BC_DataMatrix" + "(" + value + ", , ,\"ECC200\")");
}
// Save to an pdf file
workbook.save("DataMatrix.pdf");
限制
Datamatrix ECC(000-140)二维码已过时。因此,生成这类型的二维码将无法被扫描。