P4 Software P4 Software / BarcoderX Español

Agrega esta documentación a Claude

Hazle preguntas a Claude sobre esta documentación. Claude lee las páginas publicadas y te enlaza a ellas. Copia esta dirección:

https://docs.p4software.cloud/mcp

En claude.ai o Claude Desktop: abre Configuración, luego Conectores, elige Agregar conector personalizado y pega la dirección.

En Claude Code, ejecuta:

claude mcp add --transport http docs https://docs.p4software.cloud/mcp

Dibujo de formas

Dibujo de formas

Aplica a: BarcoderX Basic y Ultimate

Estado: Construido, aún sin publicar. La primera parte del motor de dibujo existe y está probada, pero todavía no se ha publicado nada y no hay nada que descargar. Puede calcular qué cubre una forma rellena. Todavía no puede dibujar contornos, mezclar colores ni colocar imágenes. Esta página dice qué hace hoy y qué viene después.

BarcoderX dibuja las etiquetas con su propio motor de dibujo. No usa las funciones de dibujo del sistema operativo, por lo que una etiqueta se ve igual en Windows x64, Linux x64 y Linux arm64. Esta página describe el núcleo de ese motor, la parte que calcula qué cubre una forma rellena. Todo lo demás en una etiqueta, como el texto, los códigos de barras y las imágenes, se construye sobre él.

Formas

Una forma es un trazado: una serie de movimientos, líneas rectas y curvas. Un trazado puede tener varias piezas separadas, y cada pieza puede estar abierta o cerrada. Usted puede construir un trazado con estos pasos:

  • Un movimiento a un punto, y una línea recta hasta un punto.
  • Una curva suave con un punto de control, y una curva suave con dos puntos de control.
  • Cerrar la pieza actual.

Cuatro formas ya hechas le ahorran los pasos: un rectángulo, un rectángulo con esquinas redondeadas (cada esquina tiene su propio radio horizontal y vertical), una elipse y un arco de elipse.

Mover, escalar y girar

Una transformación coloca una forma en la página. Usted puede desplazarla, escalarla en cantidades distintas a lo ancho y a lo alto, y girarla en cualquier ángulo, alrededor del origen o alrededor de un punto que usted elija. Las transformaciones se combinan en el orden que usted indique, y una transformación que se puede deshacer tiene una inversa. Un giro en un ángulo que no es múltiplo de 90 grados se dibuja directamente, y el resultado es suave.

Rellenar una forma

Rellenar calcula qué píxeles cubre el interior de una forma, y en qué medida. Dos reglas deciden qué es el interior cuando un trazado se cruza a sí mismo o tiene una pieza dentro de otra:

  • Distinto de cero. Un punto está dentro si el trazado da alguna vuelta a su alrededor. Una pieza dibujada dentro de otra en el mismo sentido sigue rellena.
  • Par-impar. Un punto está dentro si una línea desde él hacia el exterior cruza el trazado un número impar de veces. Una pieza dibujada dentro de otra forma un agujero.

Los bordes son suaves. Para cada píxel, el motor calcula qué parte del píxel cubre la forma, como un número de 0 (nada) a 255 (todo). Poner un color sobre una superficie en esa proporción es mezclar, y todavía no está construido (vea el final de esta página). Un píxel que la forma cubre por completo vale exactamente 255, y uno que no toca vale exactamente 0. Por eso, un rectángulo cuyos bordes coinciden con los límites de los píxeles se rellena sin ningún borde suave.

Para las impresoras que imprimen en blanco y negro, el motor puede dibujar en una superficie de 1 bit. Allí rellena rectángulos sobre puntos enteros de la impresora, y convierte la cobertura de una forma en negro donde la cobertura es 128 o más.

Superficies

Una superficie es la cuadrícula de píxeles sobre la que usted dibuja. Existen tres tipos:

SuperficieQué contiene
Color con transparenciaRojo, verde, azul y opacidad de cada píxel, de 8 bits cada uno.
GrisUn valor de 8 bits por píxel.
Blanco y negroUn bit por píxel, ocho por byte.

Una lista de pasos de dibujo

En lugar de dibujar de inmediato, usted puede registrar los pasos en una lista: rellenar un trazado, rellenar rectángulos, iniciar un área de recorte (un rectángulo o un trazado) y terminarla. La lista se puede escribir como texto sencillo en una sola forma fija, de modo que dos listas se puedan comparar con exactitud. Ejecutar una lista todavía no está construido.

Precisión

  • Los puntos se llevan a una cuadrícula de 1/4096 de píxel antes del relleno, y el relleno usa después solo aritmética de números enteros. Por eso el resultado no depende del procesador.
  • Las curvas se cortan en piezas rectas cortas que quedan a menos de 0.1 de píxel de la curva real.
  • En las pruebas automáticas de BarcoderX, la cobertura de siete escenas de prueba (curvas, un giro en un ángulo que no es recto y escenas cortadas por cada lado de la ventana) tiene la misma huella digital en Windows x64, Linux x64 y Linux arm64.
  • Un rectángulo cuyos bordes coinciden con los límites de los píxeles es exacto. Una forma con bordes inclinados queda a menos de 0.6 de un paso (de 255) de la cobertura exacta.
  • Donde varias piezas de un trazado que se superponen cruzan el mismo píxel, el resultado puede diferir un poco del área cubierta real. Una pieza sola, y las piezas que apenas se tocan, son exactas dentro del redondeo de la cuadrícula.

Límites

BarcoderX comprueba cada límite antes de reservar la memoria que protege. Un dibujo demasiado grande o demasiado complejo se rechaza con un código de diagnóstico de 3001 a 3005. Consulte Códigos de diagnóstico.

LímiteValor
Píxeles en una superficie, ventana o área de cobertura64,000,000 (64 millones)
Lado más largo de una superficie, ventana o área de cobertura262,144 píxeles. Es una propiedad fija del diseño y no se puede aumentar.
Pasos en un trazado1,000,000
Piezas rectas en que se cortan las curvas de un relleno4,000,000
Trabajo de un relleno100,000,000 de unidades, que son unos cinco segundos en un procesador de escritorio reciente
Tamaño de una coordenada después de la transformaciónUnos mil millones de píxeles (2 elevado a la 30)

El código de dibujo comprueba si se canceló en cada fila y cada 1,024 piezas, de modo que el programa que lo llama puede imponer su propio límite de tiempo, como 2 segundos para una etiqueta. Una coordenada que no es un número, o que es demasiado grande, se rechaza.

Qué todavía no está construido

  • Contornos. Líneas con grosor, remates, uniones y guiones. El motor puede rellenar una forma, pero todavía no puede dibujar su contorno.
  • Mezcla. Dibujar con transparencia parcial sobre lo que ya está.
  • Recorte al dibujar. Las áreas de recorte se pueden registrar en una lista, pero todavía no se aplican.
  • Imágenes. Colocar una imagen sobre una superficie, con escala.
  • Texto. Dibujar texto requiere la compatibilidad con fuentes que describe Compatibilidad con fuentes y un diseño de texto que todavía no está construido.
  • Ejecutar una lista de pasos de dibujo, y volver a leerla desde su forma de texto.

BarcoderX es un producto de P4 Software.

¿Te resultó útil esta página?