Los caracteres de dibujo de cuadros , también conocidos como caracteres de dibujo de líneas , son una forma de semigráficos muy utilizados en interfaces de usuario de texto para dibujar diversos marcos y cuadros geométricos. Estos caracteres se caracterizan por estar diseñados para conectarse horizontal y/o verticalmente con caracteres adyacentes, lo que requiere una alineación adecuada. Por lo tanto, los caracteres de dibujo de cuadros normalmente solo funcionan bien con fuentes monoespaciadas .
En las interfaces gráficas de usuario , estos caracteres son mucho menos útiles, ya que es más sencillo y apropiado dibujar líneas y rectángulos directamente con las API gráficas . Sin embargo, siguen siendo útiles para las interfaces de línea de comandos y los comentarios de texto sin formato dentro del código fuente .
Algunos sistemas integrados recientes también utilizan conjuntos de caracteres propietarios, normalmente extensiones de los conjuntos de caracteres ISO 8859 , que incluyen caracteres de dibujo de cuadros u otros símbolos especiales.
Otros tipos de caracteres de dibujo de caja son los elementos de bloque , los caracteres de sombra y los caracteres gráficos terminales; estos pueden usarse para rellenar regiones de la pantalla y representar sombras proyectadas .
Unicode incluye 128 de estos caracteres en el bloque de dibujo de caja . [1] En muchas fuentes Unicode, solo existirá el subconjunto que también está disponible en el conjunto de caracteres de IBM PC (ver a continuación), debido a que está definido como parte del conjunto de caracteres WGL4 .
La siguiente imagen se proporciona como referencia rápida para estos símbolos en sistemas que no pueden mostrarlos directamente:
El bloque Elementos del bloque Unicode incluye caracteres de sombreado. Se incluyen 32 caracteres en el bloque.
En la versión 13.0, Unicode se amplió con otro bloque que contiene muchos caracteres gráficos, Symbols for Legacy Computing , que incluye algunos caracteres de dibujo de cajas y otros símbolos utilizados por sistemas operativos obsoletos (principalmente de la década de 1980). Pocas fuentes admiten estos caracteres (una es Noto Sans Symbols 2 ), pero la tabla de símbolos se proporciona aquí:
La siguiente imagen se proporciona como referencia rápida para estos símbolos en sistemas que no pueden mostrarlos directamente:
En la versión 16.0 (septiembre de 2024), Unicode se amplió con otro bloque que contiene muchos caracteres gráficos, Symbols for Legacy Computing Supplement , que incluye algunos caracteres de dibujo de cajas y otros símbolos utilizados por sistemas operativos obsoletos (principalmente de las décadas de 1970 y 1980).
Varias plataformas diferentes definieron su propio conjunto único de caracteres para dibujar cajas.
La página de códigos de hardware del IBM PC original proporcionaba los siguientes caracteres de dibujo de cajas, en lo que DOS ahora llama página de códigos 437. Este subconjunto de los caracteres de dibujo de cajas Unicode está incluido en WGL4 y es mucho más popular y probablemente se represente correctamente:
Las mitades integrales también son dibujos de caja, ya que se utilizan junto con 0xB3:
Su número se limita además a 28 en aquellas páginas de códigos que sustituyen los 18 caracteres que combinan líneas simples y dobles, los bloques de mitad izquierda y derecha, así como las mitades integrales con otros caracteres, normalmente alfabéticos (como la página de códigos 850 ):
Nota: Los caracteres no dobles son los caracteres finos (claros) (U+2500, U+2502), no los caracteres en negrita (pesados) (U+2501, U+2503).
Algunas computadoras DOS OEM admitían otros conjuntos de caracteres, por ejemplo, Hewlett-Packard HP 110 / HP Portable y HP 110 Plus / HP Portable Plus , donde en una versión modificada del conjunto de caracteres se añadieron caracteres de dibujo de cuadro en áreas reservadas de su conjunto de caracteres HP Roman-8 normal . [2] [3]
En muchos sistemas Unix y en los primeros sistemas de tablones de anuncios con acceso telefónico , el único estándar común para los caracteres de dibujo de cajas era el conjunto de caracteres alternativos VT100 (véase también: DEC Special Graphics ). La secuencia de escape Esc ( 0
cambiaba los códigos de las letras ASCII en minúscula para dibujar este conjunto, y la secuencia Esc ( B
cambiaba de nuevo:
En algunas terminales, estos caracteres no están disponibles en absoluto, y la complejidad de las secuencias de escape desalienta su uso, por lo que a menudo solo se utilizan caracteres ASCII que se aproximan a los caracteres de dibujo de cajas, como - ( guión-menos ), | ( barra vertical ), _ ( guión bajo ), = ( signo igual ) y + ( signo más ) en una especie de estilo artístico ASCII .
Los emuladores de terminal Unix modernos utilizan Unicode y, por lo tanto, tienen acceso a los caracteres de dibujo de líneas enumerados anteriormente.
El sistema mundial de teletexto (WST) utiliza caracteres de dibujo de píxeles para algunos gráficos. Una celda de carácter se divide en regiones de 2×3 y se asignan 2 6 = 64 posiciones de código para todas las combinaciones posibles de píxeles. [4] Estos caracteres se agregaron al estándar Unicode en la versión 13. [5]
Muchos microordenadores de los años 1970 y 1980 tenían sus propios conjuntos de caracteres, que también incluían caracteres para dibujar cuadros. Muchos de ellos se añadieron a Unicode como Símbolos para la informática heredada .
Las máquinas Commodore, como Commodore PET y Commodore 64 , incluían un conjunto de semigráficos de texto con elementos de bloque y patrones de tramado en el conjunto de caracteres PETSCII.
Las Sinclair ZX80 , ZX81 y ZX Spectrum incluían un conjunto de semigráficos de texto con elementos de bloque basados en cuadrantes. Las ZX80 y ZX81 también incluían un conjunto de semigráficos de texto con patrones de tramado.
La BBC Micro podía utilizar el conjunto de caracteres de 7 bits del teletexto , que tenía 128 caracteres de dibujo de cuadros, cuyos puntos de código se compartían con los caracteres alfanuméricos y de puntuación habituales. Se utilizaban caracteres de control para cambiar entre el texto normal y el dibujo de cuadros. [6]
Las computadoras BBC Master y las posteriores Acorn tienen la fuente suave definida de manera predeterminada con caracteres de dibujo lineal.
El conjunto de caracteres Amstrad CPC también tiene caracteres suaves definidos de forma predeterminada como caracteres de dibujo de línea y de bloque.
El conjunto de caracteres CP/M Plus utilizado en varias computadoras Amstrad de las familias CPC , PCW y Spectrum también incluía un rico conjunto de caracteres de dibujo de líneas: [8] [9] [10]
MouseText es un conjunto de caracteres de visualización para Apple IIc , IIe y IIGS que incluye caracteres de dibujo de cuadros.
En muchas plataformas, la forma del carácter se determina programáticamente a partir del código del carácter.
0x80 + topright*1 + topleft*2 + bottomright*4 + bottomleft*8
0x80 + topleft*1 + topright*2 + bottomleft*4 + bottomright*8
0x90 + up*1 + right*2 + down*4 + left*8
0xA0 + down*1 + right*2 + left*4 + up*8
0xA0 + topleft*1 + topright*2 + middleleft*4 + middleright*8 + bottomleft*16 + bottomright*64
Sin embargo, los caracteres de dibujo de líneas y cuadros de DOS no están ordenados de ninguna manera programática, por lo que para calcular una forma de carácter particular es necesario utilizar una tabla de búsqueda.
Diagramas de muestra realizados a partir de caracteres de dibujo de caja estándar, utilizando una fuente monoespaciada:
┌─┬┐ ╔═╦╗ ╓─╥╖ ╒═╤╕│ ││ ║ ║║ ║ ║║ │ ││├─┼┤ ╠═╬╣ ╟─╫╢ ╞═╪╡└─┴┘ ╚═╩╝ ╙─╨╜ ╘═╧╛┌───────────────────┐│ ╔═══╗ Un poco de texto │▒│ ╚═╦═╝ en la caja │▒╞═╤══╩══╤═══════════╡▒│ ├──┬──┤ │▒│ └──┴──┘ │▒└───────────────────┘▒ ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒