¿Qué fuente usa el Bloc de notas para mostrar, por ejemplo, hebreo, cuando dice usar la consola Lucida pero la consola Lucida no tiene esos caracteres?


7

Courier New tiene el carácter \ u05D0 letra hebrea aleph

algunas otras fuentes también lo hacen, como Miriam y David.

ingrese la descripción de la imagen aquí

Puedo pegar eso en el bloc de notas

La consola de Lucida no tiene el personaje. El mapa de caracteres muestra que Lucida Console no tiene el personaje.

Sin embargo, el bloc de notas lo muestra incluso cuando la fuente Lucida Console está configurada

ingrese la descripción de la imagen aquí

Entonces, ¿qué fuente está usando el bloc de notas?


El Bloc de notas usa la consola Lucida de Windows 2000 a Windows 8.

La consola @JeffreyLin Lucida tampoco tiene el carácter aleph. Acabo de enmendar la pregunta para usar Lucida Console como ejemplo en lugar de Consolas, pero el mismo problema
barlop

Si lo intento en Word, entonces cambia de la consola lucida a arial, por lo que es posible que el bloc de notas lo haga y no lo diga, aunque cuando elijo arial se mueve un poco, por lo que tal vez el bloc de notas no use arial cuando se elige lucida, por lo que todavía no claro lo que está usando
barlop

Verifique los valores ( PlaneXdonde Xpodría variar de 1a 16) de las siguientes claves de registro: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\LanguagePack\SurrogateFallbacky / o HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\LanguagePack\SurrogateFallback.
JosefZ

@JosefZ La primera clave tiene un par nombre-valor de nombre: valor Plane2: SimSun-ExtB La segunda clave tiene la misma ... Pero mirando esa fuente, no tiene muchos caracteres
Barlop

Respuestas:


6

Windows 7 tiene una tecnología llamada fuente compuesta

que se utiliza para describir el enlace internacional de fuentes y la fuente lógica de respaldo

Le permite tener una fuente virtual vinculada desde muchas fuentes con rangos limitados de definiciones de caracteres.

La fuente compuesta predeterminada se llama GlobalUserInterface y se encuentra en el archivo
C:\Windows\Fonts\GlobalUserInterface.CompositeFont.

Puede usar la gran herramienta BabelMap para jugar y comprender la implementación de fuentes Unicode, Composite y cosas relacionadas.

Consulte también la subsección Fallback de fuentes de la sección Comentarios de este artículo de MSDN para conocer algunos antecedentes interesantes sobre cómo se construye una fuente compuesta de este tipo y cuáles son las reglas de recuperación.


Encontrar una fuente para el carácter (en base a la información anterior):

  1. En cualquier editor / visor de texto plano, muestre el archivo
    C:\Windows\Fonts\GlobalUserInterface.CompositeFont.
  2. En la etiqueta <FontFamily.FamilyMaps>, encuentra el rango de definición para tu personaje.
  3. Busque la etiqueta que FontFamilyMapcontiene su rango en su Unicodeatributo y obtenga la fuente (o la lista de fuentes) para ese rango (se almacena en el atributo Target).
    Ejemplo: en el caso del carácter 05D0, el rango encontrado en el archivo es 0590-05FF (hebreo)
    y las sustituciones de fuente son:
    "Segoe UI, Tahoma, Arial, Arial Unicode MS, Microsoft Sans Serif, Lucida Sans Unicode"

    1. Si solo había una sola fuente, la tiene. De lo contrario, verifiquemos la lista en orden: ejecute BabelMap
    2. Navega al personaje dado
    3. Cambiar los botones de radio desde Compuesto de fuente a fuente única
      o de manera alternativa: ir al menú Fuentes > Cobertura de fuente ... y pulse Calcular botón
    4. Cambie a las fuentes en orden tal como aparecen en el paso 3 . La primera fuente que muestra el glifo es su fuente.

Nota: hay 4 archivos de fuentes compuestas disponibles, pero verifiqué que el correcto para su caso es GlobalUserInterface.CompositeFont.

Esta técnica es confiable porque al buscar a través de las definiciones está haciendo lo mismo que hace Windows.


Eso no me dice qué fuente se usa para mostrar un carácter en particular, cuando el bloc de notas dice que es una consola lucida cuando no es una consola lucida. Si solo está diciendo que usa una composición de fuentes y no lucida para esa, entonces estoy preguntando qué fuente, cómo puedo determinar qué fuente. Realmente no estás agregando mucho aquí. Ya sé que no es una consola de lucida, sé que abcdefg bien podría estar en la consola de lucida. Toda mi pregunta es qué fuente es y cómo puedo determinar eso
barlop el

@barlop - ver la respuesta actualizada para conocer los pasos
miroxlav

Eso es increíble, gracias ... Otra cosa ... Si elijo lucida y hago el tamaño de fuente 72, en lugar de elegir segoe ui y hacer el tamaño de fuente 72, el tamaño de fuente es diferente ... ¿Alguna idea de cómo está haciendo esa elección de tamaño de fuente?
barlop

@barlop: sí, ya veo eso. Supongo que está tomando la altura de la línea de la fuente actual (Lucida, Segoe UI) y luego, si encuentra que Tahoma (que contiene el glifo Aleph) es más pequeño, lo escala hacia arriba (¿tal vez también hacia abajo, si es necesario?) Para que coincida con la línea altura de la fuente seleccionada. No lo probé extensamente, pero así es como me parece. También puede hacer una copia de seguridad de su archivo de fuente compuesto e intentar cambiar el valor del Scaleatributo de la FontFamilyMapetiqueta en su rango de caracteres y ver qué hace (tal vez requiera reiniciar la PC). Quizás también los recursos anteriores podrían revelar alguna explicación sobre cómo funciona.
miroxlav

Escribe "hay 4 archivos de fuentes compuestas disponibles. Verifiqué que el correcto para su caso es GlobalUserInterface.CompositeFont". <- ¿Cómo verificaste eso?
barlop

2

la respuesta de miro es brillante, solo voy a escribirla de manera ligeramente diferente

Hay cuatro archivos de fuentes compuestas.

Los cuatro son

C:\Windows\Fonts>dir *composite* /s/b

C:\Windows\Fonts\GlobalMonospace.CompositeFont
C:\Windows\Fonts\GlobalSansSerif.CompositeFont
C:\Windows\Fonts\GlobalSerif.CompositeFont
C:\Windows\Fonts\GlobalUserInterface.CompositeFont

C:\Windows\Fonts>

Al mirarlos una vez se ve que, por ejemplo, GlobalMonospace.CompositeFonttiene 0590-06FF y las fuentes de reserva enumeradas, solo una, es Courier New, que tiene Aleph. Pero Miro determinó que ese no es el archivo compuesto utilizado, y que el utilizado esGlobalUserInterface.CompositeFont

Abrir este archivo C:\Windows\Fonts\GlobalUserInterface.CompositeFont

Aleph es \u05D0así que tienes que desplazar el archivo hacia abajo para llegar a donde estoy mostrando en la foto, pero esa es la sección para mirar

El archivo de fuentes compuestas enumera una familia de fuentes para actuar como fuentes alternativas para varios rangos de caracteres unicode, incluido 0590-06FF(que es el rango que incluye 05D0 / aleph)

    <FontFamilyMap  
        Unicode          = "0000-052F, 0590-06FF, 0750-077F, 1D00-1FFF, 2C60-2C7F, FB00-FB0F, FB1D-FBFF" 
        Target           = "Segoe UI, Tahoma, Arial, Arial Unicode MS, Microsoft Sans Serif, Lucida Sans Unicode"
        Scale            = "1.0"/>

ingrese la descripción de la imagen aquí

Charmap puede llegar hasta FFFF, que es lo suficientemente lejos. Charmap muestra que no está en segoeUI. Pero está en Tahoma.

ingrese la descripción de la imagen aquí

Babelmap es interesante porque puede mostrar caracteres más allá de FFFF (no es necesario en este caso), y también puede mostrar qué fuentes en su sistema tienen un carácter unicode particular. Pero para ver qué fuente es realmente utilizada en la práctica por el bloc de notas, como fuente alternativa, debe verificar ese archivo GlobalUserInterface.CompositeFont. Luego busque en el mapa de caracteres o en el mapa de babel la primera fuente con el carácter de glifo / unicode que desee.

Babelmap tiene fuentes compuestas, pero creo que son personalizadas, no específicamente las personalizadas utilizadas por Windows. Pero uno podría usar babelmap para buscar qué fuente tiene un carácter unicode, o para ver qué caracteres están dentro de una fuente, incluso más allá de FFFF.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.