Necesito escribir un programa para dibujar un gráfico usando HP PCL 5e / HP / GL2
-
11-07-2019 - |
Pregunta
Leí un ejemplo e intenté duplicar sus métodos pero con resultados extraños. Esta es una oferta de 1 oportunidad, así que no quiero comprar un paquete para hacer esto. Además, se ejecutará en una base de datos de valores múltiples en un Basic que ya no escriben muchos programadores. Si alguien puede publicar un pequeño ejemplo de esto, sería de gran ayuda. Específicamente, necesito una caja centrada en un papel de 8x11 con el 1/3 izquierdo relleno en verde, el centro 1/3 en amarillo y el último 1/3 en rojo. Luego dibuje una línea a través de 3 puntos dentro de cada color del cuadro.
Gracias.
Solución 2
Problema resuelto: El error de mi pensamiento fue que había una diferencia entre 300 ppp y 600 ppp, así que estaba dividiendo entre 2 y la respuesta parecía casi correcta. El verdadero problema era una diferencia entre 3oo dpi y 720 decipoints. El factor real tenía que ser 2.4 y ahora funciona perfectamente.
Otros consejos
La forma más simple es dibujar 3 cuadros. Tendrá que colocar cada uno por su cuenta haciendo sus propias matemáticas para determinar dónde comenzar el primero para centrarlo, etc.
Primero posicione el cursor en la esquina superior izquierda del primer cuadro, dibuje, mueva a la esquina superior izquierda del siguiente cuadro, dibuje y haga lo mismo para el último. Aquí hay un código:
<esc>&u300D<esc>*t300R<esc>*p300x300Y<esc>*r3U<esc>*v2S<esc>*c300a300b5P<esc>*p600x300Y<esc>*r3U<esc>*v3S<esc>*c300a300b5P<esc>*p900x300Y<esc>*r3U<esc>*v1S<esc>*c300a300b5P
Aquí está la explicación:
<esc>&u300D<esc>*t300R -- set the Unit of Measure and Resolution (in this case 300 dpi)
<esc>*p300x300Y -- move cursor to 300x 300y (1 inch x 1 inch)
<esc>*r3U<esc>*v2S -- set the color palette to RGB and use color 2 (green)
<esc>*c300a300b5P -- draw a box that is 300 wide and 300 tall, use current fill pattern
<esc>*p600x300Y -- move cursor to 600x 300y
<esc>*r3U<esc>*v3S -- set the color palette to RGB use color 3 (yellow)
<esc>*c300a300b5P -- draw a box that is 300 wide and 300 tall, use current fill pattern
<esc>*p900x300Y -- move cursor to 900x 300y
<esc>*r3U<esc>*v1S -- set the color palette to RGB use color 1 (red)
<esc>*c300a300b5P -- draw a box that is 300 wide and 300 tall, use current fill pattern
Aquí están los otros colores y paletas, tenga en cuenta que esta es la manera simple, puede especificar su propio RGB, etc.
RGB Palette
<esc>*r3U<esc>*v1S - Red
<esc>*r3U<esc>*v2S - Green
<esc>*r3U<esc>*v3S - Yellow
<esc>*r3U<esc>*v4S - Blue
<esc>*r3U<esc>*v5S - Magenta
<esc>*r3U<esc>*v6S - Cyan
CMYK Palette
<esc>*r-3U<esc>*v1S - Cyan
<esc>*r-3U<esc>*v2S - Magenta
<esc>*r-3U<esc>*v3S - Blue
<esc>*r-3U<esc>*v4S - Yellow
<esc>*r-3U<esc>*v5S - Green
<esc>*r-3U<esc>*v6S - Red
<esc>*r-3U<esc>*v7S - Black