FieldDisplayBarcode

FieldDisplayBarcode class

Реализует поле DISPLAYBARCODE.

Чтобы узнать больше, посетитеРабота с полями документальная статья.

public class FieldDisplayBarcode : Field

Конструкторы

ИмяОписание
FieldDisplayBarcode()Конструктор по умолчанию.

Характеристики

ИмяОписание
AddStartStopChar { get; set; }Возвращает или задает, следует ли добавлять символы Start/Stop для типов штрих-кодов NW7 и CODE39.
BackgroundColor { get; set; }Получает или задает цвет фона символа штрих-кода. Допустимые значения находятся в диапазоне [0, 0xFFFFFF]
BarcodeType { get; set; }Получает или задает тип штрихкода (QR и т. д.)
BarcodeValue { get; set; }Получает или задает значение штрих-кода.
CaseCodeStyle { get; set; }Получает или задает стиль Case Code для типа штрихкода ITF14. Допустимые значения: [STD|EXT|ADD]
DisplayResult { get; }Получает текст, представляющий отображаемый результат поля.
DisplayText { get; set; }Возвращает или задает, следует ли отображать данные штрих-кода (текст) вместе с изображением.
End { get; }Получает узел, представляющий конец поля.
ErrorCorrectionLevel { get; set; }Получает или задает уровень исправления ошибок QR-кода. Допустимые значения: [0, 3].
FixCheckDigit { get; set; }Возвращает или задает, следует ли исправлять контрольную цифру, если она недействительна.
ForegroundColor { get; set; }Возвращает или задает цвет переднего плана символа штрихкода. Допустимые значения находятся в диапазоне [0, 0xFFFFFF]
Format { get; }ПолучаетFieldFormatобъект, который обеспечивает типизированный доступ к форматированию поля.
IsDirty { get; set; }Возвращает или задает, является ли текущий результат поля более неверным (устаревшим) из-за других изменений, внесенных в документ.
IsLocked { get; set; }Возвращает или задает, заблокировано ли поле (не следует пересчитывать его результат).
LocaleId { get; set; }Получает или задает LCID поля.
PosCodeStyle { get; set; }Получает или задает стиль штрихкода точки продажи (типы штрихкодов UPCA|UPCE|EAN13|EAN8). Допустимые значения (без учета регистра): [STD|SUP2|SUP5|CASE].
Result { get; set; }Возвращает или задает текст, который находится между разделителем полей и концом поля.
ScalingFactor { get; set; }Возвращает или задает коэффициент масштабирования для символа. Значение указывается в целых процентных пунктах, допустимые значения: [10, 1000]
Separator { get; }Получает узел, представляющий разделитель полей. Может бытьнулевой .
Start { get; }Получает узел, представляющий начало поля.
SymbolHeight { get; set; }Возвращает или задает высоту символа. Единицы измерения — ТВИПС (1/1440 дюйма).
SymbolRotation { get; set; }Получает или задает поворот символа штрих-кода. Допустимые значения: [0, 3]
virtual Type { get; }Получает тип поля Microsoft Word.

Методы

ИмяОписание
GetFieldCode()Возвращает текст между началом поля и разделителем полей (или концом поля, если разделитель отсутствует). Включаются как код поля, так и результат поля дочерних полей.
GetFieldCode(bool)Возвращает текст между началом поля и разделителем полей (или концом поля, если разделитель отсутствует).
Remove()Удаляет поле из документа. Возвращает узел сразу после поля. Если конец поля — последний child его родительского узла, возвращает его родительский абзац. Если поле уже удалено, возвращаетнулевой .
Unlink()Выполняет отмену связи поля.
Update()Выполняет обновление поля. Выдает исключение, если поле уже обновляется.
Update(bool)Выполняет обновление поля. Выдает исключение, если поле уже обновляется.

Примечания

Вставляет штрих-код.

Примеры

Показывает, как выполнить слияние писем с QR-штрихкодами.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Вставьте поле MERGEBARCODE, которое будет принимать значения из источника данных во время слияния почты.
// Это поле преобразует все значения в столбце «MyQRCode» источника объединенных данных в QR-коды.
FieldMergeBarcode field = (FieldMergeBarcode)builder.InsertField(FieldType.FieldMergeBarcode, true);
field.BarcodeType = "QR";
field.BarcodeValue = "MyQRCode";

// Применить пользовательские цвета и масштабирование.
field.BackgroundColor = "0xF8BD69";
field.ForegroundColor = "0xB5413B";
field.ErrorCorrectionLevel = "3";
field.ScalingFactor = "250";
field.SymbolHeight = "1000";
field.SymbolRotation = "0";

Assert.AreEqual(FieldType.FieldMergeBarcode, field.Type);
Assert.AreEqual(" MERGEBARCODE  MyQRCode QR \\b 0xF8BD69 \\f 0xB5413B \\q 3 \\s 250 \\h 1000 \\r 0",
    field.GetFieldCode());
builder.Writeln();

// Создаем DataTable со столбцом с тем же именем, что и BarcodeValue нашего поля MERGEBARCODE.
// Слияние создаст новую страницу для каждой строки. Каждая страница будет содержать поле DISPLAYBARCODE,
// который отобразит QR-код со значением из объединенной строки.
DataTable table = new DataTable("Barcodes");
table.Columns.Add("MyQRCode");
table.Rows.Add(new[] { "ABC123" });
table.Rows.Add(new[] { "DEF456" });

doc.MailMerge.Execute(table);

Assert.AreEqual(FieldType.FieldDisplayBarcode, doc.Range.Fields[0].Type);
Assert.AreEqual("DISPLAYBARCODE \"ABC123\" QR \\q 3 \\s 250 \\h 1000 \\r 0 \\b 0xF8BD69 \\f 0xB5413B", 
    doc.Range.Fields[0].GetFieldCode());
Assert.AreEqual(FieldType.FieldDisplayBarcode, doc.Range.Fields[1].Type);
Assert.AreEqual("DISPLAYBARCODE \"DEF456\" QR \\q 3 \\s 250 \\h 1000 \\r 0 \\b 0xF8BD69 \\f 0xB5413B",
    doc.Range.Fields[1].GetFieldCode());

doc.Save(ArtifactsDir + "Field.MERGEBARCODE.QR.docx");

Показывает, как вставить поле DISPLAYBARCODE и задать его свойства.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

FieldDisplayBarcode field = (FieldDisplayBarcode)builder.InsertField(FieldType.FieldDisplayBarcode, true);

// Ниже приведены четыре типа штрих-кодов, оформленных различными способами, которые может отображать поле DISPLAYBARCODE.
// 1 - QR-код с пользовательскими цветами:
field.BarcodeType = "QR";
field.BarcodeValue = "ABC123";
field.BackgroundColor = "0xF8BD69";
field.ForegroundColor = "0xB5413B";
field.ErrorCorrectionLevel = "3";
field.ScalingFactor = "250";
field.SymbolHeight = "1000";
field.SymbolRotation = "0";

Assert.AreEqual(" DISPLAYBARCODE  ABC123 QR \\b 0xF8BD69 \\f 0xB5413B \\q 3 \\s 250 \\h 1000 \\r 0", field.GetFieldCode());
builder.Writeln();

// 2 - штрих-код EAN13, в котором цифры отображаются под штрихами:
field = (FieldDisplayBarcode)builder.InsertField(FieldType.FieldDisplayBarcode, true);
field.BarcodeType = "EAN13";
field.BarcodeValue = "501234567890";
field.DisplayText = true;
field.PosCodeStyle = "CASE";
field.FixCheckDigit = true;

Assert.AreEqual(" DISPLAYBARCODE  501234567890 EAN13 \\t \\p CASE \\x", field.GetFieldCode());
builder.Writeln();

// 3 - штрих-код CODE39:
field = (FieldDisplayBarcode)builder.InsertField(FieldType.FieldDisplayBarcode, true);
field.BarcodeType = "CODE39";
field.BarcodeValue = "12345ABCDE";
field.AddStartStopChar = true;

Assert.AreEqual(" DISPLAYBARCODE  12345ABCDE CODE39 \\d", field.GetFieldCode());
builder.Writeln();

// 4 - штрих-код ITF4, с указанным кодом корпуса:
field = (FieldDisplayBarcode)builder.InsertField(FieldType.FieldDisplayBarcode, true);
field.BarcodeType = "ITF14";
field.BarcodeValue = "09312345678907";
field.CaseCodeStyle = "STD";

Assert.AreEqual(" DISPLAYBARCODE  09312345678907 ITF14 \\c STD", field.GetFieldCode());

doc.Save(ArtifactsDir + "Field.DISPLAYBARCODE.docx");

Смотрите также