LoadFromMappedFile
Gestión de documentos, rendimiento, entrada desde archivos
Descripción
Carga y selecciona un PDF local mediante una vista asignada acotada de solo lectura, permitiendo que las lecturas diferidas grandes de objetos y flujos reutilicen páginas de archivo del sistema operativo sin retener la fuente completa en memoria
Sintaxis
Delphi
Function TPDFlib.LoadFromMappedFile(Const FileName, Password: WideString;
WindowSize: Int64= 0; Options: Integer= 0): Integer;Parámetros
| FileName | La ruta del PDF local |
|---|---|
| Password | La contraseña usada para abrir el PDF, o una cadena vacía para un documento sin cifrar |
| WindowSize | El tamaño solicitado de la vista asignada en bytes; cero selecciona 64 MiB, los valores inferiores a la granularidad de asignación del sistema operativo se elevan a esa granularidad y los valores superiores a 1 GiB se limitan |
| Options | Cero permite una reserva de flujo de archivo de solo lectura, mientras que PDF_MAPPED_FILE_REQUIRE_MAPPING falla a menos que haya una vista asignada activa |
Valores devueltos
| 0 | Los argumentos no eran válidos, no se pudo abrir el archivo, la asignación requerida no estaba disponible o el PDF no pudo cargarse; examine LastErrorCode |
|---|---|
| 1 | El documento se cargó y seleccionó |
Observaciones
Las compilaciones de Windows retienen una vista de solo lectura y la reasignan a demanda en los límites de granularidad de asignación; otras plataformas y fallos de mapeo usan el mismo contrato de lectura absoluta sobre un flujo de archivo normal de solo lectura, salvo que se exija mapeo
Los 64 MiB por defecto de vista acotan el uso del espacio de direcciones independientemente del tamaño de la fuente y sirven para acceso disperso a archivos locales grandes; una vista menor puede reducir el espacio de direcciones residente al coste de más reasignaciones
Las lecturas absolutas de rebanadas de objeto copian directamente de la vista actual al almacenamiento propiedad del analizador sin cambiar el cursor posicional del flujo; esta no es una API persistente de puntero sin copia porque la reasignación invalida las direcciones de la vista
El origen sigue abierto hasta que se elimina el documento cargado, y el guardado o la extracción diferida pueden seguir leyéndolo
OnPassword está asignada, cada reintento de contraseña rechazada recibe un flujo asignado y un estado de analizador nuevosUtilice
GetMappedFileInfo para confirmar si la asignación está activa e inspeccionar las estadísticas actuales de vista y de lectura