danfe 0.0.23 copy "danfe: ^0.0.23" to clipboard
danfe: ^0.0.23 copied to clipboard

Package para parsear e transformar um arquivo de danfe xml em objeto ou buffer para impressao

DANFE #

Este package tem como finalidade ajudar no desenvolvimento e manipulação das Danfes, seja NFC-E ou SAT, normalizando o objeto e também criando um buffer de uma impressão padrão para ser enviada para qualquer dispositivo que imprima ESC/POS

O que este package faz! #

  • ✅ Carrega um xml em string e verifica se é SAT ou NFC-E e normaliza um objeto com todas as informações em propriedades genéricas
  • ✅ Cria um buffer em List

Existe um exemplo completo na pasta example do projeto #

Parseando seu xml em um objeto do tipo Danfe #

// importando o package
import 'package:danfe/danfe.dart';
Danfe? danfe = DanfeParser.readFromString(xml);

Transformando seu objeto em um buffer para impressão (Utilizando o esc_pos_utils) #

import 'package:danfe/danfe.dart';
import 'package:esc_pos_utils/esc_pos_utils.dart';
DanfePrinter danfePrinter = DanfePrinter( PaperSize.mm80 ); // ou  PaperSize.mm50
List<int> _dados = await danfePrinter.bufferDanfe(danfe);

Imprimindo o buffer em uma impressora de rede #

import 'package:danfe/danfe.dart';
import 'package:esc_pos_utils/esc_pos_utils.dart';
DanfePrinter danfePrinter = DanfePrinter( PaperSize.mm80 ); // ou  PaperSize.mm50
final profile = await CapabilityProfile.load();
List<int> _dados = await danfePrinter.bufferDanfe(danfe);
NetworkPrinter printer = NetworkPrinter(paper, profile);
await printer.connect('192.168.5.111', port: 9100);
printer.rawBytes(_dados);
printer.disconnect();

Imprimindo um layout diferente do padrão criado por você manualmente #

import 'package:danfe/danfe.dart';
import 'package:esc_pos_utils/esc_pos_utils.dart';
final CustomPrinter custom = CustomPrinter(PaperSize.mm80); // ou  PaperSize.mm50
final profile = await CapabilityProfile.load();
List<int> _dados = await custom.layoutCustom(danfe);
NetworkPrinter printer = NetworkPrinter(paper, profile);
await printer.connect('192.168.5.111', port: 9100);
printer.rawBytes(_dados);
printer.disconnect();

32
likes
140
pub points
74%
popularity

Publisher

verified publishermarcus.brasizza.com

Package para parsear e transformar um arquivo de danfe xml em objeto ou buffer para impressao

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

esc_pos_utils_plus, flutter, intl, xml2json

More

Packages that depend on danfe