Ajuste de grafemas a través de estilos enriquecidos

THPDFHeadlessDocument.SetRichTextFieldValueWithAppearance mantiene los clusters de grafemas Unicode completos en una línea física cuando una palabra demasiado ancha abarca varios runs de texto enriquecido tipado

Cambiar una fuente, color o tamaño no crea un salto de emergencia permitido dentro de un carácter base y sus marcas combinantes, incluido el caso en que un run vacío separa sus estilos

El fitter calcula las fronteras de grafemas sobre el grupo lógico completo, mide los fragmentos de appearance con estilo reales y asigna cada rango seleccionado a una línea antes de pintar sus recursos de fuente separados

Sondas exponenciales seguidas de búsquedas de prefijos acotadas evitan medir repetidamente la cola no usada del párrafo; la cancelación se observa mientras se prepara cada rango y cada fragmento nativo

El V original, el RV canónico, los estilos tipados, el espaciado de caracteres y las líneas base medidas permanecen intactos a través de guardado y recarga

Un cluster con estilo indivisible que excede el ancho completo del contenido permanece junto y queda sujeto al clip de contenido del widget, igual que el comportamiento existente de cluster único; el siguiente cluster continúa en otra línea

Con el ajuste de línea deshabilitado se conserva una sola línea física

Este comportamiento de layout también se aplica a las llamadas JSON forms.fill nativas reales de Linux que usan richTextRuns y characterSpacing, sin cambiar el record de operación versionado

El shaping y la colocación de marcas entre fragmentos de estilo distintos, el bidi de párrafos con estilos mezclados y el XHTML arbitrario siguen siendo trabajo de integración pendiente

Véase ajuste legal de grupos de estilo, fronteras de grafemas Unicode y campos de texto enriquecido nativos