ملحوظة:
تم الإبلاغ عن هذا من قبل في # 7711 وربما في # 6152 ، ولكن تم إغلاقه بشكل غير صحيح على أنه ثابت أو غير ذي صلة
إعدادات:
خطوات إعادة إظهار المشكلة:
حالة اختبار
https://kleins05.github.io/pdf.js/test-ieiframe/
(تحميل في IE11 ، انقر فوق زر الطباعة ، وتحقق من إخراج الطباعة)
ما هو السلوك المتوقع؟
يجب طباعة ملف PDF في iframe.
ماذا حصل؟
تتم طباعة الصفحة المحيطة.
دعم الطباعة في IE11 محدود بشكل عام ، علاوة على ذلك ، يرجى الرجوع إلى القسم ذي الصلة من الأسئلة الشائعة :
بينما يجب أن تظل المكتبة والعارض الافتراضي يعملان في IE 11 / Edge (غير المستندة إلى Chromium) في الوقت الحالي ، قد لا تتوفر بعض الوظائف / الميزات وسيكون الأداء أسوأ مقارنة بالمتصفحات الحديثة. من الآن فصاعدًا ، لن يتم قبول سوى الأخطاء التي تمنع تشغيل المكتبة و / أو العارض الافتراضي تمامًا .
لقد وجدت السبب. على عكس المتصفحات الأخرى window.print in IE تتسبب في طباعة الإطار / النافذة المركزة حاليًا ، وليس بالضرورة الإطار الذي يشير إليه window
. يؤدي استخدام document.execCommand إلى تجنب ذلك.
في web / pdf_print_service.js: 187 بدلاً من print.call (نافذة) ؛ استعمال:
var result = window.document.execCommand('print', false, null);
if (!result) {
print.call(window);
}
إذا كنت سعيدًا بقبول طلب سحب على الرغم من دعمك المحدود لـ IE11 ، فأنا على استعداد لإنشاء واحد. اسمحوا لي أن أعرف.
إذا كنت سعيدًا بقبول طلب السحب على الرغم من دعمك المحدود لـ IE11 ،
لسوء الحظ ، لم نقبل مطلقًا "الاختراقات" للتوافق الموضوعة في قاعدة التعليمات البرمجية الرئيسية ، لأسباب مختلفة مثل سهولة القراءة / قابلية الصيانة / الأداء ، وكانت تلك دائمًا مقتصرة على polyfills الموضوعة في https://github.com/mozilla/pdf .js / blob / master / src / shared /perience.js
علاوة على ذلك ، في هذه المرحلة من الوقت ، يجب أن يمنع الخطأ استخدام المكتبة على الإطلاق في IE11 ليتم اعتباره صالحًا. (توقع إصدار PDF.js في المستقبل ، والذي لم يتم تحديده بعد على حد علمي ، لوضع علامة على IE11 على أنه غير مدعوم بشكل صريح وإزالة ما تبقى من رمز التوافق القليل. تاريخيًا ، أدت محاولة دعم IE11 إلى تقييد القدرة على استخدام ميزات JavaScript الحديثة ، وأجبر المساهمين على قضاء الكثير من الوقت في دعم متصفح ميت بشكل أساسي.)
التعليق الأكثر فائدة
لقد وجدت السبب. على عكس المتصفحات الأخرى window.print in IE تتسبب في طباعة الإطار / النافذة المركزة حاليًا ، وليس بالضرورة الإطار الذي يشير إليه
window
. يؤدي استخدام document.execCommand إلى تجنب ذلك.في web / pdf_print_service.js: 187 بدلاً من print.call (نافذة) ؛ استعمال:
إذا كنت سعيدًا بقبول طلب سحب على الرغم من دعمك المحدود لـ IE11 ، فأنا على استعداد لإنشاء واحد. اسمحوا لي أن أعرف.