THPDFDocumentHandlerRegistry Class
THPDFDocumentHandlerRegistry = class
function RegisterHandler(const Handler: IHPDFDocumentHandler;
ReplaceExisting: boolean = false): boolean;
function UnregisterHandler(const HandlerName: string): boolean;
procedure Clear;
function GetHandlerCount: Integer;
function GetHandlerName(Index: Integer): string;
procedure RegisterStandardHandlers(ReplaceExisting: boolean = false);
function OpenFromStream(Source: TStream; const SourceName,
MIMEType: string; const Options: THPDFDocumentHandlerOptions;
out Document: IHPDFHandledDocument;
out Info: THPDFDocumentHandlerInfo): boolean;
function OpenFromFile(const FileName, MIMEType: string;
const Options: THPDFDocumentHandlerOptions;
out Document: IHPDFHandledDocument;
out Info: THPDFDocumentHandlerInfo): boolean;
end;
등록, 교체, 제거, 스냅샷, 조회는 스레드 안전하며, 핸들러는 최대 32개이고 핸들러 이름마다 대소문자 무시 슬롯 하나를 가집니다
인식은 안정적인 인터페이스 스냅샷을 대상으로 레지스트리 잠금 밖에서 실행되고, 동점일 때는 등록 순서를 유지합니다
RegisterStandardHandlers는 PDF 전용 로딩 API를 변경하지 않고 XPS, EPUB, CBZ 지원을 추가합니다