کلاس THPDFRandomAccessSource
کلاس پایهٔ انتزاعی که به THotPDF.LoadFromRandomAccessSource اجازه میدهد یک PDF را از هر فضای ذخیرهسازی بایتِ قابلseek تعریفشده توسط فراخوان بدون نیاز به یک پیادهسازی 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 میخواند |
یادداشتهای کاربرد
- یک زیرکلاس مشتق کنید و هر دو روش انتزاعی را override کنید تا HotPDF را به درخواستهای بازهٔ HTTP، BLOBهای پایگاه داده، آرشیوهای فشرده، درایوهای رمزگذاریشده یا هر فضای ذخیرهسازی مجازی که میتواند بایتها را بر اساس انحراف تأمین کند، سازگار کنید
GetSizeباید یک طول بایت پایدار و نامنفی برای طول عمر بارگذاری بازگرداند؛ HotPDF جدولهای مرجع متقاطع و جریانهای شیء را با seek از طریق این مبدأ تجزیه میکندReadAtتعداد بایتهای واقعاً منتقلشده (صفر تاCount) را بازمیگرداند؛ تجزیهگر یک خواندن کوتاه در پایان مستند پرونده را بهعنوان پایان جریان در نظر میگیرد، نه یک خطا- مبدأ باید تا وقتی سند بارگذاریشده در حال استفاده است معتبر باقی بماند؛
OwnsSource = Trueرا به LoadFromRandomAccessSource ارسال کنید تا HotPDF بهطور خودکار مبدأ را آزاد کند