LoadFromMappedFile

การจัดการเอกสาร, ประสิทธิภาพ, อินพุตจากไฟล์

คำอธิบาย

โหลดและเลือก PDF ในเครื่องผ่านมุมมองแม็ปแบบมีขอบเขตที่อ่านอย่างเดียว ทำให้การอ่านวัตถุและสตรีมแบบเลื่อนเวลาขนาดใหญ่ใช้หน้าไฟล์ของระบบปฏิบัติการซ้ำได้ โดยไม่ต้องเก็บซอร์สทั้งหมดไว้ในหน่วยความจำ

ไวยากรณ์

Delphi

Function TPDFlib.LoadFromMappedFile(Const FileName, Password: WideString;
  WindowSize: Int64= 0; Options: Integer= 0): Integer;

พารามิเตอร์

FileNameพาธของ PDF ในเครื่อง
Passwordรหัสผ่านที่ใช้เปิด PDF หรือสตริงว่างสำหรับเอกสารที่ไม่เข้ารหัสลับ
WindowSizeขนาดมุมมองแม็ปที่ร้องขอเป็นไบต์ ศูนย์เลือก 64 MiB ค่าที่ต่ำกว่าความละเอียดการจัดสรรของระบบปฏิบัติการถูกยกขึ้นเท่าความละเอียดนั้น และค่าที่เกิน 1 GiB ถูกจำกัด
Optionsศูนย์อนุญาตให้ใช้ fallback สตรีมไฟล์แบบอ่านอย่างเดียว ส่วน PDF_MAPPED_FILE_REQUIRE_MAPPING จะล้มเหลวเว้นแต่จะมีมุมมองแม็ปทำงานอยู่

ค่าที่ส่งกลับ

0อาร์กิวเมนต์ไม่ถูกต้อง เปิดไฟล์ไม่ได้ การแม็ปที่ต้องการไม่มี หรือโหลด PDF ไม่สำเร็จ ให้ตรวจ LastErrorCode
1โหลดและเลือกเอกสารแล้ว

หมายเหตุ

บิลด์บน Windows เก็บมุมมองแบบอ่านอย่างเดียวหนึ่งมุมมองและแม็ปใหม่ตามความต้องการที่ขอบเขตความละเอียดการจัดสรร แพลตฟอร์มอื่นและกรณีการแม็ปล้มเหลวใช้ข้อตกลงการอ่านแบบสัมบูรณ์ชุดเดียวกันบนสตรีมไฟล์แบบอ่านอย่างเดียวปกติ เว้นแต่ต้องการการแม็ปมุมมองเริ่มต้น 64 MiB จำกัดการใช้ปริภูมิที่อยู่โดยไม่ขึ้นกับขนาดซอร์ส และเหมาะกับการเข้าถึงเป็นบางส่วนไฟล์ในเครื่องขนาดใหญ่ มุมมองที่เล็กกว่าลดปริภูมิที่อยู่ถาวรได้ แต่แลกด้วยการแม็ปใหม่ที่มากขึ้นการอ่านสไลซ์วัตถุแบบสัมบูรณ์คัดลอกจากมุมมองปัจจุบันตรงเข้าพื้นที่จัดเก็บของตัวแยกวิเคราะห์โดยไม่เปลี่ยนตัวชี้ตำแหน่งของสตรีม นี่ไม่ใช่ API ตัวชี้แบบ zero-copy ถาวร เพราะการแม็ปใหม่ทำให้ที่อยู่ของมุมมองใช้ไม่ได้ซอร์สยังเปิดอยู่จนกว่าเอกสารที่โหลดไว้จะถูกเอาออก การบันทึกหรือการดึงข้อมูลแบบเลื่อนเวลายังอ่านต่อได้หากกำหนด

OnPassword ไว้ การลองรหัสผ่านที่ถูกปฏิเสธทุกครั้งจะได้รับสตรีมแม็ปใหม่และสถานะตัวแยกวิเคราะห์ใหม่ใช้

GetMappedFileInfo ยืนยันว่าการแม็ปทำงานอยู่หรือไม่ และตรวจสถิติมุมมองและการอ่านปัจจุบัน