العمل مع JavaScript

إضافة JavaScript (DOM)

ما هو Acrobat JavaScript؟

Acrobat JavaScript هو لغة تعتمد على جوهر JavaScript الإصدار 1.5 من ISO-16262، والمعروفة سابقًا باسم ECMAScript، وهي لغة برمجة كائنية التوجه تم تطويرها بواسطة Netscape Communications. تم إنشاء JavaScript لتحميل معالجة صفحات الويب من الخادم إلى العميل في التطبيقات المستندة إلى الويب. يقوم Acrobat JavaScript بتنفيذ امتدادات، في شكل كائنات جديدة وطرقها وخصائصها المرافقة، إلى لغة JavaScript. تتيح هذه الكائنات الخاصة بـ Acrobat للمطور إدارة أمان المستند، والتواصل مع قاعدة بيانات، والتعامل مع مرفقات الملفات، ومعالجة ملف PDF بحيث يتصرف مثل نموذج تفاعلي مدعوم من الويب، وما إلى ذلك. نظرًا لأن الكائنات الخاصة بـ Acrobat تُضاف فوق JavaScript الأساسي، لا يزال لديك وصول إلى فئاتها القياسية، بما في ذلك Math وString وDate وArray وRegExp.

Acrobat JavaScript مقابل JavaScript HTML (الويب)

تتمتع مستندات PDF بمرونة كبيرة حيث يمكن عرضها داخل برنامج Acrobat وكذلك في متصفح الويب. لذلك، من المهم أن تكون على دراية بالاختلافات بين Acrobat JavaScript وJavaScript المستخدم في متصفح الويب، المعروف أيضًا باسم JavaScript HTML:

  • لا يمكن لـ Acrobat JavaScript الوصول إلى الكائنات داخل صفحة HTML. وبالمثل، لا يمكن لـ JavaScript HTML الوصول إلى الكائنات داخل ملف PDF.
  • يمكن لـ JavaScript HTML معالجة كائنات مثل Window. لا يمكن لـ Acrobat JavaScript الوصول إلى هذا الكائن المحدد ولكنه يمكنه معالجة كائنات خاصة بـ PDF.

يمكنك إضافة JavaScript على مستوى المستند والصفحة باستخدام Aspose.PDF for .NET. لإضافة JavaScript:

إضافة JavaScript إلى إجراء المستند أو الصفحة

  1. قم بإعلان وإنشاء كائن JavascriptAction مع عبارة JavaScript المطلوبة كوسيط للبناء.
  2. قم بتعيين كائن JavascriptAction إلى الإجراء المطلوب في مستند PDF أو الصفحة.

المثال أدناه يطبق OpenAction على مستند معين.

إضافة/إزالة JavaScript على مستوى المستند

تمت إضافة خاصية جديدة باسم JavaScript في فئة Document والتي تحتوي على نوع مجموعة JavaScript وتوفر الوصول إلى سيناريوهات JavaScript بواسطة مفتاحها. تُستخدم هذه الخاصية لإضافة JavaScript على مستوى المستند. تحتوي مجموعة JavaScript على الخصائص والطرق التالية:

  • string this(string key)– يحصل أو يحدد JavaScript بواسطة اسمه.
  • IList Keys – يوفر قائمة بالمفاتيح الموجودة في مجموعة JavaScript.
  • bool Remove(string key) – يزيل JavaScript بواسطة مفتاحه.

تعيين تاريخ انتهاء صلاحية مستند PDF باستخدام إجراءات JavaScript

تتيح لك Aspose.PDF تعيين تاريخ انتهاء صلاحية لمستند PDF عن طريق تضمين إجراءات JavaScript. تضمن هذه الوظيفة أن يصبح PDF غير متاح بعد تاريخ ووقت محددين، مما يعزز أمان المستند والتحكم فيه. من خلال الاستفادة من إجراءات JavaScript، يمكنك تحديد شروط انتهاء دقيقة حتى الثانية، مما يضمن تنظيم وصول المستند بشكل صارم.

يمكنك تحقيق ذلك من خلال اتباع هذه الخطوات

  1. تهيئة المستند: قم بإنشاء مستند PDF جديد وأضف صفحة فارغة أو افتح مستند PDF موجود.
  2. تحديد تاريخ ووقت انتهاء الصلاحية: قم بتعيين التاريخ والوقت بعدهما سينتهي المستند.
  3. تحضير كود JavaScript:
    • استرجع التاريخ والوقت الحاليين.
    • حدد تاريخ ووقت انتهاء الصلاحية بالضبط، مع الأخذ في الاعتبار أن الأشهر تبدأ من الصفر في JavaScript.
    • قارن التاريخ والوقت الحاليين مع تاريخ ووقت انتهاء الصلاحية.
    • إذا تجاوز التاريخ والوقت الحاليين تاريخ ووقت انتهاء الصلاحية، اعرض تنبيهًا وأغلق المستند.
  4. تعيين إجراء الفتح: اربط إجراء JavaScript بإجراء فتح المستند.
  5. حفظ المستند: احفظ PDF مع JavaScript المضمن الذي يفرض شرط انتهاء الصلاحية.

فيما يلي مقتطفات من الكود توضح هذه الوظيفة في كل من C# (.NET) وJava.

توضح مقتطفات كود C# التالية كيفية تعيين تاريخ ووقت انتهاء صلاحية لمستند PDF باستخدام إجراءات JavaScript مع Aspose.PDF:

  • كائن تاريخ JavaScript: في JavaScript، يبدأ فهرس الشهر عند 0 لشهر يناير وينتهي عند 11 لشهر ديسمبر. تأكد من ضبط قيمة الشهر وفقًا لذلك عند تعيين تاريخ ووقت انتهاء الصلاحية.

  • اعتبارات الأمان: بينما يمكن أن تتحكم إجراءات JavaScript في سلوك مستند PDF، فإنها تعتمد على دعم عارض PDF لـ JavaScript. قد لا تحترم جميع عارضي PDF هذه السكربتات، وقد يكون لدى المستخدمين تعطيل تنفيذ JavaScript لأسباب أمنية.

  • التخصيص: قم بتعديل كود JavaScript لأداء إجراءات إضافية عند انتهاء الصلاحية، مثل تعطيل ميزات معينة، أو إعادة التوجيه إلى صفحة معينة، أو تسجيل الحدث. بالإضافة إلى ذلك، إذا لزم الأمر، يمكنك التحقق فقط من تاريخ انتهاء الصلاحية دون تحديد الوقت.