koiLabelElementFromJson function

KoiLabelElement koiLabelElementFromJson(
  1. Map<String, dynamic> json
)

反序列化标签元素。

Implementation

KoiLabelElement koiLabelElementFromJson(Map<String, dynamic> json) {
  final type = json['type'] as String;
  if (_ticketTypes.contains(type)) {
    throw FormatException('小票元素 "$type" 不能放入标签文档');
  }
  return switch (type) {
    'labelSetup' => _labelSetupFromJson(json),
    'positionedText' => _positionedTextFromJson(json),
    'positionedBarcode' => _positionedBarcodeFromJson(json),
    'positionedQrCode' => _positionedQrCodeFromJson(json),
    'labelBox' => _labelBoxFromJson(json),
    'labelReverse' => _labelReverseFromJson(json),
    'labelLine' => _labelLineFromJson(json),
    'labelImage' => _labelImageFromJson(json),
    'labelPrint' => _labelPrintFromJson(json),
    'rawCommand' => _rawCommandFromJson(json),
    'labelForEach' => _labelForEachFromJson(json),
    'labelBlockText' => _labelBlockTextFromJson(json),
    'labelCircle' => _labelCircleFromJson(json),
    'labelEllipse' => _labelEllipseFromJson(json),
    'labelDiagonal' => _labelDiagonalFromJson(json),
    'labelBeep' => _labelBeepFromJson(json),
    'labelCut' => _labelCutFromJson(json),
    'labelFeed' => _labelFeedFromJson(json),
    'labelPdf417' => _labelPdf417FromJson(json),
    _ => throw FormatException('未知标签元素类型: $type'),
  };
}