Foros del Web » Creando para Internet » Diseño web »

Numeración romana.

Estas en el tema de Numeración romana. en el foro de Diseño web en Foros del Web. Más de uno ha tenido que usar números romanos en su página, y si debe (o quiere) mantener una coherencia semántica, se habrá encontrado con ...
  #1 (permalink)  
Antiguo 20/11/2011, 08:33
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 7 meses
Puntos: 317
Información Numeración romana.

Más de uno ha tenido que usar números romanos en su página, y si debe (o quiere) mantener una coherencia semántica, se habrá encontrado con un problema : ¿cómo se escriben?.
El primer impulso es tipearlo "como texto", usando los caracteres ASCII que tengan su grafía equivalente, pero con meditarlo un poco ya nos damos cuenta de que no es la mejor solución en cualquier caso.
Antes de seguir, dejo una tabla para que armen y tengan a mano mientras leen este post.

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>NÚMEROS ROMANOS. </title>

<style type="text/css">
body, td , dl {font-family: "microsoft sans serif", "arial unicode ms", "ms reference sans serif", "kalos greek", "lucida sans unicode", "charis sil", "segoe ui", quivira, cambria math", "ms mincho", "ms pgothic", "ms ui gothic", symbola, sans-serif; font-size:100%; }
td , th  {text-align: center; }
h1 {font-size: 1.5em; }
h2 {font-size: 1.2em; }
</style>
</head>
<body>
<h1>Numeración Romana.</h1>

<table border=1 aligntext=center>
<thead>
<th>ARAB </th><th colspan=3>ROMANO <br>UniCode </th><th colspan=3>Caract. Combinados. <br>UniCode </th><th colspan=3>Caract. Combinados. <br>ASCII (y UniCode)</th>
</thead>
<thead>
<th> </th><th> </th><th> decimal </th><th> hexadecimal </th><th> </th><th> decimal </th><th> hexadecimal </th><th> </th><th> decimal </th><th> hexadecimal </th>
</thead>
<tbody>
<tr><td>1 </td><td></td><td> 8544 </td><td> 2160 </td><td> </td><td> </td><td> </td><td>I </td><td> </td><td> </td></tr>
<tr><td>2 </td><td></td><td> 8545 </td><td> 2161 </td><td>ⅠⅠ </td><td> 8544 8544 </td><td> 2160 2160 </td><td>II </td><td> </td><td> </td></tr>
<tr><td>3 </td><td></td><td> 8546 </td><td> 2162 </td><td>ⅠⅠⅠ </td><td> 8544 8544 8544 </td><td> 2160 2160 2160 </td><td>III </td><td> </td><td> </td></tr>
<tr><td>4 </td><td></td><td> 8547 </td><td> 2163 </td><td>ⅠⅤ </td><td> 8544 8548</td><td> 2160 2164 </td><td>IV </td><td> </td><td> </td></tr>
<tr><td>5 </td><td></td><td> 8548 </td><td> 2164 </td><td>V </td><td> </td><td> </td><td> V </td><td> </td><td> </td></tr>
<tr><td>6 </td><td></td><td> 8549 </td><td> 2165 </td><td>ⅤⅠ </td><td> 8548 8544 </td><td> 2164 2160 </td><td>VI </td><td> </td><td> </td></tr>
<tr><td>7 </td><td></td><td> 8550 </td><td> 2166 </td><td>ⅤⅠⅠ </td><td> 8548 8544 8544 </td><td> 2164 2160 2160 </td><td>VII </td><td> </td><td> </td></tr>
<tr><td>8 </td><td></td><td> 8551 </td><td> 2167 </td><td>ⅤⅠⅠⅠ </td><td> 8548 8544 8544 8544 </td><td> 2164 2160 2160 2160 </td><td>VIII </td><td> </td><td> </td></tr>
<tr><td>9 </td><td></td><td> 8552 </td><td> 2168 </td><td>ⅠⅩ </td><td> 8544  8553 </td><td> 2160 2169 </td><td>IX </td><td> </td><td> </td></tr>
<tr><td>10 </td><td></td><td> 8553 </td><td> 2169 </td><td>X </td><td> </td><td> </td><td> X </td><td> </td><td> </td></tr>
<tr><td>11 </td><td></td><td> 8554 </td><td> 216A</td><td>ⅩⅠ </td><td> 8553 8544 </td><td> 2169 2160 </td><td>XI </td><td> </td><td> </td></tr>
<tr><td>12 </td><td></td><td> 8555 </td><td> 216B </td><td>ⅩⅠⅠ </td><td> 8553 8544 8544 </td><td> 2169 2160 2160 </td><td>XII </td><td> </td><td> </td></tr>

<tr><td rowspan=3>1.000 </td>
<td></td><td> 8559</td><td> 216F</td><td> ⅭⅠƆ</td><td> 8557 8544 390 </td><td> 216D 2160 0186 </td><td> M </td> </td><td> </td><td></tr>
<tr><td></td><td>8576 </td><td>2180 </td><td>  Ⅰ̅ </td><td> 8544 773 </td><td> 2160 0305 </td><td> CD (I) </td> <td></td><td> </td></tr>
<tr><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td></td><td> 73 773 </td><td>  49 0305 </td></tr>

<tr><td rowspan=2>5.000 </td>
<td></td><td> 8577 </td><td>  2181 </td><td> ⅠƆƆ </td><td> 8544 390 390 </td><td>  2160 0186 0186 </td><td> I)) (D </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td> Ⅴ̅ ̅ </td><td> 8548 773  </td><td>  2164 0305 </td><td></td> <td> 86 773 </td><td>  56 0305 </td></tr>

<tr><td rowspan=2>10.000 </td>
<td></td><td> 8578 </td><td>  2182 </td><td> ⅭⅭⅠƆƆ </td><td> 8557 8557 8544 390 390 </td><td>  216D 216D 2160 0186 0186 </td><td> ((I)) ((D) </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td> Ⅹ̅ </td><td> 8553 773 </td><td> 2169 0305 </td><td></td><td> 88 773 </td><td>  58 0305 </td></tr>

<tr><td rowspan=2>50.000 </td>
<td> </td><td> </td><td> </td><td> ⅠƆƆƆ </td><td> 8544 390 390 390 </td><td>  2160 0186 0186 0186 </td><td> I))) D)) </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td>  Ⅼ̅ </td><td> 8556 773 </td><td>  216C 0305 </td><td></td><td> 76 773 </td><td> 4C 0305 </td></tr>

<tr><td rowspan=2>100.000 </td>
<td> </td><td> </td><td> </td><td> ⅭⅭⅭⅠƆƆƆ </td><td> 8557 8557 8557 8544 390 390 390 </td><td>  216D 216D 216D 2160 0186 0186 0186 </td><td> (((I))) (((D)) </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td> Ⅽ̅ </td><td> 8557 773 </td><td>  216D 0305 </td><td></td><td> 67 773 </td><td> 43 0305 </td></tr>

<tr><td rowspan=2>500.000 </td>
<td> </td><td> </td><td> </td><td> ⅠƆƆƆƆ </td><td> 8544 390 390 390 390 </td><td>  2160 0186 0186 0186 0186 </td><td> I)))) D))) </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td> Ⅾ̅ </td><td> 8558 773 </td><td>  216E 0305 </td><td></td><td> 68 773 </td><td> 44 0305 </td></tr>

<tr><td rowspan=2> 1.000.000 </td>
<td> </td><td> </td><td> </td><td> ⅭⅭⅮⅠƆƆƆƆ </td><td> 8557 8557 8558 8544 390 390 390 390 </td><td>  216D 216D 216E 2160 0186 0186 0186 0186 </td><td> ((DI)))) </td> </td><td> </td><td></tr>
<tr><td> </td><td> </td><td> </td><td>  Ⅰ̿ </td><td> 8544 831 </td><td>  2160 033F </td><td> I̿ </td><td> 73 831 </td><td>  49 033F </td></tr>

<tr><td>15 </td>
<td></td><td> 8572 </td><td>  217C </td><td> </td><td> </td><td> </td><td> | </td> </td><td> </td><td></tr>
</tbody></table>

<dl>
<dt><h2>Otros caracteres.</h2></dt>
<dd>Ɔ : letra latina O abierta ( dec, 390 ; hex, 0186 ). </dd>
<dd title="El ejemplo está precedido por un espacio.">&nbsp;̅ : suprarrayado combinable ( dec, 773 ; hex, 0305 ).</dd>
<dd title="El ejemplo está precedido por un espacio.">&nbsp;̿ : suprarrayado doble combinable ( dec, 831 ; hex, 033f ).</dd>
<dd>∞ :  infinito ( dec, 8734 ; hex, 221e ). Forma primitiva de escribir "mil". </dd>
<dd>⋈ :  pajarita ( dec, 8904 ; hex, 22c8 ).  Forma primitiva de escribir "mil". </dd>
</dl> 

<p>Existe una versión en "letras minúsculas" que se usa principalmente en numeradores de lista, no para escribir cifras. </p>
</body>
</html> 
Continúa en el próximo mensaje.
  #2 (permalink)  
Antiguo 20/11/2011, 08:34
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 7 meses
Puntos: 317
Información Respuesta: Numeración romana.

Por supuesto, ahora que vimos la tabla, quien no había pensado en este asunto ya descubrió que es un poco más complejo de lo que parecía; y también que alguien se tomó el trabajo de estudiar el problema por nosotros, y proponer algunas soluciones.

Empecemos por un caso simple, como es la carátula de un reloj.
Para poner los doce números en ronda cada 30°, por lo general se usa un programa que los ubique por coordenadas. Pero no los ubica como "caracteres" sino como "bloque o grupo", ya que al escribirlos juntamos entre uno y tres para formar el número. Esto no es grave, es un paso más de trabajo y en cifras arábigas pasa lo mismo (el 10, el 11 y el 12 tienen dos dígitos). Lo más molesto es que la posición que usan los programas es con respecto a la esquina superior izquierda del caracter o del bloque de caracteres; y entonces un "12" y un "6", que tienen anchos distintos, no van a quedar bien alineados.
Con la numeración romana es todavía peor.

Un principio para resolverlo es crear caracteres que vengan "prearmados" desde el "1" hasta el "12" y desde el "I" hasta el "XII". Y en Unicode ya existen. Por supuesto, si la fuente además no es monospace, alguna diferencia de tamaño todavía existe; pero es un avance, un principio de solución sin que nos obliguen a inventar nada.

Sin embargo, el fin de esos caracteres no es precisamente llenar cuadrantes de relojes analógicos. Están pensados para fechas, y para otros programas que lean e interpreten texto semanticamente.
Antes de seguir, recordemos que en los formatos de fecha los meses se escriben en romano, y que la versión arábiga es más que nada para uso comercial y para facilitar la lectura de quienes no sepan leer en latín . De este modo, si pasamos desde su ruta o dirección un documento por un OCR que discrimine entre la parte tipeada y el texto en imagen, y los caracteres los procese siguiendo indicaciones de formato, es más fácil que reconozca un "/Ⅸ" como "septiembre" y lo reemplace eventualmente por su versión arábiga o le cambie la fuente.
Ni hablar de un TextToVoice. La diferencia entre que pronuncie "ics" o "nueve-en-roman-o" es enorme.

Como dije, es una cuestión semántica, que sólo le importa al desarrollador de páginas web; para un diseñador gráfico es practicamente lo mismo, porque lo importante es cómo se ve y no cómo lo escribimos. Es más, seguro algún diseñador gráfico metido a web o quizá un aprendiz con WISYWIG preferirán poner el formato overline para "mil" y "millón" usando CSS.
(¡CUACK!)
La parte mala de todo esto es que no todo el mundo instaló su fuente Unicode, y si metemos estos caracteres es posible que alguien no los vea. De hecho, resulta que la "interpretación" que le da el estándar a algunos no termina de coincidir con el sistema de números romanos. Como el "Ɔ", que no es una "C mayúscula invertida" sino una "O abierta a la izquierda".
Pero estos son formatos de numeración antiguos, usados por lingüistas y latinistas. Normalmente nosotros usamos la grafía más moderna ... que en Unicode no interpreta el sobrerrayado como multiplicador .

Etiquetas: ascii, equivalencia, numeros, romanos, unicode
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:05.