THPDFCABIFormDataOperationV1
THPDFCABIFormDataOperationV1 = record
Operation: THPDFCABIOperationV1;
FontUserData: Pointer;
Font: THPDFCABIFormDataFontV1;
end;
PHPDFCABIFormDataOperationV1 = ^THPDFCABIFormDataOperationV1;
HPDFCAPI appends optional synchronous font IO fields to the unchanged Windows V1 operation prefix; the C declaration is hpdf_form_data_operation_v1 in hotpdf_abi_form_data.h
Set Operation.StructSize to SizeOf(THPDFCABIFormDataOperationV1), ABIVersion to HPDF_ABI_VERSION_1 and Flags to zero, then pass the address of Operation to hpdf_document_execute_json_v1
The record is 48 bytes on Win32 and 72 bytes on Win64 with the published alignment; fresh C++Builder calls validate that the generated Pascal and C declarations agree
forms.import requires Font, loaded destination state, FDF/XFDF InputIO, PDF OutputIO and JSON ResultIO; forms.export can use the original base V1 operation without this extension
Mixed original typed-rich forms.fill uses the same extension and Font callback, with mandatory PDF OutputIO and JSON ResultIO; absent InputIO uses the owned current graph, while an optional InputIO supplies a replacement PDF privately before font loading
FontUserData, Font and returned IO callback state remain borrowed until execution returns; this record does not extend the legacy HPDFDocRunJob callbacks or the native Linux operation extension
Font callback, JSON and transaction behavior, Original typed-rich filling