pdf

  
مكتبة لإضافة إمكانات عرض ملفات PDF داخل التطبيقات
آخر الأخبار الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار الأوّلي
‫16 يوليو 2025 - - - 1.0.0-alpha10

تعريف التبعيات

لإضافة تبعية على ملف pdf، يجب إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف التبعيات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:

Groovy

dependencies {
    implementation "androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10"
}

Kotlin

dependencies {
    implementation("androidx.pdf:pdf-viewer-fragment:1.0.0-alpha10")
}

لمزيد من المعلومات حول العناصر التابعة، يُرجى الاطّلاع على إضافة عناصر تابعة للإنشاء.

الملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء مشكلة جديدة

يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.

لا تتوفّر ملاحظات إصدار لهذا العنصر.

الإصدار 1.0

الإصدار 1.0.0-alpha10

‫16 يوليو 2025

تم طرح androidx.pdf:pdf-*:1.0.0-alpha10. يحتوي الإصدار 1.0.0-alpha10 على عمليات الدمج هذه.

الميزات الجديدة

  • ميزة اختيار محسّنة تتيح للمستخدمين اختيار نص على مستوى صفحات متعددة عن طريق سحب مقابض الاختيار إلى ما بعد حدود الصفحة
  • يمكن للتطبيقات الآن اعتراض عملية التعامل مع النقرات على الروابط التشعّبية داخل مستندات PDF وتخصيصها.

تغييرات واجهة برمجة التطبيقات

  • تعرض هذه السمة عنصرًا قابلاً للإنشاء لعرض محتوى PDF (I8e7ee).
  • جارٍ نقل PdfPoint وPdfRect إلى حزمة androidx.pdf.models (I26cf4)
  • عرض مكوّن View لعرض محتوى PDF (I9fe27)
  • عرض واجهة برمجة التطبيقات لتهيئة موارد ملفات PDF مسبقًا وتقليل وقت الاستجابة عند بدء التشغيل البارد (a18fa89)
  • إتاحة واجهة برمجة تطبيقات لتجاوز معالجة النقر على الروابط التشعّبية في محتوى PDF(6330a8b)
  • تعرض هذه الحزمة عنصرًا جديدًا باسم pdf-document-service وواجهات برمجة التطبيقات المقابلة PdfLoader وPdfDocument وSandboxedPdfLoader. يمكن استخدام الواجهات لتنفيذ مكوّن تحليل مستند PDF ومعالجته (Ide70d).
  • تعرض واجهة برمجة تطبيقات لضبط PdfDocument على PdfView من أجل بدء عرض المستند (If8738)

الإصدار 1.0.0-alpha09

‫7 مايو 2025

تم طرح androidx.pdf:pdf-*:1.0.0-alpha09. يحتوي الإصدار 1.0.0-alpha09 على عمليات الدمج هذه.

التغييرات الرئيسية

  • تمت إعادة تصميم قاعدة الرموز البرمجية بشكل كبير، وأصبحت مكتوبة بالكامل بلغة Kotlin، مع استخدام Coroutines وViewModel. ويشمل ذلك إعادة تنفيذ PdfViewerFragment. لا يتضمّن هذا الإصدار أي واجهات برمجة تطبيقات أو ميزات جديدة.

المشاكل المعروفة:

  • لا يظهر تأثير الظل في أداة التمرير السريع ومؤشر الصفحة.
  • قد لا يتم توسيط مستندات PDF المكوّنة من صفحة واحدة وتغيير حجمها دائمًا ليتناسب مع عرض العرض.

تغييرات واجهة برمجة التطبيقات

  • إضافة تعليق توضيحي إلى containerStyleResId باستخدام @StyleRes (I88d85)

الإصدار 1.0.0-alpha08

‫12 مارس 2025

تم إصدار androidx.pdf:pdf-document-service:1.0.0-alpha08 وandroidx.pdf:pdf-viewer:1.0.0-alpha08 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha08. يحتوي الإصدار 1.0.0-alpha08 على عمليات الإيداع هذه.

إصلاح الأخطاء

  • تم حلّ مشكلة عدم اتساق موضع قائمة الاختيار بين أجهزة Android المختلفة بسبب الاختلافات في القياس. أصبح موضع قائمة الاختيار متسقًا على جميع الأجهزة.
  • تمت محاذاة موضع أداة التمرير السريع ومؤشر الصفحة عند إعادة إنشاء الجزء في سيناريوهات مثل تغيير الإعدادات وغير ذلك.

الإصدار 1.0.0-alpha07

‫26 فبراير 2025

تم إصدار androidx.pdf:pdf-document-service:1.0.0-alpha07 وandroidx.pdf:pdf-viewer:1.0.0-alpha07 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha07. يحتوي الإصدار 1.0.0-alpha07 على عمليات الدمج هذه.

الميزات الجديدة

  • يتيح PdfViewerFragment الآن استخدام StylingOptions (مجموعة من أرقام تعريف موارد الأنماط) ما يتيح إمكانية تخصيص الأنماط من خلال newInstance أو XML (FragmentContainerView). ويمكن للفئات الفرعية استخدام الدالة الإنشائية المحمية لتوفير وظائف مشابهة.
  • تتلقّى StylingOptions حاليًا containerStyle التي توفّر ما يلي:
    • إتاحة عناصر قابلة للرسم مخصّصة لمقبض التمرير السريع ومؤشر الصفحة
    • السمة marginEnd لتحديد موضع دقيق لمقبض التمرير السريع ومؤشر الصفحة

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة سمات عامة من PdfView (I30fc5)
  • تمت إضافة واجهات برمجة تطبيقات جديدة StylingOptions لعرض ملفات PDF. (Id2993)

إصلاح الأخطاء

  • تم إصلاح التباين في المزامنة بين مقبض التمرير السريع وحالة ظهور مؤشر الصفحة.

الإصدار 1.0.0-alpha06

‫29 يناير 2025

تم إصدار androidx.pdf:pdf-document-service:1.0.0-alpha06 وandroidx.pdf:pdf-viewer:1.0.0-alpha06 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha06. يحتوي الإصدار 1.0.0-alpha06 على عمليات الدمج هذه.

إصلاح الأخطاء

  • إصلاح: تعطُّل ناتج عن IllegalArgumentException عند إلغاء ربط خدمة غير مسجّلة (eb4e85)
  • إصلاح: تعذُّر تشغيل IllegalArgumentException بسبب الاختلاف في mMaxPages وnumPages (75d763)

الإصدار 1.0.0-alpha05

‫11 ديسمبر 2024

تم إصدار androidx.pdf:pdf-document-service:1.0.0-alpha05 وandroidx.pdf:pdf-viewer:1.0.0-alpha05 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha05. يحتوي الإصدار 1.0.0-alpha05 على عمليات الإيداع هذه.

إصلاح الأخطاء

  • تستخدم هذه المكتبة الآن تعليقات توضيحية بشأن القيم الخالية في JSpecify، وهي تعليقات توضيحية خاصة بالاستخدام. على مطوّري Kotlin استخدام وسيطة المترجم البرمجي التالية لفرض الاستخدام الصحيح: -Xjspecify-annotations=strict (هذه هي القيمة التلقائية بدءًا من الإصدار 2.1.0 من المترجم البرمجي للغة Kotlin). (I38301، b/326456246)
  • تم إصلاح مشكلة عرض الصفحة التي تم فتحها سابقًا بعد تدوير الشاشة في Android 13. (Ib03dd)
  • تم إصلاح مشكلة اختفاء "صندوق الأدوات" عند تدوير الشاشة. (01148f)

الإصدار 1.0.0-alpha04

‫13 نوفمبر 2024

تم طرح androidx.pdf:pdf-viewer:1.0.0-alpha04 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha04. يحتوي الإصدار 1.0.0-alpha04 على عمليات الإيداع هذه.

توافق موسّع

  • تتوافق مكتبة PDFViewer الآن مع إصدارات Android S وT وU وV. ويرتبط هذا التوافق المحسّن بتحديث حزمة تطوير البرامج (SDK) رقم 13.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة الحد الأدنى SdkExtension إلى PdfViewerFragment. (I922af)
  • عرض واجهات برمجة تطبيقات جديدة لمكتبة "عارض ملفات PDF" (I0af57)

إصلاح الأخطاء

  • إصلاح مشكلة تعطُّل التطبيق بسبب إيقاف العملية نهائيًا
  • إصلاحات في واجهة المستخدم متعلّقة بمربّع حوار كلمة المرور
  • إصلاحات تسهيل الاستخدام في "findInFileView" و"FastscrollView"

التطوير المستمر

  • نحن نعمل جاهدين على دمج Jetpack Compose في المكتبة.

الإصدار 1.0.0-alpha03

‫18 سبتمبر 2024

تم طرح androidx.pdf:pdf-viewer:1.0.0-alpha03 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha03. يحتوي الإصدار 1.0.0-alpha03 على عمليات الدمج هذه.

إصلاح الأخطاء

  • تم حلّ مشكلة عدم ظهور لوحة المفاتيح عند فتح البحث لأول مرة
  • إصلاحات في واجهة المستخدم متعلّقة بخط عرض FindInFile
  • إصلاحات في واجهة المستخدم المتعلّقة بتحديد النص ومقبض السحب

المشاكل المعروفة

  • لا يتم عرض الصور الثلاثية الأبعاد في مستندات PDF في عارض الصور.
  • تواجه PdfViewerFragment بعض المشاكل في الأداء عند التعامل مع مستندات PDF كبيرة جدًا (أكبر من 250 ميغابايت).

الإصدار 1.0.0-alpha02

‫4 سبتمبر 2024

تم طرح androidx.pdf:pdf-viewer:1.0.0-alpha02 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha02. يحتوي الإصدار 1.0.0-alpha02 على عمليات الإيداع هذه.

إصلاح الأخطاء

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

المشاكل المعروفة

  • لا يتم عرض الصور الثلاثية الأبعاد في مستندات PDF في عارض الصور.
  • تواجه PdfViewerFragment بعض المشاكل في الأداء عند التعامل مع مستندات PDF كبيرة جدًا (أكبر من 250 ميغابايت).

الإصدار 1.0.0-alpha01

‫7 أغسطس 2024

تم طرح androidx.pdf:pdf-viewer:1.0.0-alpha01 وandroidx.pdf:pdf-viewer-fragment:1.0.0-alpha01. يحتوي الإصدار 1.0.0-alpha01 على عمليات الدمج هذه.

الميزات الجديدة

يتضمّن الإصدار الأوّلي من PDFViewer معاينات مبكرة تتيح سيناريوهات قراءة ملفات PDF الأساسية. يُرجى العلم أنّ PdfViewerFragment لا تتوفّر حاليًا إلا على إصدارات Android V (الإصدار 35 من حزمة تطوير البرامج). وسنتيح إمكانية استخدامها في إصدارات Android القديمة في التحديثات القادمة.

  • تم تقديم PdfViewerFragment التي يمكن أن يستخدمها تطبيقك لعرض مستند PDF. تسهّل PdfViewerFragment دمج عارض ملفات PDF في "النشاط"، وتتيح للمستخدمين التفاعل بالطرق التالية:
    • التكبير والتصغير: اضغط بضمّ الإصبعين أو فتحهما لضبط مستويات التكبير أو التصغير للحصول على تجربة قراءة مريحة، بالإضافة إلى النقر مرّتين للتكبير أو التصغير بسرعة إلى الحالة التلقائية.
    • التنقّل: يمكنك التنقّل في الحالة التلقائية أو حالة التكبير/التصغير. توفّر PdfViewerFragment شريط تمرير سريعًا للتنقّل بسرعة بين الصفحات.
    • إجراءات النص: يؤدي الضغط مع الاستمرار على النص إلى تحديده، ما يتيح للمستخدمين استخدام خيارات مثل "نسخ" و"تحديد الكل" في الصفحة الحالية.
    • المستندات المحمية بكلمة مرور: يوفّر PdfViewerFragment مربع حوار للمستخدم لإدخال كلمة المرور وفتح المستند.
    • روابط تشعّبية قابلة للتنقّل: يمكن للمستخدمين الانتقال إلى عناوين URL على الويب أو الإشارات المرجعية من خلال النقر على الروابط التشعّبية داخل ملف PDF.
    • اختصار إلى وضع التعليقات التوضيحية: لا يتوفّر وضع التعديل بعد في PdfViewerFragment. بدلاً من ذلك، يعرض PdfViewerFragment FloatingActionButton يطلق غرضًا ضمنيًا android.intent.action.ANNOTATE مع معرّف الموارد المنتظم (URI) للمستند.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة السمة PdfViewerFragment.documentUri لضبط معرّف الموارد المنتظم (URI) لملف أو محتوى المستند وبدء تحميل المستند. تعرض PdfViewerFragment مؤشر تحميل عند ضبط معرّف الموارد المنتظم (URI)، ما يشير إلى المعالجة في الخلفية للمستند.
  • تمت إضافة PdfViewerFragment.isTextSearchActive لتبديل إمكانية ظهور قائمة "البحث في الملف". يتولّى PdfViewerFragment عملية البحث بأكملها، إذ يتيح إدخال البيانات وعرض إجمالي عدد النتائج المطابقة وتسهيل التنقّل بين النتائج والخروج منها.
  • تمت إضافة عمليات ردّ الاتصال onDocumentLoadSuccess وonDocumentLoadError التي يتم استدعاؤها بعد عرض المستند بنجاح أو بعد ظهور خطأ قبل العرض.

المشاكل المعروفة

  • يتداخل شريط "البحث في الملف" مع FloatingActionButton في بعض الحالات.
  • لا يظهر الرمز FloatingActionButton لملفات PDF المكوّنة من صفحة واحدة.
  • لا يتم الاحتفاظ بعدد النتائج عند تغيير الإعدادات في قائمة "البحث في الملف".
  • يحدث التعتيم عند إغلاق قائمة "البحث في الملف"
  • لا يتم عرض الصور الثلاثية الأبعاد في مستندات PDF في عارض الصور.
  • سيتم تفعيل ميزات تسهيل الاستخدام في الإصدارات التالية.
  • تصبح صورة PDF غير واضحة عند التدوير من الوضع العمودي إلى الوضع الأفقي.
  • لا تتوفّر إمكانية إضافة تعليقات توضيحية نصية أو تمييز النص.
  • تواجه PdfViewerFragment بعض المشاكل في الأداء عند التعامل مع مستندات PDF كبيرة جدًا (أكبر من 250 ميغابايت).

ملاحظة

  • تعديل compileSdk إلى 35 5dc41be