[]
EAN-8条形码用在对于使用EAN-13条形码太大的小包装上。与EAN-13类似,EAN-8仅使用数字字符和校验位。此条形码只接受七个数字作为字符串来计算校验位(校验和)并将其添加到第八个位置。校验位是一个附加数字,可用于验证条形码是否已被准确扫描。当CheckSum属性设置为True时,将自动添加校验位。
下图显示PDF文档中的EAN-8条形码。
你可以使用以下公式在工作表中设置EAN-8条形码:
=BC_EAN8(value, color, backgroundColor, showLabel, labelPosition, fontFamily, fontStyle, fontWeight, fontTextDecoration, fontTextAlign, fontSize, quietZoneLeft, quietZoneRight, quietZoneTop, quietZoneBottom)
名称 | 描述 |
---|---|
value | 指定值的长度,必须为7或8。 |
color | 表示条形码颜色的颜色。默认值为“rgb(0,0,0)”。 |
backgroundColor | 表示条形码背景颜色的颜色。默认值为“rgb(255,255,255)”。 |
showLabel | 指定条形码具有标签时是否显示标签文本。 |
labelPosition | 执行显示标签时标签的位置。 |
fontFamily | 表示标签文本字体的字符串。默认值为“sans serif”。 |
fontStyle | 表示标签文本字体样式的字符串。默认值为“normal”。 |
fontWeight | 表示标签文本字体粗细的字符串。默认值为“normal”。 |
fontTextDecoration | 表示标签文本修饰的字符串。默认值为“none”。 |
fontTextAlign | 表示标签文本对齐方式的字符串。默认值为“center”。 |
fontSize | 表示标签文本字体大小的字符串。默认值为“12px”。 |
quietZoneLeft | 表示左侧空白区域的大小。 |
quietZoneRight | 表示右侧空白区域的大小。 |
quietZoneTop | 表示顶部空白区域的大小。 |
quietZoneBottom | 表示底部空白区域的大小。 |
此示例代码在工作表中设置EAN-8。
// Create a new workbook
Workbook workbook = new Workbook();
// Set worksheet layout and data
IWorksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getRange("B:G").setColumnWidth(17);
worksheet.getRange("4:7").setRowHeight(60);
worksheet.getRange("A:A").setColumnWidth(5);
worksheet.getRange("B2").setValue("EAN-8");
worksheet.getRange("B2:F2").setMergeCells(true);
worksheet.getRange("B3:G3").setValue(new Object[][] {
{ "Name", "Number", "Default", "Change showLabel", "Change labelPosition", "Explain" } });
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:C6").setValue(new Object[][] { { "Value length is 7", "4137962" },
{ "Value length is 8", "81424863" }, { "value length is 8", "81424865" } });
worksheet.getRange("G6")
.setValue("No EAN-8 generated, because the last digit is check-sum digit and it is invalid");
worksheet.getRange("G6").getFont().setColor(Color.GetRed());
worksheet.getRange("B4:C6").setWrapText(true);
worksheet.getRange("G6").setWrapText(true);
worksheet.getPageSetup().setOrientation(PageOrientation.Landscape);
worksheet.getPageSetup().setPrintGridlines(true);
// Set formula
for (int i = 4; i < 7; i++) {
worksheet.getRange("D" + i).setFormula("=BC_EAN8" + "(C" + i + ")");
worksheet.getRange("E" + i).setFormula("=BC_EAN8" + "(C" + i + ",,,0)");
worksheet.getRange("F" + i).setFormula("=BC_EAN8" + "(C" + i + ",,,,\"top\")");
}
// Save to an pdf file
workbook.save("EAN8.pdf");