DAOpenFromURL
문서 관리, 직접 액세스 기능
설명
바이트 범위 요청을 사용해 HTTP로 원격 PDF를 다이렉트 액세스용으로 엽니다
전송 계층은 URL을 한 번 탐침하여 바이트 범위 지원을 확인하고 전체 길이를 파악한 다음, 시크 가능한 스트림이 기존 랜덤 액세스 리더를 구동하므로 실제로 읽은 객체만 네트워크로 가져옵니다
문서가 리니어라이즈되어 있고 캐시 워밍이 켜져 있으면 첫 페이지 섹션이 보존 바이트 예산 안에서 프리페치되어 파일의 나머지를 건드리기 전에 1페이지가 렌더링됩니다
구문
Delphi
Function TPDFlib.DAOpenFromURL(Const URL, Password: WideString; Options: Integer= 0; ChunkSize: LongInt= 0; CacheLimitBytes: Int64= 0; CoalesceWindowMS: Cardinal= PDF_NET_DEFAULT_COALESCE_WINDOW_MS): Integer;DLL
int DLDAOpenFromURL(int InstanceID, const wchar_t* URL, const wchar_t* Password, int Options);ActiveX
Function PDFlib::DAOpenFromURL(URL As String, Password As String, Options As Long) As Long매개변수
| URL | 원격 PDF의 http 또는 https 주소 |
|---|---|
| Password | 문서 암호이며 PDF가 암호화되지 않았으면 빈 문자열 |
| Options | 기본 워밍 첫 페이지 열기에는 0, 순수 온디맨드 열기에는 PDF_NET_OPT_NO_WARMING |
| ChunkSize | Delphi 전용입니다. 정렬된 범위 가져오기 단위이며 0은 64 KiB를 선택합니다 |
| CacheLimitBytes | Delphi 전용입니다. 보유되는 최대 소스 바이트이며 0은 4 MiB를 선택하고 한 청크 미만의 값은 한 청크로 올려집니다 |
| CoalesceWindowMS | Delphi 전용입니다. 각 절대 읽기의 첫 캐시되지 않은 청크에 대한 수집 윈도우이며 기본값은 2밀리초이고 0은 초기 지연을 비활성화합니다 |
반환 값
| >0 | Direct Access 문서 핸들 |
|---|---|
| 0 | 문서를 열 수 없습니다. LastErrorCode가 PDFLIB_ERROR_NET_OPEN, PDFLIB_ERROR_NET_RANGE_UNSUPPORTED, PDFLIB_ERROR_NET_HTTP 또는 구조나 암호 코드로 설정됩니다 |
비고
서버는 바이트 범위 지원을 알려야 합니다. 그렇지 않으면 호출은 파일 전체를 내려받는 대신 PDFLIB_ERROR_NET_RANGE_UNSUPPORTED로 빠르게 실패합니다
반환된 핸들은 DACloseFile로 닫으며, 이때 기반 전송 스트림도 해제됩니다
동시 지연 읽기는 같은 청크 요청을 공유하고, 인접한 대기 청크를 16 MiB까지의 소스 읽기로 합칩니다
문서를 열지 않고 1페이지의 바이트 범위 배치를 살펴보려면 GetLinearizedURLAccessPlan을 사용하십시오
Delphi 다이렉트 액세스 캐시를 관찰하거나 바꾸려면 DAGetRangeSourceCacheInfo, DASetRangeSourceCacheLimit, DAClearRangeSourceCache를 사용하십시오