Pdf.js: خاصية: عرض من صفحتين

تم إنشاؤها على ٢ أكتوبر ٢٠١١  ·  29تعليقات  ·  مصدر: mozilla/pdf.js

طلب الميزة: إضافة أزرار لعرض من صفحتين
أيضًا ، سيكون من الجيد أن يكون لديك زر بنسبة 100٪ و "ملاءمة الصفحة" في شريط الأدوات.

1-ux 1-viewer 2-feature

التعليق الأكثر فائدة

يمكنك اختباره باستخدام إصدار المعاينة على http://54.67.70.0 : 8877 / 5e5412c2765c9bd / web / viewer.html.

مذهل شكرا. من أجل اختباره ، يتعين على المرء تحديد "تمرير الشبكة" وتقليل التكبير إلى 100٪. النتائج:

  1. الإعدادات: يتم تذكر إعدادات تمرير الشبكة وإظهار الشريط الجانبي عند فتح ملف PDF جديد ، ومع ذلك لا يتم تذكر مستوى التكبير / التصغير (دائمًا ما يتم افتراضيًا التكبير التلقائي عند فتح ملف PDF جديد ، ولكن هذا يحدث لملفات pdf.js القياسية أيضًا)
  2. الأداء: تم اختباره باستخدام بعض ملفات PDF التي تحتوي على الكثير من النصوص والصور الكبيرة. يبدو أنه نفس الأداء مثل pdf.js القياسي ، إلا أن ملف pdf.js القياسي أبطأ من قارئ ملفات pdf foxit في كثير من الحالات ، نظرًا لعدم وجود صفحات كافية "للقراءة مسبقًا". هذا يعني أن عجلة التحميل يمكن رؤيتها قريبًا عند التمرير السريع. بالإضافة إلى ذلك ، لا يتم "تذكر" الصفحات التي تمت قراءتها بالفعل في ذاكرة الوصول العشوائي. التمرير لأعلى مرة أخرى يظهر عجلة التحميل مرة أخرى. ولكن كما قيل ، يبدو أن هذه مشكلة تتعلق بالمعيار العام pdf.js.
  3. التوافق: تم اختبار أحجام ليست A4 ، ملف PDF واحد بأحجام صفحات مختلفة. في ملف PDF غير قياسي ، كانت صورة العنوان مفقودة ، ولكن هذا حدث أيضًا مع ملف pdf.js.
  4. تقنيًا: كما هو الحال مع FF القياسي ، يعمل كل شيء (عرض خط البكسل الفرعي ، تسريع الأجهزة ...). تعمل أيضًا: PDF / A & PDFs مع إجراءات Javascript. لا تعمل ملفات PDF مع عناصر إدخال النص ، ولكن مرة أخرى هذا لا يعمل أيضًا مع pdf.js القياسي ("يحتوي ملف PDF على بيانات نموذجية. تحرير المنتديات غير مدعوم").
  5. الضغط: تم اختبار 50 ملف PDF وبعض ملفات التعذيب بآلاف الصفحات.

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

الخلاصة: نسخة تمرير الشبكة تعمل تمامًا مثل ملف pdf.js. القياسي غير الشبكي هناك بعض المشكلات في pdf.js بشكل عام والتي يمكن تحسينها ، ولكن لا شيء يتعلق بتمرير الشبكة للعلاقات العامة. نسخة تمرير الشبكة رائعة للغاية ، سيكون من الرائع أن يختفي "شريط العنوان" تلقائيًا. في عارض PDF في Chrome ، يظهر هذا الشريط فقط لبضع ثوان عندما يتحرك الماوس أو يتم لمس الشاشة. بصرف النظر عن ذلك ، فأنا أفكر بالفعل في كيفية استخدام إصدار تمرير الشبكة هذا كقارئ قياسي لملفات PDF ، حتى يتوفر هذا في FF ثابت ؛)

ال 29 كومينتر

حول نسبة 100٪ وملاءمة الصفحة ، هذا شيء يفعله Adobe Reader وأنا أوافق على أنه سيكون من الجيد الحصول عليه في PDF.js.

أما بالنسبة للعرض المكون من صفحتين ، فأنا أتفق مع ذلك أيضًا.

+1

أي عمل من أجل هذا على الإطلاق في ~ 4 سنوات الماضية؟

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

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

+1

الرجاء استخدام زر تفاعل +1 في GitHub بدلاً من إضافة تعليقات +1 هنا. يتيح لنا استخدام زر تفاعل +1 تصفية المشكلات التي تحتوي على العديد من إجراءات +1 ، وبالتالي يتيح لنا تحديد أولويات المشكلات بطريقة أفضل.

حسنا. لقد استخدمت زر رد الفعل بدلاً من التعليق. شكر

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

[0 | 1] [2 | 3]
"[4 | 5]
[6 | 7] [8 | 9]

الآن هناك مستوى عالٍ لذلك لأخذ هذه ووضعها في مجموعة من المئات.

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

👍

timvandermeij شكرا

ماذا علي أن أفعل لأجعلك تضيف هذه الميزة؟ ماذا؟

الخطوة التالية هي المساعدة في إضافة اختبار التكامل الآلي: # 6505

إنه "خطأ جيد للمبتدئين لأن هذا لا يتطلب معرفة كبيرة بقاعدة شفرة PDF.js للعمل عليها. ربما يكون لدى المساهمين من مشروعات JS الأخرى خبرة في اختبار التكامل لمساعدتنا في هذا الأمر. ستكون الخطوة الأولى هي الاختيار والإضافة إطار اختبار التكامل. "

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

لم يستغرق العرض التوضيحي المبسط أكثر من بضع دقائق للكتابة ، بناءً على المثال السابق / التالي لملف pdf.js:

https://jsfiddle.net/Yetangitu/1egqfefu/4/

تنقل باستخدام الأزرار أو بالنقر على الصفحات اليسرى / اليمنى ...

tfer ، هذا هو عارض الوضع https://jsfiddle.net/Yetangitu/ht04sp3b/

(زيادة عامل القياس ، العرض على الشاشة الكبيرة ، الربح!)

بقدر ما أرى ، ليست هناك حاجة لـ pds.js لدعم تصيير متعدد الصفحات ، يمكن التعامل مع هذا بشكل مناسب على مستوى أعلى.

yurydelendik ما هو الحل المربك؟ أنا أستخدمه لإنشاء عارض PDF لـ Nextcloud / Owncloud ، إنه يعمل بشكل جيد.

image

image

image

بأي طريقة هذا الحل مربك؟

لا يتناسب مع عارضنا التجريبي.

https://jsfiddle.net/Yetangitu/1egqfefu/4/

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

من فضلك لا تغلق هذه القضية! تم فتح وإغلاق عدد لا يحصى من المشكلات الأخرى بحل لا يعالج المشكلة المركزية: يحتاج PDFjs بشدة إلى طريقة مضمنة لعرض صفحتين. تبدو العديد من ملفات PDF ، مثل المقالات الصحفية ، والكتيبات ، وما إلى ذلك رائعة في عرض الصفحة الواحدة. ولكن تم تصميم ALL BOOKS ، منذ Gutenberg ، ليتم عرضها كتخطيطات LR. أنا أستخدم PR # 3723 الخاص بـ

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

أعتقد أن هذا النوع من الوظائف ينتمي إلى تطبيق عارض ، وليس في مكتبة عرض / فك تشفير PDF الأساسية وهي pdf.js ، ومن ثم رد فعلي على مشكلة pdf.js هذه.

سأطلق النسخة القادرة على PDF من Reader في غضون أيام قليلة لأولئك الذين يريدون تجربة المفهوم. نظرًا لأن Reader هو تطبيق Nextcloud / Owncloud ، فستحتاج إلى أن يكون لديك أحد هؤلاء في مكان ما ...

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

إنه عام 2018 وكان هذا يطرح منذ 7 سنوات حتى الآن. قف! أي تحديثات / جداول زمنية على هذا حتى الآن؟

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

FYI ، تطبيق Reader لـ Nextcloud & Owncloud يدعم الآن PDF ، بما في ذلك وضع صفحتين (انتشار) الذي ذكرته. يمكن العثور عليها على Github:

https://github.com/Yetangitu/owncloud-apps/tree/master/files_reader

وفي مستودع تطبيقات Nextcloud:

https://apps.nextcloud.com/apps/files_reader

سيظهر قريبًا في مستودع Owncloud أيضًا.

image

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

حريصة على الاختبار ، ماذا تحتاج؟ هل هناك أي نقطة ثنائية أو SW مجمعة يمكننا اختبارها؟ لماذا لا تختبرها خلال الدورة الرئيسية التجريبية الليلية؟

FYI ، تطبيق Reader لـ Nextcloud & Owncloud يدعم الآن PDF

رائع ، الآن نحتاج فقط إلى معرفة كيفية تشغيل هذا كمشاهد مستقل. سومطرة قادرة أيضًا على عرض صفحتين ، لكنها لا تحتوي على عرض بكسل فرعي. يحتوي FF على عرض بكسل فرعي ، ولكن لا يوجد عرض قياسي مكون من صفحتين. لا يوجد حاليًا عارض PDF مفتوح المصدر قابل للاستخدام على نظام التشغيل windows: /

يمكنك اختباره باستخدام إصدار المعاينة على http://54.67.70.0 : 8877 / 5e5412c2765c9bd / web / viewer.html. راجع # 9208 لمزيد من المعلومات.

يمكنك اختباره باستخدام إصدار المعاينة على http://54.67.70.0 : 8877 / 5e5412c2765c9bd / web / viewer.html.

مذهل شكرا. من أجل اختباره ، يتعين على المرء تحديد "تمرير الشبكة" وتقليل التكبير إلى 100٪. النتائج:

  1. الإعدادات: يتم تذكر إعدادات تمرير الشبكة وإظهار الشريط الجانبي عند فتح ملف PDF جديد ، ومع ذلك لا يتم تذكر مستوى التكبير / التصغير (دائمًا ما يتم افتراضيًا التكبير التلقائي عند فتح ملف PDF جديد ، ولكن هذا يحدث لملفات pdf.js القياسية أيضًا)
  2. الأداء: تم اختباره باستخدام بعض ملفات PDF التي تحتوي على الكثير من النصوص والصور الكبيرة. يبدو أنه نفس الأداء مثل pdf.js القياسي ، إلا أن ملف pdf.js القياسي أبطأ من قارئ ملفات pdf foxit في كثير من الحالات ، نظرًا لعدم وجود صفحات كافية "للقراءة مسبقًا". هذا يعني أن عجلة التحميل يمكن رؤيتها قريبًا عند التمرير السريع. بالإضافة إلى ذلك ، لا يتم "تذكر" الصفحات التي تمت قراءتها بالفعل في ذاكرة الوصول العشوائي. التمرير لأعلى مرة أخرى يظهر عجلة التحميل مرة أخرى. ولكن كما قيل ، يبدو أن هذه مشكلة تتعلق بالمعيار العام pdf.js.
  3. التوافق: تم اختبار أحجام ليست A4 ، ملف PDF واحد بأحجام صفحات مختلفة. في ملف PDF غير قياسي ، كانت صورة العنوان مفقودة ، ولكن هذا حدث أيضًا مع ملف pdf.js.
  4. تقنيًا: كما هو الحال مع FF القياسي ، يعمل كل شيء (عرض خط البكسل الفرعي ، تسريع الأجهزة ...). تعمل أيضًا: PDF / A & PDFs مع إجراءات Javascript. لا تعمل ملفات PDF مع عناصر إدخال النص ، ولكن مرة أخرى هذا لا يعمل أيضًا مع pdf.js القياسي ("يحتوي ملف PDF على بيانات نموذجية. تحرير المنتديات غير مدعوم").
  5. الضغط: تم اختبار 50 ملف PDF وبعض ملفات التعذيب بآلاف الصفحات.

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

الخلاصة: نسخة تمرير الشبكة تعمل تمامًا مثل ملف pdf.js. القياسي غير الشبكي هناك بعض المشكلات في pdf.js بشكل عام والتي يمكن تحسينها ، ولكن لا شيء يتعلق بتمرير الشبكة للعلاقات العامة. نسخة تمرير الشبكة رائعة للغاية ، سيكون من الرائع أن يختفي "شريط العنوان" تلقائيًا. في عارض PDF في Chrome ، يظهر هذا الشريط فقط لبضع ثوان عندما يتحرك الماوس أو يتم لمس الشاشة. بصرف النظر عن ذلك ، فأنا أفكر بالفعل في كيفية استخدام إصدار تمرير الشبكة هذا كقارئ قياسي لملفات PDF ، حتى يتوفر هذا في FF ثابت ؛)

لأولئك الذين يبحثون عن اختراق سريع ونظيف ، ما عليك سوى إضافة سحر css على (viewer.html):

<style>
#viewer {
  margin-left:20px;
}
div.page {
  float:left;
}
</style>

ضبط التكبير على 75٪ تقريبًا (= عرض صفحتين على شاشتي 1440x900)

هل هناك أي سبب لتطبيق هذه الميزة في ملف pdf.js نفسه؟ يعد تنفيذه في تطبيق قارئ يعتمد على pdf.js أمرًا تافهًا ولا يخاطر بإفساد العارض.

نعم ، أوافق ، لست بحاجة إلى أن أكون في كود pdf.js ...

لأولئك الذين يبحثون عن اختراق سريع ونظيف ، ما عليك سوى إضافة سحر css على (viewer.html) ...

شكرا على العمل.

كخلاصة ، هل يمكن لشخص أن يكتب امتدادًا يضخ طريقةicedman 's workaroud؟ بحيث يمكن للمرء تبديل عرض 1p / 2p بنقرة واحدة؟ لدي ملحق "Kill Sticky" يقوم بحقن / تعديل الصفحة محليًا لذا يجب أن يكون هذا ممكنًا.

شكر

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات