Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Aspose.Words requiere fuentes TrueType para una variedad de tareas, incluida la representación de documentos en formatos de página fija, por ejemplo, PDF o XPS. Cuando Aspose.Words procesa un documento, necesita realizar la incrustación y la incrustación de subconjuntos de fuentes TrueType en el documento resultante, lo cual es una práctica normal durante la generación de un documento, incluidos los formatos populares PDF o XPS. Esto garantiza que el documento aparecerá igual para cualquier espectador. Además, la especificación XPS requiere que las fuentes estén siempre incrustadas en el documento.
Para garantizar que Aspose.Words mida con precisión los caracteres e incruste correctamente las fuentes relevantes, se deben cumplir las siguientes condiciones:
Tenga en cuenta que la fuente del documento representa una entidad, como el apellido, el estilo, el tamaño y el color, que es diferente de la entidad de fuente TrueType (fuente física). Aspose.Words convierte la fuente del documento en una fuente física en alguna etapa del procesamiento. Esto permite ciertas tareas, más comúnmente la tarea de calcular el tamaño del texto durante la construcción del diseño y la incrustación/subconfiguración en formatos de página fija. También están habilitadas otras tareas menos populares, como la resolución y sustitución de fuentes mientras se carga HTML o la incrustación/subconfiguración en algunos formatos de flujo.
Todos los mecanismos de manipulación de fuentes disponibles están contenidos en la clase FontSettings. Esta clase es responsable de recuperar fuentes dentro de fuentes de fuentes definidas, así como del proceso de sustitución de fuentes, como se describe a continuación.
Las fuentes se analizan en varios pasos:
Cuando Aspose.Words encuentra una fuente en el documento por primera vez, intenta obtener información básica de la fuente, como el nombre completo de la fuente, el apellido, la versión y el estilo, de los archivos de fuentes ubicados en cada fuente de fuente. Una vez recuperadas todas las fuentes, Aspose.Words utiliza estos detalles para encontrar los datos de fuente requeridos o un reemplazo adecuado para la fuente solicitada.
Dado que el procedimiento descrito anteriormente lleva mucho tiempo, puede afectar negativamente el rendimiento de la aplicación en su primer inicio. Sin embargo, cada instancia de FontSettings tiene su propia caché, lo que podría reducir el tiempo de procesamiento de documentos posteriores. Por ejemplo, puedes compartir una instancia de la clase FontSettings entre diferentes documentos, lo que te permite acelerar la carga de los documentos. El siguiente ejemplo demuestra esto:
En el caso de que FontSettings no esté definido explícitamente, Aspose.Words utiliza la instancia FontSettings predeterminada. Esta instancia también se comparte automáticamente entre documentos y se puede extraer de la siguiente manera:
Si está seguro de que todos los documentos procesados requieren la misma configuración de fuente, se recomienda configurar y utilizar la instancia FontSettings predeterminada. Suponga que necesita utilizar las mismas fuentes de fuentes para todos sus documentos. En este caso, puedes modificar la instancia predeterminada de la siguiente manera:
El texto de un documento se puede formatear con varias fuentes, como Arial, Times New Roman, Verdana y otras. Cuando Aspose.Words procesa un documento, intenta seleccionar las fuentes especificadas en el documento.
Sin embargo, hay situaciones en las que no se puede encontrar la fuente exacta y Aspose.Words debe sustituirla por una fuente similar. Aspose.Words selecciona la fuente según el siguiente proceso:
FontConfig diseñada para proporcionar configuración de fuentes, personalización y acceso a aplicaciones en todo el sistema. De lo contrario, el usuario puede instalar fácilmente esta biblioteca.
Aspose.Words sabe cómo consultar datos e interpretar los resultados de FontConfig para sus propios fines. De forma predeterminada, la utilidad FontConfig está deshabilitada. Puedes habilitarlo de la siguiente manera:fontSettings.substitution_settings.font_config_substitution.enabled = TrueFontConfig. <TableSubstitutionSettings xmlns="Aspose.Words">
<SubstitutesTable>
<Item OriginalFont="Arabic Transparent" SubstituteFonts="Arial" />
…
</SubstitutesTable>
</TableSubstitutionSettings>
fontSettings.substitution_settings.table_substitution.load("Table.xml")
fontSettings.substitution_settings.table_substitution.enabled = False
fontInfos = doc.font_infos
fontSettings.substitution_settings.font_info_substitution.enabled = False
FontInfo también haya fallado. Esta regla también está habilitada de forma predeterminada. Según esta regla, Aspose.Words intentará utilizar la fuente predeterminada especificada en la propiedad default_font_name. Si el usuario no ha elegido su propia fuente predeterminada, se utilizará “Times New Roman” como fuente predeterminada. Esta regla se puede desactivar como se muestra a continuación: fontSettings.substitution_settings.default_font_substitution.enabled = False
fontSettings.substitution_settings.default_font_substitution.default_font_name
fontSettings.substitution_settings.default_font_substitution.default_font_name = "Arial"
Si FontInfo está disponible, la regla de sustitución de FontInfo siempre resolverá la fuente y anulará la regla de fuente predeterminada. Si desea utilizar la regla de fuente predeterminada, debe desactivar la regla de sustitución de FontInfo. Tenga en cuenta que la regla de sustitución de FontConfig resolverá la fuente en la mayoría de los casos y, por lo tanto, anulará todas las demás reglas.
Hay dos mecanismos diferentes utilizados en Aspose.Words: sustitución de fuentes y reserva de fuentes. La sustitución de fuentes se utiliza cuando la fuente especificada en el documento no se puede encontrar entre las fuentes de fuentes como se describió en las secciones anteriores. El mecanismo de reserva de fuente se utiliza cuando se resuelve la fuente, pero no contiene un carácter específico. En este caso, Aspose.Words intenta utilizar una de las fuentes alternativas para el carácter.
Existe un método build_automatic que crea automáticamente la configuración alternativa escaneando las fuentes disponibles. Dado que este método puede producir una configuración de reserva no óptima, puede controlar el comportamiento de reserva de la fuente utilizando las propiedades de la clase FontFallbackSettings. Esta clase especifica la configuración del mecanismo de reserva de fuentes. Puede obtener una instancia de la clase FontFallbackSettings de la siguiente manera:
settings = fontSettings.fallback_settingsDe manera similar a la Regla de sustitución de tablas, este mecanismo utiliza tablas XML para la configuración. Estas tablas XML se pueden cargar y guardar con los siguientes métodos:
fontSettings.fallback_settings.load("MyNewFallbackTable.xml")
fontSettings.fallback_settings.save("Current_FallbackTable.xml")La versión Aspose.Words incluye dos tablas: MsOfficeFallbackSetting.xml y NotoFallbackSetting.xml.
La tabla MsOfficeFallbackSetting define una estrategia de reemplazo para una variedad de caracteres, que es similar a la estrategia utilizada por Microsoft Word. Por tanto, la estrategia requiere la instalación de fuentes Microsoft Office. MsOfficeFallbackSetting se puede activar mediante el siguiente método:
fontSettings.fallback_settings.load_ms_office_fallback_settings()La tabla NotoFallbackSetting se crea especialmente para usar con fuentes Google Noto (consulte más sobre la configuración de fuentes Google Noto en la siguiente sección) y se puede habilitar de la siguiente manera:
fontSettings.fallback_settings.load_noto_fallback_settings()El siguiente ejemplo de código demuestra cómo cargar la configuración de reserva de fuentes desde un archivo XML:
En el ejemplo de código anterior, se utiliza el siguiente archivo XML:
<FontFallbackSettings xmlns="Aspose.Words">
<FallbackTable>
<!-- Fallback table consists of the rules. Each rule defines the fallback fonts which Aspose.Words should use for specified Unicode ranges and base fonts. Rules are checked one by one and the first applicable fallback font is used. If none of the rules are applicable then ".notdef" glyph (missing glyph) from the base font will be used. -->
<!-- This rule defines that "Vijaya" fallback font should be used for "U+0B80..U+0BFF Tamil" Unicode block. -->
<Rule Ranges="0B80-0BFF" FallbackFonts="Vijaya"/>
<!-- This rule defines that "Segoe UI Emoji" and "Segoe UI Symbol" fallback fonts should be used for "U+1F300..U+1F5FF Miscellaneous Symbols and Pictographs", "U+1F600..U+1F64F Emoticons" Unicode blocks. If "Segoe UI Emoji" font does not contains the glyph for the requested Unicode code point then "Segoe UI Symbol" will be checked. -->
<Rule Ranges="1F300-1F64F" FallbackFonts="Segoe UI Emoji, Segoe UI Symbol"/>
<!-- This rule defines that "Arial" fallback font should be used for "U+2000..U+206F General Punctuation", "U+2070..U+209F Superscripts and Subscripts" Unicode blocks and specific "U+20B9 INDIAN RUPEE SIGN" code point. -->
<Rule Ranges="2000-206F, 2070-209F, 20B9" FallbackFonts="Arial" />
<!-- These rules defines that for "U+3040..U+309F Hiragana" Unicode block "MS Gothic" fallback font should be used if base font is "Times New Roman" and "MS Mincho" fallback font for all other base fonts. -->
<Rule Ranges="3040-309F" FallbackFonts="MS Gothic" BaseFonts="Times New Roman"/>
<Rule Ranges="3040-309F" FallbackFonts="MS Mincho"/>
<!-- This rule defines that "Arial Unicode MS" fallback font should be used if applicable fallback font was not found by previous rules. -->
<Rule FallbackFonts="Arial Unicode MS"/>
</FallbackTable>
</FontFallbackSettings>Aspose.Words proporciona configuraciones de reserva de fuentes predefinidas para fuentes Google Noto. Estas son fuentes gratuitas con licencia SIL Open Font License, que se pueden descargar desde Google Noto Fonts. La clase FontFallbackSettings proporciona un método load_noto_fallback_settings. Carga configuraciones de respaldo predefinidas, que usan fuentes Google Noto como se muestra en el ejemplo de código a continuación:
Aspose.Words intenta encontrar fuentes TrueType en el sistema de archivos automáticamente. Por lo general, puede confiar en el comportamiento predeterminado de Aspose.Words para encontrar las fuentes TrueType, pero a veces necesita especificar sus propias carpetas que contienen fuentes TrueType. El tema Especificar la ubicación de las fuentes TrueType describe cómo y dónde Aspose.Words busca fuentes, así como también cómo especificar sus propias ubicaciones de fuentes.
Existen algunas diferencias en el procesamiento de formatos de fuente en Aspose.Words y Microsoft Word, como se muestra en la siguiente tabla:
| Palabra Microsoft | Aspose.Words | |
|---|---|---|
| Fuentes TrueType y fuentes OpenType con contornos TrueType | Soportado. | Soportado. |
| Fuentes OpenType con contornos PostScript | Compatible con la mayoría de los escenarios. No se admite la incrustación en formatos de página fija como PDF y XPS. El texto se reemplaza con imágenes de mapa de bits. | Compatible con la mayoría de los escenarios, incluida la incrustación en formatos de página fija. |
| Variaciones de fuentes OpenType | Solo se admiten instancias con nombre. No se admiten variaciones continuas. | Compatible solo con la instancia predeterminada. No se admiten instancias con nombre ni variaciones continuas. |
| fuentes tipo 1 | Compatible con versiones Windows anteriores a 2013 y versiones de MacOS. El soporte se elimina en las versiones Windows a partir de 2013. | No soportado. |
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.