npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

react-native-usb-thermal-printer

v1.0.7

Published

React Native module to print on USB thermal printers

Downloads

28

Readme

React Native USB Thermal Printer

react-native-usb-thermal-printer é uma biblioteca para React Native que permite a interface com impressoras térmicas USB. Esta biblioteca é compatível apenas com dispositivos Android. Ela oferece funcionalidades para imprimir textos, imagens, códigos de barras e QR codes.

Esta biblioteca foi desenvolvida usando como referência a react-native-thermal-receipt-printer.

Instalação

Certifique-se de que o pacote esteja adicionado ao seu projeto:

npm install react-native-usb-thermal-printer

Requisitos

  • Este package é compatível apenas com Android. Não é compatível com Expo Go, pois não suporta módulos nativos que não estão incluídos no SDK do Expo.

Uso

Importando a Biblioteca

import {
  onPrintDeviceList,
  onPrintText,
  onPrintImageURL,
  onPrintImageBase64,
  onPrintCut,
  onPrintClear,
  onPrintBarCode,
  onPrintQRCode,
  IPrinter,
  PrinterOptions,
  PrinterImageOptions
} from 'react-native-usb-thermal-printer';

Referência da API

onPrintDeviceList()

Recupera uma lista de impressoras USB disponíveis.

Retorna:

  • Promise<IPrinter[]>: Uma promessa que resolve com um array de objetos impressora.

onPrintText(id, text, opts)

Imprime texto na impressora especificada.

  • id: number: Identificador da impressora (product_id).
  • text: string: Texto a ser impresso.
  • opts: PrinterOptions: Configuração opcional para impressão.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na impressão.

onPrintImageURL(id, imageUrl, opts)

Imprime uma imagem a partir de uma URL.

  • id: number: Identificador da impressora (product_id).
  • imageUrl: string: URL da imagem a ser impressa.
  • opts: PrinterImageOptions: Configuração opcional para impressão.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na impressão.

onPrintImageBase64(id, base64, opts)

Imprime uma imagem a partir de uma string codificada em Base64.

  • id: number: Identificador da impressora (product_id).
  • base64: string: Dados da imagem codificados em Base64.
  • opts: PrinterImageOptions: Configuração opcional para impressão.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na impressão.

onPrintCut(id, line, beep)

Corta o papel na impressora especificada.

  • id: number: Identificador da impressora (product_id).
  • line: boolean: Indica se deve incluir uma linha final.
  • beep: boolean: Determina se um som de beep é emitido durante o corte.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso no corte.

onPrintClear(id)

Limpa a fila de impressão.

  • id: number: Identificador da impressora (product_id).

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na limpeza.

onPrintBarCode(id, w, h, text)

Imprime um código de barras.

  • id: number: Identificador da impressora (product_id).
  • w: number: Largura do código de barras.
  • h: number: Altura do código de barras.
  • text: string: Dados para o código de barras.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na impressão.

onPrintQRCode(id, text, size)

Imprime um QR code.

  • id: number: Identificador da impressora (product_id).
  • text: string: Dados para o QR code.
  • size: number: Tamanho do QR code.

Retorna:

  • Promise<string>: Uma promessa que resolve em caso de sucesso na impressão.

Exemplo

(async () => {
  try {
    const printers = await onPrintDeviceList();
    console.log('Impressoras Disponíveis:', printers);

    if (printers.length > 0) {
      const printerId = printers[0].device_id;
      await onPrintText(printerId, 'Olá, Impressora Térmica!');
      console.log('Texto impresso com sucesso!');
    }
  } catch (error) {
    console.error('Erro na impressão:', error);
  }
})();

Licença

Este projeto é licenciado sob a Licença MIT.