معاينات PDF المضمنة

مرحباً،

أنا أستخدم هذا المكوّن منذ فترة، وقد لاحظت اليوم أن المعاينات المضمنة لم تعد تظهر في الصفحات.

2.8.0.beta6

مثال

إعجاب واحد (1)

يبدو الأمر جيدًا بالنسبة لي في جميع متصفحات سطح المكتب:

5 إعجابات

وهكذا يبدو الأمر في iPad-Safari:

4 إعجابات

شكرًا لكم جميعًا،

تحققت مجددًا الآن، وسيرفر Safari يعمل بشكل جيد على Mac، وEdge يعمل أيضًا، لكن Chrome فشل. أمر مثير للاهتمام.



4 إعجابات

كيف يمكننا السماح لمتصفح Safari على جهاز Mac باستخدام هذه الإضافة؟ إنها تعمل بشكل جيد بالنسبة لي في المتصفحات الأخرى، لكن عند تجربتها على Safari، تقوم بحظرها حتى بعد إيقاف مانعات المحتوى في قسم التفضيلات/المواقع. هل هناك منطقة أخرى يجب فيها إيقاف المانعات؟ أي مساعدة ممتنة.

إعجاب واحد (1)

لا أعرف حقًا، لذا فهذا مجرد إهدار لعرض النطاق الترددي، لكن سفاري كان يسبب مشاكل من قبل بسبب قواعد سياسة المحتوى (CSP) الصارمة جدًا ومسائل أمنية أخرى. لكن إذا كان الأمر كذلك، فيجب أن يؤثر على جميع إصدارات سفاري، وليس فقط إصدارات ماك، أعتقد.

3 إعجابات

تعمل معي على Safari في Mac. المكان الوحيد الذي لا تعمل فيه معي هو على iPhone (Safari و FF و Chrome). لم أجربها على iPad مؤخرًا.

3 إعجابات

جميع متصفحات الويب على iOS/iPadOS تستخدم نفس محرك التصيير بالضبط (WebKit) بسبب قيود أبل، لذا فإن ذلك لن يهم في الواقع anyway.

إعجابَين (2)

هذا ما أراه على جهاز MacBook Air الجديد الخاص بي، متصفح Safari الإصدار 14.1.1

يجب أن يكون هناك إعداد خاطئ في مكان ما…

3 إعجابات

جرّب تحديث Safari إلى أحدث إصدار.

إعجابَين (2)

لقد دفعت تحديثًا جديدًا للتو.

يمكنك الآن تعطيل المعاينة لملفات PDF محددة. لا يعمل هذا تمامًا مثل “oneboxes” لأن ذلك سيكون معقدًا بعض الشيء للتطبيق في مكون السمة، لكنه مشابه جدًا.

عند رفع ملف PDF، سترى الافتراضي التالي في المحرر:

[file.pdf|attachment](upload://2cLML0SIwebGHDjlKRVzZ3VRv0f.pdf) (524.1 KB)

كل ما عليك فعله هو إضافة مسافة قبل اسم الملف على النحو التالي:

[ file.pdf|attachment](upload://2cLML0SIwebGHDjlKRVzZ3VRv0f.pdf) (524.1 KB)

لاحظ أن المسافة يجب أن تكون داخل الأقواس. لن يكون لها أي تأثير على اسم الملف عند تنزيله، ولن يكون لها أي تأثير على وصف الملف المعروض في المنشور.

بمجرد القيام بذلك، لن تكون هناك معاينة مرفقة بملف PDF في المنشور المُعالَج.

يضيف التحديث إعدادًا جديدًا.

يحتوي على خيارين:

Inline (ضمني) و New Tab (علامة تبويب جديدة)

إذا اخترت Inline، فستتم عرض معاينات ملفات PDF في المنشور كما كانت من قبل.

إذا اخترت New Tab، فلن ينشئ المكون معاينة داخلية. ومع ذلك، سيفتح رابط المرفق علامة تبويب جديدة. ستعرض علامة التبويب الجديدة ملف PDF في قارئ المتصفح الأصلي.

وستتغير الأيقونة بجانب رابط المرفق إلى external-link بدلاً من download.

الافتراضي للإعداد هو Inline. لذا… لن يؤثر على المواقع التي كان هذا المكون مثبتًا فيها قبل التحديث. فهو يضيف خيارًا جديدًا تحتاج إلى تفعيله يدويًا.

وردت بعض التقارير عن عدم عمل هذه الميزة على Safari وبعض أجهزة iOS - وهو ما لم أتمكن من إعادة إنتاجه. يحاول التحديث معالجة ذلك عن طريق تحميل ملف PDF كعنوان Base64 بدلاً من Blob - وهو ما قرأت أنه يسبب مشاكل كثيرة على أجهزة Apple.

يرجى تحديث المكون - وتأكد من تحديث متصفحك أيضًا. إذا لم تعمل الميزة معك على جهاز Apple لأي سبب، يرجى التحقق من وحدة تحكم المتصفح - إذا أمكن - وإخباري بما تراه.

10 إعجابات

منذ التحديث إلى الإصدار الأحدث 2.8.0.beta6 (a1daf9fe53)، يبدو أن معاينات ملفات PDF تتحميل ببطء طفيف، وفي حالة واحدة على الأقل، لا تظهر إحدى ملفات PDF من بين ثلاثة في منشور ما في متصفح كروم:

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

وحدة التحكم:

3 إعجابات

أنا على الإصدار 2.8.0.beta6. جهاز كمبيوتر يعمل بنظام Windows 10. ملاحظة مشابهة. متصفح Firefox بطيء قليلاً، لكن المعاينة تُحمّل في النهاية. أما متصفح Chrome فلا يعرضها، ويبدو أنه يتجمّد عند هذا الإطار الرمادي البديل.

4 إعجابات

شكرًا على التفاصيل. نظرًا لأن ملفين منهما تم تحميلهما بنجاح، افترضت أن المشكلة تتعلق على الأرجح بحجم الملف… وتبين أن هذا هو السبب بالفعل.

عند رفع ملف PDF كبير، يعمل الأمر بشكل صحيح في Firefox لكنه يفشل في Chrome. قرأت قليلًا عن هذا الأمر، ويبدو أن الحد الأقصى لطول عنوان URL الترميزي Base64 يُحدده إلى حد كبير مزود المتصفح. فـ Firefox لا يفرض أي حدود، بينما يقتصر Chrome على 2 ميجابايت.

هذا يعني أن عناوين URL الترميزية Base64 ليست خيارًا عمليًا، وسنضطر للعودة إلى عناوين URL من نوع Blob. ويبدو أن Safari يدعم ذلك بشكل أفضل إذا كان عنصر المعاينة وسم <object> بدلاً من إطار مضمن (iFrame).

لذا، فإن هذا الطلب يدمج (PR) يعيد كل شيء إلى عنوان URL من نوع Blob ويغيّر الوسم إلى <object>. وهذا سيحل بالتأكيد المشكلة المتعلقة بالملفات الكبيرة في Chrome، ونأمل :crossed_fingers: أن يحل المشكلات على أجهزة Apple.

يرجى تحديث المكون مرة أخرى وإعلامي إذا كنت لا تزال تواجه أي مشكلات.

3 إعجابات

أحجام الملفات في المنشور الذي يحتوي على 3 ملفات PDF هي 548.3 كيلو بايت، و1.1 ميجابايت، و1.6 ميجابايت، بالترتيب من الأعلى. بعد تحديث المكون وحده، تظهر معاينات الملفات، لكنها لم تعد تظهر بعرض كامل في متصفح كروم:

تعديل: يبدو الوضع في فايرفوكس مشابهًا لكروم أعلاه، بينما لا يعرض سفاري المعاينات، بل مربعات رمادية:

3 إعجابات

شكرًا لك، لقد قمت بدفع إصلاح صغير لمشكلة الحجم.

UX: adds missing iFrame attributes by hnb-ku · Pull Request #4 · discourse/discourse-pdf-previews · GitHub

من المحتمل ألا يحل هذه المشكلة في سفاري، لكن يرجى المحاولة وإخباري بالنتيجة.

3 إعجابات

نعم - تم إصلاح المشكلة في Chrome و FF، بينما لا يزال Safari كما هو مع ظهور مربعات رمادية فقط.

3 إعجابات

فقط للتأكيد، هل كان سفاري يعمل معك من قبل، أليس كذلك؟

3 إعجابات

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

3 إعجابات

يجب أن يصلح هذا الالتزام مشكلة سفاري.

FIX: previews are still broken on MacOS safari by hnb-ku · Pull Request #5 · discourse/discourse-pdf-previews · GitHub

لقد جربته للتو على جهاز ماك بوك، وهو يعمل بشكل جيد بالنسبة لي في سفاري وكروم وفايرفوكس.

إذا واجه أي شخص هذه المشكلة

فإن المشكلة في إعداداتك أنت، وليست في المكون.

How to unblock a blocked plug-in to displ… - Apple Community

كما يرجى ملاحظة أن هذا المكون لم يدعم أبدًا معاينات ملفات PDF على الهواتف المحمولة - كما هو محدد من قبل ديسكوس، سواء كان ذلك على نظام iOS أو أندرويد. لذا، فإن هذا هو السلوك المتوقع.

7 إعجابات