تخطَّ إلى المحتوى
getnextpdf.com

Enterprise الإصدار

‏⁨Document E-Filing⁩ — مرجع متعمّق

  • EFilingOptimizer يُجهّز ملف ⁨PDF⁩ للإيداع الإلكتروني لدى المحاكم في تمريرة واحدة ثابتة الترتيب: تطهير، ثم خطنة، ثم تقسيم بالحجم.
  • EFilingProfile يُرمِّز قيود الولاية القضائية. وتغطّي المصانع المُضمَّنة ⁨US PACER⁩ و⁨EU e-Justice⁩ و⁨Taiwan Judicial Yuan⁩.
  • SizeAwareSplitter يفرض حدًّا أقصى للبايتات لكل جزء بإعادة تقسيم بأسلوب تحقّق-ثم-تصحيح.
  • المخرَج مُنتَج تسليم. ويجب ألّا يعود إلى مسارات التوقيع أو الأرشفة.
  • لا تُجري الوحدة أي عمليات تشفير ولا تُصدِر أي استدعاءات شبكية صادرة.

تُشحَن هذه القدرة في ‏⁨NextPDF Enterprise⁩ (nextpdf/enterprise) وتُفعَّل بمُغلَّف ترخيص من فئة ⁨Enterprise⁩. والنشر الذي يفتقر إلى ذلك الاستحقاق لا يُحمِّل أصناف هذه القدرة. قارن الإصدارات واحصل على ترخيص.

يَحجُب حدُّ حزمة nextpdf/enterprise هذا السطح؛ ولا يوجد رمز قدرة منفصل لكل ميزة. ولا يوفّر أي إصدار ⁨Core⁩ أو ⁨Pro⁩ مُحسِّن إيداع إلكتروني.

سطح واجهة برمجة التطبيقات العامة

قسم بعنوان «سطح واجهة برمجة التطبيقات العامة»
Terminal window
composer require nextpdf/enterprise:^3
الرمزالمُعامِلاتالسلوك الافتراضيالقيمة المُعادةيرمي أو يفشل بـملاحظات
EFilingOptimizer::optimize()string $pdfData, ?EFilingProfile $profile = nullيُضبَط ملف التعريف افتراضيًا على EFilingProfile::pacer()؛ ويشغّل التطهير والخطنة والتقسيم بالحجم بترتيب ثابتEFilingResultInvalidArgumentException من خطوة التقسيم حين يكون مُدخَل تجاوز الحدّ ليس ملف ⁨PDF⁩ صالحًا؛ وإخفاقات التطهير والخطنة تتراجع إلى تحذيراتالمخرَج مُنتَج تسليم
EFilingProfile::__construct()$name, $maxFileSizeBytes = 26_214_400, $flattenForms = true, $removeJavaScript = true, $imageQuality = 75, $linearize = true, $compressObjectStreams = trueملف تعريف ولاية قضائية غير قابل للتغييرEFilingProfileلا يرميسقوف مخصّصة للبوّابات التي لا مصنع مُضمَّن لها
EFilingProfile::pacer()لا شيءسقف ⁨25 MiB⁩، وجودة صورة ⁨75⁩EFilingProfileلا يرمي‏⁨US PACER⁩
EFilingProfile::euJustice()لا شيءسقف ⁨10 MiB⁩، وجودة صورة ⁨70⁩EFilingProfileلا يرميبوّابة ⁨EU e-Justice⁩
EFilingProfile::taiwan()لا شيءسقف ⁨10 MiB⁩، وجودة صورة ⁨70⁩EFilingProfileلا يرمي‏⁨Taiwan Judicial Yuan⁩
SizeAwareSplitter::splitByMaxSize()string $pdfData, int $maxBytesجزء واحد عندما يندرج المُدخَل؛ وإلا فتقدير ثم تحقّق ثم إعادة تقسيمlist<EFilingSegment>InvalidArgumentException حين يفتقر مُدخَل تجاوز الحدّ إلى ترويسة %PDFالمُدخَل تحت الحدّ يُرجَع جزءًا واحدًا دون تحقّق
EFilingResult::isSplit()لا شيءtrue عند وجود أكثر من جزء واحدboolلا يرمي
EFilingResult::segmentCount()لا شيءالعدد الكلّي للأجزاءintلا يرمي
EFilingResult::compressionRatio()لا شيءoptimizedTotalSize / originalSizefloatلا يرمي؛ و0.0 لمُدخَل أصلي فارغالأقل أفضل
EFilingSegment$pdfData, $pageRange, $sizeBytes, $segmentIndexجزء مخرَج غير قابل للتغييركائن قيمةلا يرميسلسلة نطاق صفحات مثل 1-25 أو all
public function optimize(string $pdfData, ?EFilingProfile $profile = null): EFilingResult
public function __construct(
public string $name,
public int $maxFileSizeBytes = 26_214_400,
public bool $flattenForms = true,
public bool $removeJavaScript = true,
public int $imageQuality = 75,
public bool $linearize = true,
public bool $compressObjectStreams = true,
) {}
public static function pacer(): self
public static function euJustice(): self
public static function taiwan(): self
public function splitByMaxSize(string $pdfData, int $maxBytes): array
public function __construct(
public array $segments,
public int $originalSize,
public int $optimizedTotalSize,
public array $optimizations = [],
public array $warnings = [],
) {}
public function isSplit(): bool
public function segmentCount(): int
public function compressionRatio(): float

EFilingOptimizer::optimize() يشغّل مسارًا ثابت الترتيب على بايتات المُدخَل. الخطوة الأولى تُزيل المحتوى النشط عند ضبط removeJavaScript. وتُفوِّض إلى محرّك نزع المحتوى وإعادة بنائه بسياسة خاصة بالإيداع: تُزال إجراءات ⁨JavaScript⁩ و⁨JavaScript⁩ المُسمّى وإجراءات التشغيل وإرسال النماذج واستيراد البيانات؛ وتُستبقى إجراءات ⁨URI⁩ (allowUriActions) لأن الإيداعات قد تحمل روابط مشروعة؛ وتُسطَّح التحديثات التزايدية في مراجعة واحدة (flattenIncrementalUpdates). الخطوة الثانية تخطن البايتات المُطهَّرة عبر NextPDF\Writer\Linearizer من ⁨Core⁩ عند ضبط linearize. الخطوة الثالثة تفرض maxFileSizeBytes الخاص بملف التعريف عبر SizeAwareSplitter.

يُقدِّر المُقسِّم عدد الصفحات لكل جزء من متوسّط حجم الصفحة، ثم يُقسِّم، ثم يتحقّق من كل جزء مُنتَج بمواجهة السقف. وأي جزء تجاوز الحدّ ولا يزال يمتدّ لأكثر من صفحة يُعاد تقسيمه تعاوديًا، مُنصِّفًا امتداد صفحاته في كل تمريرة، حتى يندرج كل ابن أو يصبح صفحة مفردة. ويحرس عمقُ إعادة تقسيمٍ محدود ضدّ عدم التقارب المرَضي. وتُعاد تسوية فهارس المخرَج لتبقى متّصلة وصفرية الأساس.

optimize() يستهلك ثلاثة حقول من ملف التعريف: maxFileSizeBytes وremoveJavaScript وlinearize. أما حقول flattenForms وimageQuality وcompressObjectStreams فقيود مُعلَنة في ملف التعريف لا يعمل بها optimize() في ⁨3.1.0⁩.

مخرَج الإيداع الإلكتروني مُنتَج تسليم، لا حالة في دورة حياة المستند. وملف ⁨PDF⁩ المُحسَّن أو المُقسَّم نهائي للإرسال ويجب ألّا يعود إلى مسار توقيع أو أرشفة؛ فإعادة المعالجة تكسر سلاسل التجزئة وسلامة الأدلّة.

تُهيّئ هذه الوحدة صيغًا للإيداع لدى المحاكم الإلكترونية / الحكومة كما هي مُهيَّأة. وهي لا تضمن القبول لدى أي محكمة أو سجلّ أو هيئة قضائية أو بوّابة إيداع. وتُرمِّز سقوف ملفات التعريف المُضمَّنة قيودًا منشورة شائعة على سبيل التيسير، لا تغذية حيّة من كل بوّابة؛ وقواعد البوّابات تتفاوت بحسب الولاية القضائية وتتغيّر. والتحقّق منها بمواجهة القواعد الحالية لسجلّ الوجهة مسؤولية المُقدِّم.

المعالجة داخل العملية ومحلّية. أما النقل إلى محكمة أو سجلّ أو بوّابة إيداع فخارج هذه الوحدة.

الحالات الحدّية وأنماط الإخفاق

قسم بعنوان «الحالات الحدّية وأنماط الإخفاق»
  • المُدخَل عند السقف أو تحته: جزء واحد بنطاق صفحات all؛ وخطوة التقسيم تترك البايتات دون تغيير.
  • رفض التطهير (مثل مُدخَل يتعذّر تحليله): يُسجَّل التحذير CDR sanitization rejected: <reason> ويستمرّ المسار بالبايتات الأصلية.
  • تمريرة تطهير لا تجد تهديدات: تُستبدَل البايتات مع ذلك بملف ⁨PDF⁩ المُعاد بناؤه، ويسجّل مُدخَل تحسين هذه التمريرة النظيفة.
  • إخفاق الخطنة: يُسجَّل التحذير Linearization skipped: <message> ويستمرّ المسار ببايتات غير مخطونة.
  • صفحة مفردة فوق السقف: غير قابلة للتقسيم فعلًا، تُرجَع دون تغيير جزءًا واحدًا فوق الحدّ. ولا يُسجَّل تحذير لهذه الحالة؛ فقارِن sizeBytes لكل جزء بمواجهة سقف ملف التعريف قبل الإيداع.
  • بلوغ حدّ عمق إعادة التقسيم: يمرّ الجزء الذي تجاوز الحدّ دون تغيير بدلًا من الدوران.
  • compressionRatio() يُرجِع 0.0 عندما يكون المُدخَل الأصلي فارغًا.
  • لا تُجري الوحدة أي عمليات تشفير؛ ولا ينطبق وضع ⁨FIPS⁩.
السلوكالمرجعالحالة
تنظيم المخرَج المخطون (بيانات الصفحة الأولى في بداية الملف)ISO 32000-2:2020 Annex F / Annex Gمبني بمواجهته
دلالات علاقة الملف المُرتبطISO 19005-3:2012 §6.7.8مُراعاة حيث تنطبق الحوامل
متطلّبات حامل الملف المُضمَّنISO 19005-4:2020 Annex Aمُراعاة حيث تنطبق الحوامل

تستهدف الخطنة تنظيم ⁨PDF⁩ المخطون الذي يضع كل البيانات اللازمة لعرض الصفحة الأولى في بداية الملف من أجل وصول تزايدي فعّال.

تصف هذه الصفوف قدرة مبنية بمواجهة البنود المُستشهَد بها. والدعم ليس مطابقة، والمطابقة ليست اعتمادًا؛ ولا يحمل ⁨NextPDF⁩ أي اعتماد. ولا يضمن أي بيان في هذه الصفحة القبول لدى أي بوّابة إيداع.

تحمل هذه الصفحة export_control_class: legal-review-required. ولا يقدّم ⁨NextPDF⁩ مشورة قانونية. وقواعد الإيداع تتفاوت بحسب الولاية القضائية وتتغيّر؛ والوفاء بها مسؤولية المُقدِّم. استشر المستشار القانوني والإرشادات الحالية لسجلّ الوجهة.

use NextPDF\Enterprise\Document\EFiling\EFilingOptimizer;
use NextPDF\Enterprise\Document\EFiling\EFilingProfile;
$optimizer = new EFilingOptimizer();
$result = $optimizer->optimize($pdfBytes, EFilingProfile::euJustice());
foreach ($result->segments as $segment) {
// Persist $segment->pdfData; confirm $segment->sizeBytes fits the cap.
}
  • افحص $result->warnings قبل الإيداع. فالتطهير المرفوض أو الخطنة المُتخطّاة يظهر هناك، لا بوصفه استثناءً.
  • وقّع وأرشِف المستند المصدر أولًا؛ ثم حسِّن نسخة للتسليم. ولا تُعِد أبدًا توقيع جزء مُحسَّن أو ختمه أو أرشفته.
  • تحقّق من sizeBytes لكل جزء بمواجهة سقف ملف التعريف. فالصفحة غير القابلة للتقسيم والمتجاوزة للحدّ تصل إلى المخرَج بصمت.
  • للبوّابات التي لا مصنع مُضمَّن لها، ابنِ EFilingProfile مخصّصًا بالسقف المنشور للبوّابة.

توثّق هذه الصفحة السلوك المرصود خارجيًا وسطح واجهة برمجة التطبيقات العامة المدعوم فقط. أما مسارات أسماء النطاقات الداخلية، وأصناف المساعدة، وجداول الآليات، وأسماء ملفات أدلّة التشغيل، وبادئات التذاكر فخارج النطاق.