السجل THPDFLinearizedPageRangePlan
مخطط نطاقات البايتات لقراءة صفحة واحدة من ملف منظم خطيًا بشكل تدريجي: الحالة والتشخيص، وإزاحات الترويسة المُحلَّلة، ووقائع كائن الصفحة، وموضع تدفق التلميحات، ووقائع المجموعات المشتركة، وإجماليات النقل، ونطاقات البايتات المرتبة
التصريح
THPDFLinearizedPageRangePlan= record
Status: THPDFLinearizedPagePlanStatus;
FileLength: Int64;
PageIndex: Integer;
FirstPageIndex: Integer;
PageCount: Integer;
FirstPageEndOffset: Int64;
MainXRefOffset: Int64;
PageObjectNumber: Integer;
PageObjectCount: Integer;
PageOffset: Int64;
PageLength: Int64;
PrimaryHintOffset: Int64;
PrimaryHintLength: Int64;
OverflowHintOffset: Int64;
OverflowHintLength: Int64;
SharedGroupCount: Integer;
CrossReferenceEntryCount: Integer;
HintBytesDecoded: Int64;
RequiredBytes: Int64;
TransferRatio: Double;
RangeCount: Integer;
DependencyRangeCount: Integer;
AllRangesAvailable: boolean;
UsesCrossReferenceStream: boolean;
HintEncoding: THPDFLinearizedHintEncoding;
Ranges: THPDFLinearizedByteRangeArray;
DependencyRanges: THPDFLinearizedByteRangeArray;
Diagnostic: AnsiString;
end;
الوحدة
HPDFDoc
الحقول
| الحقل | الغرض |
|---|---|
Status | نتيجة THPDFLinearizedPagePlanStatus: جاهز، أو غير منظم خطيًا، أو إسناد ترافقي غير مدعوم، أو تجاوز الحدود، أو نطاقات غير متاحة |
FileLength | الحجم الإجمالي للمصدر المخطط له |
PageIndex | الصفحة المطلوبة بفهرس يبدأ من صفر، أو -1 لمخططات التمهيد المقتصرة على الترويسة |
FirstPageIndex / PageCount | فهرس الصفحة الأولى وعدد الصفحات المُحلَّلان من ترويسة التنظيم الخطي |
FirstPageEndOffset / MainXRefOffset | قيمتا /E و/T من الترويسة: نهاية قسم الصفحة الأولى وإزاحة الإسناد الترافقي الرئيسي |
PageObjectNumber / PageObjectCount | رقم كائن الصفحة المطلوبة وعدد الكائنات في قائمة كائناتها |
PageOffset / PageLength | نطاق بايتات قسم الصفحة في الملف |
PrimaryHintOffset / PrimaryHintLength | موضع تدفق التلميحات الأساسي |
OverflowHintOffset / OverflowHintLength | موضع تدفق التلميحات الفائض، صفرًا وفارغًا عندما لا وجود له |
SharedGroupCount / CrossReferenceEntryCount | مجموعات الكائنات المشتركة المخططة للصفحة ومدخلات الإسناد الترافقي التي يغطيها المخطط |
HintBytesDecoded | بايتات حمولة التلميحات المفكوكة فعلًا أثناء بناء المخطط |
RequiredBytes | إجمالي البايتات التي يجب نقلها لتصيير الصفحة |
TransferRatio | RequiredBytes مقسومًا على FileLength؛ وصفرًا عند إخفاق التخطيط |
RangeCount / DependencyRangeCount | عدد المدخلات في Ranges وفي DependencyRanges |
AllRangesAvailable | true عندما يكون كل نطاق مخطط له موجودًا في مصدر الوصول العشوائي |
UsesCrossReferenceStream | true عندما بُني المخطط على تدفق إسناد ترافقي بدلًا من جدول تقليدي |
HintEncoding | تخطيط THPDFLinearizedHintEncoding المكتشف في تدفقات التلميحات |
Ranges | نطاقات البايتات المرتبة الواجب جلبها للصفحة المطلوبة، شاملة نطاقات التمهيد والإسناد الترافقي بحسب الخيارات |
DependencyRanges | نطاقات بايتات للكائنات المشتركة التي تعتمد عليها الصفحة |
Diagnostic | نص سبب الإخفاق الآمن عندما تبلّغ Status عن إخفاق |
ملاحظات الاستخدام
- اطلب مخططًا لكل صفحة من
THotPDF.PlanProgressiveLinearizedPageRanges؛ وتحقق منStatusقبل الوثوق بأي حقل آخر - اجلب
Rangesأولًا لأسرع رسم أول، ثمDependencyRangesكلما احتاجت الكائنات المشتركة؛ ويستهلك مجدول إعادة الرسم المخطط بهذا الترتيب تمامًا - استخدم
TransferRatioوRequiredBytesلتقدير احتياجات النطاق الترددي قبل الالتزام بالتسليم التدريجي