[]
        
(Showing Draft Content)

Code39

代码39是一种线性条形码,总共使用九个条形来表示每个符号,包括数字字符、大写字符和一些特殊字符 ("%" , "*",  "$",  "/",  "." ,  "-",  "+")。

下图显示PDF文档中的Code39条形码。

Code39

公式定义

您可以使用以下公式在工作表中设置Code39:


=BC_CODE39(value, color, backgroundColor, showLabel, labelPosition, labelWithStartAndStopCharacter, checkDigit, nwRatio, fullASCII, fontFamily, fontStyle, fontWeight, fontTextDecoration, fontTextAlign, fontSize, quietZoneLeft, quietZoneRight, quietZoneTop, quietZoneBottom)

参数

名称

描述

value

表示QRCode符号编码的字符串。

color

表示条形码颜色的颜色。默认值为'rgb(0,0,0)'。

backgroundColor

表示条形码背景颜色的颜色。默认值为'rgb(255, 255, 255)'

showLabel

指定当条形码有标签时是否显示标签文本。

labelPosition

显示标签位置的值。

labelWithStartAndStopCharacter

指定是否在标签中显示开始和停止字符。默认值为“false”。

checkDigit

指定符号是否需要校验位。默认值为“false”。

nwRatio

表示宽窄条比的值。其值为2 | 3。默认值为“3”。

fullASCII

指定是否支持Code39的完整ASCII。默认值为“false”。

fontFamily

表示标签文本的字符串。默认值为“sans serif”。

fontStyle

表示标签文本样式的字符串。默认值为“normal”。

fontWeight

表示标签文本的字符串。默认值为“normal”。

fontTextDecoration

表示标签文本fontTextDecoration的字符串。默认值为“none”。

fontTextAlign

表示标签文本fontTextAlign的字符串。默认值为“center”。

fontSize

表示标签文本字体大小的字符串。默认值为“12px”。

quietZoneLeft

表示左侧静默区域大小的值。

quietZoneRight

表示右侧静默区域大小的值。

quietZoneTop

表示顶部静默区域大小的值。

quietZoneBottom

表示底部静默区域大小的值。

用例代码

此示例代码设置工作表中的Code39。

// Create a new workbook
Workbook workbook = new Workbook();
// Set worksheet layout and data
IWorksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getRange("B:C").setColumnWidth(15);
worksheet.getRange("D:H").setColumnWidth(25);
worksheet.getRange("4:6").setRowHeight(60);
worksheet.getRange("A:A").setColumnWidth(5);
worksheet.getRange("B2").setValue("Code39");
worksheet.getRange("B2:F2").setMergeCells(true);
worksheet.getRange("B3:H3")
        .setValue(new Object[][] { { "Name", "Number", "Default", "Change labelWithStartAndStopCharacter",
                "Change checkDigit", "Change checkDigit", "Change nwRatio", "Change fullASCII" } });
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[][] { { "Paper", "6922266446146" }, { "Book", "9787560044231" },
        { "Value can contain some symbol", "1234+-#*" } });
worksheet.getRange("B4:C6").setWrapText(true);
worksheet.getRange("G6").setWrapText(true);
worksheet.getPageSetup().setPrintTitleColumns("$A:$C");
worksheet.getPageSetup().setOrientation(PageOrientation.Landscape);
worksheet.getPageSetup().setPrintGridlines(true);

// Set formula
for (int i = 4; i < 7; i++) {
    worksheet.getRange("D" + i).setFormula("=BC_CODE39" + "(C" + i + ")");
    worksheet.getRange("E" + i).setFormula("=BC_CODE39" + "(C" + i + ",,,,,\"true\")");
    worksheet.getRange("F" + i).setFormula("=BC_CODE39" + "(C" + i + ",,,,,,\"true\")");
    worksheet.getRange("G" + i).setFormula("=BC_CODE39" + "(C" + i + ",,,,,,,2)");
    worksheet.getRange("H" + i).setFormula("=BC_CODE39" + "(C" + i + ",,,,,,,,\"true\")");
}

// Save to an pdf file
workbook.save("Code39.pdf");