يحتوي هذا المستودع على تطبيق طابعة للطباعة على طابعات HP وApollo المدعومة بمجموعة برامج تشغيل HPLIP من HP.
يستخدم PAPPL لدعم طباعة IPP من أنظمة تشغيل متعددة. بالإضافة إلى ذلك، فإنه يستخدم موارد cups-filters 2.x (وظائف التصفية في libcupsfilters وlipppd) وpappl-retrofit (تغليف برامج تشغيل CUPS الكلاسيكية في تطبيقات الطابعة). هذا العمل (أو الآن رمز pappl-retrofit) مشتق من تطبيق hp-printer.
يتم أخذ برنامج تشغيل الطابعة نفسه وبرنامج الاتصال بأجهزة الطابعة من مجموعة برامج التشغيل HPLIP (HP Linux Imaging and Printing)، وكذلك المعلومات حول نماذج الطابعات المدعومة وقدراتها.
مساهماتك هي موضع ترحيب. الرجاء نشر القضايا وسحب الطلبات.
ملاحظة: تتم صيانة HPLIP بشكل نشط بواسطة HP، فهي تضيف باستمرار أحدث طرازات الطابعات وتكيف البرنامج مع البيئات الجديدة/توزيعات Linux. لذلك، ستكون هذه هي الطريقة الصحيحة أيضًا إذا قامت HP بتحويل HPLIP إلى تطبيق طابعة أو على الأقل تقديم ذلك كبديل لبرنامج تشغيل CUPS/SANE الكلاسيكي. يجب عليهم بشكل خاص إنشاء تطبيق طابعة أصلي، مما يعني أنه لا يستخدم ملفات PPD ومرشحات CUPS وواجهات CUPS الخلفية داخليًا. كما يجب أن تكون مرافقها مستقلة عن CUPS.
بالنسبة لطابعات PostScript، يمكنك أيضًا استخدام تطبيق PostScript Printer Application، خاصة إذا كان مثبتًا بالفعل لبعض طابعات PostScript غير التابعة لـ HP.
تحقق أيضًا مما إذا كانت الطابعة الخاصة بك هي طابعة IPP بدون برنامج تشغيل (AirPrint، Mopria، IPP Everywhere، Wi-Fi Direct Print، الطباعة من الهواتف) حيث في هذه الحالة لا تحتاج إلى أي تطبيق طابعة على الإطلاق. معظم طابعات HP الحديثة، حتى أرخص الطرازات، هي طابعات IPP بدون برامج تشغيل. حتى الطابعات التي تعمل عبر USB فقط يمكن أن تكون IPP بدون برنامج تشغيل، ويمكنك عمومًا استخدام IPP بدون برنامج تشغيل عبر USB، جرب ipp-usb لهذه الحالات أولاً.
تطبيق طابعة يوفر برنامج تشغيل الطابعة hpcups
وجميع ملفات PPD الخاصة بالطابعة من HPLIP، ويدعم الطباعة على معظم الطابعات من HP وApollo. ويتيح ذلك سهولة الطباعة بجودة عالية، بما في ذلك الصور الفوتوغرافية على ورق الصور الفوتوغرافية. يتم أيضًا تضمين مرشح hpps
CUPS للطباعة المحمية برمز PIN على طابعات PostScript.
تم اكتشاف الطابعات باستخدام HPLIP أيضًا. بالنسبة لطابعات USB، يتم استخدام الواجهة الخلفية hp
CUPS، وبالنسبة لطابعات الشبكة، يتم استخدام الأداة المساعدة hp-probe
(المغلفة في برنامج نصي لتعمل كواجهة خلفية لـ CUPS).
يتم الاتصال بالطابعات من خلال الواجهة الخلفية hp
CUPS ولذلك (على الأقل في حالة USB) يتم استخدام بروتوكول الحزمة IEEE-1284.4 (البروتوكول 7/1/3 على USB) وليس بروتوكول دفق بسيط (مثل المعيار استخدام الواجهات الخلفية لـ CUPS وPAPPL). بهذه الطريقة ينبغي للمرء أن يكون قادرًا على الطباعة والمسح الضوئي في وقت واحد، أو على الأقل التحقق من حالة الطابعة أثناء الطباعة. لا تدعم كافة الطابعات هذا البروتوكول، وإذا لم يكن الأمر كذلك، فسيتم استخدام بروتوكول دفق قياسي. كما يتم دعم أي وظيفة خاصة أخرى تتطلب الواجهة الخلفية hp
. في صفحة واجهة الويب "إضافة طابعة" ضمن "الأجهزة"، حدد إدخالات "HPLIP (HP)".
لاحظ أن الواجهة الخلفية hp
لا تسمح بالوصول ثنائي الاتجاه إلى الطابعة. إذا كانت لديك طابعة PostScript وتفضل دعم الاستعلام عن بعد عن تكوين ملحقات الطابعة بدلاً من الطباعة والمسح الضوئي المتزامنين، فإن الواجهات الخلفية القياسية لـ CUPS لطابعات USB وطابعات الشبكة متاحة أيضًا.
إذا كان لديك تكوين غير عادي للنظام أو جدار حماية شخصي، فربما لن تكتشف واجهات HP الخلفية طابعتك. وفي هذه الحالة أيضًا، يمكن أن تكون الواجهات الخلفية القياسية، بما في ذلك إدخال "طابعة الشبكة" اليدوي بالكامل مع حقل اسم المضيف/IP، مفيدة.
يؤدي استخدام CUPS بدلاً من الواجهات الخلفية القياسية لـ PAPPL إلى إنشاء حلول غريبة لطابعات USB التي تستخدم مشكلات التوافق (وهي قابلة للتحرير) ويمكن إرسال الإخراج إلى الطابعة عبر IPP وIPPS (المشفر!) وLPD بالإضافة إلى المقبس ( عادة المنفذ 9100). يمكن تكوين الواجهة الخلفية لـ SNMP (المجتمع ونطاق العنوان).
لا يتم تحويل بيانات PWG Raster أو Apple Raster أو بيانات إدخال الصورة التي سيتم طباعتها على طابعة غير PostScript إلى PostScript أو PDF، بل يتم تحويلها/قياسها فقط إلى مساحة اللون والدقة المطلوبة ثم يتم إدخالها في برنامج تشغيل hpcups
.
للطباعة على طابعات غير PostScript، يتم تحويل بيانات إدخال PDF وPostScript إلى بيانات نقطية باستخدام Ghostscript. يُستخدم Ghostscript أيضًا لتحويل PDF إلى PostScript لطابعات PostScript.
تعتمد المعلومات حول طرازات الطابعات المدعومة وإمكانياتها على ملفات PPD المضمنة في HPLIP. يتم تجميعها في Snap كأرشيف مضغوط.
يتم تعيين سمات IPP القياسية للمهمة إلى إعدادات خيار برنامج التشغيل الأكثر ملاءمة لها بحيث يمكن للمستخدمين الطباعة من أي نوع من العملاء (مثل الهاتف أو جهاز IoT على سبيل المثال) الذي يدعم فقط سمات IPP القياسية ولا يمكنه استرداد خيارات PPD. يمكن تعيين الأدراج وأحجام الوسائط وأنواع الوسائط والطباعة على الوجهين بسهولة، ولكن عندما يتعلق الأمر بالألوان والجودة، يصبح الأمر أكثر تعقيدًا، حيث تختلف الخيارات ذات الصلة كثيرًا في ملفات PPD. نستخدم هنا خوارزمية تقوم تلقائيًا (من يريد التحرير اليدوي ~ 3000 ملف PPD للمهام) بالعثور على المجموعة الصحيحة من إعدادات الخيارات لكل مجموعة من print-color-mode
( color
/ monochrome
)، print-quality
( draft
/ normal
/ high
)، print-content-optimize
( auto
/ photo
/ graphics
/ text
/ text-and-graphics
) في ملف PPD الخاص بالطابعة الحالية. لذلك يمكنك الوصول بسهولة إلى الجودة الكاملة لطابعتك أو سرعتها دون الحاجة إلى التعامل مع إعدادات الخيارات الخاصة بالطابعة (لا يزال من الممكن الوصول إلى الخيارات الأصلية عبر واجهة مسؤول الويب).
يأخذ Snap of the HPLIP Printer Application الكود المصدري لـ HPLIP من مستودع التعبئة والتغليف الخاص بـ Debian بدلاً من الحصول عليه مباشرة من HP، حيث تحتوي حزمة Debian على 80 تصحيحًا تقريبًا لإصلاح الأخطاء التي تم الإبلاغ عنها إلى HP ولكن لم يتم اعتماد التصحيح في المنبع. لذلك، مع Snap يجب أن يحصل المستخدمون على نفس التجربة من حيث الموثوقية والجودة كما هو الحال مع حزمة دبيان.
دعم تنزيل البرنامج الإضافي الخاص بـ HPLIP عبر صفحة إضافية في واجهة الويب. يضيف هذا دعمًا لبعض طابعات الليزر التي تحتاج إلى تحميل البرامج الثابتة الخاصة بها في كل مرة يتم تشغيلها أو التي تستخدم تنسيقات بيانات طباعة خاصة معينة. يعمل هذا في Snap وفي التثبيت الكلاسيكي لتطبيق الطابعة (يجب تشغيله كجذر، وإلا سيتم التحقق من حالة المكون الإضافي فقط).
دعم المسح الضوئي على طابعات HP متعددة الوظائف. يتطلب هذا دعم المسح في PAPPL (الذي حقق تقدمًا جيدًا في GSoC 2021).
صفحة اختبار PDF، على سبيل المثال تم إنشاؤها باستخدام مرشحbannertopdf.
سلاسل يمكن قراءتها بواسطة الإنسان لخيارات البائع (يحتاج إلى دعم من PAPPL: الإصدار رقم 58: دعم الترجمة)
التدويل/التعريب (يحتاج إلى دعم من PAPPL: المشكلة رقم 58: دعم الترجمة)
التحقق من مستوى حبر SNMP عبر وظيفة ps_status() (يحتاج إلى دعم من PAPPL: المشكلة رقم 83: يقوم CUPS بإجراء استطلاعات لمستوى حبر IPP وSNMP عبر الواجهات الخلفية، ويجب أن يكون لدى PAPPL وظائف لهذا)
إنشاء خيارات لمرشحات الأكواب، للإنشاء بدون libqpdf و/أو بدون libppd، سيسمح الأول بإنشاء Snap لتطبيق الطابعة هذا دون تنزيل وإنشاء QPDF
لتشغيل تطبيق الطابعة واستخدامه فقط، ما عليك سوى تثبيته من متجر Snap:
sudo snap install --edge hplip-printer-app
ثم اتبع الإرشادات أدناه لإعداده.
لإنشاء Snap بنفسك، قم بتشغيل الدليل الرئيسي لهذا المستودع
snapcraft snap
سيؤدي هذا إلى تنزيل جميع الحزم المطلوبة وإنشاء تطبيق طابعة HPLIP. لاحظ أن PAPPL (الإصدار 1.0 القادم) ومرشحات الأكواب (الإصدار 2.0 القادم) يتم سحبهما مباشرة من مستودعات GIT الخاصة بهما، حيث لا توجد إصدارات مناسبة حتى الآن. يمكن أن يؤدي هذا أيضًا إلى حقيقة أن تطبيق الطابعة هذا لن يتم إنشاءه بعد الآن فجأة.
لتثبيت تشغيل Snap الناتج
sudo snap install --dangerous hplip-printer-app_1.0_amd64.snap
سيتم تشغيل تطبيق الطابعة تلقائيًا كخادم خفي.
أدخل واجهة الويب
http://localhost:8000/
استخدم واجهة الويب لإضافة طابعة. أدخل اسمًا، وحدد الطابعة التي تم اكتشافها، ثم حدد الطراز والطراز. قم أيضًا بتعيين الملحقات المثبتة والوسائط المحملة والإعدادات الافتراضية للخيار. إذا كانت الطابعة عبارة عن طابعة PostScript، فيمكن أيضًا في كثير من الأحيان الحصول على تكوين الملحقات والإعدادات الافتراضية للخيارات من الطابعة.
إذا كان إدخال الطابعة الخاصة بك في واجهة الويب يحتوي على الملاحظة "يتطلب مكونًا إضافيًا خاصًا"، فستحتاج إلى تثبيت البرنامج الإضافي الخاص بـ HP. للقيام بذلك، انقر فوق الزر "Plugin" في إدخال الطابعة هذا أو فوق الزر "Install Proprietary Plugin" ضمن "Other Settings" في الصفحة الأولى من واجهة الويب واتبع الإرشادات التي تظهر على الشاشة.
ثم اطبع ملفات PDF أو PostScript أو JPEG أو Apple Raster أو PWG Raster باستخدام
hplip-printer-app FILE
أو الطباعة باستخدام CUPS وCUPS (وأيضًا تصفح الكؤوس) لاكتشاف الطابعات التي تم إعدادها باستخدام تطبيق الطابعة هذا والتعامل معها كطابعات IPP بدون برامج تشغيل (IPP Everywhere وAirPrint).
يرى
hplip-printer-app --help
لمزيد من الخيارات.
استخدم الوسيطة "-o log-level=debug" للتسجيل المطول في نافذتك الطرفية.
يمكنك إضافة ملفات إلى /var/snap/hplip-printer-app/common/usb/
للحصول على قواعد USB إضافية. قم بتحرير الملفات الموجودة فقط للاختبارات السريعة، حيث يتم استبدالها عند كل تحديث لـ Snap (لتقديم قواعد جديدة).
يمكنك تحرير الملف /var/snap/hplip-printer-app/common/cups/snmp.conf
لتكوين اكتشاف طابعة شبكة SNMP.
يمكنك أيضًا إجراء إنشاء "سريع وقذر" دون الانطباق ودون الحاجة إلى تثبيت PAPPL وcups-filters 2.x وpappl-retrofit في نظامك. أنت بحاجة إلى دليل يحتوي على أحدث لقطة GIT لـ PAPPL، وأحدث لقطة GIT لمرشحات الأكواب، وأحدث لقطة GIT لـ pappl-retrofit (الفروع الرئيسية لكل منها). يجب تجميعها جميعًا ( ./autogen.sh; ./configure; make
)، ولا يلزم التثبيت. قم أيضًا بتثبيت ملفات الرأس لجميع المكتبات المطلوبة (يجب أن يؤدي تثبيت "libcups2-dev" إلى القيام بذلك).
في الدليل باستخدام hplip-printer-app.c، قم بتشغيل سطر الأوامر
gcc -o hplip-printer-app hplip-printer-app.c $PAPPL_SRC/pappl/libpappl.a $CUPS_FILTERS_SRC/.libs/libppd.a $CUPS_FILTERS_SRC/.libs/libcupsfilters.a $PAPPL_RETROFIT_SRC/.libs/libpappl-retrofit.a -ldl -lpthread -lppd -lcups -lavahi-common -lavahi-client -lgnutls -ljpeg -lpng16 -ltiff -lz -lm -lusb-1.0 -lpam -lqpdf -lstdc++ -I. -I$PAPPL_SRC/pappl -I$CUPS_FILTERS_SRC/ppd -I$CUPS_FILTERS_SRC/cupsfilters -I$PAPPL_RETROFIT_SRC/pappl/retrofit -L$CUPS_FILTERS_SRC/.libs/ -L$PAPPL_RETROFIT_SRC/.libs/
يوجد أيضًا ملف Makefile، ولكن هذا يحتاج إلى تثبيت PAPPL وcups-filters 2.x وpappl-retrofit في نظامك.
يجري
./hplip-printer-app --help
عند تشغيل الإصدار غير المقطوع، يتم البحث عن ملفات PPD بشكل افتراضي في
/usr/share/ppd/
/usr/lib/cups/driver/
/var/lib/hplip-printer-app/ppd/
يمكنك ضبط متغير البيئة PPD_PATHS
للبحث في أماكن أخرى بدلاً من ذلك:
PPD_PATHS=/path/to/my/ppds:/my/second/place ./hplip-printer-app server
ما عليك سوى وضع قائمة مفصولة بنقطتين بأي كمية من المسارات في المتغير. يوصى بإنشاء برنامج نصي مجمع.
لاحظ أنه يتم اعتبار ملفات PPD لبرنامج تشغيل hpcups
الخاص بـ HPLIP فقط، ويتم تجاهل ملفات PPD الأخرى.
لا يتم اكتشاف الطابعات إلا من خلال الواجهة الخلفية hp
لـ HPLIP (USB) أو الأداة المساعدة hp-probe
الخاصة بـ HPLIP (الشبكة). بالنسبة للأخير، يتم تضمين برنامج نصي مجمّع يسمى HP
مما يجعل الأداة المساعدة تستخدم مثل الواجهة الخلفية لـ CUPS (وضع الاكتشاف فقط). يؤدي هذا بشكل خاص إلى اكتشاف طابعات HP وApollo فقط. الطابعات من الشركات المصنعة الأخرى غير مدعومة.
تتم تصفية المهام من خلال hpcups
وإرسالها إلى الطابعة عبر الواجهة الخلفية hp
(كلاً من USB والشبكة).
الواجهات الخلفية القياسية (وليست HPLIP) المتوفرة كبديل في تطبيق الطابعة هذا هي الواجهات الخلفية لـ CUPS وليست PAPPL، مما يعني أنه بالنسبة لطابعات USB يتم استخدام الحلول البديلة لـ CUPS USB quirk لمشاكل التوافق، ويمكن أيضًا استخدام طابعات الشبكة مع IPP وIPPS و بروتوكولات LPD واكتشاف الطابعة SNMP قابلة للتكوين.
يمكن تحرير قواعد USB Quirk في /usr/share/cups/usb
وملف /etc/cups/snmp.conf
إذا لزم الأمر.
تأكد من تثبيت HPLIP وإذا كنت تريد استخدام الواجهات الخلفية القياسية، CUPS (على الأقل الواجهات الخلفية لها).
تحتاج أيضًا إلى Ghostscript لطباعة مهام PDF أو PostScript.
للوصول إلى صفحة الاختبار testpage.ps
استخدم متغير البيئة TESTPAGE_DIR:
TESTPAGE_DIR=`pwd` PPD_PATHS=/path/to/my/ppds:/my/second/place ./hplip-printer-app server
أو لإنشاء صفحة اختبار بنفسك (PostScript، PDF، PNG، JPEG، Apple Raster، PWG Raster):
TESTPAGE=/path/to/my/testpage/my_testpage.ps PPD_PATHS=/path/to/my/ppds:/my/second/place ./hplip-printer-app server
حقوق الطبع والنشر لتطبيق الطابعة HPLIP © لعام 2020 محفوظة لشركة Till Kamppeter.
وهو مشتق من تطبيق طابعة HP PCL، وهو نموذج العمل الأول لتطبيق الطابعة النقطية باستخدام PAPPL. وهو متاح هنا:
https://github.com/michaelrsweet/hp-printer-app
إن تطبيق طابعة HP PCL محمي بحقوق الطبع والنشر © 2019-2020 بواسطة Michael R Sweet.
تم ترخيص هذا البرنامج بموجب ترخيص Apache الإصدار 2.0 مع استثناء للسماح بالارتباط ببرنامج GPL2/LGPL2 (مثل الإصدارات الأقدم من CUPS). راجع ملفات "الترخيص" و"الإشعار" لمزيد من المعلومات.