Cómo asignar nombre a los recursos mediante calificadores (HTML)

[ Este artículo está destinado a desarrolladores de Windows 8.x y Windows Phone 8.x que escriben aplicaciones de Windows Runtime. Si estás desarrollando para Windows 10, consulta la documentación más reciente ]

Puedes asignar nombre a los recursos mediante calificadores. Los calificadores identifican el contexto en el que debe usarse una versión de un recurso.

Calificadores de recursos

Puedes adaptar recursos de archivos y cadenas para que admitan varios idiomas de interfaz de usuario, escala de pantalla, configuración de contraste alto, etc. Los calificadores de recursos son modificadores de carpetas y nombres de archivo que identifican el contexto en el que debe usarse una versión particular de un recurso.

La convención de nomenclatura estándar es

foldername/qualifiername-value_qualifiername-value/filename.qualifiername-value_qualifiername-value.ext

Por ejemplo,

Images/en-US/homeregion-USA/logo.scale-100_contrast-white.png

se carga al hacer referencia a

Images/logo.png

Nota  Se recomienda que marques el idioma predeterminado en los archivos de recursos de cadenas (por ejemplo, en-US\resources.resw) y la escala predeterminada en las imágenes (por ejemplo, logo.scale-100.png), incluso si estos archivos no se van a localizar ni se van a proporcionar imágenes de varias resoluciones.

 

Los nombres de carpetas completos se analizan para buscar calificadores. Los nombres de carpetas coinciden con un conjunto completo de calificadores o se consideran parte de la ruta de acceso lógica al archivo. El segmento con puntos del archivo justo antes de la extensión de archivo se considera un token que indica calificadores. Cuando hay varios calificadores, se separan con guiones bajos, y los calificadores se especifican tradicionalmente con su nombre y su valor (excepto el idioma cuando este se usa en un nombre de carpeta).

Los desarrolladores de aplicaciones pueden elegir entre usar nombres de carpetas o nombres de archivos para especificar los activos de un determinado conjunto de contextos, o una mezcla de las dos estrategias en función de su flujo de trabajo y de las necesidades de la aplicación.

El recurso correcto se elige automáticamente en tiempo de ejecución en función de cada calificador del recurso y el contexto actual. Por ejemplo, podrías proporcionar los siguientes activos:

en-us\logo.scale-100.png
en-us\logo.scale-140.png
fr-fr\logo.scale-100.png
fr-fr\logo.scale-140.png

A continuación, un usuario que prefiere inglés (Estados Unidos) en una pantalla de escala 140 verá la imagen en-us\logo.scale-140.png. Para obtener detalles sobre la selección de recursos en escenarios de reserva más complejos, consulta Contexto de recursos.

Las siguientes secciones de este tema ofrecen información detallada del conjunto de calificadores y sus posibles valores para cada dimensión admitida por la infrastructura de recursos.

Importante  Los formatos que se describen aquí son para dentro del segmento del calificador de un nombre de archivo (o el nombre de carpeta en el caso de los idiomas). Uno o más calificadores deben aparecer como un segmento dentro del nombre de archivo completo que viene después del nombre de recurso y antes de la extensión de archivo, según este formato con marcadores de posición principalmente: name**.qualifiers.**ext Los puntos (.) aquí son importantes porque proporcionan el separador de sintaxis entre los segmentos. No puedes usar un carácter de punto de otra manera en ninguno de los formatos del calificador.

 

Idioma (aplicación)

El calificador de idioma especifica el idioma BCP-47 del recurso. Los nombres de archivo requieren el calificador lang o language, junto con la etiqueta del idioma, pero las carpetas solo necesitan la etiqueta del idioma. Para obtener una lista de idiomas, consulta el registro de subetiquetas de idioma de IANA.

Formatos de nombres de carpetas:

  • <Any BCP-47 language tag>
  • lang-<Any BCP-47 language tag>
  • language-<Any BCP-47 language tag>

Formatos de nombres de archivo:

  • lang-<Any BCP-47 language tag>
  • language-<Any BCP-47 language tag>

Ejemplos:

es-MX/resources.resw
language-de-DE/UI.resw
images/logo.lang-fr-FR.png

El calificador de idioma se analiza en la lista de idiomas de la aplicación para buscar una coincidencia. Los cambios en el idioma de la aplicación en tiempo de ejecución se propagan como eventos (consulta ResourceContext.QualifierValues). La aplicación no necesita establecer o sobrescribir el idioma.

Escala

El calificador de escala especifica el factor de escala del recurso. Esto se usa normalmente para imágenes que se ven en un dispositivo con mayor nivel de ppp o cuando se aumenta la aplicación en la pantalla. La escala de un recurso coincide con el valor de Windows.Graphics.Display.DisplayProperties.ResolutionScale o el siguiente recurso a escala más grande. Si usas el calificador de escala en un recurso, no debes usar el calificador targetsize.

Calificadores de escala:

  • scale-80 (only valid for resources specified in the app manifest)
  • scale-100
  • scale-140
  • scale-180 (Windows)
  • scale-240 (Windows Phone)

Los cambios en la escala en tiempo de ejecución se propagan como eventos (consulta ResourceContext.QualifierValues).

Contraste

El calificador de contraste especifica la configuración de tema de contraste del sistema. Standard se usa cuando todos los temas de contraste alto están desactivados. High es válido cuando se está en cualquier modo de contraste alto. Black indica que se prefieren imágenes de fondo negro y primer plano blanco. White indica que se prefieren imágenes de fondo blanco y primer plano negro. Las configuraciones de tema High Contrast #1 y High Contrast #2 coinciden con el valor del calificador Black.

contrast-standard
contrast-high
contrast-black
contrast-white

Región de domicilio

El calificador de región de domicilio representa la ubicación del domicilio del usuario. Normalmente, se especifica en la instalación de Windows y se puede acceder a él desde el Panel de control. Este calificador (ResourceContext.QualifierValues) se suele sobrescribir si se conoce algún otro proveedor de datos para la ubicación. El valor puede ser cualquier etiqueta de región BCP-47 válida, es decir, cualquier código de región de dos letras iso-3166-1 alpha 2, además del conjunto de códigos geográficos de tres letras iso-3166-1 numérico para regiones compuestas (consulta la composición M49 de códigos de regiones de la División de estadística de las Naciones Unidas). Ten en cuenta que los códigos de "agrupaciones económicas seleccionadas y otras agrupaciones" no son válidos.

Formato de región de domicilio:

homeregion-<Region Code>

Ejemplos:

homeregion-us
homeregion-jp
homeregion-419

El calificador de región de domicilio coincide con cualquier región compuesta principal.

Tamaño del destino

El calificador targetsize puede especificar recursos de un tamaño determinado (en píxeles). Se usa principalmente para especificar los iconos de asociación de tipo de archivo o los iconos de protocolo que se muestran en el Explorador de Windows del escritorio. Este calificador suele usarse para iconos o imágenes cuadradas y solo especifica una única dimensión de la imagen. El sistema o la aplicación que solicita el recurso (ResourceContext.QualifierValues) debe especificar explícitamente un tamaño de destino. No hay un valor predeterminado. Si usas el calificador targetsize en un recurso, no debes usar el calificador de escala.

Formato de targetSize:

targetsize-<any positive integer>

Ejemplos:

targetsize-16
targetsize-96

El contexto de targetsize coincide con el siguiente recurso calificado más grande.

Dirección del diseño

Usa el calificador de diseño para especificar los recursos que aplican la direccionalidad del orden de lectura específico y la alineación del texto. Por ejemplo, es posible que una imagen deba reflejarse para los idiomas de lectura de derecha a izquierda, cómo el árabe o el hebreo. La mayoría de las aplicaciones pueden usar mecanismos de volteo automáticos para reflejar imágenes en tiempo de ejecución. Sin embargo, este calificador es para los casos en los que un simple volteo no es lo más apropiado. Para obtener más información, consulta el tema sobre cómo ajustar el diseño para idiomas de lectura de derecha a izquierda y localizar fuentes.

Formato de dirección de la distribución:

  • layoutdir-LTR
  • layoutdir-RTL
  • layoutdir-TTBLTR
  • layoutdir-TTBRTL

Configuración

Usa el calificador de configuración para especificar los recursos que se aplican solo a un determinado entorno en tiempo de creación, como los recursos solo para pruebas. La mayoría de los desarrolladores de aplicaciones no necesitarán usar esto. La variable de entorno MS_CONFIGURATION_ATTRIBUTE_VALUE puede establecerse con el valor de la cadena que se asignó al recurso relevante (por ejemplo, test).

Formato de configuración:

config-<MS_CONFIGURATION_ATTRIBUTE_VALUE>

Ejemplos:

config-test
config-designer

Forma alternativa

El calificador de forma alternativa se puede usar para proporcionar una forma alternativa de un recurso para alguna finalidad especial. Por lo general, solo lo usarán los desarrolladores japoneses de aplicaciones para proporcionar una cadena furigana, para la cual se reserva el valor msft-phonetic. El sistema o la aplicación deben proporcionar un valor para usar este calificador en situaciones particulares. No hay un valor predeterminado. No uses el prefijo msft- para tus propios valores personalizados.

Formato de forma alternativa:

altform-<Any string between 1 and 16 chars>

Ejemplos:

altform-msft-phonetic
altform-myapp-special

Nivel de característica de DirectX

El calificador del nivel de función de DirectX representa el nivel de función de DirectX de los adaptadores de elementos gráficos que se usarán para representar el recurso. Este calificador suele usarse para los activos de visualización de Direct3D que se usan en los juegos. El nivel de función de DirectX de un recurso coincidirá con un valor establecido explícitamente en un Contexto de recursos por la aplicación. Si un recurso con exactamente el mismo valor de nivel de función de DirectX no está disponible, se usará el recurso disponible con el siguiente valor inferior.

Nota  El calificador de nivel de característica de DirectX es compatible a partir de Windows 8.1.

 

Hay dos formatos posibles para el calificador de nivel de función de DirectX. Los valores admitidos son DX9, DX10 y DX11.

Formato de nivel de función de DirectX

  • DXFeatureLevel-<value>
  • DXFL-<value>

Ejemplos:

DXFeatureLevel-DX10
DXFL-DX11

Observaciones

Como ya hemos visto, cualquiera de estos formatos de dentro del conjunto de calificadores se puede combinar si es necesario para admitir varios patrones de calificadores para el mismo escenario de recursos. El separador que se debe usar entre los patrones de calificadores es el carácter de subrayado (_). Por ejemplo, aquí hay un trazado a un archivo de recursos que admite la configuración, la escala y la dirección de la distribución explícitamente: logo.config-test_scale-100_layoutdir-LTR.png

Temas relacionados

Instrucciones para el ajuste de escala a la densidad de píxeles

Compatibilidad con temas de alto contraste

Cómo administrar idiomas y regiones

Cómo ajustar el diseño para idiomas de lectura de derecha a izquierda y localizar fuentes

Cómo prepararse para la localización

Cómo asignar un icono personalizado para un tipo de archivo

Agregar iconos, vistas previas y menús contextuales

Windows.ApplicationModel.Resources.Core.ResourceContext.QualifierValues

Windows.Graphics.Display.DisplayProperties.ResolutionScale

Vínculos externos

La etiqueta de idioma BCP-47

Registro de subetiquetas de idiomas IANA

Composición M49 de códigos de regiones de la División de estadística de las Naciones Unidas