Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Last active May 3, 2024 02:41
Show Gist options
  • Save parzibyte/2f36655ef9d6ea8e6de73c6e09bbc735 to your computer and use it in GitHub Desktop.
Save parzibyte/2f36655ef9d6ea8e6de73c6e09bbc735 to your computer and use it in GitHub Desktop.
CargarImagenLocalEImprimir(ruta string, maximoAncho float64, algoritmo float64)
Lee una imagen del almacenamiento local, la convierte a blanco y negro y la
imprime usando el algoritmo indicado. Revisar la función imprimirImagen para
ver los detalles de los parámetros
Corte(lineas float64)
Corte completo
CorteParcial()
Corte parcial
DefinirCaracterPersonalizado(caracterRemplazoComoCadena string, matrizComoCadena string)
Establece un carácter personalizado de 24x12. Es útil para imprimir
caracteres no soportados por algunas impresoras, ya sea el euro, centavo
o lo que puedas dibujar en un cuadro de 24x12 Esta función establece el
carácter personalizado pero no lo imprime. Solo hace falta llamarla a una
vez, y después cada que se imprima el carácter reemplazado se va a imprimir
el personalizado La matrizComoCadena debe ser, como su nombre lo dice, una
matriz como cadena (wow). Debe tener exactamente 24 líneas (separadas por
un salto de línea) y en cada fila debe haber exactamente 12 dígitos, cada
dígito debe ser un 1 o un 0. No debe haber tabulaciones ni espacios extra
Aquí un ejemplo de cadena válida: 000001111000 000010000100 000100011110
000100100001 011100100001 010100100001 010100100001 010100011110
010100000010 011100000010 000100111010 000100101010 000111101110
000000000000 000000000000 000000000000 111010101110 100010101000
111010101110 001010100010 111011101110 000000000000 000000000000
000000000000 Nota: la matriz es de 24x12 porque así es la fuente A. Si fuera
la fuente B sería de 17x9, pero esa fuente no funciona en mi impresora así
que no he probado. Es decir, no intentes esto si tienes seleccionada la
fuente B
DescargarImagenDeInternetEImprimir(urlImagen string, maximoAncho float64, algoritmo float64)
Descarga una imagen de internet, la convierte a blanco y negro y la imprime
usando el algoritmo indicado. Revisar la función imprimirImagen para ver los
detalles de los parámetros
DeshabilitarCaracteresPersonalizados()
Deshabilita los caracteres personalizados
DeshabilitarElModoDeCaracteresChinos()
Deshabilita el modo de caracteres chinos. Si tu impresora es china y al
imprimir acentos aparecen caracteres chinos es porque debes deshabilitarlos
EscribirTexto(texto string)
Escribe texto en la impresora. El texto no será impreso hasta que se
encuentre un salto de línea o es invoque a Feed
EstablecerAlineacion(alineacion float64)
Establece la alineación del texto e imágenes (incluyendo códigos de barras y
QR) según la alineacion. Izquierda es 0, Centro 1 y Derecha 2
EstablecerEnfatizado(enfatizado bool)
Habilita o deshabilita el modo enfatizado
EstablecerFuente(fuente float64)
Establece la fuente, que puede ser 0 o 1. En mi caso solo soporta una
fuente que es la A Tener cuidado al cambiar la fuente e intentar imprimir un
carácter personalizado, pues por el momento solo funciona con la fuente A
EstablecerImpresionAlReves(alReves bool)
Habilita o deshabilita la impresión al revés
EstablecerImpresionBlancoYNegroInversa(invertir bool)
Habilita o deshabilita la impresión inversa. En modo inverso, el fondo es
negro y el texto blanco
EstablecerRotacionDe90Grados(rotar bool)
Habilita o deshabilita la rotación de 90 grados
EstablecerSubrayado(subrayado bool)
Habilita o deshabilita el modo subrayado
EstablecerTamañoFuente(multiplicadorAncho, multiplicadorAlto float64)
Establece el tamaño de la fuente según el multiplicador de ancho y el
multiplicador del alto. Ambos valores pueden ir desde el 1 hasta el 8
También afecta a los caracteres personalizados
Feed(lineas float64)
Imprime los datos almacenados en el búfer de la impresora (almacenados con
EscribirTexto y similares) y empuja el papel una cantidad de lineas
GenerarImagenAPartirDeHtmlEImprimir(html string, anchoPagina float64, maximoAncho float64, algoritmo float64)
Genera una imagen a partir del html usando el anchoPagina como el ancho de
la pantalla del navegador web para renderizar la imagen Después, imprime esa
imagen con el maximoAncho y el algoritmo indicado
GenerarImagenAPartirDePaginaWebEImprimir(direccionPagina string, anchoPagina float64, maximoAncho float64, algoritmo float64)
Genera una imagen a partir del html generado por la página web ubicada en
la direccionPagina usando el anchoPagina como el ancho de la pantalla del
navegador web para renderizar la imagen Después, imprime esa imagen con el
maximoAncho y el algoritmo indicado
HabilitarCaracteresPersonalizados()
Habilita los caracteres personalizados. Si está habilitado entonces se va a
imprimir el carácter personalizado en lugar del carácter que fue reemplazado
HabilitarElModoDeCaracteresChinos()
Habilita el modo de caracteres chinos. Solo presente porque existe también
DeshabilitarElModoDeCaracteresChinos
ImprimirCodigoDeBarrasCodabar(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasCode128(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasCode39(contenido string, incluirSumaDeVerificacion, modoAsciiCompleto bool, alto, ancho float64, algoritmo float64)
Las siguientes funciones imprimen códigos de barras siguiendo el mismo
proceso. Se genera la imagen, se convierte a blanco y negro y luego se
imprime usando el algoritmo indicado. Revisar la función imprimirImagen para
ver los detalles de los parámetros.
Nota: el parámetro incluirSumaDeVerificacion y modoAsciiCompleto son propios
del algoritmo del código de barras, no del plugin
ImprimirCodigoDeBarrasCode93(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasEan(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasEan8(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasPdf417(contenido string, nivelSeguridad float64, alto, ancho float64, algoritmo float64)
Nota: el nivel de seguridad tiene que ver con el propio algoritmo del código
de barras, no con el plugin. Debe ser entre 0 y 8
ImprimirCodigoDeBarrasTwoOfFiveITF(contenido string, intercalado bool, alto, ancho float64, algoritmo float64)
Nota: el parámetro "intercalado" es propio del algoritmo del código de
barras, no del plugin
ImprimirCodigoDeBarrasUpcA(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoDeBarrasUpcE(contenido string, alto, ancho float64, algoritmo float64)
ImprimirCodigoQr(contenido string, anchoMaximo, nivelRecuperacion float64, algoritmo float64)
Nota: el nivelRecuperacion es propio del algoritmo generador del QR,
no del plugin. Puede ser 0 (low), 1 (medium), 2(high) y 3 (highest).
Se recomienda medium
ImprimirImagenEnBase64(imagenCodificadaEnBase64 string, maximoAncho float64, algoritmo float64)
Convierte el texto en base64 a una imagen, la convierte a blanco y negro
y la imprime usando el algoritmo indicado. La imagenCodificadaEnBase64
puede ser JPG o PNG y tener o no tener el "base64," Revisar la función
imprimirImagen para ver los detalles de los parámetros. Dependiendo del
algoritmo, hay que cambiar el ancho o máximo alto
Iniciar()
Inicializar impresora. Limpia los datos en el búfer y reinicia la impresora
al modo que estaba en efecto cuando fue encendida
Pulso(pin float64, tiempoEncendido float64, tiempoApagado float64)
Genera un pulso tomando en cuenta tiempoEncendido que son los milisegundos
para encender y los milisegundos para apagar según tiempoApagado El pin
puede ser 48 o 49 Normalmente debería ser el pin 48, tiempoEncendido 60,
tiempoApagado 120
TextoSegunPaginaDeCodigos(numeroPagina float64, pagina, texto string)
Permite escribir texto con acentos. Hay que especificar el número de página
(según la impresora) y el character code page para iconv.
Si me preguntan, yo he elegido la página 2 pero en lugar de especificar
cp860 (como debería ser) especifico cp850 Así puedo imprimir lo siguiente
con todo y acentos, signos, etcétera cp850 con numero 2 ¿EL VELOZ MURCIÉLAGO
HINDÚ COMÍA FELIZ CARDILLO Y KIWI? ¡LA CIGÜEÑA TOCABA EL SAXOFÓN DETRÁS DEL
PALENQUE DE PAJA!. cp850 con número 2 ¿el veloz murciélago hindú comía feliz
cardillo y kiwi? ¡la cigüeña tocaba el saxofón detrás del palenque de paja!.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment