מחלקת THPDFRandomAccessSource
מחלקת בסיס מופשטת המאפשרת ל-THotPDF.LoadFromRandomAccessSource לטעון PDF מכל מאגר בתים seekable מוגדר-קורא ללא דרישת מימוש TStream
הצהרה
THPDFRandomAccessSource = class
public
function GetSize: Int64; virtual; abstract;
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
end;
יחידה
HPDFDoc
חברים
| שם | מטרה |
|---|---|
GetSize | מחזיר את אורך הבתים היציב של מאגר הגיבוי |
ReadAt | קורא Count בתים החל מ-Offset אל Buffer |
הערות שימוש
- נגזר תת-מחלקה ודרוס את שתי השיטות המופשטות כדי להתאים את HotPDF לבקשות HTTP range, BLOB של מסד נתונים, ארכיונים דחוסים, כרכים מוצפנים, או כל אחסון וירטואלי שיכול לספק בתים לפי היסט
GetSizeחייב להחזיר אורך בתים יציב ואי-שלילי למשך חיי הטעינה; HotPDF מפרס את טבלאות הפניות-הצירוף ואת object streams על ידי seeking דרך מקור זהReadAtמחזיר את מספר הבתים שהועברו בפועל (אפס עדCount); הפרסר מתייחס לקריאה קצרה בסוף-הקובץ המתועד כסוף-זרם, לא כשגיאה- המקור חייב להישאר תקף בעוד המסמך הטעון בשימוש; העבר
OwnsSource = Trueאל LoadFromRandomAccessSource כדי ש-HotPDF ישחרר את המקור אוטומטית