PageObjectInfo devuelve una instantánea TPdfPageObjectInfo que contiene el handle, el tipo de objeto, los límites normal y rotado, la matriz efectiva, el estado activo, la transparencia, los colores de relleno y trazo, los valores alfa, el ancho de trazo, la unión de línea, el remate de línea, el patrón de guiones y la fase de guiones
HasRotatedBounds, HasActiveState y los demás campos Has* distinguen un valor nativo no disponible de un valor cero válido
RotatedBounds transporta el cuadrilátero rotado, HasLineJoin y HasLineCap condicionan los estilos de unión y remate, y DashPhase desplaza el inicio del patrón de guiones
Info := Pdf1.PageObjectInfo(0);
Info.StrokeWidth := 4;
SetLength(Info.DashArray, 2);
Info.DashArray[0] := 8;
Info.DashArray[1] := 4;
Pdf1.UpdatePageObject(0, Info, [pocStrokeWidth, pocDashPattern]);
UpdatePageObject aplica cada campo seleccionado al mismo objeto nativo y regenera el contenido de la página una sola vez
TransformPageObject compone una FS_MATRIX afín con el objeto seleccionado
PathInfo devuelve el modo de relleno, el estado de trazo, el tipo de segmento, el punto final y el estado de cierre de cada segmento de trayectoriaPageObjectClipPath devuelve cada subtrayectoria y segmento de recorte asociados con un objeto de páginaTransformPageObjectClipPath(Index, Matrix) transforma solo esa geometría de recorte y deja la matriz del objeto de página sin cambiosFormObjectChildren devuelve instantáneas detalladas de los hijos inmediatos de un Form XObjectDetachFormObjectChild(FormIndex, ChildIndex) elimina un hijo y transfiere la propiedad del FPDF_PAGEOBJECT devuelto a quien llama, que debe insertarlo o destruirloTextObjectGlyphOutline expone la geometría de la trayectoria del glifo, mientras que TextObjectGlyphWidth(Index, GlyphIndex, FontSize) devuelve el avance nativo del glifo en el tamaño solicitadoTextObjectFontSize(Index) lee el tamaño nativo del objeto de texto y SetTextObjectFontSize(Index, FontSize) lo edita sin aproximar mediante una transformación de matrizGetImageObjectRenderedBitmap(Index) devuelve un mapa de bits propiedad de quien llama con la máscara de imagen, la conversión de color y la matriz de imagen aplicadas por PDFiumAnnotationObjectCount, AnnotationObjectInfo, AddPathToAnnotation y RemoveAnnotationObject operan sobre objetos de apariencia de anotacionesIsAnnotationObjectSubtypeSupported(Subtype) sondea si el módulo de PDFium cargado admite extracción, actualización y eliminación de objetos de apariencia para el subtipoPerformNamedAction ejecuta una acción de documento conocida y OnNamedAction informa las devoluciones de llamada de acciones con nombreCharacterInfo devuelve los colores de relleno y trazo, el nombre de la fuente, las banderas de fuente PDF, los límites laxos del glifo, la matriz efectiva y el handle del objeto de texto asociado
CharacterIndexToTextIndex y TextIndexToCharacterIndex convierten entre los índices de caracteres de PDFium y los índices del flujo de texto generado
TPdfAnnotation expone los radios y el ancho del borde mediante HasBorder, BorderHorizontalRadius, BorderVerticalRadius y BorderWidth
La cobertura de colores se extiende a ColorAlpha, InteriorColor y InteriorColorAlpha, los metadatos de marcado están condicionados por HasAuthor, HasName, HasSubject, HasModificationDate, HasCreationDate y HasIcon, y los gestos de tinta, la geometría de cuadripuntos y los destinos de enlace se exponen mediante InkList, HasAttachmentPoints, HasLinkUri y LinkUri
Los flujos de apariencia normal, rollover y down están disponibles mediante los centinelas HasAppearanceNormal, HasAppearanceRollover y HasAppearanceDown y sus correspondientes cadenas AppearanceNormal, AppearanceRollover y AppearanceDown
Al leer una anotación, estos centinelas identifican contenido de apariencia no vacío: la API nativa devuelve la misma cadena vacía para un flujo ausente y para un flujo vacío, así que ambos reportan False y se dejan intactos cuando el registro se escribe de vuelta; quien llama igualmente puede fijar un centinela en True de forma explícita para escribir una apariencia vacía
Asigne el registro de anotación actualizado de vuelta a Annotation[Index] para escribir los valores seleccionados de borde o apariencia
ConfigurePdfLibrary, GetPdfLibraryConfiguration y PdfLibraryConfigurationSealed configuran y auditan la inicialización nativa inmutable de todo el proceso y la política de sandbox antes de la primera cargaTPdfLibraryConfiguration transporta UserFontPaths, V8Isolate, V8EmbedderSlot, V8Platform, Renderer, FontBackend, BrotliEnabled, IsolatePerDocument y AllowMachineTime, y usa TPdfRendererPreference (prpDefault, prpAgg, prpSkia) y TPdfFontBackendPreference (pfbpDefault, pfbpFreeType, pfbpFontations) para seleccionar solo los campos nativos que la configuración solicitada necesitaPdfDefaultTtfMapCount y TryGetPdfDefaultTtfMapEntry enumeran las sustituciones nativas de fuentes predeterminadas con acceso indexado verificadoTPdfDefaultTtfMapEntry copia el nombre de la tipografía, el juego de caracteres y los metadatos nativos de la fuente de plataforma desde una entrada indexada del mapaFormFieldZOrderAtPoint y LinkZOrderAtPoint devuelven el z-order nativo más frontal o -1 cuando no existe ningún objetivoTryGetAnnotationFileAttachment copia metadatos y carga útil del archivo, acotados, mientras su handle nativo de anotación es válidoTPdfAnnotationAttachment es dueño de esos metadatos y de esa carga útil copiados de forma independiente de los handles de página y anotaciónGetLinkedAnnotationIndex y GetLinkedAnnotationChain resuelven las relaciones Popup e IRT con protección contra referencias colgantes, ciclos y profundidadTPdfAnnotationRelationship selecciona la relación Popup (parPopup) o IRT (parInReplyTo) y TPdfAnnotationSubtypes almacena el arreglo de subtipos de la política de focoGetAnnotationDictionaryValue y GetAttachmentDictionaryValue informan el tipo exacto de valor nativo antes de devolver un valor escalar admitidoTPdfDictionaryValueKind preserva la categoría nativa del objeto (pdvkUnknown, pdvkBoolean, pdvkNumber, pdvkString, pdvkName, pdvkArray, pdvkDictionary, pdvkStream, pdvkNull, pdvkReference) y TPdfDictionaryValue transporta el escalar numérico o de cadena admitido en NumberValue y StringValue con HasScalarValue como centinela explícitoSetFocusableAnnotationSubtypes y GetFocusableAnnotationSubtypes controlan la elegibilidad del foco de teclado a través del handle nativo del formularioTPdfStructureElement.Attributes es un árbol plano TPdfStructureAttributeValues cuyos nodos TPdfStructureAttributeValue se vinculan con su diccionario de atributos propietario a través de AttributeIndex y preservan valores anidados con tipos y blobs sin pérdida en BlobValueTPdfView.FormFieldZOrderAt, TPdfView.LinkZOrderAt y TPdfView.ReplaceFormTextAndKeepSelection exponen la conversión de coordenadas correspondiente y las operaciones de formulario que preservan la selección a través del control visualThumbnailRawData devuelve el flujo de la miniatura incrustada antes de la decodificación de filtrosThumbnailDecodedData devuelve el flujo de la miniatura incrustada después de la decodificación de filtrosTransformPageContent transforma y recorta todos los objetos de página, regenera la página y vuelve a cargar sus handles derivadosTransformPageAnnotations aplica el mismo modelo de coordenadas afín a todas las anotaciones de la página actual
Matrix.a := 0.5;
Matrix.b := 0;
Matrix.c := 0;
Matrix.d := -0.5;
Matrix.e := 0;
Matrix.f := 421;
Clip.Left := 0;
Clip.Top := 0;
Clip.Right := 300;
Clip.Bottom := 421;
Bitmap := Pdf1.RenderPageWithMatrix(300, 421, Matrix, Clip);
RenderPageWithMatrix acepta una FS_MATRIX invertible y un rectángulo de recorte en coordenadas de dispositivo
La sobrecarga que recibe un TBitmap propiedad de quien llama renderiza directamente en un DIB compatible de 32 bits y recurre a una sola copia solo cuando no se puede crear un mapa de bits externo de PDFium
El renderizado con matriz dibuja el contenido de la página y las anotaciones no interactivas seleccionadas mediante las banderas de renderizado, pero no invoca el renderizador de superposición de llenado de formularios