THotPDF.SetLoadedFreeTextText Method
Reemplaza la apariencia normal de una anotación FreeText cargada usando fuentes Unicode incrustadas, texto enriquecido opcional y una transacción de grafo atómica
Declaración
procedure SetLoadedFreeTextText(PageIndex, AnnotationIndex: Integer;
const AText: UnicodeString; const Options: THPDFLoadedTextAppearanceOptions;
const RichContent: AnsiString = ''; const DefaultStyle: AnsiString = '');
Opciones
Inicialice el record con THPDFLoadedTextAppearanceOptions.Default antes de cambiar campos individuales
| Campo | Comportamiento |
|---|---|
| FontName, FontStyle, FontSize | Fuente principal, estilo y tamaño en puntos; los valores por defecto son Arial, regular y 12 puntos |
| TextColor, Alignment, Padding | Color del texto plano, alineación izquierda/centro/derecha y margen interno en puntos; los valores por defecto son negro, izquierda y 2 puntos |
| Opacity, Rotation | Opacidad en [0,1] y rotación en múltiplos de 90 grados |
| OverflowPolicy | THPDFLoadedTextOverflowPolicy: ltopReject rechaza el desbordamiento, ltopClip lo recorta y ltopShrinkToFit reintenta con fuentes más pequeñas |
| MinFontSize | Límite inferior para la reducción, 4 puntos por defecto |
| MaxTextUnits | Presupuesto de entrada y de texto plano, 1,048,576 unidades UTF-16 por defecto; la entrada enriquecida se limita a cuatro veces este presupuesto |
Comportamiento
AText aporta texto Unicode plano; un RichContent UTF-8 no vacío usa en su lugar el importador HTML y el DefaultStyle CSS opcional, y después deriva /Contents del texto generado
La apariencia generada copia las fuentes incrustadas y los mapeos ToUnicode al documento cargado, de modo que guardar, aplanar y extraer texto conservan su texto Unicode
El método hereda las cadenas de font fallback configuradas, ShapingFeatures, los interruptores de auto-shaping de árabe, siríaco, N'Ko, Adlam y Hanifi Rohingya, y las selecciones de script e idioma GSUB; cada reintento de shrink-to-fit usa la misma configuración sin cambiar la del llamador
Conserva el fondo admitido, el borde sólido/discontinuo, los insets del rectángulo y la geometría de callout de dos/tres puntos, y sincroniza /AP, /Contents, /RC, /DS, /CA, /Q y los metadatos de rotación
La geometría no válida, los glifos de texto plano sin resolver, los bordes cloudy, los límites de recursos y el desbordamiento rechazado lanzan una excepción y hacen rollback de toda la actualización; las transacciones de grafo externas existentes permanecen activas
El texto enriquecido sigue el subconjunto HTML/CSS admitido; los recursos externos están deshabilitados y los tamaños de fuente CSS fijos pueden impedir que el shrink-to-fit reduzca runs individuales
Cada escritor de apariencias acepta como mucho 256 selecciones de fuentes de shaping distintas y 64 MiB de datos brutos de fuentes acumulados; superar cualquiera de los dos límites rechaza la actualización y preserva la anotación original
APIs relacionadas
- SetLoadedFreeTextRichText usa este pipeline de apariencias con desbordamiento por recorte
- SetLoadedFreeTextPlainText conserva su contrato ASCII original
- SetLoadedAnnotationContents edita solo el contenido almacenado