diff --git a/.gitignore b/.gitignore deleted file mode 100644 index b25c15b..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*~ diff --git "a/APP/Android_Print_API_\351\203\250\345\210\206\347\277\273\350\257\221.md" "b/APP/Android_Print_API_\351\203\250\345\210\206\347\277\273\350\257\221.md" deleted file mode 100644 index dc9b8bb..0000000 --- "a/APP/Android_Print_API_\351\203\250\345\210\206\347\277\273\350\257\221.md" +++ /dev/null @@ -1,307 +0,0 @@ -目录 -* package [android.printservice](#android.printservice) -* public abstract class [PrintService](#PrintService) -* public abstract class [PrinterDiscoverySession](#PrinterDiscoverySession) -* public final class [PrinterInfo](#PrinterInfo) -* public final class [PrinterId](#PrinterId) -* public final class [PrintJob](#PrintJob) -* public final class [PrintJobInfo](#PrintJobInfo) -* public final class [PrinterCapabilitiesInfo](#PrinterCapabilitiesInfo) -* public final class [PrintDocument](#PrintDocument) -* public final class [PrintDocumentInfo](#PrintDocumentInfo) - - - - - -*** -

- -原链接:https://developer.android.com/reference/android/printservice/package-summary.html - -package - -# android.printservice - -提供打印服务实现的类。打印服务是一种插件( plug-in components),它能够通过一些标准协议和打印机通讯。这些服务像一座桥,处于系统和打印机之间。因此,打印机和打印协议的具体实现从系统中分离的,能够独立开发和更新。 - -一个打印服务实现应该基于``PrintService``类,并且实现它的抽象方法(abstract methods)。另外,打印服务必须要按约定来管理``PrintJob``(打印任务)类。 - -系统负责启动和停止一个打印服务,这个操作取决于该打印服务管理的打印机是否有激活的打印任务(active print jobs)。打印服务还要及时执行打印机发现操作,来保证好的用户体验。在打印机发现过程中系统和该打印服务的交互封装在``PrinterDiscoverySession``类的实例中,由打印服务在系统需要的时候创建。 - -## 类 (Classes) - -### PrintDocument - -从一个打印服务的角度来说,这个类代表一个待打印的文件(document)。 - -### PrinterDiscoverySession - -这个类封装了打印机发现过程中一个打印服务和系统的交互操作。 - -### PrintJob - -对一个打印服务来说,这个类代表一个打印任务(print job)。 - -### PrintService - -这个基础类用来实现打印服务。 - - -*** -

- -原链接:https://developer.android.com/reference/android/printservice/PrintService.html - -public abstract class - -# PrintService - -extends Service - -``` -java.lang.Object - ↳ android.content.Context - ↳ android.content.ContextWrapper - ↳ android.app.Service - ↳ android.printservice.PrintService -``` - -## 类综述 Class Overview - -这是打印服务(print services)实现的基础类。一个打印服务知道如何去发现打印机,并且通过一个或多个协议和一个或多个打印机交流。 - -## 打印机发现 Printer discovery - -一个打印服务负责发现打印机,添加发现的打印机,移除添加的打印机和更新添加的打印机。当系统需要你的服务所管理的打印机时,系统会调用``onCreatePrinterDiscoverySession()``,在这个函数里你必须返回一个``PrinterDiscoverySession``对象实例(instance)。这个返回的session(会话)封装了系统和你的服务交互的内容,包含在打印机发现阶段的操作。这个交互的更多描述,参考``PrinterDiscoverySession``文档。 - -对每个打印发现会话(session)来说,所有的打印机必须要被添加,因为系统在会话过后不会保留。因此,打印服务检测到的每个打印机都应该被添加,并且在一个发现会话中仅添加一次。只有已经添加的打印机才能被移除(removed)或者更新(updated)。移除的打印机也能被再次添加。 - -## 打印工作 Print jobs - -当一个新的打印工作(print jobs)指派到该打印服务所管理的打印机上,打印工作被放入队列(queued)。也就是,准备好由打印服务处理。你会收到一个``onPrintJobQueued(PrintJob)``调用。该打印服务可能会立即处理这个打印工作或者放入计划中过会调度。该打印服务的所有活动的打印工作在一个列表里,这个列表通过调用``getActivePrintJobs()``可以获得。活动的打印工作(Active print jobs)就是在队列中或已开始的那些。 - -当一个打印服务在处理一个打印工作时,打印服务负责设置该打印工作为适当的状态。首先,一个打印工作在队列中,也就是``PrintJob.isQueued()``返回true,这意味着要打印的文档已被系统安排(spooled),该打印服务能够随时处理它。你可以通过调用``PrintJob.getDocument() ``获得要打印的文档,这里面的数据可以通过``PrintDocument.getData()``读取。在打印服务开始打印数据,该打印工作(print job)状态应该被设置为已开始(started),通过调用``start()``函数设置。设置之后,``PrintJob.isStarted()``应该会返回true。在工作成功完成后,该打印工作应该被标记为已完成(completed),通过调用``PrintJob.complete()``设置。设置之后,``PrintJob.isCompleted()``应该会返回true。失败的话,该打印工作应该被标记为失败(failed),通过调用``PrintJob.fail( String)``设置。设置后,``PrintJob.isFailed()``应该返回true。 - -如果一个打印工作(print job)处于队列(queued)或已开始(started),这时用户请求取消它,该打印服务会收到一个``onRequestCancelPrintJob(PrintJob)``调用。服务里的这个请求希望尽最大努力取消该工作(job)。若该工作被成功取消,它的状态需要通过``PrintJob.cancel()``被标记取消。标记后,``PrintJob.isCacnelled()``应该返回true。 - -## 生命周期 Lifecycle - -一个打印服务的生命周期只由系统管理并且按规定的生命周期活动。另外,开始或者停止一个打印服务只由一个特定的用户行为触发,就是在设备设置里启用(enabling)或者禁用(disabling)服务。在系统绑定(binds)了一个打印服务后,系统会调用``onConnected()``。这个方法可以被客户端(clients)重写来执行绑定(binding)有关的操作。而且在系统解绑(unbinds)一个打印服务后,系统会调用``onDisconnected()``。这个方法可以被客户端(clients)重写来执行解绑(unbinding)有关的清理操作。你的任何工作都不应该在系统和你的打印服务断开连接之后做,因为这个服务在回收内存时随时会被杀死。当该打印服务管理的打印机有活动的打印工作时,系统不会与之断开连接。 - -## 声明 Declaration - -一个打印服务和其他任何服务一样,需要在AndroidManifest.xml里声明。但是它还必须处理action为``android.printservice.PrintService``的Intent。这个intent声明失败会导致系统忽略该打印服务。另外,一个打印服务必须请求``android.permission.BIND_PRINT_SERVICE``权限,来保证只有系统能绑定(bind)它。声明这个失败会导致系统忽略这个打印服务。下面是一个声明的例子: -```xml - - - - - . . . - -``` - -## 配置 Configuration - -一个打印服务可通过自定义设置页面(setting activity)进行配置,该activity提供自定义设置功能。一个添加打印机的activity可以手动添加打印机,供应商名称等等。系统负责在适当的时候启动设置和添加打印机的activities。 - -一个打印服务在声明的时候,要在mainfest里提供一条``meta-data``,这是指定上述activities的方式。一个服务的``meta-data``标签(tag)声明如下所示: -```xml - - - - - - -``` -关于通过meta-data配置你的打印服务的更多细节,可以参考``SERVICE_META_DATA``和````。 - -**提示:**这个类里的所有回调函数(callbacks)都在程序的主线程里执行。你也应该在程序的主线程里调用(invoke)这个类里的方法。 - -*** -

- -原链接: https://developer.android.com/reference/android/printservice/PrinterDiscoverySession.html - -public abstract class -# PrinterDiscoverySession - - -extends Object - -``` -java.lang.Object - ↳ android.printservice.PrinterDiscoverySession -``` - -## 类综述 Class Overview - -这个类封装了一个打印服务和系统在打印机寻找(printer discovery)过程中的交互内容。在打印机寻找过程中,你(指这个类)负责添加发现的打印机,移除之前添加但无效的打印机,更新已经添加的打印机。 - -在这个会话(session)的一生中,你可能会被多次请求开始和停止寻找打印机。你会被调用``onStartPrinterDiscovery(List)``来开始寻找打印机,然后被调用``onStopPrinterDiscovery()``来停止寻找打印机。当系统不再需要这个会话(session)来寻找打印机,你会收到``onDestroy()``调用。在这时,系统将不会再调用这个会话``session``,整个会话里的方法都不再有用。 - -被发现的打印机通过调用``addPrinters(List)``方法添加。添加好的打印机通过调用``removePrinters(List)``来移除。添加的打印机的属性和功能(properties or capabilities )通过调用``addPrinters(List)``来更新。这些被添加的打印机能通过``getPrinters()``获取,在该方法里返回的打印机是你上报的打印机的一个最新快照(snapshot)。这些打印机在会话(session)后**不会保留**。 - -如果你(猜测指用户,之前指这个类)需要更新一些打印机,系统会调用``onValidatePrinters(List)``。你可能会只添加一个打印机而不配置它的功能特性(capabilities)。这个机制使得你避免为了配置打印机的功能而查询所有打印机,而是只在必要的时候查询一个打印机的功能即可。例如,一个打印机被用户选择使用,系统会请求你更新这个打印机。验证打印机时你不需要提供打印机的功能特性,但可以这样做。 - -如果系统要持续监测打印机的最新状态,你会收到一个``onStartPrinterStateTracking(PrinterId)``调用。收到之后,你必须尽可能地保持系统得到打印机最新的状态和功能特性。当你之前添加打印机的时候没有提供它的功能特性,你在这时**必须**更新这些内容。要不然打印机就会被忽略。当系统不再需要获取打印机的最新状态时,你会收到一个``onStopPrinterStateTracking(PrinterId)``调用。 - -**提示:**这个类里的所有回调函数都在程序的主线程执行。你自己用的时候也要在主线程调用这些函数。 - -*** -

- -public final class -# PrinterInfo - -extends Object -implements Parcelable - -``` - -java.lang.Object - ↳ android.print.PrinterInfo -``` - -## 类综述 Class Overview - -这个类是一个打印机的描述。这个类的实例由打印服务创建,把它们管理的打印机报告给系统。这个类里面的信息有两大部分。第一部分,打印机属性,列如name(名称),id(编号),status(状态),description(描述)。第二部分,printer capabilities(打印机能力)。printer capabilities描述了打印机支持的各种打印模式,例如media sizes(大概是纸张尺寸),margins(留白大小)等等。 - -*** -

- -public final class -# PrinterId - -extends Object -implements Parcelable - -``` -java.lang.Object - ↳ android.print.PrinterId -``` - -## 类综述 Class Overview - -这个类代表一个打印机独一无二的编号 - -*** -

- -public final class -# PrintJob - -extends Object - -``` - -java.lang.Object - ↳ android.printservice.PrintJob -``` - -## 类综述 Class Overview - -从一个打印服务的角度来看,这个类代表一个打印任务(print job)。它提供了一些API来观察打印任务的状态和在打印任务上执行操作。 - -**提示:**类里面的所有方法都必须在应用主线程里执行。 - -*** -

- -public final class -# PrintJobInfo - -extends Object -implements Parcelable - -``` - -java.lang.Object - ↳ android.print.PrintJobInfo -``` - -## 类综述 Class Overview - -这个类代表了一个打印任务的详细描述。打印机任务的状态包括一些配置,例如:它的id(编号)、打印属性,这用来生成一些内容等等。注意,打印任务状态可能会随着时间改变。这个类只代表了状态的一个时刻(snapshot)。 - -*** -

- -public final class -# PrinterCapabilitiesInfo - -extends Object -implements Parcelable - -``` -java.lang.Object - ↳ android.print.PrinterCapabilitiesInfo -``` -## 类综述 Class Overview - -这个类代表了一个打印机的能力(capabilities)。这个类的实例由一个打印服务创建,用来报告它所管理的打印机的能力。一个打印机的能力指出了它如何打印内容。例如:打印机支持什么纸张大小(media sizes),打印机设计的最小留白(the minimal margins),等等。 - -*** -

- -public final class -# PrintDocument - -extends Object -``` -java.lang.Object - ↳ android.printservice.PrintDocument -``` -## 类综述 Class Overview - -对一个打印服务来说,这个类代表一个待打印的文件。它提供一些API来查询文件和其包含的数据。 - -**提示:**所有的方法必须在程序的主线程里执行。 - - -*** -

- -public final class - -# PrintDocumentInfo - -extends Object -implements Parcelable - -``` -java.lang.Object - ↳ android.print.PrintDocumentInfo -``` -## 类综述 Class Overview - -这个类封装了关于一个文档跟打印有关的信息。这个``meta-data``(元数据)被平台(platform)和打印服务使用,构成和打印机的交互。例如,这个类包含文档的页数,文档页数展示给使用者是为了使他们能够选择打印的范围。一个打印服务可能会针对内容类型对打印进行优化,例如文档(document)或者照片。 - -这个类的实例由需要打印的应用创建,在成功排版内容(laying out the content)之后调用``PrintDocumentAdapter.LayoutResultCallback.onLayoutFinished( PrintDocumentInfo, boolean)``回调函数。这个过程执行在``PrintDocumentAdapter.onLayout(PrintAttributes, PrintAttributes, android.os.CancellationSignal, PrintDocumentAdapter.LayoutResultCallback, android.os.Bundle)``里。 - -一个使用例子如下: -```java - . . . - - public void onLayout(PrintAttributes oldAttributes, PrintAttributes newAttributes, - CancellationSignal cancellationSignal, LayoutResultCallback callback, - Bundle metadata) { - - // Assume the app defined a LayoutResult class which contains - // the layout result data and that the content is a document. - LayoutResult result = doSomeLayoutWork(); - - PrintDocumentInfo info = new PrintDocumentInfo - .Builder("printed_file.pdf") - .setContentType(PrintDocumentInfo.CONTENT_TYPE_DOCUMENT) - .setPageCount(result.getPageCount()) - .build(); - - callback.onLayoutFinished(info, result.getContentChanged()); - } - - . . . -``` - diff --git "a/APP/Android\347\263\273\347\273\237\346\211\223\345\215\260\346\234\215\345\212\241\346\217\222\344\273\266printservice\345\274\200\345\217\221.md" "b/APP/Android\347\263\273\347\273\237\346\211\223\345\215\260\346\234\215\345\212\241\346\217\222\344\273\266printservice\345\274\200\345\217\221.md" deleted file mode 100644 index c60a30b..0000000 --- "a/APP/Android\347\263\273\347\273\237\346\211\223\345\215\260\346\234\215\345\212\241\346\217\222\344\273\266printservice\345\274\200\345\217\221.md" +++ /dev/null @@ -1,361 +0,0 @@ -# 一 简介 - -从Android4.4开始,系统加入了打印相关的API,可以通过系统打印服务实现打印。对于需要使用打印功能的APP可参考官方教程接入打印服务。 -> Printing Content https://developer.android.com/training/printing/index.html - -这不是本文的内容,本文介绍打印机厂商如何使自己的打印机接入android,即编写自己的打印插件接入android打印服务。且仅介绍接入部分,与打印机如何连接不在本文范围之内。 - -系统打印服务框架代码位于[``android.printservice``][1]包中。系统并没有实现具体打印功能,需要打印机厂商制作插件接入系统打印服务之后,自行实现。本文基于Android API Reference和以下两个github上的开源项目研究而来。两个参考项目如下: - -* android-print-plugin-cups -主页: https://github.com/pelya/android-print-plugin-cups - -* JfCupsPrintService -主页: https://github.com/mretallack/JfCupsPrintService - -通过实验,初步实现了系统打印服务的接入(添加打印机)和模拟打印(将要打印的文件输出)。 - -# 二 主要类介绍 - -从[``android.printservice``][2]中,我们可以知道主要有四个类: - -* [``PrintDocument``][3] 表示待打印文件,里面存放有文件的大小等信息和文件内容。 - -* [``PrinterDiscoverySession``][4] 用于发现打印机,整个发现打印机和打印机状态更新的过程在该类里进行。 - -* [``PrintJob``][5] 代表一个打印任务。 - -* [``PrintService``][6] 接入系统打印的关键Service。 - -PrinterDiscoverySession 由 PrintService 创建,通过 onCreatePrinterDiscoverySession() 函数返回给系统。 -PrintJob 由需要打印的APP创建,发送给 PrintService 。 -PrintDocument 存放在 PrintJob 里面,被一同发过来。 - -和打印相关的类的更多详细参考见:[Android_Print_API_部分翻译.md][7] 。 - -# 三 打印服务插件的工作流程 - -## 1 打印机发现过程 - -当用户在设置里开启你的打印服务插件和进入系统打印服务界面时,系统会调用 PrinterDiscoverySession 里的 onStartPrinterDiscovery(List priorityList) 函数,通知你的插件查找打印机。具体查找方式需要自己实现,可能是查找USB接口,可能是搜索网络。系统只管结果,你通过调用其父类的 addPrinters() 方法将打印机添加进去。打印机是放在List数组里传入。 - -当用户离开上述打印插件的界面时,系统会调用 onStopPrinterDiscovery() 函数,表示插件可以停止寻找打印机了。 - -另外,在自定义的 addPrintersActivity 中,系统不会自动触发打印机寻找过程,需要自行处理。 - -## 2 打印机选择过程 - -当用户通过一些有打印功能的APP调用系统打印服务时,如果选择了你的插件的打印机,那么系统会调用 PrinterDiscoverySession 里的 onStartPrinterStateTracking(PrinterId printerId) 方法。这里系统主要希望得到打印机的 [``PrinterCapabilitiesInfo``][8] 和状态,里面包括打印机支持的纸张大小,以及色彩等详细功能参数。 - -比如:如果没有addMediaSize(PrintAttributes.MediaSize.ISO_A4, false),那么用户就不能选择A4大小进行打印。后面的false表示是否设为默认值。 - -打印机有STATUS_BUSY、STATUS_IDLE、STATUS_UNAVAILABLE三种状态,只有打印机处于STATUS_IDLE时,系统才允许使用该打印机。 - -打印机参数直接体现在系统打印服务界面,只可以选择支持的参数,比如选择纸张的大小为A4。 - -同样,当用户离开该界面或者选择其他打印机时,系统会调用 onStopPrinterStateTracking(PrinterId printerId) 函数,来告诉插件不用再提供打印机的信息了。 - -## 3 打印过程 - -当用户在刚刚的系统打印服务界面点击右上角的打印按钮时,系统会调用打印机所属的 PrintService 里的 onPrintJobQueued(PrintJob printJob) 方法,插件需要处理该 PrintJob 。首先需要通过 PrintJob.isQueued() 判断,该PrintJob是否准备好打印,返回true代表可以打印。然后可以通过 PrintJob.getDocument() 获得要打印的文档,这里面的数据可以通过 PrintDocument.getData() 读取。开始打印的时候,调用PrintJob.start()标记开始状态。当打印成功时,调用 PrintJob.complete() 标记打印成功。或者打印失败时,调用 PrintJob.fail( String) 标记失败。 - -**注意**:一定要对PrintJob进行状态标记,包括开始或者成功失败。如果什么都不标记,系统会一直在任务栏提示该任务打印中,并且该打印机不可打印其他任务,处于准备中。如果任务结束不标记成功或者失败,一段时间之后,系统会自动将该任务标记为失败,并且打印机状态自动变为不可用。 - - -# 四 系统打印服务输出的数据 - -通过编写DEMO测试,发现android系统打印服务输出的数据是pdf 1.4的格式,无论文件内容是照片还是文档,都会统一转换为pdf 1.4。 - -# 五 打印服务插件初步编写 - - -## 1 打印服务插件的声明 - -一个打印服务和其他任何服务一样,需要在AndroidManifest.xml里声明。但是它还必须处理action为android.printservice.PrintService的Intent。这个intent声明失败会导致系统忽略该打印服务。另外,一个打印服务必须请求android.permission.BIND_PRINT_SERVICE权限,来保证只有系统能绑定(bind)它。声明这个失败会导致系统忽略这个打印服务。 - -一个打印服务可通过自定义设置页面(setting activity)进行配置,该activity提供自定义设置功能。还有一个添加打印机的activity可以手动添加打印机,供应商名称等等。系统负责在适当的时候启动设置和添加打印机的activities。 - -一个打印服务在声明的时候,要在mainfest里提供一条 android:name="android.printservice" 的 meta-data,这是指定上述activities的方式。 - -AndroidManifest.xml文件如下: - -```xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - -``` - -``android:resource="@xml/printservice"``对应的文件为printservice.xml。 - -这里面指定的settingsActivity在打印插件开启界面右上角的菜单里,用于配置插件。 - -addPrintersActivity除了在打印插件开启界面的菜单里,在打印文件时添加打印机里也会被触发,这个activity用来自定义添加打印机。 - -advancedPrintOptionsActivity则是在打印文件的界面上点击更多箭头里出现的MORE OPTIONS选项触发,这个activity用配置打印机的跟多信息。当然这是可选的操作,也可以没有这个activity。 - -printservice.xml文件内容如下所示: - -```xml - - - -``` - -## 2 PrintService实现类编写 - -在这里的 onPrintJobQueued 方法中,直接将需要打印的数据输出为文件。存放在APP根目录里的files文件夹。 - -```java -package com.github.openthos.printer.testprintservice; - -import android.app.Service; -import android.content.Intent; -import android.os.IBinder; -import android.os.ParcelFileDescriptor; -import android.print.PrintJobInfo; -import android.printservice.PrintDocument; -import android.printservice.PrintJob; -import android.printservice.PrintService; -import android.printservice.PrinterDiscoverySession; -import android.util.Log; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.nio.channels.FileChannel; - -public class MyPrintService extends PrintService { - - private static final String TAG = "MyPrintService"; - - @Override - protected PrinterDiscoverySession onCreatePrinterDiscoverySession() { - Log.d(TAG, "onCreatePrinterDiscoverySession()"); - return new MyPrintDiscoverySession(this); - } - - @Override - protected void onRequestCancelPrintJob(PrintJob printJob) { - Log.d(TAG, "onRequestCancelPrintJob()"); - printJob.cancel(); - } - - @Override - protected void onPrintJobQueued(PrintJob printJob) { - Log.d(TAG, "onPrintJobQueued()"); - PrintJobInfo printjobinfo = printJob.getInfo(); - PrintDocument printdocument = printJob.getDocument(); - if (printJob.isQueued()) { - return; - } - printJob.start(); - - String filename = "docu.pdf"; - File outfile = new File(this.getFilesDir(), filename); - outfile.delete(); - FileInputStream file = new ParcelFileDescriptor.AutoCloseInputStream(printdocument.getData()); - //创建一个长度为1024的内存空间 - byte[] bbuf = new byte[1024]; - //用于保存实际读取的字节数 - int hasRead = 0; - //使用循环来重复读取数据 - try { - FileOutputStream outStream = new FileOutputStream(outfile); - while ((hasRead = file.read(bbuf)) > 0) { - //将字节数组转换为字符串输出 - //System.out.print(new String(bbuf, 0, hasRead)); - outStream.write(bbuf); - } - outStream.close(); - } catch (IOException e) { - e.printStackTrace(); - }finally { - //关闭文件输出流,放在finally块里更安全 - try { - file.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - printJob.complete(); - } -} - -``` - -## 3 PrinterDiscoverySession实现类编写 - -```java -package com.github.openthos.printer.testprintservice; - -import android.print.PrintAttributes; -import android.print.PrinterCapabilitiesInfo; -import android.print.PrinterId; -import android.print.PrinterInfo; -import android.printservice.PrinterDiscoverySession; -import android.util.Log; - -import java.util.ArrayList; -import java.util.List; - -/** - * Created by bboxh on 2016/3/14. - */ -public class MyPrintDiscoverySession extends PrinterDiscoverySession { - private static final String TAG = "MyPrintDiscoverySession"; - private final MyPrintService myPrintService; - - public MyPrintDiscoverySession(MyPrintService myPrintService) { - Log.d(TAG, "MyPrintDiscoverySession()"); - this.myPrintService = myPrintService; - } - - @Override - public void onStartPrinterDiscovery(List priorityList) { - Log.d(TAG, "onStartPrinterDiscovery()"); - List printers = this.getPrinters(); - String name = "printer1"; - PrinterInfo myprinter = new PrinterInfo - .Builder(myPrintService.generatePrinterId(name), name, PrinterInfo.STATUS_IDLE) - .build(); - printers.add(myprinter); - addPrinters(printers); - } - - @Override - public void onStopPrinterDiscovery() { - Log.d(TAG, "onStopPrinterDiscovery()"); - } - - /** - * 确定这些打印机存在 - * @param printerIds - */ - @Override - public void onValidatePrinters(List printerIds) { - Log.d(TAG, "onValidatePrinters()"); - } - - /** - * 选择打印机时调用该方法更新打印机的状态,能力 - * @param printerId - */ - @Override - public void onStartPrinterStateTracking(PrinterId printerId) { - Log.d(TAG, "onStartPrinterStateTracking()"); - PrinterInfo printer = findPrinterInfo(printerId); - if (printer != null) { - PrinterCapabilitiesInfo capabilities = - new PrinterCapabilitiesInfo.Builder(printerId) - .setMinMargins(new PrintAttributes.Margins(200, 200, 200, 200)) - .addMediaSize(PrintAttributes.MediaSize.ISO_A4, true) - //.addMediaSize(PrintAttributes.MediaSize.ISO_A5, false) - .addResolution(new PrintAttributes.Resolution("R1", "200x200", 200, 200), false) - .addResolution(new PrintAttributes.Resolution("R2", "300x300", 300, 300), true) - .setColorModes(PrintAttributes.COLOR_MODE_COLOR - | PrintAttributes.COLOR_MODE_MONOCHROME, - PrintAttributes.COLOR_MODE_MONOCHROME) - .build(); - - printer = new PrinterInfo.Builder(printer) - .setCapabilities(capabilities) - .setStatus(PrinterInfo.STATUS_IDLE) - // .setDescription("fake print 1!") - .build(); - List printers = new ArrayList(); - - printers.add(printer); - addPrinters(printers); - } - } - - @Override - public void onStopPrinterStateTracking(PrinterId printerId) { - Log.d(TAG, "onStopPrinterStateTracking()"); - } - - @Override - public void onDestroy() { - Log.d(TAG, "onDestroy()"); - } - - private PrinterInfo findPrinterInfo(PrinterId printerId) { - List printers = getPrinters(); - final int printerCount = getPrinters().size(); - for (int i = 0; i < printerCount; i++) { - PrinterInfo printer = printers.get(i); - if (printer.getId().equals(printerId)) { - return printer; - } - } - return null; - } - -} -``` - -# 六 总结 - -学习了该部分知识之后,已经可以初步从系统打印服务接入打印机,并取得要打印的文件。之后根据使用情况,适时地跟进细节即可。 - - - [1]: https://developer.android.com/reference/android/printservice/package-summary.html - [2]: https://developer.android.com/reference/android/printservice/package-summary.html - [3]: https://developer.android.com/reference/android/printservice/PrintDocument.html - [4]: https://developer.android.com/reference/android/printservice/PrinterDiscoverySession.html - [5]: https://developer.android.com/reference/android/printservice/PrintJob.html - [6]: https://developer.android.com/reference/android/printservice/PrintService.html - [7]: https://github.com/openthos/printer-analysis/blob/master/APP%2FAndroid_Print_API_%E9%83%A8%E5%88%86%E7%BF%BB%E8%AF%91.md - [8]: https://developer.android.com/reference/android/print/PrinterCapabilitiesInfo.html \ No newline at end of file diff --git a/APP/README.md b/APP/README.md deleted file mode 100644 index 257dc54..0000000 --- a/APP/README.md +++ /dev/null @@ -1,4 +0,0 @@ - - * APP目录 存放android app制作的文档 - - diff --git a/APP/raw/20160516115812.png b/APP/raw/20160516115812.png deleted file mode 100644 index c5210c6..0000000 Binary files a/APP/raw/20160516115812.png and /dev/null differ diff --git "a/GITHUB\351\241\271\347\233\256\347\256\241\347\220\206\350\257\264\346\230\216\357\274\210\345\277\205\350\257\273\357\274\211.md" "b/GITHUB\351\241\271\347\233\256\347\256\241\347\220\206\350\257\264\346\230\216\357\274\210\345\277\205\350\257\273\357\274\211.md" deleted file mode 100644 index e6a82b3..0000000 --- "a/GITHUB\351\241\271\347\233\256\347\256\241\347\220\206\350\257\264\346\230\216\357\274\210\345\277\205\350\257\273\357\274\211.md" +++ /dev/null @@ -1,75 +0,0 @@ -# 一 学习GIT - -## (一) 自学git基础教程 - -先在实验楼注册账号,进入Git教程。 -自学完前三节即可。 - - * 课程:Git 实战教程 - - * 地址:https://www.shiyanlou.com/courses/4 - -git使用简易教程 http://www.bootcss.com/p/git-guide/#rd - -另外,在openthos主页有更多学习资源 -地址:https://github.com/openthos/openthos/wiki/Home-zh_CN - -## ~~(二) 集中学习GITHUB使用~~ - -~~时间:3月2日下午3:00~~ - -~~地点:图书馆4楼实验室~~ - -~~要求:提前自学git基础教程,并注册github账号。在电脑上下载好git工具。~~ - -~~内容:~~ - -~~* github简介~~ -~~* issues系统使用(任务领取,交流等)~~ -~~* fork && pull request~~ - -~~测试主页 https://github.com/HsingPeng/STUDY_GIT~~ - -~~以后项目的工作全都在GITHUB上展开。~~ - ---- - -# 二 项目管理 - -## (一) Issues的Label介绍 - - -1. size - * size 1 一般为1、2小时内可以完成的简单任务 - * size 2 一般为短时间内可以完成的任务,需要自己上网查询如何解决问题 - * size 3 一般为需要熟悉业务才能完成的任务,或者涉及的代码量较多的任务 - * size 4 一般为需要学习某一大块知识后才能完成的任务,或者需要写的文档较多的任务 - * size 5 一般为很难的任务,不只是和复杂的机器打交道,还要和人进行复杂的沟通的任务 - -2. 移植 && APP - * 移植 代表有关linux c程序移植方面的任务 - * APP 代表有关android app制作方面的任务 - -3. 待领 - * 待领 表示该任务还没人认领 - - -## (二) 项目提交说明 - - -1. fork本项目到个人的仓库 -2. 所有修改均在个人仓库上进行。修改完成后,使用pull request请求合并到本项目的**master分支** -3. 文本型的文件尽量使用markdown格式编写,并后缀改为.md。github默认对markdown提供良好的支持 - -## (三) 规范 -1. 每周工作报告格式为 ``时间_姓名_内容`` -2. 报告及文档提交后,谨慎修改文件名称,会破坏已有链接。 - -# 三 工具 - -## (一) github浏览 - -推荐在chrome浏览器(chromium内核皆可)中使用Octotree插件,能够以树状图的方式查看代码目录 - -> https://chrome.google.com/webstore/detail/octotree/bkhaagjahfmjljalopjnoealnfndnagc - diff --git a/README.md b/README.md index 810d378..0484f94 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,19 @@ -# printer-analysis +# dev-app branch -## master branch +该分支存放安卓打印插件的代码 -* doc目录 存放程序开发文档 -* APP目录 存放开发过程中android app制作的文档 -* 移植目录 存放开发过程中linux c程序移植的文档 -* report目录 存放开发过程中的工作汇报 +## 模块介绍 -To take part in the development, please **read documents in doc** from the beginning. +``` +localprint 模块 打印APP -参与开发**请查看doc目录下的文档**,其他目录的文档为开发过程中的报告,并非正式文档,但可能会有帮助。 +openthosprintservice 模块 针对HP P1108打印机的DEMO -## dev branch +app 模块 系统打印服务接入DEMO -* 该分支存放移植过程中的文件 - -## dev-app branch +testexec 模块 命令行调用DEMO -* 该分支存放安卓打印插件APP的代码 +testunit 模块 临时测试方法的DEMO + +testusb 模块 安卓框架下USB读写的DEMO +``` diff --git "a/USB\346\211\223\345\215\260\345\256\236\347\216\260\350\267\257\345\276\204\345\217\212\345\267\245\344\275\234\346\200\273\350\247\210.md" "b/USB\346\211\223\345\215\260\345\256\236\347\216\260\350\267\257\345\276\204\345\217\212\345\267\245\344\275\234\346\200\273\350\247\210.md" deleted file mode 100644 index f2a009a..0000000 --- "a/USB\346\211\223\345\215\260\345\256\236\347\216\260\350\267\257\345\276\204\345\217\212\345\267\245\344\275\234\346\200\273\350\247\210.md" +++ /dev/null @@ -1,103 +0,0 @@ -# 安卓USB打印实现路径 - -## 参考 - -> [20160128_何兴鹏_android_x86打印机开发调研.md][3] - -> [20160224_何兴鹏_android打印机开发进展.md][1] - -## 实现路径图: - -![path.png][2] - -实线为拟实现路径。如上图所示,工作主要分为打印插件制作和CUPS移植两个部分。 - -## ... - -... - -# 工作总览 - - -该部分为工作细节,每个细分任务有相对应的issue。 - - - -``` -+---------------------------+ -| | -| Android printing plugin | -| | -+------------+--------------+ - | +----------> 分析安卓打印子系统 ✔ issue #11 - | | - | | - | | - | | - | | - | + - +-------> 连接安卓系统打印机制 - | - | +----------> 分析设计打印机配置界面 ✔ issue #1 - | | - | | - | | - | + - +-------> 制作打印相关界面 - | - | +----------> 分析CUPS API - | | - | +----------> APP连接最简驱动 ✔ issue #13 - | + - +-------> 连接CUPS打印系统 - - - - +--------------------------+ - | | - | CUPS porting | - | | +---> 分析CUPS系统由哪些包组成 ✔ - +--------------------------+ | - +---> 分析cups功能 ✔ issue #3 - + | - | +---> 调研优先支持打印机在Linux上的支持情况 ■ issue #9 - | + - | +------> 分析CUPS系统 - | | + - | | +---> CUPS如何发送数据到USB打印机 ■ issue #18 - | | + - | | +---> CUPS如何管理不同打印机驱动 ✔ issue #5 - | | - | | - | | - | + - +------> 移植CUPS系统 - + +---> 针对HP P1108进行最简移植实验 ✔ issue #4 - | | - | +---> 移植CUPS包 ■ issue #17 - | | - | + - +------> 移植方案一:静态编译 - | - | - | - | - | +---> 尝试仅编译CUPS包 ■ issue #2 - | | - | + - +------> 移植方案二:基于Bionic Libc - | - | - | - +------> 封装 - - -Chart Power By ASCIIflow.com - -``` - - - -[1]: https://github.com/openthos/printer-analysis/blob/master/report%2F20160224_%E4%BD%95%E5%85%B4%E9%B9%8F_android%E6%89%93%E5%8D%B0%E6%9C%BA%E5%BC%80%E5%8F%91%E8%BF%9B%E5%B1%95.md -[2]: https://github.com/openthos/printer-analysis/raw/master/report/raw/3987526971.png -[3]: https://github.com/openthos/printer-analysis/blob/master/report%2F20160128_%E4%BD%95%E5%85%B4%E9%B9%8F_android_x86%E6%89%93%E5%8D%B0%E6%9C%BA%E5%BC%80%E5%8F%91%E8%B0%83%E7%A0%94.md \ No newline at end of file diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +/build diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..732f40d --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,26 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion 23 + buildToolsVersion "23.0.2" + + defaultConfig { + applicationId "com.github.openthos.printer.testprintservice" + minSdkVersion 19 + targetSdkVersion 23 + versionCode 1 + versionName "1.0" + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } +} + +dependencies { + compile fileTree(dir: 'libs', include: ['*.jar']) + testCompile 'junit:junit:4.12' + compile 'com.android.support:appcompat-v7:23.2.1' +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..8be3951 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,17 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in C:\Users\bboxh\Documents\Android\sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/app/src/androidTest/java/com/github/openthos/printer/testprintservice/ApplicationTest.java b/app/src/androidTest/java/com/github/openthos/printer/testprintservice/ApplicationTest.java new file mode 100644 index 0000000..6630946 --- /dev/null +++ b/app/src/androidTest/java/com/github/openthos/printer/testprintservice/ApplicationTest.java @@ -0,0 +1,13 @@ +package com.github.openthos.printer.testprintservice; + +import android.app.Application; +import android.test.ApplicationTestCase; + +/** + * Testing Fundamentals + */ +public class ApplicationTest extends ApplicationTestCase { + public ApplicationTest() { + super(Application.class); + } +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..723fdc9 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/java/com/github/openthos/printer/testprintservice/AddPrintersActivity.java b/app/src/main/java/com/github/openthos/printer/testprintservice/AddPrintersActivity.java new file mode 100644 index 0000000..9984baf --- /dev/null +++ b/app/src/main/java/com/github/openthos/printer/testprintservice/AddPrintersActivity.java @@ -0,0 +1,13 @@ +package com.github.openthos.printer.testprintservice; + +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; + +public class AddPrintersActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_add_printers); + } +} diff --git a/app/src/main/java/com/github/openthos/printer/testprintservice/AdvancedPrintOptionsActivity.java b/app/src/main/java/com/github/openthos/printer/testprintservice/AdvancedPrintOptionsActivity.java new file mode 100644 index 0000000..2aec87b --- /dev/null +++ b/app/src/main/java/com/github/openthos/printer/testprintservice/AdvancedPrintOptionsActivity.java @@ -0,0 +1,13 @@ +package com.github.openthos.printer.testprintservice; + +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; + +public class AdvancedPrintOptionsActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_advanced_print_options); + } +} diff --git a/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintDiscoverySession.java b/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintDiscoverySession.java new file mode 100644 index 0000000..bfad3bc --- /dev/null +++ b/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintDiscoverySession.java @@ -0,0 +1,108 @@ +package com.github.openthos.printer.testprintservice; + +import android.print.PrintAttributes; +import android.print.PrinterCapabilitiesInfo; +import android.print.PrinterId; +import android.print.PrinterInfo; +import android.printservice.PrinterDiscoverySession; +import android.util.Log; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by bboxh on 2016/3/14. + */ +public class MyPrintDiscoverySession extends PrinterDiscoverySession { + private static final String TAG = "MyPrintDiscoverySession"; + private final MyPrintService myPrintService; + + public MyPrintDiscoverySession(MyPrintService myPrintService) { + Log.d(TAG, "MyPrintDiscoverySession()"); + this.myPrintService = myPrintService; + } + + @Override + public void onStartPrinterDiscovery(List priorityList) { + Log.d(TAG, "onStartPrinterDiscovery()"); + List printers = this.getPrinters(); + String name = "printer1"; + PrinterInfo myprinter = new PrinterInfo + .Builder(myPrintService.generatePrinterId(name), name, PrinterInfo.STATUS_IDLE) + .build(); + printers.add(myprinter); + //addPrinters(printers); + } + + @Override + public void onStopPrinterDiscovery() { + Log.d(TAG, "onStopPrinterDiscovery()"); + } + + /** + * 确定这些打印机存在 + * @param printerIds + */ + @Override + public void onValidatePrinters(List printerIds) { + Log.d(TAG, "onValidatePrinters()"); + } + + /** + * 选择打印机时调用该方法更新打印机的状态,功能 + * @param printerId + */ + @Override + public void onStartPrinterStateTracking(PrinterId printerId) { + Log.d(TAG, "onStartPrinterStateTracking()"); + PrinterInfo printer = findPrinterInfo(printerId); + if (printer != null) { + PrinterCapabilitiesInfo capabilities = + new PrinterCapabilitiesInfo.Builder(printerId) + .setMinMargins(new PrintAttributes.Margins(200, 200, 200, 200)) + .addMediaSize(PrintAttributes.MediaSize.ISO_A4, true) + //.addMediaSize(PrintAttributes.MediaSize.ISO_A5, false) + .addResolution(new PrintAttributes.Resolution("R1", "200x200", 200, 200), false) + .addResolution(new PrintAttributes.Resolution("R2", "300x300", 300, 300), true) + .setColorModes(PrintAttributes.COLOR_MODE_COLOR + | PrintAttributes.COLOR_MODE_MONOCHROME, + PrintAttributes.COLOR_MODE_MONOCHROME) + .build(); + + printer = new PrinterInfo.Builder(printer) + .setCapabilities(capabilities) + .setStatus(PrinterInfo.STATUS_IDLE) + // .setDescription("fake print 1!") + .build(); + List printers = new ArrayList(); + + + + printers.add(printer); + addPrinters(printers); + } + } + + @Override + public void onStopPrinterStateTracking(PrinterId printerId) { + Log.d(TAG, "onStopPrinterStateTracking()"); + } + + @Override + public void onDestroy() { + Log.d(TAG, "onDestroy()"); + } + + private PrinterInfo findPrinterInfo(PrinterId printerId) { + List printers = getPrinters(); + final int printerCount = getPrinters().size(); + for (int i = 0; i < printerCount; i++) { + PrinterInfo printer = printers.get(i); + if (printer.getId().equals(printerId)) { + return printer; + } + } + return null; + } + +} diff --git a/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintService.java b/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintService.java new file mode 100644 index 0000000..e9b0c38 --- /dev/null +++ b/app/src/main/java/com/github/openthos/printer/testprintservice/MyPrintService.java @@ -0,0 +1,111 @@ +package com.github.openthos.printer.testprintservice; + +import android.app.Service; +import android.content.Intent; +import android.os.IBinder; +import android.os.ParcelFileDescriptor; +import android.print.PrintJobInfo; +import android.printservice.PrintDocument; +import android.printservice.PrintJob; +import android.printservice.PrintService; +import android.printservice.PrinterDiscoverySession; +import android.util.Log; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.channels.FileChannel; + +public class MyPrintService extends PrintService { + + private static final String TAG = "MyPrintService"; + + @Override + protected PrinterDiscoverySession onCreatePrinterDiscoverySession() { + Log.d(TAG, "onCreatePrinterDiscoverySession()"); + return new MyPrintDiscoverySession(this); + } + + @Override + protected void onRequestCancelPrintJob(PrintJob printJob) { + Log.d(TAG, "onRequestCancelPrintJob()"); + printJob.cancel(); + } + + @Override + protected void onPrintJobQueued(PrintJob printJob) { + Log.d(TAG, "onPrintJobQueued()"); + PrintJobInfo printjobinfo = printJob.getInfo(); + PrintDocument printdocument = printJob.getDocument(); + + if (!printJob.isQueued()) { + return; + } + printJob.start(); + + String filename = "docu.pdf"; + File outfile = new File(this.getFilesDir(), filename); + outfile.delete(); + + FileInputStream file = new ParcelFileDescriptor.AutoCloseInputStream(printdocument.getData()); + //创建一个长度为1024的内存空间 + byte[] bbuf = new byte[1024]; + + //用于保存实际读取的字节数 + int hasRead = 0; + //使用循环来重复读取数据 + try { + + FileOutputStream outStream = new FileOutputStream(outfile); + + while ((hasRead = file.read(bbuf)) > 0) { + + //将字节数组转换为字符串输出 + System.out.print(new String(bbuf, 0, hasRead)); + outStream.write(bbuf); + } + + outStream.close(); + + + } catch (IOException e) { + e.printStackTrace(); + }finally { + //关闭文件输出流,放在finally块里更安全 + try { + file.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + + + //这个方法无法传输,有问题 + /* + try { + FileInputStream inStream = new FileInputStream(printdocument.getData().getFileDescriptor()); + FileOutputStream outStream = new FileOutputStream(outfile); + FileChannel in = inStream.getChannel(); + FileChannel out = outStream.getChannel(); + //long length = out.transferFrom(in, 0, in.size()); + long length = in.transferTo(0, in.size(), out); + Log.d(TAG, "copy to docu.pdf length: " + length + " @" + this.getFilesDir()); + inStream.close(); + outStream.close(); + + + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + }*/ + + printJob.complete(); + + } + + +} diff --git a/app/src/main/java/com/github/openthos/printer/testprintservice/SettingsActivity.java b/app/src/main/java/com/github/openthos/printer/testprintservice/SettingsActivity.java new file mode 100644 index 0000000..0afd6e5 --- /dev/null +++ b/app/src/main/java/com/github/openthos/printer/testprintservice/SettingsActivity.java @@ -0,0 +1,13 @@ +package com.github.openthos.printer.testprintservice; + +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; + +public class SettingsActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_settings); + } +} diff --git a/app/src/main/res/layout/activity_add_printers.xml b/app/src/main/res/layout/activity_add_printers.xml new file mode 100644 index 0000000..d30755b --- /dev/null +++ b/app/src/main/res/layout/activity_add_printers.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_advanced_print_options.xml b/app/src/main/res/layout/activity_advanced_print_options.xml new file mode 100644 index 0000000..fc31d0e --- /dev/null +++ b/app/src/main/res/layout/activity_advanced_print_options.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml new file mode 100644 index 0000000..aa1307f --- /dev/null +++ b/app/src/main/res/layout/activity_settings.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000..cde69bc Binary files /dev/null and b/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000..c133a0c Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000..bfa42f0 Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000..324e72c Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..aee44e1 Binary files /dev/null and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/app/src/main/res/values-w820dp/dimens.xml b/app/src/main/res/values-w820dp/dimens.xml new file mode 100644 index 0000000..63fc816 --- /dev/null +++ b/app/src/main/res/values-w820dp/dimens.xml @@ -0,0 +1,6 @@ + + + 64dp + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..3ab3e9c --- /dev/null +++ b/app/src/main/res/values/colors.xml @@ -0,0 +1,6 @@ + + + #3F51B5 + #303F9F + #FF4081 + diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..47c8224 --- /dev/null +++ b/app/src/main/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 16dp + 16dp + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..02235fb --- /dev/null +++ b/app/src/main/res/values/strings.xml @@ -0,0 +1,6 @@ + + TestPrintService + SettingsActivity + AddPrintersActivity + AdvancedPrintOptionsActivity + diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..5885930 --- /dev/null +++ b/app/src/main/res/values/styles.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/app/src/main/res/xml/printservice.xml b/app/src/main/res/xml/printservice.xml new file mode 100644 index 0000000..4f7a866 --- /dev/null +++ b/app/src/main/res/xml/printservice.xml @@ -0,0 +1,8 @@ + + + \ No newline at end of file diff --git a/app/src/test/java/com/github/openthos/printer/testprintservice/ExampleUnitTest.java b/app/src/test/java/com/github/openthos/printer/testprintservice/ExampleUnitTest.java new file mode 100644 index 0000000..052460e --- /dev/null +++ b/app/src/test/java/com/github/openthos/printer/testprintservice/ExampleUnitTest.java @@ -0,0 +1,15 @@ +package com.github.openthos.printer.testprintservice; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * To work on unit tests, switch the Test Artifact in the Build Variants view. + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..aff4f41 --- /dev/null +++ b/build.gradle @@ -0,0 +1,23 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:2.1.2' + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/demo_platform.keystore b/demo_platform.keystore new file mode 100644 index 0000000..8ad2c48 Binary files /dev/null and b/demo_platform.keystore differ diff --git a/demokey.jks b/demokey.jks new file mode 100644 index 0000000..2730220 Binary files /dev/null and b/demokey.jks differ diff --git a/doc/OVREVIEW.md b/doc/OVREVIEW.md deleted file mode 100644 index b2f5887..0000000 --- a/doc/OVREVIEW.md +++ /dev/null @@ -1,38 +0,0 @@ -# Intro - -This project belongs to [Openthos](https://github.com/openthos/openthos/wiki) project, providing local printers' and net printers' support. - -# Feature - -* Support usb printers. -* Support net pritners (http ipp smb lpd beh). -* Access to the android system print service and provide print function. -* Support print jobs' management(Hold, release/resume). -* Support printer's setting(within the drivers support). - -# Supported printers - -To see the details, Please visit:[SUPPORTED_PRINTERS.md](https://github.com/openthos/printer-analysis/blob/master/doc/SUPPORTED_PRINTERS.md) - -# Known issues - -| Intro | Category | remarks -|---|---|---|---| -|Duplex printing unsupported|print|| -|Lack of the out of paper promote|print|CUPS unsupport this feature but some extra drivers may support| - -# How to develop - -Please follow the next steps. - -## Building && Installing - -Please visit:[BUILDING.md](https://github.com/openthos/printer-analysis/blob/master/doc/BUILDING.md) - -## Making a CUPS component - -Please visit:[MAKING_A_CUPS_COMPONENT.md](https://github.com/openthos/printer-analysis/blob/master/doc/MAKING_A_CUPS_COMPONENT.md) - -## Coding a print app - -Please visit:[APP.md](https://github.com/openthos/printer-analysis/blob/master/doc/APP.md) diff --git a/doc/README.md b/doc/README.md deleted file mode 100644 index e623dd8..0000000 --- a/doc/README.md +++ /dev/null @@ -1,12 +0,0 @@ -# doc - -Please read OVREVIEW.md. - -English version: - -~~[OVERVIEW.md](https://github.com/openthos/printer-analysis/blob/master/doc/OVREVIEW.md) TODO~~ - -中文版: - -[OVERVIEW.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/OVREVIEW.md) - diff --git a/doc/RELATED_PROJECTS.md b/doc/RELATED_PROJECTS.md deleted file mode 100644 index 7faf568..0000000 --- a/doc/RELATED_PROJECTS.md +++ /dev/null @@ -1,67 +0,0 @@ -### Gutenprint - -High quality drivers for Canon, Epson, Lexmark, Sony, Olympus, and PCL printers for use with CUPS, Ghostscript, Foomatic, and GIMP. - -http://gimp-print.sourceforge.net/ - -### ghostscript - -an interpreter for the PostScript language and for PDF - -http://www.ghostscript.com/ - -### foo2zjs - -a linux printer driver for ZjStream protocol - -e.g. Minolta magicolor 2200/2300/2430 DL, - -HP LaserJet 1018/1020/1022/P2035, - -HP LaserJet Pro CP1025nw, - -HP LaserJet Pro P1102/P1102w/P1566/P1606dn - -http://foo2zjs.rkkda.com/ - -### HPLIP - -HP Linux Imaging and Printing - -Print, Scan and Fax Drivers for Linux - -http://hplipopensource.com/hplip-web/index.html - -### foomatic - -Foomatic is a database-driven system for integrating free software printer drivers with common spoolers under Unix. - -http://www.linuxfoundation.org/collaborate/workgroups/openprinting/database/foomatic - -four sub-projects: - -* foomatic-filters -The universal print filter "foomatic-rip", used by spoolers to convert PostScript job data into the printer's native format as described by a printer/driver-specific PPD file. - -* foomatic-db-engine -Foomatic's database engine generates PPD files from the data in Foomatic's XML database. It also contains scripts to directly configure print queues and handle jobs. - -* foomatic-db -The collected knowledge about printers, drivers, and driver options in XML files, used by foomatic-db-engine to generate PPD files. It also contains manufacturer-supplied PPD files which got released under free software licenses. - -* foomatic-db-nonfree -Foomatic database extension consisting of manufacturer-supplied PPD files released under non-free licenses which restricts them in how they can get redistributed. - -### cups-filters - -This project provides backends, filters, and other software that was once part of the core CUPS distribution but is no longer maintained by Apple Inc. - -From CUPS 1.6.0 on, this package is required for using printer drivers with CUPS under Linux. With CUPS 1.5.x and earlier this package can be used optionally to switch over to PDF-based printing. - -http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters - -### CUPS - -CUPS is the standards-based, open source printing system developed by Apple Inc. for OS X? and other UNIX?-like operating systems. CUPS uses the Internet Printing Protocol (IPP) to support printing to local and network printers. - -https://www.cups.org/ \ No newline at end of file diff --git a/doc/SUPPORTED_PRINTERS.md b/doc/SUPPORTED_PRINTERS.md deleted file mode 100644 index 5480a7b..0000000 --- a/doc/SUPPORTED_PRINTERS.md +++ /dev/null @@ -1,1812 +0,0 @@ -# Installed Drivers List - -Installed | Supported Printers| Driver Name | Remarks ------------ | ------------ | ------------- | ------------ | ------------ -√ | Parts of HP laser printers | [foo2zjs](http://foo2zjs.rkkda.com/) | -√ | Parts of Epson inkjet printer | Epson official old open source driver | -√ | Most of Pantum printers | Pantum official closed source driver | -√ | Most of HP printers | [hpcups && hplip plugin](http://hplipopensource.com/hplip-web/index.html) | Official drivers -√ | SecuSoft printers |SecuSoft official driver | - -# Tested Printers List - -Supported | Tested | Printer Model | Drivers | Remarks ------------ | ----------- | ------------ | ------------- | ------------ -√ | √ | HP LaserJet P1108 | foo2zjs/hplip | Select HP CP1025nw model when use foo2zjs -√ | √ | HP LaserJet P2015dn | cups-filter/hplip |Select HP LaserJet Series PCL 6 model when use cups-filter -√ | √ | Pantum P2500W | Pantum official driver | -√ | √ | SecuSoft SFL 2000 | SecuSoft official driver - -# Supported Printers List - -``` -lsb/usr/cupsfilters/Fuji_Xerox-DocuPrint_CM305_df-PDF.ppd Fuji Xerox -lsb/local/HP/apollo-2100.ppd.gz Apollo 2100, hpcups 3.16.2 -lsb/local/HP/apollo-2150.ppd.gz Apollo 2150, hpcups 3.16.2 -lsb/local/HP/apollo-2200.ppd.gz Apollo 2200, hpcups 3.16.2 -lsb/local/HP/apollo-2500.ppd.gz Apollo 2500, hpcups 3.16.2 -lsb/local/HP/apollo-2600.ppd.gz Apollo 2600, hpcups 3.16.2 -lsb/local/HP/apollo-2650.ppd.gz Apollo 2650, hpcups 3.16.2 -lsb/local/HP/apollo-p2000-u.ppd.gz Apollo p2000-u, hpcups 3.16.2 -lsb/local/HP/apollo-p2250.ppd.gz Apollo p2250, hpcups 3.16.2 -Dell-1355.ppd.gz Dell 1355 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Dell-1355.ppd.gz Dell 1355 Foomatic/foo2hbpl2 -Dell-C1765.ppd.gz Dell C1765 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Dell-C1765.ppd.gz Dell C1765 Foomatic/foo2hbpl2 -drv:///sample.drv/dymo.ppd Dymo Label Printer -drv:///sample.drv/epson9.ppd Epson 9-Pin Series -drv:///sample.drv/epson24.ppd Epson 24-Pin Series -Epson-AcuLaser_CX17NF.ppd.gz Epson AcuLaser CX17NF Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Epson-AcuLaser_CX17NF.ppd.gz Epson AcuLaser CX17NF Foomatic/foo2hbpl2 -Epson-AcuLaser_M1400.ppd.gz Epson AcuLaser M1400 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Epson-AcuLaser_M1400.ppd.gz Epson AcuLaser M1400 Foomatic/foo2hbpl2 -epson-inkjet-printer-escpr/Epson-Artisan_630-epson-escpr-en.ppd Epson Artisan 630, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_700-epson-escpr-en.ppd Epson Artisan 700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_710-epson-escpr-en.ppd Epson Artisan 710, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_720-epson-escpr-en.ppd Epson Artisan 720, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_730-epson-escpr-en.ppd Epson Artisan 730, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_800-epson-escpr-en.ppd Epson Artisan 800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_810-epson-escpr-en.ppd Epson Artisan 810, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_830-epson-escpr-en.ppd Epson Artisan 830, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_837-epson-escpr-en.ppd Epson Artisan 837, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Artisan_1430-epson-escpr-en.ppd Epson Artisan 1430, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-150-epson-escpr-en.ppd Epson E-150, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-200-epson-escpr-en.ppd Epson E-200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-300-epson-escpr-en.ppd Epson E-300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-330-epson-escpr-en.ppd Epson E-330, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-330S-epson-escpr-en.ppd Epson E-330S, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-340-epson-escpr-en.ppd Epson E-340, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-350-epson-escpr-en.ppd Epson E-350, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-360_Series-epson-escpr-en.ppd Epson E-360 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-370_Series-epson-escpr-en.ppd EPSON E-370 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-500-epson-escpr-en.ppd Epson E-500, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-520-epson-escpr-en.ppd Epson E-520, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-530-epson-escpr-en.ppd Epson E-530, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-600-epson-escpr-en.ppd Epson E-600, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-700-epson-escpr-en.ppd Epson E-700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-720-epson-escpr-en.ppd Epson E-720, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-800-epson-escpr-en.ppd Epson E-800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-810-epson-escpr-en.ppd Epson E-810, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-820-epson-escpr-en.ppd Epson E-820, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-830_Series-epson-escpr-en.ppd Epson E-830 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-840_Series-epson-escpr-en.ppd EPSON E-840 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-E-850_Series-epson-escpr-en.ppd EPSON E-850 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-10VA_Series-epson-escpr-en.ppd EPSON EP-10VA Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-306_Series-epson-escpr-en.ppd EPSON EP-306 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-702A-epson-escpr-en.ppd Epson EP-702A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-703A-epson-escpr-en.ppd Epson EP-703A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-704A-epson-escpr-en.ppd Epson EP-704A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-705A_Series-epson-escpr-en.ppd Epson EP-705A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-706A_Series-epson-escpr-en.ppd EPSON EP-706A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-707A_Series-epson-escpr-en.ppd EPSON EP-707A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-708A_Series-epson-escpr-en.ppd EPSON EP-708A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-774A-epson-escpr-en.ppd Epson EP-774A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-775A_Series-epson-escpr-en.ppd Epson EP-775A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-776A_Series-epson-escpr-en.ppd EPSON EP-776A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-777A_Series-epson-escpr-en.ppd EPSON EP-777A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-801A-epson-escpr-en.ppd Epson EP-801A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-802A-epson-escpr-en.ppd Epson EP-802A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-803A-epson-escpr-en.ppd Epson EP-803A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-804A-epson-escpr-en.ppd Epson EP-804A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-805A_Series-epson-escpr-en.ppd Epson EP-805A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-806A_Series-epson-escpr-en.ppd EPSON EP-806A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-807A_Series-epson-escpr-en.ppd EPSON EP-807A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-808A_Series-epson-escpr-en.ppd EPSON EP-808A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-901A-epson-escpr-en.ppd Epson EP-901A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-901F-epson-escpr-en.ppd Epson EP-901F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-902A-epson-escpr-en.ppd Epson EP-902A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-903A-epson-escpr-en.ppd Epson EP-903A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-903F-epson-escpr-en.ppd Epson EP-903F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-904A-epson-escpr-en.ppd Epson EP-904A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-904F-epson-escpr-en.ppd Epson EP-904F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-905A_Series-epson-escpr-en.ppd Epson EP-905A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-905F_Series-epson-escpr-en.ppd Epson EP-905F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-906F_Series-epson-escpr-en.ppd EPSON EP-906F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-907F_Series-epson-escpr-en.ppd EPSON EP-907F Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-976A3_Series-epson-escpr-en.ppd EPSON EP-976A3 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-977A3_Series-epson-escpr-en.ppd EPSON EP-977A3 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-978A3_Series-epson-escpr-en.ppd EPSON EP-978A3 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EP-4004-epson-escpr-en.ppd Epson EP-4004, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ET-2500_Series-epson-escpr-en.ppd EPSON ET-2500 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ET-2550_Series-epson-escpr-en.ppd EPSON ET-2550 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ET-4500_Series-epson-escpr-en.ppd EPSON ET-4500 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ET-4550_Series-epson-escpr-en.ppd EPSON ET-4550 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-EW-M660FT_Series-epson-escpr-en.ppd EPSON EW-M660FT Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-K200-epson-escpr-en.ppd Epson K200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-K300-epson-escpr-en.ppd Epson K300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -Epson-L130_Series-epson-driver.ppd.gz Epson L130 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L130_Series-epson-driver.ppd.gz Epson L130 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L132_Series-epson-driver.ppd.gz Epson L132 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L132_Series-epson-driver.ppd.gz Epson L132 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L220_Series-epson-driver.ppd.gz Epson L220 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L220_Series-epson-driver.ppd.gz Epson L220 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L222_Series-epson-driver.ppd.gz Epson L222 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L222_Series-epson-driver.ppd.gz Epson L222 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L310_Series-epson-driver.ppd.gz Epson L310 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L310_Series-epson-driver.ppd.gz Epson L310 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L312_Series-epson-driver.ppd.gz Epson L312 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L312_Series-epson-driver.ppd.gz Epson L312 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L360_Series-epson-driver.ppd.gz Epson L360 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L360_Series-epson-driver.ppd.gz Epson L360 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L362_Series-epson-driver.ppd.gz Epson L362 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L362_Series-epson-driver.ppd.gz Epson L362 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L365_Series-epson-driver.ppd.gz Epson L365 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L365_Series-epson-driver.ppd.gz Epson L365 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L366_Series-epson-driver.ppd.gz Epson L366 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L366_Series-epson-driver.ppd.gz Epson L366 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -epson-inkjet-printer-escpr/Epson-L375_Series-epson-escpr-en.ppd EPSON L375 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L455_Series-epson-escpr-en.ppd EPSON L455 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -Epson-L455_Series-epson-driver.ppd.gz Epson L455 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L455_Series-epson-driver.ppd.gz Epson L455 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -Epson-L456_Series-epson-driver.ppd.gz Epson L456 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -lsb/usr/epson-inkjet-printer-201401w/ppds/Epson/Epson-L456_Series-epson-driver.ppd.gz Epson L456 Series - epson-inkjet-printer 1.0.0-1lsb3.2 (Seiko Epson Corporation LSB 3.2) -epson-inkjet-printer-escpr/Epson-L475_Series-epson-escpr-en.ppd EPSON L475 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L565_Series-epson-escpr-en.ppd EPSON L565 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L575_Series-epson-escpr-en.ppd EPSON L575 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L655_Series-epson-escpr-en.ppd EPSON L655 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L805_Series-epson-escpr-en.ppd EPSON L805 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L810_Series-epson-escpr-en.ppd EPSON L810 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-L850_Series-epson-escpr-en.ppd EPSON L850 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-M200_Series-epson-escpr-en.ppd Epson M200 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-M205_Series-epson-escpr-en.ppd Epson M205 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_200-epson-escpr-en.ppd Epson ME 200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_510-epson-escpr-en.ppd Epson ME OFFICE 510, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_520-epson-escpr-en.ppd Epson ME OFFICE 520, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_530-epson-escpr-en.ppd Epson ME OFFICE 530, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_560W-epson-escpr-en.ppd Epson ME OFFICE 560W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_570-epson-escpr-en.ppd Epson ME OFFICE 570, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_Office_600F-epson-escpr-en.ppd Epson ME Office 600F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_620F-epson-escpr-en.ppd Epson ME OFFICE 620F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_650FN-epson-escpr-en.ppd Epson ME OFFICE 650FN, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_700FW-epson-escpr-en.ppd Epson ME OFFICE 700FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_900WD-epson-escpr-en.ppd Epson ME OFFICE 900WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_940FW-epson-escpr-en.ppd Epson ME OFFICE 940FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME_OFFICE_960FWD-epson-escpr-en.ppd Epson ME OFFICE 960FWD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME-301_Series-epson-escpr-en.ppd Epson ME-301 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME-303_Series-epson-escpr-en.ppd Epson ME-303 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-ME-400_Series-epson-escpr-en.ppd Epson ME-400 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-NX230_TX230-epson-escpr-en.ppd Epson NX230 TX230, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-NX430_TX435-epson-escpr-en.ppd Epson NX430 TX435, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PF-70_Series-epson-escpr-en.ppd EPSON PF-70 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PF-71_Series-epson-escpr-en.ppd EPSON PF-71 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PF-81_Series-epson-escpr-en.ppd EPSON PF-81 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_500-epson-escpr-en.ppd Epson PictureMate 500, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_Deluxe-epson-escpr-en.ppd Epson PictureMate Deluxe, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_Express-epson-escpr-en.ppd Epson PictureMate Express, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_200-epson-escpr-en.ppd Epson PictureMate PM 200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_210-epson-escpr-en.ppd Epson PictureMate PM 210, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_215-epson-escpr-en.ppd Epson PictureMate PM 215, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_225-epson-escpr-en.ppd Epson PictureMate PM 225, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_235-epson-escpr-en.ppd Epson PictureMate PM 235, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_240-epson-escpr-en.ppd Epson PictureMate PM 240, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_245-epson-escpr-en.ppd Epson PictureMate PM 245, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_250-epson-escpr-en.ppd Epson PictureMate PM 250, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_260-epson-escpr-en.ppd Epson PictureMate PM 260, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_270-epson-escpr-en.ppd Epson PictureMate PM 270, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_280-epson-escpr-en.ppd Epson PictureMate PM 280, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_290-epson-escpr-en.ppd Epson PictureMate PM 290, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_300-epson-escpr-en.ppd Epson PictureMate PM 300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PictureMate_PM_310-epson-escpr-en.ppd Epson PictureMate PM 310, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-400_Series-epson-escpr-en.ppd EPSON PM-400 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A750-epson-escpr-en.ppd Epson PM-A750, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A820-epson-escpr-en.ppd Epson PM-A820, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A840-epson-escpr-en.ppd Epson PM-A840, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A840S-epson-escpr-en.ppd Epson PM-A840S, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A890-epson-escpr-en.ppd Epson PM-A890, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A920-epson-escpr-en.ppd Epson PM-A920, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A940-epson-escpr-en.ppd Epson PM-A940, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A950-epson-escpr-en.ppd Epson PM-A950, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-A970-epson-escpr-en.ppd Epson PM-A970, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-D600-epson-escpr-en.ppd Epson PM-D600, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-D800-epson-escpr-en.ppd Epson PM-D800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-D870-epson-escpr-en.ppd Epson PM-D870, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-G850-epson-escpr-en.ppd Epson PM-G850, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-G4500-epson-escpr-en.ppd Epson PM-G4500, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-T960-epson-escpr-en.ppd Epson PM-T960, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PM-T990-epson-escpr-en.ppd Epson PM-T990, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-5V-epson-escpr-en.ppd Epson PX-5V, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-7V-epson-escpr-en.ppd Epson PX-7V, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-046A_Series-epson-escpr-en.ppd EPSON PX-046A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-047A_Series-epson-escpr-en.ppd EPSON PX-047A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-048A_Series-epson-escpr-en.ppd EPSON PX-048A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-205_Series-epson-escpr-en.ppd Epson PX-205 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-404A-epson-escpr-en.ppd Epson PX-404A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-405A_Series-epson-escpr-en.ppd Epson PX-405A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-434A-epson-escpr-en.ppd Epson PX-434A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-435A_Series-epson-escpr-en.ppd Epson PX-435A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-436A_Series-epson-escpr-en.ppd EPSON PX-436A Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-437A_Series-epson-escpr-en.ppd EPSON PX-437A Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-501A-epson-escpr-en.ppd Epson PX-501A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-502A-epson-escpr-en.ppd Epson PX-502A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-503A-epson-escpr-en.ppd Epson PX-503A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-504A-epson-escpr-en.ppd Epson PX-504A, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-505F_Series-epson-escpr-en.ppd Epson PX-505F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-535F_Series-epson-escpr-en.ppd Epson PX-535F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-601F-epson-escpr-en.ppd Epson PX-601F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-602F-epson-escpr-en.ppd Epson PX-602F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-603F-epson-escpr-en.ppd Epson PX-603F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-605F_Series-epson-escpr-en.ppd Epson PX-605F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-673F-epson-escpr-en.ppd Epson PX-673F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-675F_Series-epson-escpr-en.ppd Epson PX-675F Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-1600F-epson-escpr-en.ppd Epson PX-1600F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-1700F-epson-escpr-en.ppd Epson PX-1700F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-5600-epson-escpr-en.ppd Epson PX-5600, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-A620-epson-escpr-en.ppd Epson PX-A620, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-A640-epson-escpr-en.ppd Epson PX-A640, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-A650-epson-escpr-en.ppd Epson PX-A650, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-A720-epson-escpr-en.ppd Epson PX-A720, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-A740-epson-escpr-en.ppd Epson PX-A740, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-B700-epson-escpr-en.ppd Epson PX-B700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-B750F-epson-escpr-en.ppd Epson PX-B750F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-FA700-epson-escpr-en.ppd Epson PX-FA700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-G5300-epson-escpr-en.ppd Epson PX-G5300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M160T_Series-epson-escpr-en.ppd EPSON PX-M160T Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M350F-epson-escpr-en.ppd EPSON PX-M350F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M650A-epson-escpr-en.ppd EPSON PX-M650A , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M650F-epson-escpr-en.ppd EPSON PX-M650F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M740F-epson-escpr-en.ppd EPSON PX-M740F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M741F-epson-escpr-en.ppd EPSON PX-M741F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M840F-epson-escpr-en.ppd EPSON PX-M840F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M840FX-epson-escpr-en.ppd EPSON PX-M840FX , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M860F-epson-escpr-en.ppd EPSON PX-M860F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M5040F-epson-escpr-en.ppd EPSON PX-M5040F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M5041F-epson-escpr-en.ppd EPSON PX-M5041F , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M7050_Series-epson-escpr-en.ppd EPSON PX-M7050 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M7050FP-epson-escpr-en.ppd EPSON PX-M7050FP , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-M7050FX-epson-escpr-en.ppd EPSON PX-M7050FX , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S05_Series-epson-escpr-en.ppd EPSON PX-S05 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S160T_Series-epson-escpr-en.ppd EPSON PX-S160T Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S350-epson-escpr-en.ppd EPSON PX-S350 , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S740-epson-escpr-en.ppd EPSON PX-S740 , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S840-epson-escpr-en.ppd EPSON PX-S840 , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S840X-epson-escpr-en.ppd EPSON PX-S840X , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S860-epson-escpr-en.ppd EPSON PX-S860 , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S5040-epson-escpr-en.ppd EPSON PX-S5040 , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S7050_Series-epson-escpr-en.ppd EPSON PX-S7050 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S7050PS-epson-escpr-en.ppd EPSON PX-S7050PS , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-PX-S7050X-epson-escpr-en.ppd EPSON PX-S7050X , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX2800-epson-escpr-en.ppd Epson Stylus CX2800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX2900-epson-escpr-en.ppd Epson Stylus CX2900, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX3700-epson-escpr-en.ppd Epson Stylus CX3700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX3800-epson-escpr-en.ppd Epson Stylus CX3800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX3900-epson-escpr-en.ppd Epson Stylus CX3900, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX4200-epson-escpr-en.ppd Epson Stylus CX4200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX4800-epson-escpr-en.ppd Epson Stylus CX4800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX4900-epson-escpr-en.ppd Epson Stylus CX4900, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX5000-epson-escpr-en.ppd Epson Stylus CX5000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX5900-epson-escpr-en.ppd Epson Stylus CX5900, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX6000-epson-escpr-en.ppd Epson Stylus CX6000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX7300-epson-escpr-en.ppd Epson Stylus CX7300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX7400-epson-escpr-en.ppd Epson Stylus CX7400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX7700-epson-escpr-en.ppd Epson Stylus CX7700, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX7800-epson-escpr-en.ppd Epson Stylus CX7800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX8300-epson-escpr-en.ppd Epson Stylus CX8300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX8400-epson-escpr-en.ppd Epson Stylus CX8400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX9300F-epson-escpr-en.ppd Epson Stylus CX9300F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_CX9400Fax-epson-escpr-en.ppd Epson Stylus CX9400Fax, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX3800-epson-escpr-en.ppd Epson Stylus DX3800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX4000-epson-escpr-en.ppd Epson Stylus DX4000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX4200-epson-escpr-en.ppd Epson Stylus DX4200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX4800-epson-escpr-en.ppd Epson Stylus DX4800, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX5000-epson-escpr-en.ppd Epson Stylus DX5000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX7400-epson-escpr-en.ppd Epson Stylus DX7400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX8400-epson-escpr-en.ppd Epson Stylus DX8400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_DX9400F-epson-escpr-en.ppd Epson Stylus DX9400F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX200-epson-escpr-en.ppd Epson Stylus NX200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX210-epson-escpr-en.ppd Epson Stylus NX210, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX230-epson-escpr-en.ppd Epson Stylus NX230, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX300-epson-escpr-en.ppd Epson Stylus NX300, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX330-epson-escpr-en.ppd Epson Stylus NX330, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX400-epson-escpr-en.ppd Epson Stylus NX400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX410-epson-escpr-en.ppd Epson Stylus NX410, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX420-epson-escpr-en.ppd Epson Stylus NX420, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX430-epson-escpr-en.ppd Epson Stylus NX430, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX510-epson-escpr-en.ppd Epson Stylus NX510, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX530-epson-escpr-en.ppd Epson Stylus NX530, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX620-epson-escpr-en.ppd Epson Stylus NX620, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_NX635-epson-escpr-en.ppd Epson Stylus NX635, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX300F-epson-escpr-en.ppd Epson Stylus Office BX300F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX305_Plus-epson-escpr-en.ppd Epson Stylus Office BX305 Plus, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX305-epson-escpr-en.ppd Epson Stylus Office BX305, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX310FN-epson-escpr-en.ppd Epson Stylus Office BX310FN, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX320FW-epson-escpr-en.ppd Epson Stylus Office BX320FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX525WD-epson-escpr-en.ppd Epson Stylus Office BX525WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX535WD-epson-escpr-en.ppd Epson Stylus Office BX535WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX600FW-epson-escpr-en.ppd Epson Stylus Office BX600FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX610FW-epson-escpr-en.ppd Epson Stylus Office BX610FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX620FWD-epson-escpr-en.ppd Epson Stylus Office BX620FWD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX630FW-epson-escpr-en.ppd Epson Stylus Office BX630FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX635FWD-epson-escpr-en.ppd Epson Stylus Office BX635FWD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX925-epson-escpr-en.ppd Epson Stylus Office BX925, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_BX935-epson-escpr-en.ppd Epson Stylus Office BX935, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX300F-epson-escpr-en.ppd Epson Stylus Office TX300F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX320F-epson-escpr-en.ppd Epson Stylus Office TX320F, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX510FN-epson-escpr-en.ppd Epson Stylus Office TX510FN, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX515FN-epson-escpr-en.ppd Epson Stylus Office TX515FN, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX525FW-epson-escpr-en.ppd Epson Stylus Office TX525FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX600FW-epson-escpr-en.ppd Epson Stylus Office TX600FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX610FW-epson-escpr-en.ppd Epson Stylus Office TX610FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Office_TX620FWD-epson-escpr-en.ppd Epson Stylus Office TX620FWD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_1400-epson-escpr-en.ppd Epson Stylus Photo 1400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_1410-epson-escpr-en.ppd Epson Stylus Photo 1410, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_1430-epson-escpr-en.ppd Epson Stylus Photo 1430, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_1500-epson-escpr-en.ppd Epson Stylus Photo 1500, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX650-epson-escpr-en.ppd Epson Stylus Photo PX650, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX660-epson-escpr-en.ppd Epson Stylus Photo PX660, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX700W-epson-escpr-en.ppd Epson Stylus Photo PX700W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX710W-epson-escpr-en.ppd Epson Stylus Photo PX710W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX720WD-epson-escpr-en.ppd Epson Stylus Photo PX720WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX730-epson-escpr-en.ppd Epson Stylus Photo PX730, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX800FW-epson-escpr-en.ppd Epson Stylus Photo PX800FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX810FW-epson-escpr-en.ppd Epson Stylus Photo PX810FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX820FWD-epson-escpr-en.ppd Epson Stylus Photo PX820FWD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_PX830-epson-escpr-en.ppd Epson Stylus Photo PX830, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R240-epson-escpr-en.ppd Epson Stylus Photo R240, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R250-epson-escpr-en.ppd Epson Stylus Photo R250, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R260-epson-escpr-en.ppd Epson Stylus Photo R260, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R265-epson-escpr-en.ppd Epson Stylus Photo R265, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R270-epson-escpr-en.ppd Epson Stylus Photo R270, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R340-epson-escpr-en.ppd Epson Stylus Photo R340, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R350-epson-escpr-en.ppd Epson Stylus Photo R350, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R360-epson-escpr-en.ppd Epson Stylus Photo R360, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R380-epson-escpr-en.ppd Epson Stylus Photo R380, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R390-epson-escpr-en.ppd Epson Stylus Photo R390, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R1900-epson-escpr-en.ppd Epson Stylus Photo R1900, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R2000-epson-escpr-en.ppd Epson Stylus Photo R2000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R2880-epson-escpr-en.ppd Epson Stylus Photo R2880, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_R3000-epson-escpr-en.ppd Epson Stylus Photo R3000, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX520-epson-escpr-en.ppd Epson Stylus Photo RX520, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX530-epson-escpr-en.ppd Epson Stylus Photo RX530, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX560-epson-escpr-en.ppd Epson Stylus Photo RX560, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX580-epson-escpr-en.ppd Epson Stylus Photo RX580, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX585-epson-escpr-en.ppd Epson Stylus Photo RX585, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX590-epson-escpr-en.ppd Epson Stylus Photo RX590, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX595-epson-escpr-en.ppd Epson Stylus Photo RX595, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX610-epson-escpr-en.ppd Epson Stylus Photo RX610, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX640-epson-escpr-en.ppd Epson Stylus Photo RX640, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX650-epson-escpr-en.ppd Epson Stylus Photo RX650, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX680-epson-escpr-en.ppd Epson Stylus Photo RX680, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX685-epson-escpr-en.ppd Epson Stylus Photo RX685, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_RX690-epson-escpr-en.ppd Epson Stylus Photo RX690, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX650-epson-escpr-en.ppd Epson Stylus Photo TX650, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX700W-epson-escpr-en.ppd Epson Stylus Photo TX700W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX710W-epson-escpr-en.ppd Epson Stylus Photo TX710W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX720WD-epson-escpr-en.ppd Epson Stylus Photo TX720WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX730-epson-escpr-en.ppd Epson Stylus Photo TX730, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX800FW-epson-escpr-en.ppd Epson Stylus Photo TX800FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_Photo_TX810FW-epson-escpr-en.ppd Epson Stylus Photo TX810FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX200-epson-escpr-en.ppd Epson Stylus SX200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX210-epson-escpr-en.ppd Epson Stylus SX210, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX218-epson-escpr-en.ppd Epson Stylus SX218, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX230-epson-escpr-en.ppd Epson Stylus SX230, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX235-epson-escpr-en.ppd Epson Stylus SX235, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX400-epson-escpr-en.ppd Epson Stylus SX400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX410-epson-escpr-en.ppd Epson Stylus SX410, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX420W-epson-escpr-en.ppd Epson Stylus SX420W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX430-epson-escpr-en.ppd Epson Stylus SX430, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX440-epson-escpr-en.ppd Epson Stylus SX440, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX510W-epson-escpr-en.ppd Epson Stylus SX510W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX525WD-epson-escpr-en.ppd Epson Stylus SX525WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX535WD-epson-escpr-en.ppd Epson Stylus SX535WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX600FW-epson-escpr-en.ppd Epson Stylus SX600FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX610FW-epson-escpr-en.ppd Epson Stylus SX610FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_SX620FW-epson-escpr-en.ppd Epson Stylus SX620FW, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX200-epson-escpr-en.ppd Epson Stylus TX200, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX210-epson-escpr-en.ppd Epson Stylus TX210, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX220-epson-escpr-en.ppd Epson Stylus TX220, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX230-epson-escpr-en.ppd Epson Stylus TX230, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX235-epson-escpr-en.ppd Epson Stylus TX235, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX400-epson-escpr-en.ppd Epson Stylus TX400, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX410-epson-escpr-en.ppd Epson Stylus TX410, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX420W-epson-escpr-en.ppd Epson Stylus TX420W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX430-epson-escpr-en.ppd Epson Stylus TX430, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX550W-epson-escpr-en.ppd Epson Stylus TX550W, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-Stylus_TX560WD-epson-escpr-en.ppd Epson Stylus Tx560WD, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-TX220_NX220-epson-escpr-en.ppd Epson TX220 NX220, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-TX320_WorkForce320-epson-escpr-en.ppd Epson TX320 WorkForce320, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-TX420_NX420-epson-escpr-en.ppd Epson TX420 NX420, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-TX720_Artisan720-epson-escpr-en.ppd Epson TX720 Artisan720, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-TX820_Artisan830-epson-escpr-en.ppd Epson TX820 Artisan830, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-100_Series-epson-escpr-en.ppd EPSON WF-100 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2510_Series-epson-escpr-en.ppd Epson WF-2510 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2520_Series-epson-escpr-en.ppd Epson WF-2520 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2530_Series-epson-escpr-en.ppd Epson WF-2530 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2540_Series-epson-escpr-en.ppd Epson WF-2540 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2630_Series-epson-escpr-en.ppd EPSON WF-2630 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2650_Series-epson-escpr-en.ppd EPSON WF-2650 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2660_Series-epson-escpr-en.ppd EPSON WF-2660 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2750_Series-epson-escpr-en.ppd EPSON WF-2750 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-2760_Series-epson-escpr-en.ppd EPSON WF-2760 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3010_Series-epson-escpr-en.ppd Epson WF-3010 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3520_Series-epson-escpr-en.ppd Epson WF-3520 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3530_Series-epson-escpr-en.ppd Epson WF-3530 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3540_Series-epson-escpr-en.ppd Epson WF-3540 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3620_Series-epson-escpr-en.ppd EPSON WF-3620 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-3640_Series-epson-escpr-en.ppd EPSON WF-3640 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-4630_Series-epson-escpr-en.ppd EPSON WF-4630 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-4640_Series-epson-escpr-en.ppd EPSON WF-4640 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-5110_Series-epson-escpr-en.ppd EPSON WF-5110 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-5190_Series-epson-escpr-en.ppd EPSON WF-5190 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-5620_Series-epson-escpr-en.ppd EPSON WF-5620 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-5690_Series-epson-escpr-en.ppd EPSON WF-5690 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-6090_Series-epson-escpr-en.ppd EPSON WF-6090 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-6530-epson-escpr-en.ppd EPSON WF-6530 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-6590_Series-epson-escpr-en.ppd EPSON WF-6590 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7110_Series-epson-escpr-en.ppd EPSON WF-7110 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7510_Series-epson-escpr-en.ppd Epson WF-7510 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7511_Series-epson-escpr-en.ppd Epson WF-7511 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7515_Series-epson-escpr-en.ppd Epson WF-7515 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7520_Series-epson-escpr-en.ppd Epson WF-7520 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7521_Series-epson-escpr-en.ppd Epson WF-7521 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7525_Series-epson-escpr-en.ppd Epson WF-7525 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7610_Series-epson-escpr-en.ppd EPSON WF-7610 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-7620_Series-epson-escpr-en.ppd EPSON WF-7620 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-8010_Series-epson-escpr-en.ppd EPSON WF-8010 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-8090_Series-epson-escpr-en.ppd EPSON WF-8090 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-8510_Series-epson-escpr-en.ppd EPSON WF-8510 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-8590_Series-epson-escpr-en.ppd EPSON WF-8590 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-M1560_Series-epson-escpr-en.ppd Epson WF-M1560 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-M5190_Series-epson-escpr-en.ppd EPSON WF-M5190 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-M5690_Series-epson-escpr-en.ppd EPSON WF-M5690 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-R4640_Series-epson-escpr-en.ppd EPSON WF-R4640 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-R5190_Series-epson-escpr-en.ppd EPSON WF-R5190 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-R5690_Series-epson-escpr-en.ppd EPSON WF-R5690 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WF-R8590_Series-epson-escpr-en.ppd EPSON WF-R8590 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_310-epson-escpr-en.ppd Epson WorkForce 310, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_320-epson-escpr-en.ppd Epson WorkForce 320, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_435-epson-escpr-en.ppd Epson WorkForce 435, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_500-epson-escpr-en.ppd Epson WorkForce 500, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_520-epson-escpr-en.ppd Epson WorkForce 520, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_545-epson-escpr-en.ppd Epson WorkForce 545, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_600-epson-escpr-en.ppd Epson WorkForce 600, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_610-epson-escpr-en.ppd Epson WorkForce 610, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_620-epson-escpr-en.ppd Epson WorkForce 620, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_630-epson-escpr-en.ppd Epson WorkForce 630, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_645-epson-escpr-en.ppd Epson WorkForce 645, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_840-epson-escpr-en.ppd Epson WorkForce 840, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WorkForce_845-epson-escpr-en.ppd Epson WorkForce 845, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4010_Series-epson-escpr-en.ppd Epson WP-4010 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4011_Series-epson-escpr-en.ppd Epson WP-4011 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4015_Series-epson-escpr-en.ppd Epson WP-4015 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4020_Series-epson-escpr-en.ppd Epson WP-4020 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4022_Series-epson-escpr-en.ppd Epson WP-4022 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4023_Series-epson-escpr-en.ppd Epson WP-4023 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4025_Series-epson-escpr-en.ppd Epson WP-4025 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4090_Series-epson-escpr-en.ppd Epson WP-4090 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4091_Series-epson-escpr-en.ppd Epson WP-4091 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4092_Series-epson-escpr-en.ppd Epson WP-4092 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4095_Series-epson-escpr-en.ppd Epson WP-4095 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4511_Series-epson-escpr-en.ppd Epson WP-4511 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4515_Series-epson-escpr-en.ppd Epson WP-4515 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4520_Series-epson-escpr-en.ppd Epson WP-4520 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4521_Series-epson-escpr-en.ppd Epson WP-4521 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4525_Series-epson-escpr-en.ppd Epson WP-4525 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4530_Series-epson-escpr-en.ppd Epson WP-4530 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4531_Series-epson-escpr-en.ppd Epson WP-4531 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4532_Series-epson-escpr-en.ppd Epson WP-4532 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4533_Series-epson-escpr-en.ppd Epson WP-4533 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4535_Series-epson-escpr-en.ppd Epson WP-4535 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4540_Series-epson-escpr-en.ppd Epson WP-4540 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4545_Series-epson-escpr-en.ppd Epson WP-4545 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4590_Series-epson-escpr-en.ppd Epson WP-4590 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4592_Series-epson-escpr-en.ppd Epson WP-4592 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-4595_Series-epson-escpr-en.ppd Epson WP-4595 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4011_Series-epson-escpr-en.ppd EPSON WP-M4011 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4015_Series-epson-escpr-en.ppd EPSON WP-M4015 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4095_Series-epson-escpr-en.ppd EPSON WP-M4095 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4521_Series-epson-escpr-en.ppd EPSON WP-M4521 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4525_Series-epson-escpr-en.ppd EPSON WP-M4525 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-WP-M4595_Series-epson-escpr-en.ppd EPSON WP-M4595 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-55_Series-epson-escpr-en.ppd EPSON XP-55 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-200_Series-epson-escpr-en.ppd Epson XP-200 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-201_204_208_Series-epson-escpr-en.ppd Epson XP-201 204 208 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-202_203_206_Series-epson-escpr-en.ppd Epson XP-202 203 206 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-205_207_Series-epson-escpr-en.ppd Epson XP-205 207 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-211_214_216_Series-epson-escpr-en.ppd EPSON XP-211 214 216 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-212_213_Series-epson-escpr-en.ppd EPSON XP-212 213 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-215_217_Series-epson-escpr-en.ppd EPSON XP-215 217 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-220_Series-epson-escpr-en.ppd EPSON XP-220 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-225_Series-epson-escpr-en.ppd EPSON XP-225 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-235_Series-epson-escpr-en.ppd EPSON XP-235 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-300_Series-epson-escpr-en.ppd Epson XP-300 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-302_303_305_306_Series-epson-escpr-en.ppd Epson XP-302 303 305 306 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-310_Series-epson-escpr-en.ppd EPSON XP-310 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-312_313_315_Series-epson-escpr-en.ppd EPSON XP-312 313 315 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-320_Series-epson-escpr-en.ppd EPSON XP-320 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-322_323_325_Series-epson-escpr-en.ppd EPSON XP-322 323 325 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-330_Series-epson-escpr-en.ppd EPSON XP-330 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-332_335_Series-epson-escpr-en.ppd EPSON XP-332 335 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-400_Series-epson-escpr-en.ppd Epson XP-400 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-402_403_405_406_Series-epson-escpr-en.ppd Epson XP-402 403 405 406 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-410_Series-epson-escpr-en.ppd EPSON XP-410 Serie, Epson Inkjet Printer Driver (ESC/P-R) for Linuxs -epson-inkjet-printer-escpr/Epson-XP-412_413_415_Series-epson-escpr-en.ppd EPSON XP-412 413 415 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-420_Series-epson-escpr-en.ppd EPSON XP-420 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-422_423_425_Series-epson-escpr-en.ppd EPSON XP-422 423 425 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-430_Series-epson-escpr-en.ppd EPSON XP-430 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-432_435_Series-epson-escpr-en.ppd EPSON XP-432 435 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-510_Series-epson-escpr-en.ppd EPSON XP-510 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-520_Series-epson-escpr-en.ppd EPSON XP-520 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-530_Series-epson-escpr-en.ppd EPSON XP-530 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-600_Series-epson-escpr-en.ppd EPSON XP-600 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-610_Series-epson-escpr-en.ppd EPSON XP-610 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-620_Series-epson-escpr-en.ppd EPSON XP-620 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-630_Series-epson-escpr-en.ppd EPSON XP-630 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-700_Series-epson-escpr-en.ppd EPSON XP-700 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-710_Series-epson-escpr-en.ppd EPSON XP-710 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-720_Series-epson-escpr-en.ppd EPSON XP-720 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-750_Series-epson-escpr-en.ppd Epson XP-750 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-760_Series-epson-escpr-en.ppd EPSON XP-760 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-800_Series-epson-escpr-en.ppd EPSON XP-800 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-810_Series-epson-escpr-en.ppd EPSON XP-810 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-820_Series-epson-escpr-en.ppd EPSON XP-820 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-830_Series-epson-escpr-en.ppd EPSON XP-830 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-850_Series-epson-escpr-en.ppd Epson XP-850 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-860_Series-epson-escpr-en.ppd EPSON XP-860 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-950_Series-epson-escpr-en.ppd EPSON XP-950 Series, Epson Inkjet Printer Driver (ESC/P-R) for Linux -epson-inkjet-printer-escpr/Epson-XP-960_Series-epson-escpr-en.ppd EPSON XP-960 Series , Epson Inkjet Printer Driver (ESC/P-R) for Linux -Fuji_Xerox-DocuPrint_CM205.ppd.gz Fuji Xerox DocuPrint CM205 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Fuji_Xerox-DocuPrint_CM205.ppd.gz Fuji Xerox DocuPrint CM205 Foomatic/foo2hbpl2 -Fuji_Xerox-DocuPrint_CM215.ppd.gz Fuji Xerox DocuPrint CM215 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Fuji_Xerox-DocuPrint_CM215.ppd.gz Fuji Xerox DocuPrint CM215 Foomatic/foo2hbpl2 -Fuji_Xerox-DocuPrint_M215.ppd.gz Fuji Xerox DocuPrint M215 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Fuji_Xerox-DocuPrint_M215.ppd.gz Fuji Xerox DocuPrint M215 Foomatic/foo2hbpl2 -Fuji_Xerox-DocuPrint_P205.ppd.gz Fuji Xerox DocuPrint P205 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Fuji_Xerox-DocuPrint_P205.ppd.gz Fuji Xerox DocuPrint P205 Foomatic/foo2hbpl2 -drv:///generic-brf.drv/gen-brf.ppd Generic Braille embosser, 1.0 -drv:///cupsfilters.drv/pwgrast.ppd Generic IPP Everywhere Printer -Generic-OAKT_Printer.ppd.gz Generic OAKT Printer Foomatic/foo2oak -lsb/usr/foo2zjs/Generic-OAKT_Printer.ppd.gz Generic OAKT Printer Foomatic/foo2oak -drv:///sample.drv/generpcl.ppd Generic PCL Laser Printer -lsb/usr/cupsfilters/Generic-PDF_Printer-PDF.ppd Generic PDF Printer -drv:///sample.drv/generic.ppd Generic PostScript Printer -lsb/usr/cupsfilters/textonly.ppd Generic text-only printer -Generic-ZjStream_Printer.ppd.gz Generic ZjStream Printer Foomatic/foo2zjs -lsb/usr/foo2zjs/Generic-ZjStream_Printer.ppd.gz Generic ZjStream Printer Foomatic/foo2zjs -lsb/local/HP/hp-910.ppd.gz HP 910, hpcups 3.16.2 -lsb/local/HP/hp-915.ppd.gz HP 915, hpcups 3.16.2 -lsb/local/HP/hp-2000c.ppd.gz HP 2000c, hpcups 3.16.2 -lsb/local/HP/hp-2500c.ppd.gz HP 2500c, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_1000.ppd.gz HP Business Inkjet 1000, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_1100.ppd.gz HP Business Inkjet 1100, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_1200.ppd.gz HP Business Inkjet 1200, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2200.ppd.gz HP Business Inkjet 2200, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2230.ppd.gz HP Business Inkjet 2230, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2250-pcl3.ppd.gz HP Business Inkjet 2250 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2250-ps.ppd.gz HP Business Inkjet 2250 PS - Ver 1.6 Postscript -lsb/local/HP/hp-business_inkjet_2280-pcl3.ppd.gz HP Business Inkjet 2280 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2280-ps.ppd.gz HP Business Inkjet 2280 PS - v1.0 Postscript -lsb/local/HP/hp-business_inkjet_2300-pcl3.ppd.gz HP Business Inkjet 2300 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2300-ps.ppd.gz HP Business Inkjet 2300 PS v3010.107 Postscript -lsb/local/HP/hp-business_inkjet_2600-pcl3.ppd.gz HP Business Inkjet 2600 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2600-ps.ppd.gz HP Business Inkjet 2600 PS -RC-2.0 Postscript -lsb/local/HP/hp-business_inkjet_2800-pcl3.ppd.gz HP Business Inkjet 2800 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_2800-ps.ppd.gz HP Business Inkjet 2800 PS v3010.107 Postscript -lsb/local/HP/hp-business_inkjet_3000-pcl3.ppd.gz HP Business Inkjet 3000 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-business_inkjet_3000-ps.ppd.gz HP Business Inkjet 3000 PS - RC1.1 Postscript -lsb/local/HP/hp-cm8050_mfp_with_edgeline-ps.ppd.gz HP CM8050 CM8060 Color MFP with Edgeline Technology Postscript -lsb/local/HP/hp-cm8060_mfp_with_edgeline-ps.ppd.gz HP CM8050 CM8060 Color MFP with Edgeline Technology Postscript -lsb/local/HP/hp-color_inkjet_cp1700.ppd.gz HP Color Inkjet cp1700, hpcups 3.16.2 -lsb/local/HP/hp-color_inkjet_printer_cp1700.ppd.gz HP Color Inkjet Printer cp1700, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_5.ppd.gz HP Color LaserJet 5, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_5m-ps.ppd.gz HP Color LaserJet 5/5M v2015.104 Postscript -lsb/local/HP/hp-color_laserjet_5m-pcl3.ppd.gz HP Color LaserJet 5m pcl3, hpcups 3.16.2 -HP-Color_LaserJet_1500.ppd.gz HP Color LaserJet 1500 Foomatic/foo2oak -lsb/usr/foo2zjs/HP-Color_LaserJet_1500.ppd.gz HP Color LaserJet 1500 Foomatic/foo2oak -HP-Color_LaserJet_1600.ppd.gz HP Color LaserJet 1600 Foomatic/foo2hp -lsb/usr/foo2zjs/HP-Color_LaserJet_1600.ppd.gz HP Color LaserJet 1600 Foomatic/foo2hp -lsb/local/HP/hp-color_laserjet_1600.ppd.gz HP Color LaserJet 1600, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_2500-pcl3.ppd.gz HP Color LaserJet 2500 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_2500_series.ppd.gz HP Color LaserJet 2500 Series, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_2500-ps.ppd.gz HP Color LaserJet 2500 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_2500_series-ps.ppd.gz HP Color LaserJet 2500 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_2550_series-ps.ppd.gz HP Color LaserJet 2550 Series Postscript -HP-Color_LaserJet_2600n.ppd.gz HP Color LaserJet 2600n Foomatic/foo2hp -lsb/usr/foo2zjs/HP-Color_LaserJet_2600n.ppd.gz HP Color LaserJet 2600n Foomatic/foo2hp -lsb/local/HP/hp-color_laserjet_2600n.ppd.gz HP Color LaserJet 2600n, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_2605-ps.ppd.gz HP Color LaserJet 2605 Postscript -lsb/local/HP/hp-color_laserjet_2605dn-ps.ppd.gz HP Color LaserJet 2605 Postscript -lsb/local/HP/hp-color_laserjet_2605dtn-ps.ppd.gz HP Color LaserJet 2605 Postscript -lsb/local/HP/hp-color_laserjet_2700-ps.ppd.gz HP Color LaserJet 2700 Postscript -lsb/local/HP/hp-color_laserjet_2700n-ps.ppd.gz HP Color LaserJet 2700 Postscript -lsb/local/HP/hp-color_laserjet_2800-ps.ppd.gz HP Color LaserJet 2800 Series Postscript -lsb/local/HP/hp-color_laserjet_2820-ps.ppd.gz HP Color LaserJet 2800 Series Postscript -lsb/local/HP/hp-color_laserjet_2830-ps.ppd.gz HP Color LaserJet 2800 Series Postscript -lsb/local/HP/hp-color_laserjet_2840-ps.ppd.gz HP Color LaserJet 2800 Series Postscript -lsb/local/HP/hp-color_laserjet_3000-pcl3.ppd.gz HP Color LaserJet 3000 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_3000-ps.ppd.gz HP Color LaserJet 3000 Postscript -lsb/local/HP/hp-color_laserjet_3500.ppd.gz HP Color LaserJet 3500, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_3500n.ppd.gz HP Color LaserJet 3500n, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_3550.ppd.gz HP Color LaserJet 3550, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_3550n.ppd.gz HP Color LaserJet 3550n, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_3600.ppd.gz HP Color LaserJet 3600, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_3700-pcl3.ppd.gz HP Color LaserJet 3700 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_3700-ps.ppd.gz HP Color LaserJet 3700 Postscript -lsb/local/HP/hp-color_laserjet_3700n-ps.ppd.gz HP Color LaserJet 3700 Postscript -lsb/local/HP/hp-color_laserjet_3700n.ppd.gz HP Color LaserJet 3700n, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_3800-pcl3.ppd.gz HP Color LaserJet 3800 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_3800-ps.ppd.gz HP Color LaserJet 3800 Postscript -lsb/local/HP/hp-color_laserjet_4500-pcl3.ppd.gz HP Color LaserJet 4500 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4500-ps.ppd.gz HP Color LaserJet 4500 v2014.200 Postscript -lsb/local/HP/hp-color_laserjet_4550-pcl3.ppd.gz HP Color LaserJet 4550 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4550-ps.ppd.gz HP Color LaserJet 4550 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_4600-pcl3.ppd.gz HP Color LaserJet 4600 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4600_series.ppd.gz HP Color LaserJet 4600 Series, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4600-ps.ppd.gz HP Color LaserJet 4600 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_4600_series-ps.ppd.gz HP Color LaserJet 4600 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_4610-pcl3.ppd.gz HP Color LaserJet 4610 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4610-ps.ppd.gz HP Color LaserJet 4610 Postscript -lsb/local/HP/hp-color_laserjet_4650-pcl3.ppd.gz HP Color LaserJet 4650 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4650-ps.ppd.gz HP Color LaserJet 4650 Postscript -lsb/local/HP/hp-color_laserjet_4700-pcl3.ppd.gz HP Color LaserJet 4700 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4700-ps.ppd.gz HP Color LaserJet 4700 Postscript -lsb/local/HP/hp-color_laserjet_4730mfp-pcl3.ppd.gz HP Color LaserJet 4730mfp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_4730mfp-ps.ppd.gz HP Color LaserJet 4730mfp Postscript -lsb/local/HP/hp-color_laserjet_5500-pcl3.ppd.gz HP Color LaserJet 5500 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_5500-ps.ppd.gz HP Color LaserJet 5500 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_5550-pcl3.ppd.gz HP Color LaserJet 5550 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_5550-ps.ppd.gz HP Color LaserJet 5550 v3010.107 Postscript -lsb/local/HP/hp-color_laserjet_8500-pcl3.ppd.gz HP Color LaserJet 8500 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_8500-ps.ppd.gz HP Color LaserJet 8500 Postscript -lsb/local/HP/hp-color_laserjet_8550-pcl3.ppd.gz HP Color LaserJet 8550 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_8550-ps.ppd.gz HP Color LaserJet 8550 Postscript -lsb/local/HP/hp-color_laserjet_9500_mfp-pcl3.ppd.gz HP Color LaserJet 9500 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_9500_mfp-ps.ppd.gz HP Color LaserJet 9500 MFP Postscript -lsb/local/HP/hp-color_laserjet_9500-pcl3.ppd.gz HP Color LaserJet 9500 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_9500-ps.ppd.gz HP Color LaserJet 9500 Postscript -lsb/local/HP/hp-color_laserjet_cm1015-ps.ppd.gz HP Color LaserJet CM1015 Postscript -lsb/local/HP/hp-color_laserjet_cm1017-ps.ppd.gz HP Color LaserJet CM1015 Postscript -lsb/local/HP/hp-color_laserjet_cm1312_mfp-pcl3.ppd.gz HP Color LaserJet cm1312 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm1312_mfp-ps.ppd.gz HP Color LaserJet CM1312 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm1312nfi_mfp-ps.ppd.gz HP Color LaserJet CM1312 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm1312nfi_mfp-pcl3.ppd.gz HP Color LaserJet cm1312nfi MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm2320_mfp-pcl3.ppd.gz HP Color LaserJet cm2320 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm2320_mfp-ps.ppd.gz HP Color LaserJet CM2320 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm2320fxi_mfp-ps.ppd.gz HP Color LaserJet CM2320 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm2320n_mfp-ps.ppd.gz HP Color LaserJet CM2320 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm2320nf_mfp-ps.ppd.gz HP Color LaserJet CM2320 MFP Series Postscript -lsb/local/HP/hp-color_laserjet_cm2320fxi_mfp-pcl3.ppd.gz HP Color LaserJet cm2320fxi MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm2320n_mfp-pcl3.ppd.gz HP Color LaserJet cm2320n MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm2320nf_mfp-pcl3.ppd.gz HP Color LaserJet cm2320nf MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm3530_mfp-pcl3.ppd.gz HP Color LaserJet cm3530 MFP pcl3, hpcups 3.16.2 -lsb/usr/cupsfilters/HP-Color_LaserJet_CM3530_MFP-PDF.ppd HP Color LaserJet CM3530 MFP PDF -lsb/local/HP/hp-color_laserjet_cm3530_mfp-ps.ppd.gz HP Color LaserJet CM3530 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm4540_mfp-pcl3.ppd.gz HP Color LaserJet cm4540 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm4540_mfp-ps.ppd.gz HP Color LaserJet CM4540 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm4730_mfp-pcl3.ppd.gz HP Color LaserJet cm4730 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm4730_mfp-ps.ppd.gz HP Color LaserJet CM4730 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm6030_mfp-pcl3.ppd.gz HP Color LaserJet cm6030 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm6030_mfp-ps.ppd.gz HP Color LaserJet CM6030 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm6040_mfp-ps.ppd.gz HP Color LaserJet CM6040 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm6040_mfp.ppd.gz HP Color LaserJet cm6040 MFP, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cm6049_mfp-ps.ppd.gz HP Color LaserJet CM6049 MFP Postscript -lsb/local/HP/hp-color_laserjet_cm6049_mfp.ppd.gz HP Color LaserJet cm6049 MFP, hpcups 3.16.2 -HP-Color_LaserJet_CP1215.ppd.gz HP Color LaserJet CP1215 Foomatic/foo2hp -lsb/usr/foo2zjs/HP-Color_LaserJet_CP1215.ppd.gz HP Color LaserJet CP1215 Foomatic/foo2hp -lsb/local/HP/hp-color_laserjet_cp1215.ppd.gz HP Color LaserJet cp1215, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_cp1217.ppd.gz HP Color LaserJet cp1217, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_cp1514n-ps.ppd.gz HP Color LaserJet CP1510 Series Postscript -lsb/local/HP/hp-color_laserjet_cp1515n-ps.ppd.gz HP Color LaserJet CP1510 Series Postscript -lsb/local/HP/hp-color_laserjet_cp1518ni-ps.ppd.gz HP Color LaserJet CP1510 Series Postscript -lsb/local/HP/hp-color_laserjet_cp1514n-pcl3.ppd.gz HP Color LaserJet cp1514n pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp1515n-pcl3.ppd.gz HP Color LaserJet cp1515n pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp1518ni-pcl3.ppd.gz HP Color LaserJet cp1518ni pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp2025-ps.ppd.gz HP Color LaserJet CP2020 Series Postscript -lsb/local/HP/hp-color_laserjet_cp2025n-ps.ppd.gz HP Color LaserJet CP2020 Series Postscript -lsb/local/HP/hp-color_laserjet_cp2025x-ps.ppd.gz HP Color LaserJet CP2020 Series Postscript -lsb/local/HP/hp-color_laserjet_cp2025dn-ps.ppd.gz HP Color LaserJet CP2020 Series with Duplexer Postscript -lsb/local/HP/hp-color_laserjet_cp2025-pcl3.ppd.gz HP Color LaserJet cp2025 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp2025dn-pcl3.ppd.gz HP Color LaserJet cp2025dn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp2025n-pcl3.ppd.gz HP Color LaserJet cp2025n pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp2025x-pcl3.ppd.gz HP Color LaserJet cp2025x pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp3505-pcl3.ppd.gz HP Color LaserJet cp3505 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp3505-ps.ppd.gz HP Color LaserJet CP3505 Postscript -lsb/local/HP/hp-color_laserjet_cp3525-pcl3.ppd.gz HP Color LaserJet cp3525 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp3525-ps.ppd.gz HP Color LaserJet CP3525 Postscript -lsb/local/HP/hp-color_laserjet_cp4005-pcl3.ppd.gz HP Color LaserJet cp4005 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp4005-ps.ppd.gz HP Color LaserJet CP4005 Postscript -lsb/local/HP/hp-color_laserjet_cp4020_series-pcl3.ppd.gz HP Color LaserJet cp4020 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp4020_series-ps.ppd.gz HP Color LaserJet CP4020-CP4520 Series Postscript -lsb/local/HP/hp-color_laserjet_cp4520_series-ps.ppd.gz HP Color LaserJet CP4020-CP4520 Series Postscript -lsb/local/HP/hp-color_laserjet_cp4520_series-pcl3.ppd.gz HP Color LaserJet cp4520 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp5225-ps.ppd.gz HP Color LaserJet CP5220 Series Postscript -lsb/local/HP/hp-color_laserjet_cp5225n-ps.ppd.gz HP Color LaserJet CP5220 Series Postscript -lsb/local/HP/hp-color_laserjet_cp5225dn-ps.ppd.gz HP Color LaserJet CP5220 Series with Duplexer Postscript -lsb/local/HP/hp-color_laserjet_cp5225-pcl3.ppd.gz HP Color LaserJet cp5225 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp5225dn-pcl3.ppd.gz HP Color LaserJet cp5225dn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp5225n-pcl3.ppd.gz HP Color LaserJet cp5225n pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp5520_series-pcl3.ppd.gz HP Color LaserJet cp5520 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp5520_series-ps.ppd.gz HP Color LaserJet CP5520 Series Postscript -lsb/local/HP/hp-color_laserjet_cp6015-pcl3.ppd.gz HP Color LaserJet cp6015 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-color_laserjet_cp6015-ps.ppd.gz HP Color LaserJet CP6015 Postscript -lsb/local/HP/hp-color_laserjet_m750-ps.ppd.gz HP Color LaserJet Enterprise M750 Postscript -lsb/local/HP/hp-color_laserjet_flow_mfp_m680-ps.ppd.gz HP Color LaserJet Flow MFP M680 Postscript -lsb/local/HP/hp-color_laserjet_flow_mfp_m880-ps.ppd.gz HP Color LaserJet flow MFP M880 Postscript -lsb/local/HP/hp-color_laserjet_m552-ps.ppd.gz HP Color LaserJet M552 Postscript -lsb/local/HP/hp-color_laserjet_m553-ps.ppd.gz HP Color LaserJet M553 Postscript -lsb/local/HP/hp-color_laserjet_m651-ps.ppd.gz HP Color LaserJet M651 Postscript -lsb/local/HP/hp-color_laserjet_m855-ps.ppd.gz HP Color LaserJet M855 Postscript -lsb/local/HP/hp-color_laserjet_mfp_m577-ps.ppd.gz HP Color LaserJet MFP M577 Postscript -lsb/local/HP/hp-color_laserjet_mfp_m680-ps.ppd.gz HP Color LaserJet MFP M680 Postscript -lsb/local/HP/hp-color_laserjet_pro_m252-ps.ppd.gz HP Color LaserJet Pro M252 Postscript -lsb/local/HP/hp-color_laserjet_m452-ps.ppd.gz HP Color LaserJet Pro M452 Postscript -lsb/local/HP/hp-color_laserjet_m452d-ps.ppd.gz HP Color LaserJet Pro M452 Postscript -lsb/local/HP/hp-color_laserjet_pro_mfp_m176n.ppd.gz HP Color LaserJet Pro MFP m176n, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_pro_mfp_m177fw.ppd.gz HP Color LaserJet Pro MFP m177fw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-color_laserjet_mfp_m274-ps.ppd.gz HP Color LaserJet Pro MFP M274 Postscript -lsb/local/HP/hp-color_laserjet_pro_mfp_m277-ps.ppd.gz HP Color LaserJet Pro MFP M277 Postscript -lsb/local/HP/hp-color_laserjet_pro_mfp_m476-ps.ppd.gz HP Color LaserJet Pro MFP M476 Postscript -lsb/local/HP/hp-color_laserjet_pro_mfp_m477-ps.ppd.gz HP Color LaserJet Pro MFP M477 Postscript -lsb/local/HP/hp-color_laserjet_pro_mfp_m477d-ps.ppd.gz HP Color LaserJet Pro MFP M477 Postscript -lsb/usr/cupsfilters/pxlcolor.ppd HP Color LaserJet Series PCL 6 CUPS -lsb/local/HP/hp-color_laserjet-ps.ppd.gz HP Color LaserJet v2013.114 Postscript -lsb/local/HP/hp-cp1160.ppd.gz HP cp1160, hpcups 3.16.2 -drv:///cupsfilters.drv/dsgnjt600pcl.ppd HP DesignJet 600 pcl, 1.0 -drv:///cupsfilters.drv/dsgnjt750cpcl.ppd HP DesignJet 750c pcl, 1.0 -drv:///cupsfilters.drv/dsgnjt1050cpcl.ppd HP DesignJet 1050c pcl, 1.0 -drv:///cupsfilters.drv/dsgnjt4000pcl.ppd HP DesignJet 4000 pcl, 1.0 -lsb/local/HP/hp-designjet_4000ps.ppd.gz HP Designjet 4000ps Postscript -lsb/local/HP/hp-designjet_4020ps-ps.ppd.gz HP Designjet 4020ps Postscript -lsb/local/HP/hp-designjet_4500mfp.ppd.gz HP Designjet 4500mfp Postscript -lsb/local/HP/hp-designjet_4500ps.ppd.gz HP Designjet 4500ps Postscript -lsb/local/HP/hp-designjet_4520mfp-ps.ppd.gz HP Designjet 4520mfp Postscript -lsb/local/HP/hp-designjet_4520ps-ps.ppd.gz HP Designjet 4520ps Postscript -lsb/local/HP/hp-designjet_d5800-ps.ppd.gz HP Designjet D5800ps Postscript -lsb/local/HP/hp-designjet_t770ps_24in-ps.ppd.gz HP Designjet T770ps 24in Postscript -lsb/local/HP/hp-designjet_t770_postscript-ps.ppd.gz HP Designjet T770ps 44in Postscript -drv:///cupsfilters.drv/dsgnjtt790pcl.ppd HP DesignJet T790 pcl, 1.0 -lsb/local/HP/hp-designjet_t790ps_24in-ps.ppd.gz HP Designjet T790ps 24in Postscript -lsb/local/HP/hp-designjet_t790ps_44in-ps.ppd.gz HP Designjet T790ps 44in Postscript -lsb/local/HP/hp-designjet_t795ps_44in-ps.ppd.gz HP Designjet T795ps 44in Postscript -lsb/local/HP/hp-designjet_t920-postscript.ppd.gz HP Designjet T920 PostScript -drv:///cupsfilters.drv/dsgnjtt1100pcl.ppd HP DesignJet T1100 pcl, 1.0 -lsb/local/HP/hp-designjet_t1100ps_24in-ps.ppd.gz HP Designjet T1100ps 24in Postscript -lsb/local/HP/hp-designjet_t1100ps_44in-ps.ppd.gz HP Designjet T1100ps 44in Postscript -lsb/local/HP/hp-designjet_t1120ps_24in-ps.ppd.gz HP Designjet T1120ps 24in Postscript -lsb/local/HP/hp-designjet_t1120ps_44in-ps.ppd.gz HP Designjet T1120ps 44in Postscript -lsb/local/HP/hp-designjet_t1200_postscript-ps.ppd.gz HP Designjet T1200 PostScript -lsb/local/HP/hp-designjet_t1300_postscript-ps.ppd.gz HP Designjet T1300 PostScript -lsb/local/HP/hp-designjet_t1500-postscript.ppd.gz HP Designjet T1500 - PostScript -lsb/local/HP/hp-designjet_t2300_postscript-ps.ppd.gz HP Designjet T2300 PostScript -lsb/local/HP/hp-designjet_t2500-postscript.ppd.gz HP Designjet T2500 - PostScript -lsb/local/HP/hp-designjet_t3500-ps.ppd.gz HP Designjet T3500ps Postscript -lsb/local/HP/hp-designjet_t7100ps_monochrome-ps.ppd.gz HP Designjet T7100ps Monochrome Postscript -lsb/local/HP/hp-designjet_t7100ps-ps.ppd.gz HP Designjet T7100ps Postscript -lsb/local/HP/hp-designjet_t7200-ps.ppd.gz HP Designjet T7200ps Postscript -lsb/local/HP/hp-designjet_z5200_postscript-ps.ppd.gz HP Designjet Z5200 PostScript - PS -lsb/local/HP/hp-designjet_z5400-postscript.ppd.gz HP Designjet Z5400 PostScript - PS -lsb/local/HP/hp-designjet_z6100ps_42in_photo-ps.ppd.gz HP Designjet Z6100ps 42in Photo Postscript -lsb/local/HP/hp-designjet_z6100ps_60in_photo-ps.ppd.gz HP Designjet Z6100ps 60in Photo Postscript -lsb/local/HP/hp-designjet_z6200_42in_photo-ps.ppd.gz HP Designjet Z6200ps 42in Photo Postscript -lsb/local/HP/hp-designjet_z6200_60in_photo-ps.ppd.gz HP Designjet Z6200ps 60in Photo Postscript -lsb/local/HP/hp-designjet_z6600-postscript.ppd.gz HP Designjet Z6600ps Postscript -lsb/local/HP/hp-designjet_z6800_photo-postscript.ppd.gz HP Designjet Z6800ps Photo Postscript -lsb/local/HP/hp-deskjet_400.ppd.gz HP Deskjet 400, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_400l.ppd.gz HP Deskjet 400l, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_460.ppd.gz HP Deskjet 460, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_500.ppd.gz HP Deskjet 500, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_500c.ppd.gz HP Deskjet 500c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_505j.ppd.gz HP Deskjet 505j, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_510.ppd.gz HP Deskjet 510, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_520.ppd.gz HP Deskjet 520, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_540.ppd.gz HP Deskjet 540, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_550c.ppd.gz HP Deskjet 550c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_600.ppd.gz HP Deskjet 600, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_610c.ppd.gz HP Deskjet 610c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_610cl.ppd.gz HP Deskjet 610cl, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_612c.ppd.gz HP Deskjet 612c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_630c.ppd.gz HP Deskjet 630c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_632c.ppd.gz HP Deskjet 632c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_640c.ppd.gz HP Deskjet 640c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_648c.ppd.gz HP Deskjet 648c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_656c.ppd.gz HP Deskjet 656c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_660.ppd.gz HP Deskjet 660, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_670.ppd.gz HP Deskjet 670, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_670c.ppd.gz HP Deskjet 670c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_670tv.ppd.gz HP Deskjet 670tv, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_672c.ppd.gz HP Deskjet 672c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_680.ppd.gz HP Deskjet 680, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_682.ppd.gz HP Deskjet 682, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_690.ppd.gz HP Deskjet 690, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_690c.ppd.gz HP Deskjet 690c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_692.ppd.gz HP Deskjet 692, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_693.ppd.gz HP Deskjet 693, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_694.ppd.gz HP Deskjet 694, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_695.ppd.gz HP Deskjet 695, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_697.ppd.gz HP Deskjet 697, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_810c.ppd.gz HP Deskjet 810c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_812c.ppd.gz HP Deskjet 812c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_815c.ppd.gz HP Deskjet 815c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_816c.ppd.gz HP Deskjet 816c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_825c.ppd.gz HP Deskjet 825c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_830c.ppd.gz HP Deskjet 830c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_832c.ppd.gz HP Deskjet 832c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_840c.ppd.gz HP Deskjet 840c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_841c.ppd.gz HP Deskjet 841c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_842c.ppd.gz HP Deskjet 842c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_843c.ppd.gz HP Deskjet 843c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_845c.ppd.gz HP Deskjet 845c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_850c.ppd.gz HP Deskjet 850c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_855c.ppd.gz HP Deskjet 855c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_870c.ppd.gz HP Deskjet 870c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_880c.ppd.gz HP Deskjet 880c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_882c.ppd.gz HP Deskjet 882c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_890c.ppd.gz HP Deskjet 890c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_895c.ppd.gz HP Deskjet 895c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_916c.ppd.gz HP Deskjet 916c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_920c.ppd.gz HP Deskjet 920c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_930c.ppd.gz HP Deskjet 930c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_932c.ppd.gz HP Deskjet 932c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_933c.ppd.gz HP Deskjet 933c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_934c.ppd.gz HP Deskjet 934c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_935c.ppd.gz HP Deskjet 935c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_940c.ppd.gz HP Deskjet 940c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_948c.ppd.gz HP Deskjet 948c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_950c.ppd.gz HP Deskjet 950c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_952c.ppd.gz HP Deskjet 952c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_955c.ppd.gz HP Deskjet 955c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_957c.ppd.gz HP Deskjet 957c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_959c.ppd.gz HP Deskjet 959c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_960c.ppd.gz HP Deskjet 960c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_970c.ppd.gz HP Deskjet 970c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_975c.ppd.gz HP Deskjet 975c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_980c.ppd.gz HP Deskjet 980c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_990c.ppd.gz HP Deskjet 990c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_995c.ppd.gz HP Deskjet 995c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1000_j110_series.ppd.gz HP Deskjet 1000 j110 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1010_series.ppd.gz HP Deskjet 1010 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1050_j410_series.ppd.gz HP Deskjet 1050 j410 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1100.ppd.gz HP Deskjet 1100, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1110_series.ppd.gz HP Deskjet 1110 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1120.ppd.gz HP Deskjet 1120, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1125.ppd.gz HP Deskjet 1125, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1200c.ppd.gz HP Deskjet 1200c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1220c.ppd.gz HP Deskjet 1220c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1280.ppd.gz HP Deskjet 1280, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1510_series.ppd.gz HP Deskjet 1510 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1600c.ppd.gz HP Deskjet 1600c, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1600cm.ppd.gz HP Deskjet 1600cm, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_1600cn.ppd.gz HP Deskjet 1600cn, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2000_j210_series.ppd.gz HP Deskjet 2000 j210 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2020_series.ppd.gz HP Deskjet 2020 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2050_j510_series.ppd.gz HP Deskjet 2050 j510 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2130_series.ppd.gz HP Deskjet 2130 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2510_series.ppd.gz HP Deskjet 2510 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2520_series.ppd.gz HP Deskjet 2520 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2540_series.ppd.gz HP Deskjet 2540 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_2640_series.ppd.gz HP Deskjet 2640 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3000_j310_series.ppd.gz HP Deskjet 3000 j310 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3050_j610_series.ppd.gz HP Deskjet 3050 j610 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3050a_j611_series.ppd.gz HP Deskjet 3050a j611 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3070_b611_series.ppd.gz HP Deskjet 3070 b611 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3320.ppd.gz HP Deskjet 3320, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3325.ppd.gz HP Deskjet 3325, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3420.ppd.gz HP Deskjet 3420, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3425.ppd.gz HP Deskjet 3425, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3450.ppd.gz HP Deskjet 3450, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3500.ppd.gz HP Deskjet 3500, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3510_series.ppd.gz HP Deskjet 3510 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3520_series.ppd.gz HP Deskjet 3520 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3540_series.ppd.gz HP Deskjet 3540 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3550.ppd.gz HP Deskjet 3550, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3600.ppd.gz HP Deskjet 3600, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3630_series.ppd.gz HP Deskjet 3630 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3650.ppd.gz HP Deskjet 3650, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3740.ppd.gz HP Deskjet 3740, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3810.ppd.gz HP Deskjet 3810, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3816.ppd.gz HP Deskjet 3816, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3819.ppd.gz HP Deskjet 3819, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3820.ppd.gz HP Deskjet 3820, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3822.ppd.gz HP Deskjet 3822, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3830_series.ppd.gz HP Deskjet 3830 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3840.ppd.gz HP Deskjet 3840, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3870.ppd.gz HP Deskjet 3870, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3900.ppd.gz HP Deskjet 3900, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3910.ppd.gz HP Deskjet 3910, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3920.ppd.gz HP Deskjet 3920, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_3940.ppd.gz HP Deskjet 3940, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4510_series.ppd.gz HP Deskjet 4510 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4530_series.ppd.gz HP Deskjet 4530 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4610_series.ppd.gz HP Deskjet 4610 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4620_series.ppd.gz HP Deskjet 4620 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4640_series.ppd.gz HP Deskjet 4640 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4670_series.ppd.gz HP Deskjet 4670 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_4720_series.ppd.gz HP Deskjet 4720 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5100.ppd.gz HP Deskjet 5100, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5400_series.ppd.gz HP Deskjet 5400 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5520_series.ppd.gz HP Deskjet 5520 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5550.ppd.gz HP Deskjet 5550, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5551.ppd.gz HP Deskjet 5551, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5552.ppd.gz HP Deskjet 5552, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5570_series.ppd.gz HP Deskjet 5570 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5600.ppd.gz HP Deskjet 5600, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5640_series.ppd.gz HP Deskjet 5640 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5650.ppd.gz HP Deskjet 5650, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5652.ppd.gz HP Deskjet 5652, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5700.ppd.gz HP Deskjet 5700, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5800.ppd.gz HP Deskjet 5800, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5850.ppd.gz HP Deskjet 5850, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_5900_series.ppd.gz HP Deskjet 5900 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6120.ppd.gz HP Deskjet 6120, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6122.ppd.gz HP Deskjet 6122, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6127.ppd.gz HP Deskjet 6127, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6500.ppd.gz HP Deskjet 6500, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6520_series.ppd.gz HP Deskjet 6520 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6600.ppd.gz HP Deskjet 6600, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6800.ppd.gz HP Deskjet 6800, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6940_series.ppd.gz HP Deskjet 6940 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_6980_series.ppd.gz HP Deskjet 6980 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_9300.ppd.gz HP Deskjet 9300, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_9600.ppd.gz HP Deskjet 9600, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_9800.ppd.gz HP Deskjet 9800, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d730.ppd.gz HP Deskjet d730, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d1300_series.ppd.gz HP Deskjet d1300 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d1400_series.ppd.gz HP Deskjet d1400 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d1500_series.ppd.gz HP Deskjet d1500 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d1600_series.ppd.gz HP Deskjet d1600 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d2300_series.ppd.gz HP Deskjet d2300 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d2400_series.ppd.gz HP Deskjet d2400 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d2500_series.ppd.gz HP Deskjet d2500 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d2600_series.ppd.gz HP Deskjet d2600 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d4100_series.ppd.gz HP Deskjet d4100 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d4200_series.ppd.gz HP Deskjet d4200 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d4300_series.ppd.gz HP Deskjet d4300 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_d5500_series.ppd.gz HP Deskjet d5500 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f300_series.ppd.gz HP Deskjet f300 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f735.ppd.gz HP Deskjet f735, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f2100_series.ppd.gz HP Deskjet f2100 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f2200_series.ppd.gz HP Deskjet f2200 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f2400_series.ppd.gz HP Deskjet f2400 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4100_series.ppd.gz HP Deskjet f4100 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4200_series.ppd.gz HP Deskjet f4200 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4210_series.ppd.gz HP Deskjet f4210 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4213_series.ppd.gz HP Deskjet f4213 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4400_series.ppd.gz HP Deskjet f4400 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_f4500_series.ppd.gz HP Deskjet f4500 Series, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_ink_adv_2010_k010.ppd.gz HP Deskjet Ink Adv 2010 k010, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_ink_adv_2060_k110.ppd.gz HP Deskjet Ink Adv 2060 k110, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_ink_advant_k109a-z.ppd.gz HP Deskjet Ink Advant k109a-z, hpcups 3.16.2 -lsb/local/HP/hp-deskjet_ink_advant_k209a-z.ppd.gz HP Deskjet Ink Advant k209a-z, hpcups 3.16.2 -drv:///sample.drv/deskjet.ppd HP DeskJet Series -lsb/local/HP/hp-dj350.ppd.gz HP dj350, hpcups 3.16.2 -lsb/local/HP/hp-dj450.ppd.gz HP dj450, hpcups 3.16.2 -lsb/local/HP/hp-envy_100_d410_series.ppd.gz HP Envy 100 d410 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_110_series.ppd.gz HP Envy 110 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_120_series.ppd.gz HP Envy 120 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_4500_series.ppd.gz HP Envy 4500 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_4510_series.ppd.gz HP Envy 4510 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_4520_series.ppd.gz HP Envy 4520 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_5530_series.ppd.gz HP Envy 5530 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_5540_series.ppd.gz HP Envy 5540 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_5640_series.ppd.gz HP Envy 5640 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_5660_series.ppd.gz HP Envy 5660 Series, hpcups 3.16.2 -lsb/local/HP/hp-envy_7640_series.ppd.gz HP Envy 7640 Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4_plus-pcl3.ppd.gz HP LaserJet 4 Plus pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4_plus-ps.ppd.gz HP LaserJet 4 Plus v2013.111 Postscript -lsb/local/HP/hp-laserjet_4-ps.ppd.gz HP LaserJet 4/4M PostScript 600DPI -lsb/local/HP/hp-laserjet_4l.ppd.gz HP LaserJet 4l, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4ml-ps.ppd.gz HP LaserJet 4ML v2013.003 Postscript -lsb/local/HP/hp-laserjet_4ml.ppd.gz HP LaserJet 4ml, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4mp-pcl3.ppd.gz HP LaserJet 4mp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4mp-ps.ppd.gz HP LaserJet 4MP v2013.103 Postscript -lsb/local/HP/hp-laserjet_4si-pcl3.ppd.gz HP LaserJet 4si pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4si-ps.ppd.gz HP LaserJet 4Si/4Si MX 600 dpi v2011.110 Postscript -lsb/local/HP/hp-laserjet_4v-pcl3.ppd.gz HP LaserJet 4v pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4v-ps.ppd.gz HP LaserJet 4V/4MV PostScript -lsb/local/HP/hp-laserjet_5l.ppd.gz HP LaserJet 5l, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5mp-pcl3.ppd.gz HP LaserJet 5mp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5mp-ps.ppd.gz HP LaserJet 5MP Postscript -lsb/local/HP/hp-laserjet_5p-ps.ppd.gz HP LaserJet 5MP Postscript -lsb/local/HP/hp-laserjet_5p.ppd.gz HP LaserJet 5p, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5si_mopier-pcl3.ppd.gz HP LaserJet 5si Mopier pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5si_mopier-ps.ppd.gz HP LaserJet 5Si Mopier PS Postscript -lsb/local/HP/hp-laserjet_5si-pcl3.ppd.gz HP LaserJet 5si pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5si-ps.ppd.gz HP LaserJet 5Si/5Si MX PostScript -lsb/local/HP/hp-laserjet_6l.ppd.gz HP LaserJet 6l, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_6mp-pcl3.ppd.gz HP LaserJet 6mp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_6p.ppd.gz HP LaserJet 6p, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_6mp-ps.ppd.gz HP LaserJet 6P/6MP - PostScript -lsb/local/HP/hp-laserjet_6p-ps.ppd.gz HP LaserJet 6P/6MP - PostScript -lsb/local/HP/hp-laserjet_100_color_mfp_m175-ps.ppd.gz HP LaserJet 100 color MFP M175 Postscript -lsb/local/HP/hp-laserjet_200_color_m251-ps.ppd.gz HP LaserJet 200 color M251 Postscript -lsb/local/HP/hp-laserjet_200_colormfp_m275-ps.ppd.gz HP LaserJet 200 color MFP M275 Postscript -lsb/local/HP/hp-laserjet_200_colormfp_m276-ps.ppd.gz HP LaserJet 200 color MFP M276 Postscript -lsb/local/HP/hp-laserjet_400_m401-ps.ppd.gz HP LaserJet 400 M401 Postscript -lsb/local/HP/hp-laserjet_400_m401dne-ps.ppd.gz HP LaserJet 400 M401dne Postscript -lsb/local/HP/hp-laserjet_400_mfp_m425-ps.ppd.gz HP LaserJet 400 MFP M425 Postscript -lsb/local/HP/hp-laserjet_500_color_m551-ps.ppd.gz HP LaserJet 500 color M551 Postscript -lsb/local/HP/hp-laserjet_500_color_mfp_m570-ps.ppd.gz HP LaserJet 500 color MFP M570 Postscript -lsb/local/HP/hp-laserjet_500_color_mfp_m575-ps.ppd.gz HP LaserJet 500 color MFP M575 Postscript -lsb/local/HP/hp-laserjet_500_mfp_m525-ps.ppd.gz HP LaserJet 500 MFP M525 Postscript -lsb/local/HP/hp-laserjet_600_m601_m602_m603-ps.ppd.gz HP LaserJet 600 M601 M602 M603 Postscript -lsb/local/HP/hp-laserjet_700_color_mfp_m775-ps.ppd.gz HP LaserJet 700 color MFP M775 Postscript -lsb/local/HP/hp-laserjet_700_m712-ps.ppd.gz HP LaserJet 700 M712 Postscript -HP-LaserJet_1000.ppd.gz HP LaserJet 1000 Foomatic/foo2zjs -lsb/usr/foo2zjs/HP-LaserJet_1000.ppd.gz HP LaserJet 1000 Foomatic/foo2zjs -lsb/local/HP/hp-laserjet_1000.ppd.gz HP LaserJet 1000, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_1005.ppd.gz HP LaserJet 1005 Foomatic/foo2zjs -lsb/usr/foo2zjs/HP-LaserJet_1005.ppd.gz HP LaserJet 1005 Foomatic/foo2zjs -lsb/local/HP/hp-laserjet_1005_series.ppd.gz HP LaserJet 1005 Series, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_1010.ppd.gz HP LaserJet 1010, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1012.ppd.gz HP LaserJet 1012, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1015.ppd.gz HP LaserJet 1015, hpcups 3.16.2 -HP-LaserJet_1018.ppd.gz HP LaserJet 1018 Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_1018.ppd.gz HP LaserJet 1018 Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_1018.ppd.gz HP LaserJet 1018, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_1020.ppd.gz HP LaserJet 1020 Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_1020.ppd.gz HP LaserJet 1020 Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_1020.ppd.gz HP LaserJet 1020, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_1022.ppd.gz HP LaserJet 1022 Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_1022.ppd.gz HP LaserJet 1022 Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_1022-pcl3.ppd.gz HP LaserJet 1022 pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_1022-zjs.ppd.gz HP LaserJet 1022 zjs, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_1022n.ppd.gz HP LaserJet 1022n Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_1022n.ppd.gz HP LaserJet 1022n Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_1022n-pcl3.ppd.gz HP LaserJet 1022n pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_1022n-zjs.ppd.gz HP LaserJet 1022n zjs, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_1022nw.ppd.gz HP LaserJet 1022nw Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_1022nw.ppd.gz HP LaserJet 1022nw Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_1022nw-pcl3.ppd.gz HP LaserJet 1022nw pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_1022nw-zjs.ppd.gz HP LaserJet 1022nw zjs, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_1100.ppd.gz HP LaserJet 1100, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1100a.ppd.gz HP LaserJet 1100a, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1100xi.ppd.gz HP LaserJet 1100xi, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1150.ppd.gz HP LaserJet 1150, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1160_series.ppd.gz HP LaserJet 1160 Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1160.ppd.gz HP LaserJet 1160, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1200-pcl3.ppd.gz HP LaserJet 1200 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1200-ps.ppd.gz HP LaserJet 1200 Postscript -lsb/local/HP/hp-laserjet_1200n-ps.ppd.gz HP LaserJet 1200 Postscript -lsb/local/HP/hp-laserjet_1200n.ppd.gz HP LaserJet 1200n, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1220-pcl3.ppd.gz HP LaserJet 1220 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1220-ps.ppd.gz HP LaserJet 1220 Postscript -lsb/local/HP/hp-laserjet_1220se-ps.ppd.gz HP LaserJet 1220 Postscript -lsb/local/HP/hp-laserjet_1220se.ppd.gz HP LaserJet 1220se, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1300-pcl3.ppd.gz HP LaserJet 1300 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1300-ps.ppd.gz HP LaserJet 1300 Series Postscript -lsb/local/HP/hp-laserjet_1300n-ps.ppd.gz HP LaserJet 1300 Series Postscript -lsb/local/HP/hp-laserjet_1300xi-ps.ppd.gz HP LaserJet 1300 Series Postscript -lsb/local/HP/hp-laserjet_1300n-pcl3.ppd.gz HP LaserJet 1300n pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1300xi-pcl3.ppd.gz HP LaserJet 1300xi pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1320_series-pcl3.ppd.gz HP LaserJet 1320 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1320-ps.ppd.gz HP LaserJet 1320 series Postscript -lsb/local/HP/hp-laserjet_1320_series-ps.ppd.gz HP LaserJet 1320 series Postscript -lsb/local/HP/hp-laserjet_1320n-ps.ppd.gz HP LaserJet 1320 series Postscript -lsb/local/HP/hp-laserjet_1320nw-ps.ppd.gz HP LaserJet 1320 series Postscript -lsb/local/HP/hp-laserjet_1320tn-ps.ppd.gz HP LaserJet 1320 series Postscript -lsb/local/HP/hp-laserjet_1320.ppd.gz HP LaserJet 1320, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1320n.ppd.gz HP LaserJet 1320n, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1320nw.ppd.gz HP LaserJet 1320nw, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_1320tn.ppd.gz HP LaserJet 1320tn, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2100_series-pcl3.ppd.gz HP LaserJet 2100 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2100-ps.ppd.gz HP LaserJet 2100 Series Postscript -lsb/local/HP/hp-laserjet_2100_series-ps.ppd.gz HP LaserJet 2100 Series Postscript -lsb/local/HP/hp-laserjet_2100.ppd.gz HP LaserJet 2100, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2200-pcl3.ppd.gz HP LaserJet 2200 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2200-ps.ppd.gz HP LaserJet 2200 Postscript -lsb/local/HP/hp-laserjet_2200_series-ps.ppd.gz HP LaserJet 2200 Postscript -lsb/local/HP/hp-laserjet_2200_series.ppd.gz HP LaserJet 2200 Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2300-pcl3.ppd.gz HP LaserJet 2300 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2300-ps.ppd.gz HP LaserJet 2300 Postscript -lsb/local/HP/hp-laserjet_2300_series-ps.ppd.gz HP LaserJet 2300 Postscript -lsb/local/HP/hp-laserjet_2300_series.ppd.gz HP LaserJet 2300 Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2410-pcl3.ppd.gz HP LaserJet 2410 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2410-ps.ppd.gz HP LaserJet 2410 Postscript -lsb/local/HP/hp-laserjet_2420-pcl3.ppd.gz HP LaserJet 2420 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2420-ps.ppd.gz HP LaserJet 2420 Postscript -lsb/local/HP/hp-laserjet_2430-pcl3.ppd.gz HP LaserJet 2430 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_2430-ps.ppd.gz HP LaserJet 2430 Postscript -lsb/local/HP/hp-laserjet_3015-pcl3.ppd.gz HP LaserJet 3015 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3015-ps.ppd.gz HP LaserJet 3015 Postscript -lsb/local/HP/hp-laserjet_3020-ps.ppd.gz HP LaserJet 3020 3030 Postscript -lsb/local/HP/hp-laserjet_3030-ps.ppd.gz HP LaserJet 3020 3030 Postscript -lsb/local/HP/hp-laserjet_3020-pcl3.ppd.gz HP LaserJet 3020 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3030-pcl3.ppd.gz HP LaserJet 3030 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3050-pcl3.ppd.gz HP LaserJet 3050 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3050-ps.ppd.gz HP LaserJet 3050 Postscript -lsb/local/HP/hp-laserjet_3052-pcl3.ppd.gz HP LaserJet 3052 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3052-ps.ppd.gz HP LaserJet 3052 Postscript -lsb/local/HP/hp-laserjet_3055.ppd.gz HP LaserJet 3055, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3100.ppd.gz HP LaserJet 3100, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3150.ppd.gz HP LaserJet 3150, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3200.ppd.gz HP LaserJet 3200, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3200m-pcl3.ppd.gz HP LaserJet 3200m pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3200m-ps.ppd.gz HP LaserJet 3200m Postscript -lsb/local/HP/hp-laserjet_3200se.ppd.gz HP LaserJet 3200se, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3300_3310_3320-pcl3.ppd.gz HP LaserJet 3300 3310 3320 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3300_3310_3320-ps.ppd.gz HP LaserJet 3300 Series Postscript -lsb/local/HP/hp-laserjet_3330.ppd.gz HP LaserJet 3330, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3380-pcl3.ppd.gz HP LaserJet 3380 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3380-ps.ppd.gz HP LaserJet 3380 Postscript -lsb/local/HP/hp-laserjet_3390-pcl3.ppd.gz HP LaserJet 3390 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_3390-ps.ppd.gz HP LaserJet 3390 Postscript -lsb/local/HP/hp-laserjet_3392.ppd.gz HP LaserJet 3392, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4000_series-pcl3.ppd.gz HP LaserJet 4000 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4000_series-ps.ppd.gz HP LaserJet 4000 Series Postscript -lsb/local/HP/hp-laserjet_4050_series-pcl3.ppd.gz HP LaserJet 4050 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4050_series-ps.ppd.gz HP LaserJet 4050 Series Postscript -lsb/local/HP/hp-laserjet_4100_mfp-pcl3.ppd.gz HP LaserJet 4100 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4100_mfp-ps.ppd.gz HP LaserJet 4100 MFP v.3010.107 Postscript -lsb/local/HP/hp-laserjet_4100_series-pcl3.ppd.gz HP LaserJet 4100 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4100_series-ps.ppd.gz HP LaserJet 4100 Series v.3010.107 Postscript -lsb/local/HP/hp-laserjet_4150_series.ppd.gz HP LaserJet 4150 Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4200-pcl3.ppd.gz HP LaserJet 4200 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4200-ps.ppd.gz HP LaserJet 4200 Series Postscript -lsb/local/HP/hp-laserjet_4240-pcl3.ppd.gz HP LaserJet 4240 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4240-ps.ppd.gz HP LaserJet 4240 Postscript -lsb/local/HP/hp-laserjet_4250-pcl3.ppd.gz HP LaserJet 4250 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4250-ps.ppd.gz HP LaserJet 4250 Postscript -lsb/local/HP/hp-laserjet_4300-pcl3.ppd.gz HP LaserJet 4300 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4300-ps.ppd.gz HP LaserJet 4300 Series Postscript -lsb/local/HP/hp-laserjet_4345_mfp-pcl3.ppd.gz HP LaserJet 4345 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4345_mfp-ps.ppd.gz HP LaserJet 4345 MFP Postscript -lsb/local/HP/hp-laserjet_4350-pcl3.ppd.gz HP LaserJet 4350 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_4350-ps.ppd.gz HP LaserJet 4350 Postscript -lsb/local/HP/hp-laserjet_5000_series-pcl3.ppd.gz HP LaserJet 5000 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5000-ps.ppd.gz HP LaserJet 5000 Series Postscript -lsb/local/HP/hp-laserjet_5000_series-ps.ppd.gz HP LaserJet 5000 Series Postscript -lsb/local/HP/hp-laserjet_5000.ppd.gz HP LaserJet 5000, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5100_series-pcl3.ppd.gz HP LaserJet 5100 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5100_series-ps.ppd.gz HP LaserJet 5100 Series Postscript -lsb/local/HP/hp-laserjet_5200-pcl3.ppd.gz HP LaserJet 5200 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5200-ps.ppd.gz HP LaserJet 5200 Postscript -lsb/local/HP/hp-laserjet_5200l-pcl3.ppd.gz HP LaserJet 5200l pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_5200l-ps.ppd.gz HP LaserJet 5200L Postscript -lsb/local/HP/hp-laserjet_5200lx-ps.ppd.gz HP LaserJet 5200LX Postscript -lsb/local/HP/hp-laserjet_5200lx.ppd.gz HP LaserJet 5200lx, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8000_series-pcl3.ppd.gz HP LaserJet 8000 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8000-ps.ppd.gz HP LaserJet 8000 Series Postscript -lsb/local/HP/hp-laserjet_8000_series-ps.ppd.gz HP LaserJet 8000 Series Postscript -lsb/local/HP/hp-laserjet_8000.ppd.gz HP LaserJet 8000, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8100_mfp.ppd.gz HP LaserJet 8100 MFP, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8100_series-pcl3.ppd.gz HP LaserJet 8100 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8100_mfp-ps.ppd.gz HP LaserJet 8100 Series Postscript -lsb/local/HP/hp-laserjet_8100_series-ps.ppd.gz HP LaserJet 8100 Series Postscript -lsb/local/HP/hp-laserjet_8150_mfp.ppd.gz HP LaserJet 8150 MFP, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8150_series-pcl3.ppd.gz HP LaserJet 8150 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_8150_mfp-ps.ppd.gz HP LaserJet 8150 Series Postscript -lsb/local/HP/hp-laserjet_9000_mfp-ps.ppd.gz HP LaserJet 9000 MFP Postscript -lsb/local/HP/hp-laserjet_9000_mfp-pcl3.ppd.gz HP LaserJet 9000 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9000_series-ps.ppd.gz HP LaserJet 9000 Series Postscript -lsb/local/HP/hp-laserjet_9000_series-pcl3.ppd.gz HP LaserJet 9000 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9040_mfp-ps.ppd.gz HP LaserJet 9040 9050 MFP Postscript -lsb/local/HP/hp-laserjet_9050_mfp-ps.ppd.gz HP LaserJet 9040 9050 MFP Postscript -lsb/local/HP/hp-laserjet_9040_mfp-pcl3.ppd.gz HP LaserJet 9040 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9040-pcl3.ppd.gz HP LaserJet 9040 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9040-ps.ppd.gz HP LaserJet 9040 Postscript -lsb/local/HP/hp-laserjet_9050_mfp-pcl3.ppd.gz HP LaserJet 9050 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9050-pcl3.ppd.gz HP LaserJet 9050 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9050-ps.ppd.gz HP LaserJet 9050 Postscript -lsb/local/HP/hp-laserjet_9055mfp-ps.ppd.gz HP LaserJet 9055 9065 MFP Postscript -lsb/local/HP/hp-laserjet_9065mfp-ps.ppd.gz HP LaserJet 9055 9065 MFP Postscript -lsb/local/HP/hp-laserjet_9055mfp-pcl3.ppd.gz HP LaserJet 9055mfp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_9065mfp-pcl3.ppd.gz HP LaserJet 9065mfp pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1410_series-ps.ppd.gz HP LaserJet CM1410 Series Postscript -lsb/local/HP/hp-laserjet_cm1411fn-pcl3.ppd.gz HP LaserJet cm1411fn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1412fn-pcl3.ppd.gz HP LaserJet cm1412fn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1413fn-pcl3.ppd.gz HP LaserJet cm1413fn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1415fn-pcl3.ppd.gz HP LaserJet cm1415fn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1415fnw-pcl3.ppd.gz HP LaserJet cm1415fnw pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1416fnw-pcl3.ppd.gz HP LaserJet cm1416fnw pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1417fnw-pcl3.ppd.gz HP LaserJet cm1417fnw pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_cm1418fnw-pcl3.ppd.gz HP LaserJet cm1418fnw pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_color_flow_mfp_m575-ps.ppd.gz HP LaserJet color flow MFP M575 Postscript -lsb/local/HP/hp-laserjet_cp_1025.ppd.gz HP LaserJet Cp 1025, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_cp_1025nw.ppd.gz HP LaserJet Cp 1025nw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_cp1025.ppd.gz HP LaserJet cp1025, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_cp1025nw.ppd.gz HP LaserJet cp1025nw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_cp1520_series-ps.ppd.gz HP LaserJet CP1520 Series Postscript -lsb/local/HP/hp-laserjet_flow_mfp_m525-ps.ppd.gz HP LaserJet flow MFP M525 Postscript -lsb/local/HP/hp-laserjet_flow_mfp_m630-ps.ppd.gz HP LaserJet Flow MFP M630 Postscript -lsb/local/HP/hp-laserjet_flow_mfp_m830-ps.ppd.gz HP LaserJet flow MFP M830 Postscript -lsb/local/HP/hp-laserjet_m506-ps.ppd.gz HP LaserJet M506 Postscript -lsb/local/HP/hp-laserjet_m604_m605_m606-ps.ppd.gz HP Laserjet M604 M605 M606 Postscript -lsb/local/HP/hp-laserjet_m806-ps.ppd.gz HP LaserJet M806 Postscript -HP-LaserJet_M1005_MFP.ppd.gz HP LaserJet M1005 MFP Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_M1005_MFP.ppd.gz HP LaserJet M1005 MFP Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_m1005.ppd.gz HP LaserJet m1005, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_M1120_MFP.ppd.gz HP LaserJet M1120 MFP Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_M1120_MFP.ppd.gz HP LaserJet M1120 MFP Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_m1120_mfp.ppd.gz HP LaserJet m1120 MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_m1120n_mfp.ppd.gz HP LaserJet m1120n MFP, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_M1319_MFP.ppd.gz HP LaserJet M1319 MFP Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_M1319_MFP.ppd.gz HP LaserJet M1319 MFP Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_m1319f_mfp.ppd.gz HP LaserJet m1319f MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_m1522_mfp-ps.ppd.gz HP LaserJet M1522 MFP Series Postscript -lsb/local/HP/hp-laserjet_m1522n_mfp-ps.ppd.gz HP LaserJet M1522 MFP Series Postscript -lsb/local/HP/hp-laserjet_m1522nf_mfp-ps.ppd.gz HP LaserJet M1522 MFP Series Postscript -lsb/local/HP/hp-laserjet_m1522nf_mfp-pcl3.ppd.gz HP LaserJet m1522nf MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m1530_mfp_series-ps.ppd.gz HP LaserJet M1536dnf MFP Postscript -lsb/local/HP/hp-laserjet_m1537dnf_mfp-pcl3.ppd.gz HP LaserJet m1537dnf MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m1538dnf_mfp-pcl3.ppd.gz HP LaserJet m1538dnf MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m1539dnf_mfp-pcl3.ppd.gz HP LaserJet m1539dnf MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m2727_mfp-pcl3.ppd.gz HP LaserJet m2727 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m2727_mfp_series-ps.ppd.gz HP LaserJet M2727 MFP Series Postscript -lsb/local/HP/hp-laserjet_m3027_mfp-pcl3.ppd.gz HP LaserJet m3027 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m3027_mfp-ps.ppd.gz HP LaserJet M3027 MFP Postscript -lsb/local/HP/hp-laserjet_m3035_mfp-pcl3.ppd.gz HP LaserJet m3035 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m3035_mfp-ps.ppd.gz HP LaserJet M3035 MFP Postscript -lsb/local/HP/hp-laserjet_m4345_mfp-pcl3.ppd.gz HP LaserJet m4345 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m4345_mfp-ps.ppd.gz HP LaserJet M4345 MFP Postscript -lsb/local/HP/hp-laserjet_m4349_mfp-pcl3.ppd.gz HP LaserJet m4349 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m4349_mfp-ps.ppd.gz HP LaserJet M4349 MFP Postscript -lsb/local/HP/hp-laserjet_m4555_mfp-ps.ppd.gz HP LaserJet M4555 MFP Postscript -lsb/local/HP/hp-laserjet_m5025_mfp-pcl3.ppd.gz HP LaserJet m5025 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m5025_mfp-ps.ppd.gz HP LaserJet M5025 MFP Postscript -lsb/local/HP/hp-laserjet_m5035_mfp-pcl3.ppd.gz HP LaserJet m5035 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m5035_mfp-ps.ppd.gz HP LaserJet M5035 MFP Postscript -lsb/local/HP/hp-laserjet_m5039_mfp-pcl3.ppd.gz HP LaserJet m5039 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m9040_mfp-ps.ppd.gz HP LaserJet M9040 M9050 MFP Postscript -lsb/local/HP/hp-laserjet_m9050_mfp-ps.ppd.gz HP LaserJet M9040 M9050 MFP Postscript -lsb/local/HP/hp-laserjet_m9040_mfp-pcl3.ppd.gz HP LaserJet m9040 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m9050_mfp-pcl3.ppd.gz HP LaserJet m9050 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_m9059_mfp-ps.ppd.gz HP LaserJet M9059 MFP Postscript -lsb/local/HP/hp-laserjet_m9059_mfp-pcl3.ppd.gz HP LaserJet m9059 MFP pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_mfp_m527-ps.ppd.gz HP LaserJet MFP M527 Postscript -lsb/local/HP/hp-laserjet_mfp_m630-ps.ppd.gz HP LaserJet MFP M630 Postscript -lsb/local/HP/hp-laserjet_mfp_m725-ps.ppd.gz HP LaserJet MFP M725 Postscript -HP-LaserJet_P1005.ppd.gz HP LaserJet P1005 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1005.ppd.gz HP LaserJet P1005 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1005.ppd.gz HP LaserJet p1005, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P1006.ppd.gz HP LaserJet P1006 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1006.ppd.gz HP LaserJet P1006 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1006.ppd.gz HP LaserJet p1006, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P1007.ppd.gz HP LaserJet P1007 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1007.ppd.gz HP LaserJet P1007 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1007.ppd.gz HP LaserJet p1007, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P1008.ppd.gz HP LaserJet P1008 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1008.ppd.gz HP LaserJet P1008 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1008.ppd.gz HP LaserJet p1008, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p1009.ppd.gz HP LaserJet p1009, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P1505.ppd.gz HP LaserJet P1505 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1505.ppd.gz HP LaserJet P1505 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1505.ppd.gz HP LaserJet p1505, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P1505n.ppd.gz HP LaserJet P1505n Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P1505n.ppd.gz HP LaserJet P1505n Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p1505n-pcl3.ppd.gz HP LaserJet p1505n pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p1505n-zxs.ppd.gz HP LaserJet p1505n zxs, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P2014.ppd.gz HP LaserJet P2014 Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P2014.ppd.gz HP LaserJet P2014 Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p2014-pcl3.ppd.gz HP LaserJet p2014 pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2014-zxs.ppd.gz HP LaserJet p2014 zxs, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P2014n.ppd.gz HP LaserJet P2014n Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_P2014n.ppd.gz HP LaserJet P2014n Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_p2014n-pcl3.ppd.gz HP LaserJet p2014n pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2014n-zxs.ppd.gz HP LaserJet p2014n zxs, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2015_series-pcl3.ppd.gz HP LaserJet p2015 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2015_series-ps.ppd.gz HP LaserJet P2015 Series Postscript -lsb/local/HP/hp-laserjet_p2015d_series.ppd.gz HP LaserJet p2015d Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2015dn_series.ppd.gz HP LaserJet p2015dn Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2015n_series.ppd.gz HP LaserJet p2015n Series, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2015x_series.ppd.gz HP LaserJet p2015x Series, hpcups 3.16.2 -HP-LaserJet_P2035.ppd.gz HP LaserJet P2035 Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_P2035.ppd.gz HP LaserJet P2035 Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_p2035-pcl3.ppd.gz HP LaserJet p2035 pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2035-zjs.ppd.gz HP LaserJet p2035 zjs, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_P2035n.ppd.gz HP LaserJet P2035n Foomatic/foo2zjs-z1 -lsb/usr/foo2zjs/HP-LaserJet_P2035n.ppd.gz HP LaserJet P2035n Foomatic/foo2zjs-z1 -lsb/local/HP/hp-laserjet_p2035n-pcl3.ppd.gz HP LaserJet p2035n pcl3, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2035n-zjs.ppd.gz HP LaserJet p2035n zjs, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_p2055-pcl3.ppd.gz HP LaserJet p2055 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2055_series-ps.ppd.gz HP LaserJet P2055 Postscript -lsb/local/HP/hp-laserjet_p2055d-pcl3.ppd.gz HP LaserJet p2055d pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2055dn-pcl3.ppd.gz HP LaserJet p2055dn pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p2055x-pcl3.ppd.gz HP LaserJet p2055x pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p3004-pcl3.ppd.gz HP LaserJet p3004 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p3004-ps.ppd.gz HP LaserJet P3004 Postscript -lsb/local/HP/hp-laserjet_p3005-pcl3.ppd.gz HP LaserJet p3005 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p3005-ps.ppd.gz HP LaserJet P3005 Postscript -lsb/local/HP/hp-laserjet_p3010_series-pcl3.ppd.gz HP LaserJet p3010 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p3010_series-ps.ppd.gz HP LaserJet P3010 Series Postscript -lsb/local/HP/hp-laserjet_p4010_series-ps.ppd.gz HP LaserJet P4010 Series Postscript -lsb/local/HP/hp-laserjet_p4014.ppd.gz HP LaserJet p4014, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4014dn.ppd.gz HP LaserJet p4014dn, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4014n.ppd.gz HP LaserJet p4014n, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4015.ppd.gz HP LaserJet p4015, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4015dn.ppd.gz HP LaserJet p4015dn, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4015n.ppd.gz HP LaserJet p4015n, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4015tn.ppd.gz HP LaserJet p4015tn, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4015x.ppd.gz HP LaserJet p4015x, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4515.ppd.gz HP LaserJet p4515, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4515n.ppd.gz HP LaserJet p4515n, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4515tn.ppd.gz HP LaserJet p4515tn, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4515x.ppd.gz HP LaserJet p4515x, hpcups 3.16.2 -lsb/local/HP/hp-laserjet_p4515xm.ppd.gz HP LaserJet p4515xm, hpcups 3.16.2 -HP-LaserJet_Pro_CP1025nw.ppd.gz HP LaserJet Pro CP1025nw Foomatic/foo2zjs-z3 -lsb/usr/foo2zjs/HP-LaserJet_Pro_CP1025nw.ppd.gz HP LaserJet Pro CP1025nw Foomatic/foo2zjs-z3 -lsb/local/HP/hp-laserjet_pro_m201_m202-ps.ppd.gz HP LaserJet Pro M201-M202 Postscript -lsb/local/HP/hp-laserjet_pro_m402_m403d-ps.ppd.gz HP LaserJet Pro M402-M403 Postscript -lsb/local/HP/hp-laserjet_pro_m402_m403-ps.ppd.gz HP LaserJet Pro M402-M403n Postscript -lsb/local/HP/hp-laserjet_pro_m701-ps.ppd.gz HP LaserJet Pro M701 Postscript -lsb/local/HP/hp-laserjet_pro_m706-ps.ppd.gz HP LaserJet Pro M706 Postscript -lsb/local/HP/hp-laserjet_pro_mfp_m125a.ppd.gz HP LaserJet Pro MFP m125a, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m125nw.ppd.gz HP LaserJet Pro MFP m125nw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m125r.ppd.gz HP LaserJet Pro MFP m125r, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m125ra.ppd.gz HP LaserJet Pro MFP m125ra, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m125rnw.ppd.gz HP LaserJet Pro MFP m125rnw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m126a.ppd.gz HP LaserJet Pro MFP m126a, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m126nw.ppd.gz HP LaserJet Pro MFP m126nw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m127fn.ppd.gz HP LaserJet Pro MFP m127fn, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m127fp.ppd.gz HP LaserJet Pro MFP m127fp, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m127fs.ppd.gz HP LaserJet Pro MFP m127fs, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m127fw.ppd.gz HP LaserJet Pro MFP m127fw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m128fn.ppd.gz HP LaserJet Pro MFP m128fn, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m128fp.ppd.gz HP LaserJet Pro MFP m128fp, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m128fw.ppd.gz HP LaserJet Pro MFP m128fw, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_pro_mfp_m225_m226-ps.ppd.gz HP LaserJet Pro MFP M225-M226 Postscript -lsb/local/HP/hp-laserjet_mfp_m426_m427-ps.ppd.gz HP LaserJet Pro MFP M426-M427 Postscript -lsb/local/HP/hp-laserjet_pro_mfp_m435-ps.ppd.gz HP LaserJet Pro MFP M435 Postscript -lsb/local/HP/hp-laserjet_mfp_m521-ps.ppd.gz HP LaserJet Pro MFP M521 Postscript -HP-LaserJet_Pro_P1102.ppd.gz HP LaserJet Pro P1102 Foomatic/foo2zjs-z2 -lsb/usr/foo2zjs/HP-LaserJet_Pro_P1102.ppd.gz HP LaserJet Pro P1102 Foomatic/foo2zjs-z2 -HP-LaserJet_Pro_P1102w.ppd.gz HP LaserJet Pro P1102w Foomatic/foo2zjs-z2 -lsb/usr/foo2zjs/HP-LaserJet_Pro_P1102w.ppd.gz HP LaserJet Pro P1102w Foomatic/foo2zjs-z2 -HP-LaserJet_Pro_P1566.ppd.gz HP LaserJet Pro P1566 Foomatic/foo2zjs-z2 -lsb/usr/foo2zjs/HP-LaserJet_Pro_P1566.ppd.gz HP LaserJet Pro P1566 Foomatic/foo2zjs-z2 -HP-LaserJet_Pro_P1606dn.ppd.gz HP LaserJet Pro P1606dn Foomatic/foo2zjs-z2 -lsb/usr/foo2zjs/HP-LaserJet_Pro_P1606dn.ppd.gz HP LaserJet Pro P1606dn Foomatic/foo2zjs-z2 -lsb/local/HP/hp-laserjet_professional_m1132_mfp.ppd.gz HP LaserJet Professional m1132 MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1136_mfp.ppd.gz HP LaserJet Professional m1136 MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1137_mfp.ppd.gz HP LaserJet Professional m1137 MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1138_mfp.ppd.gz HP LaserJet Professional m1138 MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1139_mfp.ppd.gz HP LaserJet Professional m1139 MFP, hpcups 3.16.2, requires proprietary plugin -HP-LaserJet_Pro_M1212nf_MFP.ppd.gz HP LaserJet Professional M1212nf MFP Foomatic/foo2xqx -lsb/usr/foo2zjs/HP-LaserJet_Pro_M1212nf_MFP.ppd.gz HP LaserJet Professional M1212nf MFP Foomatic/foo2xqx -lsb/local/HP/hp-laserjet_professional_m1212nf_mfp.ppd.gz HP LaserJet Professional m1212nf MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1213nf_mfp.ppd.gz HP LaserJet Professional m1213nf MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1214nfh_mfp.ppd.gz HP LaserJet Professional m1214nfh MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1216nfh_mfp.ppd.gz HP LaserJet Professional m1216nfh MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1217nfw_mfp.ppd.gz HP LaserJet Professional m1217nfw MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1218nfg_mfp.ppd.gz HP LaserJet Professional m1218nfg MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1218nfs_mfp.ppd.gz HP LaserJet Professional m1218nfs MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1219nf_mfp.ppd.gz HP LaserJet Professional m1219nf MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1219nfg_mfp.ppd.gz HP LaserJet Professional m1219nfg MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_m1219nfs_mfp.ppd.gz HP LaserJet Professional m1219nfs MFP, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p_1102w.ppd.gz HP LaserJet Professional P 1102w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1102.ppd.gz HP LaserJet Professional p1102, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1102w.ppd.gz HP LaserJet Professional p1102w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1106.ppd.gz HP LaserJet Professional p1106, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1106w.ppd.gz HP LaserJet Professional p1106w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1107.ppd.gz HP LaserJet Professional p1107, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1107w.ppd.gz HP LaserJet Professional p1107w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1108.ppd.gz HP LaserJet Professional p1108, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1108w.ppd.gz HP LaserJet Professional p1108w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1109.ppd.gz HP LaserJet Professional p1109, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1109w.ppd.gz HP LaserJet Professional p1109w, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1566.ppd.gz HP LaserJet Professional p1566, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1567.ppd.gz HP LaserJet Professional p1567, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1568.ppd.gz HP LaserJet Professional p1568, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1569.ppd.gz HP LaserJet Professional p1569, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1606dn.ppd.gz HP LaserJet Professional p1606dn, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1607dn.ppd.gz HP LaserJet Professional p1607dn, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1608dn.ppd.gz HP LaserJet Professional p1608dn, hpcups 3.16.2, requires proprietary plugin -lsb/local/HP/hp-laserjet_professional_p1609dn.ppd.gz HP LaserJet Professional p1609dn, hpcups 3.16.2, requires proprietary plugin -drv:///sample.drv/laserjet.ppd HP LaserJet Series PCL 4/5 -lsb/usr/cupsfilters/pxlmono.ppd HP LaserJet Series PCL 6 CUPS -lsb/local/HP/hp-lj_300_400_color_m351_m451-ps.ppd.gz HP LJ 300-400 color M351-M451 Postscript -lsb/local/HP/hp-lj_300_400_color_mfp_m375_m475-ps.ppd.gz HP LJ 300-400 color MFP M375-M475 Postscript -lsb/local/HP/hp-mopier_240-pcl3.ppd.gz HP Mopier 240 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-mopier_240-ps.ppd.gz HP Mopier 240 Postscript -lsb/local/HP/hp-mopier_320-pcl3.ppd.gz HP Mopier 320 pcl3, hpcups 3.16.2 -lsb/local/HP/hp-mopier_320-ps.ppd.gz HP Mopier 320 Postscript -lsb/local/HP/hp-officejet_100_mobile_l411.ppd.gz HP Officejet 100 Mobile l411, hpcups 3.16.2 -lsb/local/HP/hp-officejet_150_mobile_l511.ppd.gz HP Officejet 150 Mobile l511, hpcups 3.16.2 -lsb/local/HP/hp-officejet_2620_series.ppd.gz HP Officejet 2620 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_3830_series.ppd.gz HP Officejet 3830 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4000_k210.ppd.gz HP Officejet 4000 k210, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4100_series.ppd.gz HP Officejet 4100 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4105.ppd.gz HP Officejet 4105, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4115_series.ppd.gz HP Officejet 4115 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4200_series.ppd.gz HP Officejet 4200 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4255.ppd.gz HP Officejet 4255, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4300_series.ppd.gz HP Officejet 4300 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4400_k410.ppd.gz HP Officejet 4400 k410, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4500_g510a-f.ppd.gz HP Officejet 4500 g510a-f, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4500_g510g-m.ppd.gz HP Officejet 4500 g510g-m, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4500_g510n-z.ppd.gz HP Officejet 4500 g510n-z, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4500_k710.ppd.gz HP Officejet 4500 k710, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4610_series.ppd.gz HP Officejet 4610 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4620_series.ppd.gz HP Officejet 4620 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4630_series.ppd.gz HP Officejet 4630 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_4650_series.ppd.gz HP Officejet 4650 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5100_series.ppd.gz HP Officejet 5100 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5105.ppd.gz HP Officejet 5105, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5110.ppd.gz HP Officejet 5110, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5110v.ppd.gz HP Officejet 5110v, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5500_series.ppd.gz HP Officejet 5500 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5600_series.ppd.gz HP Officejet 5600 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_5740_series.ppd.gz HP Officejet 5740 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6000_e609a.ppd.gz HP Officejet 6000 e609a, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6000_e609n.ppd.gz HP Officejet 6000 e609n, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6100_series.ppd.gz HP Officejet 6100 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6100.ppd.gz HP Officejet 6100, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6150_series.ppd.gz HP Officejet 6150 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6200_series.ppd.gz HP Officejet 6200 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6300_series.ppd.gz HP Officejet 6300 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6500_e709a.ppd.gz HP Officejet 6500 e709a, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6500_e709n.ppd.gz HP Officejet 6500 e709n, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6500_e710a-f.ppd.gz HP Officejet 6500 e710a-f, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6500_e710n-z.ppd.gz HP Officejet 6500 e710n-z, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6600.ppd.gz HP Officejet 6600, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6700.ppd.gz HP Officejet 6700, hpcups 3.16.2 -lsb/local/HP/hp-officejet_6800.ppd.gz HP Officejet 6800, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7000_e809a_series.ppd.gz HP Officejet 7000 e809a Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7000_e809a.ppd.gz HP Officejet 7000 e809a, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7100_series.ppd.gz HP Officejet 7100 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7110_series.ppd.gz HP Officejet 7110 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7200_series.ppd.gz HP Officejet 7200 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7300_series.ppd.gz HP Officejet 7300 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7400_series.ppd.gz HP Officejet 7400 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7500_e910.ppd.gz HP Officejet 7500 e910, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7510_series.ppd.gz HP Officejet 7510 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_7610_series.ppd.gz HP Officejet 7610 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_8040_series.ppd.gz HP Officejet 8040 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_9100_series-pcl3.ppd.gz HP Officejet 9100 Series pcl3, hpcups 3.16.2 -lsb/local/HP/hp-officejet_color_mfp_x585.ppd.gz HP Officejet Color MFP X585 Postscript -lsb/local/HP/hp-officejet_color_x555-ps.ppd.gz HP Officejet Color X555 Postscript -lsb/local/HP/hp-officejet_d_series.ppd.gz HP Officejet D Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_g55.ppd.gz HP Officejet g55, hpcups 3.16.2 -lsb/local/HP/hp-officejet_g55xi.ppd.gz HP Officejet g55xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_g85.ppd.gz HP Officejet g85, hpcups 3.16.2 -lsb/local/HP/hp-officejet_g85xi.ppd.gz HP Officejet g85xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_g95.ppd.gz HP Officejet g95, hpcups 3.16.2 -lsb/local/HP/hp-officejet_h470.ppd.gz HP Officejet h470, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j3500_series.ppd.gz HP Officejet j3500 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j3600_series.ppd.gz HP Officejet j3600 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j4500_series.ppd.gz HP Officejet j4500 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j4660_series.ppd.gz HP Officejet j4660 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j4680_series.ppd.gz HP Officejet j4680 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j5500_series.ppd.gz HP Officejet j5500 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j5700_series.ppd.gz HP Officejet j5700 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_j6400_series.ppd.gz HP Officejet j6400 Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_k60.ppd.gz HP Officejet k60, hpcups 3.16.2 -lsb/local/HP/hp-officejet_k60xi.ppd.gz HP Officejet k60xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_k80.ppd.gz HP Officejet k80, hpcups 3.16.2 -lsb/local/HP/hp-officejet_k80xi.ppd.gz HP Officejet k80xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_k7100.ppd.gz HP Officejet k7100, hpcups 3.16.2 -lsb/local/HP/hp-officejet_lx.ppd.gz HP Officejet Lx, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_251dw_printer-ps.ppd.gz HP Officejet Pro 251dw Printer Postscript -lsb/local/HP/hp-officejet_pro_276dw_mfp-ps.ppd.gz HP Officejet Pro 276dw MFP Postscript -lsb/local/HP/hp-officejet_pro_1150c.ppd.gz HP Officejet Pro 1150c, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_1170c_series.ppd.gz HP Officejet Pro 1170c Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_3610.ppd.gz HP Officejet Pro 3610, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_3620.ppd.gz HP Officejet Pro 3620, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_6230.ppd.gz HP Officejet Pro 6230, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_6830.ppd.gz HP Officejet Pro 6830, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8000_a809.ppd.gz HP Officejet Pro 8000 a809, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz HP Officejet Pro 8000 Enterprise A811a Postscript -lsb/local/HP/hp-officejet_pro_8100.ppd.gz HP Officejet Pro 8100, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8500_a909a.ppd.gz HP Officejet Pro 8500 a909a, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8500_a909g.ppd.gz HP Officejet Pro 8500 a909g, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8500_a909n.ppd.gz HP Officejet Pro 8500 a909n, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8500_a910.ppd.gz HP Officejet Pro 8500 a910, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8600.ppd.gz HP Officejet Pro 8600, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8610.ppd.gz HP Officejet Pro 8610, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8620.ppd.gz HP Officejet Pro 8620, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8630.ppd.gz HP Officejet Pro 8630, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8640.ppd.gz HP Officejet Pro 8640, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_8660.ppd.gz HP Officejet Pro 8660, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_k550.ppd.gz HP Officejet Pro k550, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_k850.ppd.gz HP Officejet Pro k850, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_k5300.ppd.gz HP Officejet Pro k5300, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_k5400.ppd.gz HP Officejet Pro k5400, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_k8600.ppd.gz HP Officejet Pro k8600, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_l7300.ppd.gz HP Officejet Pro l7300, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_l7400.ppd.gz HP Officejet Pro l7400, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_l7500.ppd.gz HP Officejet Pro l7500, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_l7600.ppd.gz HP Officejet Pro l7600, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_l7700.ppd.gz HP Officejet Pro l7700, hpcups 3.16.2 -lsb/local/HP/hp-officejet_pro_451_series-ps.ppd.gz HP Officejet Pro X451-X551 Printer Postscript -lsb/local/HP/hp-officejet_pro_551_series-ps.ppd.gz HP Officejet Pro X451-X551 Printer Postscript -lsb/local/HP/hp-officejet_pro_476_576_series-ps.ppd.gz HP Officejet Pro X476-X576 MFP Postscript -lsb/local/HP/hp-officejet_r40.ppd.gz HP Officejet r40, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r40xi.ppd.gz HP Officejet r40xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r45.ppd.gz HP Officejet r45, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r60.ppd.gz HP Officejet r60, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r65.ppd.gz HP Officejet r65, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r80.ppd.gz HP Officejet r80, hpcups 3.16.2 -lsb/local/HP/hp-officejet_r80xi.ppd.gz HP Officejet r80xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_300.ppd.gz HP Officejet Series 300, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_310.ppd.gz HP Officejet Series 310, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_320.ppd.gz HP Officejet Series 320, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_330.ppd.gz HP Officejet Series 330, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_350.ppd.gz HP Officejet Series 350, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_520.ppd.gz HP Officejet Series 520, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_570.ppd.gz HP Officejet Series 570, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_580.ppd.gz HP Officejet Series 580, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_590.ppd.gz HP Officejet Series 590, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_600.ppd.gz HP Officejet Series 600, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_610.ppd.gz HP Officejet Series 610, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_630.ppd.gz HP Officejet Series 630, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_700.ppd.gz HP Officejet Series 700, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_710.ppd.gz HP Officejet Series 710, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_720.ppd.gz HP Officejet Series 720, hpcups 3.16.2 -lsb/local/HP/hp-officejet_series_725.ppd.gz HP Officejet Series 725, hpcups 3.16.2 -lsb/local/HP/hp-officejet_t_series.ppd.gz HP Officejet T Series, hpcups 3.16.2 -lsb/local/HP/hp-officejet_v30.ppd.gz HP Officejet v30, hpcups 3.16.2 -lsb/local/HP/hp-officejet_v40.ppd.gz HP Officejet v40, hpcups 3.16.2 -lsb/local/HP/hp-officejet_v40xi.ppd.gz HP Officejet v40xi, hpcups 3.16.2 -lsb/local/HP/hp-officejet_v45.ppd.gz HP Officejet v45, hpcups 3.16.2 -lsb/local/HP/hp-officejet.ppd.gz HP Officejet, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_100.ppd.gz HP Photosmart 100, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_130.ppd.gz HP Photosmart 130, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_140_series.ppd.gz HP Photosmart 140 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_230.ppd.gz HP Photosmart 230, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_240_series.ppd.gz HP Photosmart 240 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_320_series.ppd.gz HP Photosmart 320 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_330_series.ppd.gz HP Photosmart 330 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_370_series.ppd.gz HP Photosmart 370 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_380_series.ppd.gz HP Photosmart 380 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_420_series.ppd.gz HP Photosmart 420 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_470_series.ppd.gz HP Photosmart 470 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_1115.ppd.gz HP Photosmart 1115, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_1215.ppd.gz HP Photosmart 1215, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_1218.ppd.gz HP Photosmart 1218, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_1315.ppd.gz HP Photosmart 1315, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_2570_series.ppd.gz HP Photosmart 2570 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_2600_series.ppd.gz HP Photosmart 2600 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_2700_series.ppd.gz HP Photosmart 2700 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_3100_series.ppd.gz HP Photosmart 3100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_3200_series.ppd.gz HP Photosmart 3200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_3300_series.ppd.gz HP Photosmart 3300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_5510_series.ppd.gz HP Photosmart 5510 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_5510d_series.ppd.gz HP Photosmart 5510d Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_5520_series.ppd.gz HP Photosmart 5520 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_6510_series.ppd.gz HP Photosmart 6510 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_6520_series.ppd.gz HP Photosmart 6520 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7150.ppd.gz HP Photosmart 7150, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7200_series.ppd.gz HP Photosmart 7200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7345.ppd.gz HP Photosmart 7345, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7350.ppd.gz HP Photosmart 7350, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7400_series.ppd.gz HP Photosmart 7400 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7510_series.ppd.gz HP Photosmart 7510 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7520_series.ppd.gz HP Photosmart 7520 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7550.ppd.gz HP Photosmart 7550, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7600_series.ppd.gz HP Photosmart 7600 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7700_series.ppd.gz HP Photosmart 7700 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7800_series.ppd.gz HP Photosmart 7800 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_7900_series.ppd.gz HP Photosmart 7900 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_8000_series.ppd.gz HP Photosmart 8000 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_8100_series.ppd.gz HP Photosmart 8100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_8200_series.ppd.gz HP Photosmart 8200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_8400_series.ppd.gz HP Photosmart 8400 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_8700_series.ppd.gz HP Photosmart 8700 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a310_series.ppd.gz HP Photosmart a310 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a320_series.ppd.gz HP Photosmart a320 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a430_series.ppd.gz HP Photosmart a430 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a440_series.ppd.gz HP Photosmart a440 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a510_series.ppd.gz HP Photosmart a510 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a520_series.ppd.gz HP Photosmart a520 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a530_series.ppd.gz HP Photosmart a530 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a610_series.ppd.gz HP Photosmart a610 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a620_series.ppd.gz HP Photosmart a620 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a630_series.ppd.gz HP Photosmart a630 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a640_series.ppd.gz HP Photosmart a640 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a710_series.ppd.gz HP Photosmart a710 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_a820_series.ppd.gz HP Photosmart a820 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_b010_series.ppd.gz HP Photosmart b010 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_b109a_series.ppd.gz HP Photosmart b109a Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_b109a-m.ppd.gz HP Photosmart b109a-m, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_b110_series.ppd.gz HP Photosmart b110 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_b8500_series.ppd.gz HP Photosmart b8500 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c309a_series.ppd.gz HP Photosmart c309a Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c3100_series.ppd.gz HP Photosmart c3100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4100_series.ppd.gz HP Photosmart c4100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4200_series.ppd.gz HP Photosmart c4200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4340_series.ppd.gz HP Photosmart c4340 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4380_series.ppd.gz HP Photosmart c4380 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4400_series.ppd.gz HP Photosmart c4400 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4500_series.ppd.gz HP Photosmart c4500 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4600_series.ppd.gz HP Photosmart c4600 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c4700_series.ppd.gz HP Photosmart c4700 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c5100_series.ppd.gz HP Photosmart c5100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c5200_series.ppd.gz HP Photosmart c5200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c5300_series.ppd.gz HP Photosmart c5300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c5500_series.ppd.gz HP Photosmart c5500 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c6100_series.ppd.gz HP Photosmart c6100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c6200_series.ppd.gz HP Photosmart c6200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c6300_series.ppd.gz HP Photosmart c6300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c7100_series.ppd.gz HP Photosmart c7100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c7200_series.ppd.gz HP Photosmart c7200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_c8100_series.ppd.gz HP Photosmart c8100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d110_series.ppd.gz HP Photosmart d110 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d5060_series.ppd.gz HP Photosmart d5060 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d5100_series.ppd.gz HP Photosmart d5100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d5300_series.ppd.gz HP Photosmart d5300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d5400_series.ppd.gz HP Photosmart d5400 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d6100_series.ppd.gz HP Photosmart d6100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d7100_series.ppd.gz HP Photosmart d7100 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d7200_series.ppd.gz HP Photosmart d7200 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d7300_series.ppd.gz HP Photosmart d7300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d7400_series.ppd.gz HP Photosmart d7400 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_d7500_series.ppd.gz HP Photosmart d7500 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_estn_c510_series.ppd.gz HP Photosmart Estn c510 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_ink_adv_k510.ppd.gz HP Photosmart Ink Adv k510, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_p1000.ppd.gz HP Photosmart p1000, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_p1100.ppd.gz HP Photosmart p1100, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_plus_b209a-m.ppd.gz HP Photosmart Plus b209a-m, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_plus_b210_series.ppd.gz HP Photosmart Plus b210 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_prem_c310_series.ppd.gz HP Photosmart Prem c310 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_prem_c410_series.ppd.gz HP Photosmart Prem c410 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_prem-web_c309n-s.ppd.gz HP Photosmart Prem-web c309n-s, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_premium_c309g-m.ppd.gz HP Photosmart Premium c309g-m, hpcups 3.16.2 -lsb/usr/cupsfilters/HP-PhotoSmart_Pro_B8300-hpijs-pdftoijs.ppd HP PhotoSmart Pro B8300 CUPS/pdftoijs/hpijs -lsb/local/HP/hp-photosmart_pro_b8300_series.ppd.gz HP Photosmart Pro b8300 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_pro_b8800_series.ppd.gz HP Photosmart Pro b8800 Series, hpcups 3.16.2 -lsb/local/HP/hp-photosmart_wireless_b109n-z.ppd.gz HP Photosmart Wireless b109n-z, hpcups 3.16.2 -lsb/local/HP/hp-printer_scanner_copier_300.ppd.gz HP Printer Scanner Copier 300, hpcups 3.16.2 -lsb/local/HP/hp-psc_500.ppd.gz HP PSC 500, hpcups 3.16.2 -lsb/local/HP/hp-psc_720.ppd.gz HP PSC 720, hpcups 3.16.2 -lsb/local/HP/hp-psc_750.ppd.gz HP PSC 750, hpcups 3.16.2 -lsb/local/HP/hp-psc_750xi.ppd.gz HP PSC 750xi, hpcups 3.16.2 -lsb/local/HP/hp-psc_760.ppd.gz HP PSC 760, hpcups 3.16.2 -lsb/local/HP/hp-psc_780.ppd.gz HP PSC 780, hpcups 3.16.2 -lsb/local/HP/hp-psc_780xi.ppd.gz HP PSC 780xi, hpcups 3.16.2 -lsb/local/HP/hp-psc_900_series.ppd.gz HP PSC 900 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_920.ppd.gz HP PSC 920, hpcups 3.16.2 -lsb/local/HP/hp-psc_950.ppd.gz HP PSC 950, hpcups 3.16.2 -lsb/local/HP/hp-psc_950vr.ppd.gz HP PSC 950vr, hpcups 3.16.2 -lsb/local/HP/hp-psc_950xi.ppd.gz HP PSC 950xi, hpcups 3.16.2 -lsb/local/HP/hp-psc_1000_series.ppd.gz HP PSC 1000 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1100_series.ppd.gz HP PSC 1100 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1200_series.ppd.gz HP PSC 1200 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1300_series.ppd.gz HP PSC 1300 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1310_series.ppd.gz HP PSC 1310 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1358_series.ppd.gz HP PSC 1358 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1400_series.ppd.gz HP PSC 1400 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1500_series.ppd.gz HP PSC 1500 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1510_series.ppd.gz HP PSC 1510 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_1600_series.ppd.gz HP PSC 1600 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2100_series.ppd.gz HP PSC 2100 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2150_series.ppd.gz HP PSC 2150 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2170_series.ppd.gz HP PSC 2170 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2200_series.ppd.gz HP PSC 2200 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2210_series.ppd.gz HP PSC 2210 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2300_series.ppd.gz HP PSC 2300 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2350_series.ppd.gz HP PSC 2350 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2400_series.ppd.gz HP PSC 2400 Series, hpcups 3.16.2 -lsb/local/HP/hp-psc_2500_series.ppd.gz HP PSC 2500 Series, hpcups 3.16.2 -drv:///indexv3.drv/i4waves3.ppd Index 4-Waves PRO, 1.0 -drv:///indexv3.drv/i4x4pro3.ppd Index 4x4 PRO V3, 1.0 -drv:///indexv3.drv/ibasicd3.ppd Index Basic-D V3, 1.0 -drv:///indexv4.drv/ibasicd4.ppd Index Basic-D V4, 1.0 -drv:///indexv3.drv/ibasics3.ppd Index Basic-S V3, 1.0 -drv:///indexv4.drv/ibasics4.ppd Index Basic-S V4, 1.0 -drv:///indexv4.drv/ibrlbox4.ppd Index Braille Box V4, 1.0 -drv:///indexv3.drv/ieveres3.ppd Index Everest-D V3, 1.0 -drv:///indexv4.drv/ieveres4.ppd Index Everest-D V4, 1.0 -drv:///sample.drv/intelbar.ppd Intellitech IntelliBar Label Printer, 2.1 -KONICA_MINOLTA-magicolor_1600W.ppd.gz KONICA MINOLTA magicolor 1600W Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_1600W.ppd.gz KONICA MINOLTA magicolor 1600W Foomatic/foo2lava -KONICA_MINOLTA-magicolor_1680MF.ppd.gz KONICA MINOLTA magicolor 1680MF Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_1680MF.ppd.gz KONICA MINOLTA magicolor 1680MF Foomatic/foo2lava -KONICA_MINOLTA-magicolor_1690MF.ppd.gz KONICA MINOLTA magicolor 1690MF Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_1690MF.ppd.gz KONICA MINOLTA magicolor 1690MF Foomatic/foo2lava -KONICA_MINOLTA-magicolor_2430_DL.ppd.gz KONICA MINOLTA magicolor 2430 DL Foomatic/foo2zjs -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_2430_DL.ppd.gz KONICA MINOLTA magicolor 2430 DL Foomatic/foo2zjs -KONICA_MINOLTA-magicolor_2480_MF.ppd.gz KONICA MINOLTA magicolor 2480 MF Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_2480_MF.ppd.gz KONICA MINOLTA magicolor 2480 MF Foomatic/foo2lava -KONICA_MINOLTA-magicolor_2490_MF.ppd.gz KONICA MINOLTA magicolor 2490 MF Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_2490_MF.ppd.gz KONICA MINOLTA magicolor 2490 MF Foomatic/foo2lava -KONICA_MINOLTA-magicolor_2530_DL.ppd.gz KONICA MINOLTA magicolor 2530 DL Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_2530_DL.ppd.gz KONICA MINOLTA magicolor 2530 DL Foomatic/foo2lava -KONICA_MINOLTA-magicolor_4690MF.ppd.gz KONICA MINOLTA magicolor 4690MF Foomatic/foo2lava -lsb/usr/foo2zjs/KONICA_MINOLTA-magicolor_4690MF.ppd.gz KONICA MINOLTA magicolor 4690MF Foomatic/foo2lava -Kyocera-KM-1635.ppd.gz Kyocera KM-1635 Foomatic/foo2oak-z1 -lsb/usr/foo2zjs/Kyocera-KM-1635.ppd.gz Kyocera KM-1635 Foomatic/foo2oak-z1 -Kyocera-KM-2035.ppd.gz Kyocera KM-2035 Foomatic/foo2oak-z1 -lsb/usr/foo2zjs/Kyocera-KM-2035.ppd.gz Kyocera KM-2035 Foomatic/foo2oak-z1 -Lexmark-C500.ppd.gz Lexmark C500 Foomatic/foo2slx -lsb/usr/foo2zjs/Lexmark-C500.ppd.gz Lexmark C500 Foomatic/foo2slx -Minolta-Color_PageWorks_Pro_L.ppd.gz Minolta Color PageWorks/Pro L Foomatic/foo2zjs -lsb/usr/foo2zjs/Minolta-Color_PageWorks_Pro_L.ppd.gz Minolta Color PageWorks/Pro L Foomatic/foo2zjs -Minolta-magicolor_2200_DL.ppd.gz Minolta magicolor 2200 DL Foomatic/foo2zjs -lsb/usr/foo2zjs/Minolta-magicolor_2200_DL.ppd.gz Minolta magicolor 2200 DL Foomatic/foo2zjs -Minolta-magicolor_2300_DL.ppd.gz Minolta magicolor 2300 DL Foomatic/foo2zjs -lsb/usr/foo2zjs/Minolta-magicolor_2300_DL.ppd.gz Minolta magicolor 2300 DL Foomatic/foo2zjs -Minolta-magicolor_2430_DL.ppd.gz Minolta magicolor 2430 DL Foomatic/foo2zjs -lsb/usr/foo2zjs/Minolta-magicolor_2430_DL.ppd.gz Minolta magicolor 2430 DL Foomatic/foo2zjs -drv:///sample.drv/okidata9.ppd Oki 9-Pin Series -drv:///sample.drv/okidat24.ppd Oki 24-Pin Series -Oki-C110.ppd.gz Oki C110 Foomatic/foo2lava -lsb/usr/foo2zjs/Oki-C110.ppd.gz Oki C110 Foomatic/foo2lava -Oki-C301dn.ppd.gz Oki C301dn Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C301dn.ppd.gz Oki C301dn Foomatic/foo2hiperc -Oki-C310dn.ppd.gz Oki C310dn Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C310dn.ppd.gz Oki C310dn Foomatic/foo2hiperc -Oki-C511dn.ppd.gz Oki C511dn Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C511dn.ppd.gz Oki C511dn Foomatic/foo2hiperc -Oki-C810.ppd.gz Oki C810 Foomatic/foo2hiperc-z1 -lsb/usr/foo2zjs/Oki-C810.ppd.gz Oki C810 Foomatic/foo2hiperc-z1 -Oki-C3100.ppd.gz Oki C3100 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C3100.ppd.gz Oki C3100 Foomatic/foo2hiperc -Oki-C3200.ppd.gz Oki C3200 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C3200.ppd.gz Oki C3200 Foomatic/foo2hiperc -Oki-C3300.ppd.gz Oki C3300 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C3300.ppd.gz Oki C3300 Foomatic/foo2hiperc -Oki-C3400.ppd.gz Oki C3400 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C3400.ppd.gz Oki C3400 Foomatic/foo2hiperc -Oki-C3530_MFP.ppd.gz Oki C3530 MFP Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C3530_MFP.ppd.gz Oki C3530 MFP Foomatic/foo2hiperc -Oki-C5100.ppd.gz Oki C5100 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5100.ppd.gz Oki C5100 Foomatic/foo2hiperc -Oki-C5200.ppd.gz Oki C5200 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5200.ppd.gz Oki C5200 Foomatic/foo2hiperc -Oki-C5500.ppd.gz Oki C5500 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5500.ppd.gz Oki C5500 Foomatic/foo2hiperc -Oki-C5600.ppd.gz Oki C5600 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5600.ppd.gz Oki C5600 Foomatic/foo2hiperc -Oki-C5650.ppd.gz Oki C5650 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5650.ppd.gz Oki C5650 Foomatic/foo2hiperc -Oki-C5800.ppd.gz Oki C5800 Foomatic/foo2hiperc -lsb/usr/foo2zjs/Oki-C5800.ppd.gz Oki C5800 Foomatic/foo2hiperc -Olivetti-d-Color_P160W.ppd.gz Olivetti d-Color P160W Foomatic/foo2hiperc -lsb/usr/foo2zjs/Olivetti-d-Color_P160W.ppd.gz Olivetti d-Color P160W Foomatic/foo2hiperc -Pantum/Pantum_M6200W_Series.ppd Pantum M6200W Series -Pantum/Pantum_M6500_Series.ppd Pantum M6500 Series -Pantum/Pantum_M6500N_Series.ppd Pantum M6500N Series -Pantum/Pantum_M6500NW_Series.ppd Pantum M6500NW Series -Pantum/Pantum_M6500W_Series.ppd Pantum M6500W Series -Pantum/Pantum_M6550_Series.ppd Pantum M6550 Series -Pantum/Pantum_M6550N_Series.ppd Pantum M6550N Series -Pantum/Pantum_M6550NW_Series.ppd Pantum M6550NW Series -Pantum/Pantum_M6550W_Series.ppd Pantum M6550W Series -Pantum/Pantum_M6600_Series.ppd Pantum M6600 Series -Pantum/Pantum_M6600N_Series.ppd Pantum M6600N Series -Pantum/Pantum_M6600NW_Series.ppd Pantum M6600NW Series -Pantum/Pantum_M6600W_Series.ppd Pantum M6600W Series -Pantum/Pantum_M6602W_Series.ppd Pantum M6602W Series -Pantum/Pantum_MS6000NW_Series.ppd Pantum MS6000NW Series -Pantum/Pantum_P2200_Series.ppd Pantum P2200 Series -Pantum/Pantum_P2200W_Series.ppd Pantum P2200W Series -Pantum/Pantum_P2500_Series.ppd Pantum P2500 Series -Pantum/Pantum_P2500N_Series.ppd Pantum P2500N Series -Pantum/Pantum_P2500NW_Series.ppd Pantum P2500NW Series -Pantum/Pantum_P2500W_Series.ppd Pantum P2500W Series -Pantum/Pantum_P2550_Series.ppd Pantum P2550 Series -Pantum/Pantum_P2550N_Series.ppd Pantum P2550N Series -Pantum/Pantum_P2600_Series.ppd Pantum P2600 Series -Pantum/Pantum_P2600N_Series.ppd Pantum P2600N Series -Pantum/Pantum_P2600NW_Series.ppd Pantum P2600NW Series -Pantum/Pantum_S2000_Series.ppd Pantum S2000 Series -raw Raw Queue -lsb/usr/cupsfilters/Ricoh-PDF_Printer-PDF.ppd Ricoh PDF Printer -Samsung-CLP-300.ppd.gz Samsung CLP-300 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-300.ppd.gz Samsung CLP-300 Foomatic/foo2qpdl -Samsung-CLP-310.ppd.gz Samsung CLP-310 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-310.ppd.gz Samsung CLP-310 Foomatic/foo2qpdl -Samsung-CLP-315.ppd.gz Samsung CLP-315 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-315.ppd.gz Samsung CLP-315 Foomatic/foo2qpdl -Samsung-CLP-325.ppd.gz Samsung CLP-325 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-325.ppd.gz Samsung CLP-325 Foomatic/foo2qpdl -Samsung-CLP-365.ppd.gz Samsung CLP-365 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-365.ppd.gz Samsung CLP-365 Foomatic/foo2qpdl -Samsung-CLP-600.ppd.gz Samsung CLP-600 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-600.ppd.gz Samsung CLP-600 Foomatic/foo2qpdl -Samsung-CLP-610.ppd.gz Samsung CLP-610 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-610.ppd.gz Samsung CLP-610 Foomatic/foo2qpdl -Samsung-CLP-620.ppd.gz Samsung CLP-620 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLP-620.ppd.gz Samsung CLP-620 Foomatic/foo2qpdl -Samsung-CLX-2160.ppd.gz Samsung CLX-2160 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLX-2160.ppd.gz Samsung CLX-2160 Foomatic/foo2qpdl -Samsung-CLX-3160.ppd.gz Samsung CLX-3160 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLX-3160.ppd.gz Samsung CLX-3160 Foomatic/foo2qpdl -Samsung-CLX-3175.ppd.gz Samsung CLX-3175 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLX-3175.ppd.gz Samsung CLX-3175 Foomatic/foo2qpdl -Samsung-CLX-3185.ppd.gz Samsung CLX-3185 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Samsung-CLX-3185.ppd.gz Samsung CLX-3185 Foomatic/foo2qpdl -SecuSoft-SFL-2000.ppd SecuSoft ras2jbig 1.0.3 -Xerox-Phaser_6110.ppd.gz Xerox Phaser 6110 Foomatic/foo2qpdl -lsb/usr/foo2zjs/Xerox-Phaser_6110.ppd.gz Xerox Phaser 6110 Foomatic/foo2qpdl -Xerox-Phaser_6115MFP.ppd.gz Xerox Phaser 6115MFP Foomatic/foo2lava -lsb/usr/foo2zjs/Xerox-Phaser_6115MFP.ppd.gz Xerox Phaser 6115MFP Foomatic/foo2lava -Xerox-Phaser_6121MFP.ppd.gz Xerox Phaser 6121MFP Foomatic/foo2lava -lsb/usr/foo2zjs/Xerox-Phaser_6121MFP.ppd.gz Xerox Phaser 6121MFP Foomatic/foo2lava -Xerox-WorkCentre_3045.ppd.gz Xerox WorkCentre 3045 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Xerox-WorkCentre_3045.ppd.gz Xerox WorkCentre 3045 Foomatic/foo2hbpl2 -Xerox-WorkCentre_6015.ppd.gz Xerox WorkCentre 6015 Foomatic/foo2hbpl2 -lsb/usr/foo2zjs/Xerox-WorkCentre_6015.ppd.gz Xerox WorkCentre 6015 Foomatic/foo2hbpl2 -drv:///sample.drv/zebracpl.ppd Zebra CPCL Label Printer -drv:///sample.drv/zebraep1.ppd Zebra EPL1 Label Printer -drv:///sample.drv/zebraep2.ppd Zebra EPL2 Label Printer -drv:///sample.drv/zebra.ppd Zebra ZPL Label Printer -``` diff --git a/doc/zh/ANDROID_PRINTING_SERVICE_PLUGIN.md b/doc/zh/ANDROID_PRINTING_SERVICE_PLUGIN.md deleted file mode 100644 index 21030a2..0000000 --- a/doc/zh/ANDROID_PRINTING_SERVICE_PLUGIN.md +++ /dev/null @@ -1,361 +0,0 @@ -# 一 简介 - -从Android4.4开始,系统加入了打印相关的API,可以通过系统打印服务实现打印。对于需要使用打印功能的APP可参考官方教程接入打印服务。 -> Printing Content https://developer.android.com/training/printing/index.html - -这不是本文的内容,本文介绍打印机厂商如何使自己的打印机接入android,即编写自己的打印插件接入android打印服务。且仅介绍接入部分,与打印机如何连接不在本文范围之内。 - -系统打印服务框架代码位于[``android.printservice``][1]包中。系统并没有实现具体打印功能,需要打印机厂商制作插件接入系统打印服务之后,自行实现。本文基于Android API Reference和以下两个github上的开源项目研究而来。两个参考项目如下: - -* android-print-plugin-cups -主页: https://github.com/pelya/android-print-plugin-cups - -* JfCupsPrintService -主页: https://github.com/mretallack/JfCupsPrintService - -通过实验,初步实现了系统打印服务的接入(添加打印机)和模拟打印(将要打印的文件输出)。 - -# 二 主要类介绍 - -从[``android.printservice``][2]中,我们可以知道主要有四个类: - -* [``PrintDocument``][3] 表示待打印文件,里面存放有文件的大小等信息和文件内容。 - -* [``PrinterDiscoverySession``][4] 用于发现打印机,整个发现打印机和打印机状态更新的过程在该类里进行。 - -* [``PrintJob``][5] 代表一个打印任务。 - -* [``PrintService``][6] 接入系统打印的关键Service。 - -PrinterDiscoverySession 由 PrintService 创建,通过 onCreatePrinterDiscoverySession() 函数返回给系统。 -PrintJob 由需要打印的APP创建,发送给 PrintService 。 -PrintDocument 存放在 PrintJob 里面,被一同发过来。 - -和打印相关的类的更多详细参考见:[Android_Print_API_部分翻译.md][7] 。 - -# 三 打印服务插件的工作流程 - -## 1 打印机发现过程 - -当用户在设置里开启你的打印服务插件和进入系统打印服务界面时,系统会调用 PrinterDiscoverySession 里的 onStartPrinterDiscovery(List priorityList) 函数,通知你的插件查找打印机。具体查找方式需要自己实现,可能是查找USB接口,可能是搜索网络。系统只管结果,你通过调用其父类的 addPrinters() 方法将打印机添加进去。打印机是放在List数组里传入。 - -当用户离开上述打印插件的界面时,系统会调用 onStopPrinterDiscovery() 函数,表示插件可以停止寻找打印机了。 - -另外,在自定义的 addPrintersActivity 中,系统不会自动触发打印机寻找过程,需要自行处理。 - -## 2 打印机选择过程 - -当用户通过一些有打印功能的APP调用系统打印服务时,如果选择了你的插件的打印机,那么系统会调用 PrinterDiscoverySession 里的 onStartPrinterStateTracking(PrinterId printerId) 方法。这里系统主要希望得到打印机的 [``PrinterCapabilitiesInfo``][8] 和状态,里面包括打印机支持的纸张大小,以及色彩等详细功能参数。 - -比如:如果没有addMediaSize(PrintAttributes.MediaSize.ISO_A4, false),那么用户就不能选择A4大小进行打印。后面的false表示是否设为默认值。 - -打印机有STATUS_BUSY、STATUS_IDLE、STATUS_UNAVAILABLE三种状态,只有打印机处于STATUS_IDLE时,系统才允许使用该打印机。 - -打印机参数直接体现在系统打印服务界面,只可以选择支持的参数,比如选择纸张的大小为A4。 - -同样,当用户离开该界面或者选择其他打印机时,系统会调用 onStopPrinterStateTracking(PrinterId printerId) 函数,来告诉插件不用再提供打印机的信息了。 - -## 3 打印过程 - -当用户在刚刚的系统打印服务界面点击右上角的打印按钮时,系统会调用打印机所属的 PrintService 里的 onPrintJobQueued(PrintJob printJob) 方法,插件需要处理该 PrintJob 。首先需要通过 PrintJob.isQueued() 判断,该PrintJob是否准备好打印,返回true代表可以打印。然后可以通过 PrintJob.getDocument() 获得要打印的文档,这里面的数据可以通过 PrintDocument.getData() 读取。开始打印的时候,调用PrintJob.start()标记开始状态。当打印成功时,调用 PrintJob.complete() 标记打印成功。或者打印失败时,调用 PrintJob.fail( String) 标记失败。 - -**注意**:一定要对PrintJob进行状态标记,包括开始或者成功失败。如果什么都不标记,系统会一直在任务栏提示该任务打印中,并且该打印机不可打印其他任务,处于准备中。如果任务结束不标记成功或者失败,一段时间之后,系统会自动将该任务标记为失败,并且打印机状态自动变为不可用。 - - -# 四 系统打印服务输出的数据 - -通过编写DEMO测试,发现android系统打印服务输出的数据是pdf 1.4的格式,无论文件内容是照片还是文档,都会统一转换为pdf 1.4。 - -# 五 打印服务插件初步编写 - - -## 1 打印服务插件的声明 - -一个打印服务和其他任何服务一样,需要在AndroidManifest.xml里声明。但是它还必须处理action为android.printservice.PrintService的Intent。这个intent声明失败会导致系统忽略该打印服务。另外,一个打印服务必须请求android.permission.BIND_PRINT_SERVICE权限,来保证只有系统能绑定(bind)它。声明这个失败会导致系统忽略这个打印服务。 - -一个打印服务可通过自定义设置页面(setting activity)进行配置,该activity提供自定义设置功能。还有一个添加打印机的activity可以手动添加打印机,供应商名称等等。系统负责在适当的时候启动设置和添加打印机的activities。 - -一个打印服务在声明的时候,要在mainfest里提供一条 android:name="android.printservice" 的 meta-data,这是指定上述activities的方式。 - -AndroidManifest.xml文件如下: - -```xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - -``` - -``android:resource="@xml/printservice"``对应的文件为printservice.xml。 - -这里面指定的settingsActivity在打印插件开启界面右上角的菜单里,用于配置插件。 - -addPrintersActivity除了在打印插件开启界面的菜单里,在打印文件时添加打印机里也会被触发,这个activity用来自定义添加打印机。 - -advancedPrintOptionsActivity则是在打印文件的界面上点击更多箭头里出现的MORE OPTIONS选项触发,这个activity用配置打印机的跟多信息。当然这是可选的操作,也可以没有这个activity。 - -printservice.xml文件内容如下所示: - -```xml - - - -``` - -## 2 PrintService实现类编写 - -在这里的 onPrintJobQueued 方法中,直接将需要打印的数据输出为文件。存放在APP根目录里的files文件夹。 - -```java -package com.github.openthos.printer.testprintservice; - -import android.app.Service; -import android.content.Intent; -import android.os.IBinder; -import android.os.ParcelFileDescriptor; -import android.print.PrintJobInfo; -import android.printservice.PrintDocument; -import android.printservice.PrintJob; -import android.printservice.PrintService; -import android.printservice.PrinterDiscoverySession; -import android.util.Log; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.nio.channels.FileChannel; - -public class MyPrintService extends PrintService { - - private static final String TAG = "MyPrintService"; - - @Override - protected PrinterDiscoverySession onCreatePrinterDiscoverySession() { - Log.d(TAG, "onCreatePrinterDiscoverySession()"); - return new MyPrintDiscoverySession(this); - } - - @Override - protected void onRequestCancelPrintJob(PrintJob printJob) { - Log.d(TAG, "onRequestCancelPrintJob()"); - printJob.cancel(); - } - - @Override - protected void onPrintJobQueued(PrintJob printJob) { - Log.d(TAG, "onPrintJobQueued()"); - PrintJobInfo printjobinfo = printJob.getInfo(); - PrintDocument printdocument = printJob.getDocument(); - if (printJob.isQueued()) { - return; - } - printJob.start(); - - String filename = "docu.pdf"; - File outfile = new File(this.getFilesDir(), filename); - outfile.delete(); - FileInputStream file = new ParcelFileDescriptor.AutoCloseInputStream(printdocument.getData()); - //创建一个长度为1024的内存空间 - byte[] bbuf = new byte[1024]; - //用于保存实际读取的字节数 - int hasRead = 0; - //使用循环来重复读取数据 - try { - FileOutputStream outStream = new FileOutputStream(outfile); - while ((hasRead = file.read(bbuf)) > 0) { - //将字节数组转换为字符串输出 - //System.out.print(new String(bbuf, 0, hasRead)); - outStream.write(bbuf); - } - outStream.close(); - } catch (IOException e) { - e.printStackTrace(); - }finally { - //关闭文件输出流,放在finally块里更安全 - try { - file.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - printJob.complete(); - } -} - -``` - -## 3 PrinterDiscoverySession实现类编写 - -```java -package com.github.openthos.printer.testprintservice; - -import android.print.PrintAttributes; -import android.print.PrinterCapabilitiesInfo; -import android.print.PrinterId; -import android.print.PrinterInfo; -import android.printservice.PrinterDiscoverySession; -import android.util.Log; - -import java.util.ArrayList; -import java.util.List; - -/** - * Created by bboxh on 2016/3/14. - */ -public class MyPrintDiscoverySession extends PrinterDiscoverySession { - private static final String TAG = "MyPrintDiscoverySession"; - private final MyPrintService myPrintService; - - public MyPrintDiscoverySession(MyPrintService myPrintService) { - Log.d(TAG, "MyPrintDiscoverySession()"); - this.myPrintService = myPrintService; - } - - @Override - public void onStartPrinterDiscovery(List priorityList) { - Log.d(TAG, "onStartPrinterDiscovery()"); - List printers = this.getPrinters(); - String name = "printer1"; - PrinterInfo myprinter = new PrinterInfo - .Builder(myPrintService.generatePrinterId(name), name, PrinterInfo.STATUS_IDLE) - .build(); - printers.add(myprinter); - addPrinters(printers); - } - - @Override - public void onStopPrinterDiscovery() { - Log.d(TAG, "onStopPrinterDiscovery()"); - } - - /** - * 确定这些打印机存在 - * @param printerIds - */ - @Override - public void onValidatePrinters(List printerIds) { - Log.d(TAG, "onValidatePrinters()"); - } - - /** - * 选择打印机时调用该方法更新打印机的状态,能力 - * @param printerId - */ - @Override - public void onStartPrinterStateTracking(PrinterId printerId) { - Log.d(TAG, "onStartPrinterStateTracking()"); - PrinterInfo printer = findPrinterInfo(printerId); - if (printer != null) { - PrinterCapabilitiesInfo capabilities = - new PrinterCapabilitiesInfo.Builder(printerId) - .setMinMargins(new PrintAttributes.Margins(200, 200, 200, 200)) - .addMediaSize(PrintAttributes.MediaSize.ISO_A4, true) - //.addMediaSize(PrintAttributes.MediaSize.ISO_A5, false) - .addResolution(new PrintAttributes.Resolution("R1", "200x200", 200, 200), false) - .addResolution(new PrintAttributes.Resolution("R2", "300x300", 300, 300), true) - .setColorModes(PrintAttributes.COLOR_MODE_COLOR - | PrintAttributes.COLOR_MODE_MONOCHROME, - PrintAttributes.COLOR_MODE_MONOCHROME) - .build(); - - printer = new PrinterInfo.Builder(printer) - .setCapabilities(capabilities) - .setStatus(PrinterInfo.STATUS_IDLE) - // .setDescription("fake print 1!") - .build(); - List printers = new ArrayList(); - - printers.add(printer); - addPrinters(printers); - } - } - - @Override - public void onStopPrinterStateTracking(PrinterId printerId) { - Log.d(TAG, "onStopPrinterStateTracking()"); - } - - @Override - public void onDestroy() { - Log.d(TAG, "onDestroy()"); - } - - private PrinterInfo findPrinterInfo(PrinterId printerId) { - List printers = getPrinters(); - final int printerCount = getPrinters().size(); - for (int i = 0; i < printerCount; i++) { - PrinterInfo printer = printers.get(i); - if (printer.getId().equals(printerId)) { - return printer; - } - } - return null; - } - -} -``` - -# 六 总结 - -学习了该部分知识之后,已经可以初步从系统打印服务接入打印机,并取得要打印的文件。之后根据使用情况,适时地跟进细节即可。 - - - [1]: https://developer.android.com/reference/android/printservice/package-summary.html - [2]: https://developer.android.com/reference/android/printservice/package-summary.html - [3]: https://developer.android.com/reference/android/printservice/PrintDocument.html - [4]: https://developer.android.com/reference/android/printservice/PrinterDiscoverySession.html - [5]: https://developer.android.com/reference/android/printservice/PrintJob.html - [6]: https://developer.android.com/reference/android/printservice/PrintService.html - [7]: https://github.com/openthos/printer-analysis/blob/master/APP%2FAndroid_Print_API_%E9%83%A8%E5%88%86%E7%BF%BB%E8%AF%91.md - [8]: https://developer.android.com/reference/android/print/PrinterCapabilitiesInfo.html diff --git a/doc/zh/APP.md b/doc/zh/APP.md deleted file mode 100644 index b13d512..0000000 --- a/doc/zh/APP.md +++ /dev/null @@ -1,84 +0,0 @@ -# 打印原理 - -打印实现路径图: - -![打印实现路径图](https://github.com/openthos/printer-analysis/blob/master/report/raw/3987526971.png) - -在Android系统4.4及以上版本中,系统已加入一个打印框架,名为系统打印服务。打印机厂商可以制作打印服务插件,接入系统打印服务,从而实现在Android上使用自己的打印机。 - -整个打印程序包括两部分,转接CUPS插件和CUPS打印系统。其中CUPS打印系统部分请参考制作CUPS数据包页面:[MAKING_A_CUPS_COMPONENT.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/MAKING_A_CUPS_COMPONENT.md)。本文讲解制作转接CUPS插件。 - - -# 打印APP - -转接CUPS插件就是就是打印APP,这个打印应用程序承担了连接CUPS和系统打印服务的功能。 - -因此,主要分为系统打印服务插件部分和CUPS交流接口,另外会对打印任务状态更新机制进行介绍。 - -## 系统打印服务插件部分 - -制作系统打印服务插件请参考:[ANDROID_PRINTING_SERVICE_PLUGIN.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/ANDROID_PRINTING_SERVICE_PLUGIN.md) - -## CUPS交流接口 - -CUPS交流接口即如何使程序连接CUPS。 - -连接CUPS其实有多种方式。 - -1. 使用ipp接口(网络) -2. 使用CUPS API for Java -3. 使用命令行调用命令 - -考虑到ipp接口可能较为复杂,以及Java版的CUPS接口不完善,所以采用命令行调用方式实现与CUPS的连接。 - -CUPS交流接口(调用命令)参考:[CHATTING_WITH_CUPS.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/CHATTING_WITH_CUPS.md) - -## 打印任务触发事件 - -打印程序需要显示打印任务的状态,可以通过前面CUPS交流接口中看到查询打印任务的命令。 - -但是对于如何知道打印任务状态被更新,我们没有找到一个直接的途径。因此,我们通过枚举打印任务状态变化的可能,针对各个情况分别处理,从而实现监听打印任务的状态。 - -编号|事件|可感知 -|---|---|--- -|1|新建任务|主动 -|2|取消任务(取消所有)|主动 -|3|暂停任务(暂停所有)|主动 -|4|恢复任务(恢复所有)|主动 -|5|打印完毕(包括出错和成功)|被动 -|6|远程操作任务(暂时忽略)|被动 - -总共发现了6个与打印任务状态相关的时事件,其中 6 远程操作任务 是从网络接收的指令,里面同样包含了 1~5 事件,但是我们暂时未能找到简单地主动监测6事件的方法。虽然有复杂的可行方法,但由于综合考虑暂时先做忽略处理。 - -其中 1~4 是由程序主动发出的任务,我们能够主动感知,从而刷新任务状态。 - -重点需要解决 5 事件,可以细分处理。首先 5 事件是有打印任务存在才会出现的情况。没有打印任务则无关。 - -对于 5 事件 ,目前收录的情况有: - -编号|详细情况|监听方案 -|---|---|--- -|5.1|由正常打印状态变化到打印完毕|若是正常打印状态,则轮询查询,直至打印结束 -|5.2|先前处于就绪态,离线打印机中途插入,打印完毕|打印机离线,则监测USB,有插入设备,则延时检测是否有变化。 - -对于 5.2 情况会有两种结果。 - -编号|结果 -|---|--- -|5.2.1|若是该打印机,状态发生变化则进入 5.1 情况 -|5.2.2|若不是该打印机,回到 5.2 状态 - -至此,我们已经处理了除了 6 事件外所有的事件,没有网络打印时,能够及时有效的监听打印任务状态的变化。 - -若考虑网络打印,该方法会丢失接收网络打印任务极其状态变化的监听。 - -除此之外,为了打印任务状态的更新更加及时,在每次进入打印任务管理界面都会主动刷新打印任务。 - -对于存在就绪态任务,会延时刷新一次。因为有时虽然打印机插上,还是会短暂的处于就绪态。 - -# 代码位置 - -目前代码存放有两个地点。 - -1. 使用Android studio开发的程序位于 [printer-analysis项目的dev-app分支](https://github.com/openthos/printer-analysis/tree/dev-app) 。需要使用的程序是其中的 localprint 模块,这是一个app。 -2. 可直接集成到系统中的程序地址:[oto_packages_apps_Printer](https://github.com/openthos/oto_packages_apps_Printer)。(更新可能较慢) diff --git a/doc/zh/BUILDING.md b/doc/zh/BUILDING.md deleted file mode 100644 index af42a0d..0000000 --- a/doc/zh/BUILDING.md +++ /dev/null @@ -1,167 +0,0 @@ -# 1 程序组成部分 - -打印机程序可以分为三个部分说明。操作细节根据编译方式不同,会在编译部分具体介绍。 - -## 1.1 添加自定义权限 - -打印程序使用USB打印机,需要直接接触USB文件:`/dev/bus/usb/*/*`,在Android系统中这些usb文件应用程序只能通过Java层申请权限才能在JAVA层间接使用。 -可喜的是这些文件属于 USB用户组 ,所以我们只需要把程序加入 USB用户组 即可。但是在Android中默认没有 USB用户组 对应的权限,需要添加自定义权限。 - -## 1.2 程序 - -打印程序负责整个打印工作。 - -使用Android studio开发的程序位于 https://github.com/openthos/printer-analysis.git 项目的dev-app分支。需要使用的程序是其中的 localprint 模块,这是一个app。 - -可直接集成到系统中的程序地址:https://github.com/openthos/oto_packages_apps_Printer - -这个程序需要使用platform签名编译,否则无法使用上一步添加的自定义权限ACCESS_USB_DEVICE。 - -## 1.3 程序额外数据包 - -程序第一运行时需要导入一个数据包,数据包需要提前存放在系统中`/system/component_printer.tar.gz`。 - -目前已开发到第27版数据包 component_printer_27.tar.gz ,可在如下地址获取: - -1. dev分支 https://github.com/openthos/printer-analysis/tree/dev -2. 百度云链接:http://pan.baidu.com/s/1nuX8spN 密码:l2xk -3. 实验室内网docker服务器中:/home/lh/hxp/archlinux 文件夹。 - -# 2 编译 - -## 2.1 在Android源码中编译 - -### 2.1.1 构建Android源码开发环境 - -参考openthos构建教程: https://github.com/openthos/openthos/wiki/Download_Build_Run_OTO - -### 2.1.2 添加自定义权限 - -需要在 frameworks/base/data/etc/platform.xml中添加: -``` xml - - - -``` -比如添加在android.permission.ACCESS_FM_RADIO下面: -``` xml - - - - - - - - - - - - -``` -这部分只需要修改一次。 - -### 2.1.3 加入打印程序 - -这里把程序作为系统程序作为一个模块加入,放入源码目录 packages/apps 里,比如新建 packages/apps/Printer 文件夹。 -在源码中编译,需要编写Android.mk、CleanSpec.mk等文件。 - -或者使用更改好的Printer代码:https://github.com/openthos/oto_packages_apps_Printer - -Android.mk文件示例: -``` makefile -LOCAL_PATH:= $(call my-dir) - -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional - -appcompat_dir := $(LOCAL_PATH)/../../../prebuilts/sdk/current/support/v7/appcompat/res - -LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 -LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-appcompat -LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13 - -LOCAL_SRC_FILES := $(call all-java-files-under, src) - -LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res $(appcompat_dir) - -LOCAL_AAPT_FLAGS := --auto-add-overlay -LOCAL_AAPT_FLAGS += --extra-packages android.support.v7.appcompat - -LOCAL_PACKAGE_NAME := Printer -LOCAL_CERTIFICATE := platform -LOCAL_PRIVILEGED_MODULE := true - -include $(BUILD_PACKAGE) - -ifeq (,$(ONE_SHOT_MAKEFILE)) -include $(call all-makefiles-under,$(LOCAL_PATH)) -endif - -``` - -Printer内文件目录示意: -``` -Android.mk AndroidManifest.xml CleanSpec.mk res src -``` - -此外把该模块加入编译,可以修改 build/target/product/core.mk 文件,把模块名称加入其中即可。 - -## 2.2 使用Android Studio - -### 2.2.1 导入程序 - -程序位于 https://github.com/openthos/printer-analysis.git 项目的dev-app分支。 -需要使用的程序是其中的 localprint 模块,这是一个app。 -程序详细地址: https://github.com/openthos/printer-analysis/tree/dev-app/localprint - -Android Studio可以直接导入该项目。 - -### 2.2.2 编译 - -在Android Studio中使用platform签名编译,可以借助[keytool-importkeypair](https://github.com/getfatday/keytool-importkeypair) 工具将系统签名转换成Android Studio可以使用的签名文件。 - -1 首先下载好上述脚本,并拷贝系统源码 build/target/product/security 里的 platform.pk8 platform.x509.pem 文件到脚本目录,执行转换命令。 -命令示例: -``` -./keytool-importkeypair -k ./demo_platform.keystore -pk8 platform.pk8 -cert platform.x509.pem -passphrase 123456 -alias demo_platform -``` - -2 拷贝生成的 demo_platform.keystore 文件到项目根目录。 - -3 在模块 builde.gradle 文件里修改签名策略,示例: -``` -release { - storeFile file("../demo_platform.keystore") - storePassword '123456' - keyAlias 'demo_platform' - keyPassword '123456' -} - -debug { - storeFile file("../demo_platform.keystore") - storePassword '123456' - keyAlias 'demo_platform' - keyPassword '123456' -} -``` - -这样程序就能够使用之前添加的自定义权限ACCESS_USB_DEVICE。 - -### 2.2.3 添加自定义权限 - -添加自定义权限,必须使用2.1.2中的方法自行编译源码。Android Studio只是为了开发更方便。 - -# 3 运行 - -## 3.1 在Android源码中 - -跟随系统运行,记得提前导入数据包。 - -## 3.2 Android Studio - -正常运行,记得提前导入数据包。 - - - diff --git a/doc/zh/CHATTING_WITH_CUPS.md b/doc/zh/CHATTING_WITH_CUPS.md deleted file mode 100644 index 45eee7b..0000000 --- a/doc/zh/CHATTING_WITH_CUPS.md +++ /dev/null @@ -1,212 +0,0 @@ -# 交流接口简介 - -CUPS交流接口描述了CUPS程序与APP上层交互的方式。 - -在打印应用中,APP上层接收到用户的指令。应用在JAVA层面调用命令行发出命令,将命令传递给CUPS程序,实现打印相关操作。 - -为了完成命令的传送,我们整理了所有与打印相关的操作,并且称之为CUPS交流接口。 - -## 分类 - -* A cups管理 -* B 打印机管理 -* C 打印任务管理 - -## 详细列表 - -| 编号 | 类名/简介 | 具体命令/备注 | -|---|---|---| -|A1| CommandTask|sh proot.sh /usr/bin/lpstat -r| -||检测打印机是否运行|判断输出的字符串中是否包含“scheduler is running”字段 -|A2| CommandTask|sh proot.sh /usr/sbin/cupsd -f| -||启动CUPS|| -|A3| CommandTask| -||关闭cups|未编写,实际通过`kill pid`即可正常关闭cups。注意不要kill -9 pid,这会强行关闭cups。`pid`为进程号。 -|B1| SearchModelsTask|sh proot.sh lpinfo -m| -||查询可用打印机驱动|会将所有PPD信息输出 -|B2| AddPrinterTask|sh proot.sh lpadmin -p name -v url -m model -o printer-is-shared=false -E| -||添加打印机| -|B3| ListAddedTask|sh proot.sh lpstat -v| -||查询已添加打印机| -|B4| DeletePrinterTask|sh proot.sh lpadmin -x printerName| -||删除打印机| -|B5| UpdatePrinterCupsOptionsTask|sh proot.sh lpoptions -p printerName [-o optionName=optionsVaule]...| -||修改打印机高级配置| -|B6| StateTask|sh proot.sh lpoptions -p printerName -l -||查询打印机状态和配置| -|B7| | -||设置默认打印机|暂时可以不用 -|B8| SearchPrintersTask|sh proot.sh lpinfo -v -l| -||查询可添加打印机| -|B9| QueryPrinterCupsOptonsTask|sh proot.sh lpoptions -p printerName -l| -||查询打印机高级设置|查询CUPS所有可用的设置 -|B10|QueryPrinterOptonsTask|sh proot.sh sh printerquery.sh printerName -||查询打印机设置|查询安卓打印直接相关的参数,[printerquery.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/printerquery.sh)里的命令如下:lpoptions -p $1 && lpoptions -p $1 -l -|B11|UpdatePrinterOptonsTask|sh proot.sh lpoptions -p printerName -o MediaSizeName=mediaSizeValue -o ColorModeName=colorModeValue -||修改打印机设置| -|B12|ResumePrinterTask|sh proot.sh cupsenable PrinterName| -||恢复打印机|打印机有时遇到问题会被自动暂停 -|B13|RepairPdfTask|sh proot.sh gs -o repairedFileName -sDEVICE=pdfwrite fileName| -||修复损坏的PDF文件|防止打印时因PDF文件问题使得打印出错 -|C1|PrintTask|sh proot.sh lp -d printerName fileName -o media=mediaSize [-o Resolution=resolution] [-o landscape] -t label -n copies -P ranges [-o fit-o-page]| -||打印|中括号为可选参数 -|C2|JobQueryTask|sh proot.sh sh /jobquery.sh | -||查询打印任务| [jobquery.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/jobquery.sh)里的命令如下:lpq -a && lpstat -l -o -|C3|JobCancelTask|sh proot.sh cancel jobId -||取消打印任务| -|C4|JobPauseTask|shproot.sh ipptool http://localhost:CUPS_PORT/jobs -d job-id=JobId hold-job.test -||暂停打印任务|[hold-job.test](https://github.com/openthos/printer-analysis/blob/dev/shell/hold-job.test)文件内为ipp命令内容 -|C5|JobResumeTask|sh proot.sh ipptool http://localhostCUPS_PORT/jobs -d job-id=JobId release-job.test -||恢复打印任务|[release-job.test](https://github.com/openthos/printer-analysis/blob/dev/shell/release-job.test)文件内为ipp命令内容 -|C6|JobCancelAllTask|sh proot.sh cancel -a -||取消所有打印任务 -|C7|JobPauseAllTask|sh proot.sh sh hold_release.sh jobId1 jobId2 ... hold -||暂停所有打印任务|参考 C4 调用ipptool发送命令,详见数据包里的[hold_release.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/hold_release.sh) -|C8|JobResumeAllTask|sh proot.sh sh hold_release.sh jobId1 jobId2 ... release -||恢复所有打印任务|参考 C5 调用ipptool发送命令,详见数据包里的[hold_release.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/hold_release.sh) - -## 注意 - -由于使用`Runtime.getRuntime().exec(cmd, null, file);`函数执行命令,以及proot工具包装程序,一次只能执行一条命令,所以需要多条命令时,将命令放入一个脚本文件里执行。 - -# 颜色对应表 - -在CUPS中打印机支持的打印色彩并不统一,根据打印机驱动的不同表示名称也不同。在Android中打印色彩只有两种`COLOR_MODE_MONOCHROME`和`COLOR_MODE_COLOR`,分别代表黑白和彩色。 - -|驱动名|PPD名|颜色键名|MONOCHROME对应项|COLOR对应项 -|---|---|---|---|--- -|Epson官方驱动||Color|Grayscale|Color -|foo2zjs||ColorMode|Monochrome|ICM -|hpcups|HP Color LaserJet 3000 pcl3, hpcups 3.14.3|ColorModel|Gray|RGB -|奔图||无|无|无 -||HP Color LaserJet 3000 Postscript|ColorModel|Gray|CMYK - -# 纸张尺寸对应表 - -本表尽可能的收集能够相互对应的尺寸列表。 - -|CUPS中的尺寸名|PPD文件中的值|Android中的尺寸名|Android中的值 -|---|---|---|--- -|A2|420x594mm|ISO_A2|420mm x 594mm (16.54" x 23.39") -|A3|297x420mm|ISO_A3|297mm x 420mm (11.69" x 16.54") -|A4|210x297mm|ISO_A4|210mm x 297mm (8.27" x 11.69") -|A5|148x210mm|ISO_A5|148mm x 210mm (5.83" x 8.27") -|A6|105x148mm|ISO_A6|105mm x 148mm (4.13" x 5.83") -|B5|176x250mm|ISO_B5|176mm x 250mm (6.93" x 9.84") -|B6|125x176mm|ISO_B6|125mm x 176mm (4.92" x 6.93") -|B7|88x125mm|ISO_B7|88mm x 125mm (3.46" x 4.92") -|C4|229x324mm|ISO_C4|229mm x 324mm (9.02" x 12.76") -|C5|162x229mm|ISO_C5|162mm x 229mm (6.38" x 9.02") -|Letter|8.5x11in|NA_LETTER|8.5" x 11" (279mm x 216mm) -|Executive|7.25x10.5in|NA_MONARCH|7.25" x 10.5" (184mm x 267mm) -|8k|10.75x15.5in|ROC_8K|270mm x 390mm (10.629" x 15.3543") -|16k|7.75x10.75in|ROC_16K|195mm x 270mm (7.677" x 10.629") -|Legal|8.5x14in|NA_LEGAL|8.5" x 14" (216mm x 356mm) -|Ledger|11x17in|NA_LEDGER|17" x 11" (432mm × 279mm) -|B|11x17in|NA_TABLOID|11" x 17" (279mm × 432mm) -|Card3x5|3x5in|NA_INDEX_3X5|3" x 5" (76mm x 127mm) -|Photo4x6|4x6in|NA_INDEX_4X6|4" x 6" (102mm x 152mm) -|Card5x8|5x8in|NA_INDEX_5X8|5" x 8" (127mm x 203mm) -|Hagaki|100x148mm|JPN_HAGAKI|100mm x 148mm (3.937" x 5.827") -|Oufuku|148x200mm|JPN_OUFUKU|148mm x 200mm (5.827" x 7.874") -|JB5|182x257mm|JIS_B5|182mm x 257mm (7.165" x 10.118") -|JB7|91x128mm|JIS_B7|91mm x 128mm (3.583" x 5.049") -|ExecutiveJIS|8.5x12.986in|JIS_EXEC|216mm x 330mm (8.504" x 12.992") -|EnvA2|4.37x5.75in|JPN_CHOU2|111.1mm x 146mm (4.374" x 5.748") -|EnvChou3|120x235mm|JPN_CHOU3|120mm x 235mm (4.724" x 9.252") -|EnvChou4|90x205mm|JPN_CHOU4|90mm x 205mm (3.543" x 8.071") -|EnvDL|110x220mm|PRC_5|110mm x 220mm (4.330" x 8.661") -|Mutsugiri|8x10in|NA_QUARTO|8" x 10" (203mm x 254mm) -|EnvKaku2|240x332mm|JPN_KAKU2|240mm x 332mm (9.449" x 13.071") -|Yougata4|105 x 235mm|JPN_YOU4|105mm x 235mm (4.134" x 9.252") - -## 未找到对应尺寸 -|CUPS中的尺寸名|PPD文件中的值| -|---|---| -|Photo5x7|5x7in| -|FLSA|8.5x13in| -|EnvC6|114x162mm| -|EnvMonarch|3.875x7.5in| -|Env9|Envelope #9| -|Env10|4.12x9.5in| -|EnvC5|162x229mm| -|EnvB5|176x250mm| -|SuperB|13x19in| -|B4|257x364mm| -|PhotoL|3.5x5in| -|HV|101x180mm| -|Cabinet|120x165mm| -|8x10|8x10in| -|Env6|3.63x6.5in| -|EnvCard|4.4x6in| -|L|89x127mm| -|2L|127x178mm| -|CDDVD80|80mm| -|CDDVD120|120mm| -|FanFoldGermanLegal|8.5 x 13| -|Oficio|216 x 340 mm| -|184x260mm|16K 184 x 260 mm| -|7.75x10.75|7.75x10.75| -|260x368mm|8K 260x368 mm| -|10.75x15.5|8K 273x394 mm| -|DoublePostcardRotated|Postcard Double Long Edge| -|FanFoldGerman|8.5x12| - -# 打印状态记录表 - -这是任务 C2 解析的字段示例,根据这些字段就能够判断该任务当前的状态。 - -``` -等待打印机 -HP_LaserJet_Professional_P1108-45 unknown 1024 Tue Jul 5 13:38:01 2016 -Status: Waiting for printer to become available. -Alerts: printer-stopped -queued for HP_LaserJet_Professional_P1108 - -等待打印机 -HP_LaserJet_Professional_P1108-45 unknown 1024 Tue Jul 5 13:38:01 2016 -Status: Waiting for printer to become available. -Alerts: none -queued for HP_LaserJet_Professional_P1108 - -等待打印机 -HP_LaserJet_Professional_P1108-2​0 anonymous 1024 Sun May 22 16:48:45 2016 -Status: Waiting for printer to become available. -Alerts: job-printing -queued for HP_LaserJet_Professional_P1108 - -失败 -HP_LaserJet_Professional_P1108-2​0 deep 410624 Mon May 16 11:01:12 2016 -Status: /usr/lib/cups/filter/pdftops failed -Alerts: job-printing -queued for HP_LaserJet_Professional_P1108 - -失败 -HP_LaserJet_Professional_P1108-41 unknown 1024 Tue Jul 5 11:51:51 2016 -Status: Filter failed -Alerts: job-hold-until-specified -queued for HP_LaserJet_Professional_P1108 - -就绪 -HP_LaserJet_Professional_P1108-2​1 deep 410624 Mon May 16 11:01:18 2016 -Alerts: none -queued for HP_LaserJet_Professional_P1108 - -暂停 -HP_LaserJet_Professional_P1108-2​0 anonymous 1024 Sun May 22 16:48:45 2016 -Status: -Alerts: job-hold-until-specified -queued for HP_LaserJet_Professional_P1108 - -渲染中 -HP_LaserJet_Professional_P1108-2​1 anonymous 1024 Sun May 22 23:34:05 2016 -Status: Printing page 1, 0% complete... -Alerts: job-printing -queued for HP_LaserJet_Professional_P1108 - -渲染中 -HP_LaserJet_Professional_P1108-2​1 anonymous 1024 Sun May 22 23:34:05 2016 -Status: Processing page 2... -Alerts: job-printing -queued for HP_LaserJet_Professional_P1108 -``` diff --git a/doc/zh/MAKING_A_CUPS_COMPONENT.md b/doc/zh/MAKING_A_CUPS_COMPONENT.md deleted file mode 100644 index 721afe3..0000000 --- a/doc/zh/MAKING_A_CUPS_COMPONENT.md +++ /dev/null @@ -1,297 +0,0 @@ -# 1 这是什么 - -CUPS数据包作为打印程序的组件(component),需要额外放在系统中,在打印程序第一次运行时会自动解压导入。它是打印程序的核心,打印功能靠它实现。 - -数据包实际上是自己定制的一个CUPS运行环境,里面封装了CUPS及一些打印机驱动。这些程序能够在openthos系统中独立运行。 - -# 2 原理 - -## 2.1 依赖Linux内核 - -Openthos系统基于Android x86改造而来,而Android系统是一种使用Linux内核的系统,这点和其他Linux类系统一样。在Linux类系统中CUPS[(Common UNIX Printing System,通用Unix打印系统)](http://www.cups.org/)是应用最广的打印解决方案。CUPS是开源的,可以编译安装在任何Linux类系统。Android使用Linux内核,所以有可能性把CUPS移植到Openthos系统中。 - -CUPS属于Linux用户态程序,从内核的角度来看,它的成功运行,只需要保证系统调用正常即可。即,无论CUPS使用了哪些依赖,比如:glibc,libusb等,最终都依靠系统调用实现功能。所以需要保证两方面: - -1. 保证系统调用正常,需要标准Linux内核和足够权限,Android满足。 -2. 用户态程序运行正常,需要CPU能正确识别的二进制程序。这点对于Openthos来说,编译x86程序即可保证兼容。 - -所以,移植CUPS理论上是可行的,事实也如此。 - -## 2.2 使用proot - -我们希望让CUPS程序运行在指定的目录里,不对系统产生其他影响。如果让CUPS直接运行在系统中,CUPS必然会用到一些root权限才能读写的目录,很不方便。所以很显然的想到了`chroot`这种改变根目录的技术。但是chroot是需要root权限的,于是我们找到了一个限制更少的工具:PRoot。 - -PRoot是一种chroot的用户态开源实现工具。(PRoot项目地址: https://github.com/proot-me/PRoot ) - -用户不需要拥有系统特权就可以在任意目录建立一个新的根文件系统。从而在建立的根文件系统内做任何事情。从技术上来说,PRoot是依靠ptrace机制实现的。ptrace允许程序在没有拿到系统特权(root)时,父进程观察并修改子进程的系统调用。 - -所以,我们使用PRoot就能够让CUPS运行在指定的目录里,不必弄脏系统。 - -# 3 制作 - -本节介绍制作一个包含CUPS的独立运行环境的步骤。 - -为了方便制作,这里选择使用32位的ArchLinux最简系统,该系统可定制性强,可只安装必须的程序包。并且编译要加入的程序时,直接编译即可,因为直接编译就是x86构架的程序,在基于x86或者amd64构架的Openthos系统是兼容,无需交叉编译。 - -在这里尽可能的给出编译时所需的依赖,但肯定会有很多遗漏需要自行解决。 - -## 3.1 基础环境 - -### 3.1.1 加入proot - -先加入proot可执行文件。**注意:master分支的proot不支持自定义临时文件夹**,会使用 /tmp 目录,而在Android中这是不可用的。详见:[PRoot issue 94](https://github.com/proot-me/PRoot/issues/94),所以可以使用 next 分支,该分支添加了`PROOT_TMP_DIR`参数可以指定临时目录。 - -创建好一个文件夹用于制作数据包,这里取名为component。将编译好的proot可执行文件加入,这里取名proot-x86-2,放入根目录。 - -我将每次执行的命令写入了脚本,命名为[proot.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/proot.sh)放入根目录。 -``` shell -#!/system/bin/sh - -export HOME=/ -export LD_HWCAP_MASK=0 -export SHELL=/bin/sh -export PROOT_TMPDIR=`pwd`/tmp -export PROOT_TMP_DIR=$PROOT_TMPDIR -export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin - -`pwd`/proot-x86-2 -w / -r `pwd` -b /dev -b /sys -b /proc "$@" -``` - -### 3.1.2 加入bash 和 busybox - -由于CUPS等程序在运行过程中需要执行很多脚本以及依赖很多命令,所以需要加入脚本执行器和命令。 - -脚本执行器这里选择 bash 。命令由于有很多,这里选择加入busybox,busybox是一个精简的一百多个Linux命令的工具集。**注意:busybox里含有一个精简的脚本执行器,但是并不能满足要求。**所以先加入busybox之后,将其sh文件删除,替换为bash。 - -步骤: - -1. 进入数据包跟目录,执行sh proot.sh进入自定义环境。在根目录创建 /bin /sbin ,再分别创建/usr/bin usr/local/bin 到 /bin 以及 /usr/sbin /usr/local/sbin 软连接到/bin /sbin。制作软连接而不是创建文件夹的原因是,很多程序读取命令是指定绝对地址,而这个命令很可能没有被放在指定的bin里,软连接就可避免这种情况。**注意:一定要进入proot环境之后操作,否则软连接的绝对地址有误**。 -2. 这里将busybox静态编译的可执行程序命名为busybox-i686放入。在proot环境中执行`./busybox-i686 --install`,该命令自动在各个bin sbin里创建命令硬链接。 -3. 由于硬链接在打包的时候会重复占用空间,所有需要替换成软连接。我们编写了[buildcommand.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/buildcommand.sh)脚本(在数据包根目录)用于自动化替换替换busybox生成的硬链接到软连接。 -4. 将静态编译(也可以动态编译,需要放入依赖文件)的bash放入 bin 目录,删除busybox创建的 sh 命令,创建sh软连接到bash。 - -## 3.2 安装CUPS等程序 - -编译安装这些程序时,先动态编译,之后再使用脚本把依赖复制过来。这些程序的介绍请看最后 CUPS相关项目介绍 。 - -### 3.2.1 libusb-1.0.9 - -编译安装libusb到系统以替换其自带libusb是因为Archlinux自带的libusb可能加入了一些特性,导致cups无法在Android环境下成功读写usb端口。 - -``` -./confgiure -make -make install -``` - -### 3.2.2 cups-2.1.2 - -参考命令: -``` -make distclean 若是第二次编译清除上次结果 -./configure --disable-gnutls --disable-gssapi --disable-dbus --disable-dnssd -disable-launchd -make -make BUILDROOT=/home/deep/component_10 install 安装到数据包里 -make install 安装到当前系统 -``` -同时安装到当前系统的目的是为了接下来安装其他程序方便,因为有一些依赖要用到。 - -**注意:** - -屏蔽 cupsd.conf 中的`AuthType`和`Require`行,并且修改`Allow @LOCAL`为`Allow all`,否则由于用户权限问题无法操作cups。 - -屏蔽 cups-files.conf .中的SystemGroup行,否则在Android中由于用户组问题无法运行cups。 - -由于Openthos中的tar命令问题,会导致解压后部分权限丢失。cups网页文件的权限必须是所有用户都有读权限的,所以我们编写了[chang_mode.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/chang_mode.sh)脚本自动修复网页文件的权限。网页文件位于`/usr/share/cups`文件夹,连同cups文件夹都进行修复。 - -### 3.2.3 ghostscript-9.18 - -参考命令: -``` -make distclean -./configure --disable-sse2 --disable-dbus --disable-freetype --disable-fontconfig --disable-gtk --disable-bswap32 --disable-byteswap-h -make -DESTDIR=/home/deep/component_10 make install -make install -``` - -### 3.2.4 cups-filters-1.8.2 - -先到ghostscript的ijs目录,单独编译ijs,执行: -``` -sudo autoreconf -ivf -./configure -make -sudo make install -``` -从 pacman (ArchLinux的包管理器)安装python glib2 poppler依赖。 - -到cups-filters-1.8.2源码根目录执行: -``` -IJS_CFLAGS=-L/usr/local/lib IJS_LIBS=-lijs ./configure --enable-static --disable-avahi --disable-ldap --disable-dbus --disable-imagefilters --without-jpeg --without-png --without-tiff -make -DESTDIR=/home/deep/component_10 make install -make install -``` - -### 3.2.5 foo2zjs - -foo2zjs可以支持一些激光打印机,比如HP的。由于未能找到foo2zjs的版本号,所以请到官网下载最新版。 - -执行`sudo pacman -S bc`安装bc软件包。 -``` -make -DESTDIR=/home/deep/component_10 make install -make install -``` - -#### 3.2.5.1 pdftops -在foo2zjs安装完成后,其中Foomatic/foo2oak以及Foomatic/foo2xqx等类型的PPD文件中需要使用到```pdftops```,但是在```usr/lib/cups/filter```目录下并没有存在,于是需要将其添加才能使得这些类型的驱动成功执行。 - - -32位Ubuntu14.04系统的```/usr/lib/cups/filter/```目录下可以找到此文件,执行 -``` -ldd pdftops -``` -后可以查看其需要依赖的动态库,对比后发现缺少```libpoppler.so.44```以及```libpng12.so.0```两个动态库,于是将这两个动态库以及```pdftops```拷贝至数据包中,```pdftops```放入```usr/lib/cups/filter/```目录下,而动态库放入```usr/lib/```目录下。 - - -### 3.2.6 Pantum官方闭源驱动 - -从官网搜集下载P和M两个系列的打印机Linux驱动: - -1. 20150901-Pantum-P2200-P2500-Series-Linux-Driver-V1.80-2 -2. Pantum-M6200-M6500-M6550-M6600-MS6000-Series-LINUX-Driver-V1-4-0-tar - -Pantum的驱动是闭源的,会解压出 deb 文件,使用i386版本。 - -使用`ar`命令解压deb,如:`ar -x Pantum-M6500-Series-3.0.i386.deb`。 - -解压 data.tar.gz 文件,按照解压出的目录结构,将文件都复制进数据包目录(包含PPD和filter两种文件)。 - -注意:奔图的PPD文件有空格,需要全部去除,否则打印程序解析会出错,我们这里将空格替换为`_`。 - -### 3.2.7 Eposn官方开源驱动 - -由于最新的Epson驱动是以守护进程的形式运行,无法找到任何PPD文件。我们不希望额外的程序一直运行在后台,所以决定先使用其旧版驱动。 - -从Arch的程序库中找到了两个驱动 - -1. epson-inkjet-printer-escpr:https://aur.archlinux.org/packages/epson-inkjet-printer-escpr/ -2. epson-inkjet-printer-201401w:https://aur.archlinux.org/packages/epson-inkjet-printer-201401w/ - -epson-inkjet-printer-escpr正常编译安装即可。 - -epson-inkjet-printer-201401w缺少库libjpeg62,下载编译好的 libjpeg62-62.1.0-30.5.1.i586.rpm ,解压出来cpio。 -执行`cpio -idmv < libjpeg62-62.1.0-30.5.1.i586.cpio`,进入usr/lib/,`cp * ~/component_10/usr/lib/`。 -编译好后不用改变目录结构,就是要放在/opt下面。 - -**注意:该程序是 Linux Standard Base (LSB) 程序,使用的是 /lib/ld-lsb.so.3 链接器**,因此执行`ln -s /lib/ld-linux.so.2 /lib/ld-lsb.so.3`链接到 ld-linux.so 。 - -### 3.2.8 Hpcups && Hplip plugin - -#### 3.2.8.1 编译安装 hpcups - -解压官网下载的 hplip-3.16.2 - -``` -make distclean -./configure --disable-qt4 --disable-gui-build --disable-doc-build --disable-fax-build --disable-dbus-build --disable-network-build --disable-scan-build --enable-cups-ppd-install -make -DESTDIR=/home/deep/component_10 make install -``` - -值得一提的是加上``--enable-hpcups-only-build``参数,就会只留下 hpcups 驱动,没有python等脚本写的专有功能。但是也就不能用hplip plugin了。之后可以手动添加配置文件hplip.conf(不建议),也可以去掉该参数编译自动会生成改文件。 - -#### 3.2.8.2 解压安装 hplip plugin - -hplip plugin 是hp的闭源驱动部分,对于很多激光打印机都需要该部分才能够打印。 -从 http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/?C=M;O=A 下载 hplip-3.16.2-plugin.run - -解压run文件 ``sh *.run --noexec --target 文件夹`` - -根据文件 plugin.spec 里的指示位置,将so文件和ppd复制到数据包里的相应位置。 - -文件夹 prnt 在 ubuntu 中放到 /usr/share/ 文件夹,但是我们需要存放在``/usr/local/share/``目录。 - -#### 3.2.8.3 编写地址转换脚本 - -对于使用 hplip plugin 的打印机,必须要使用 hp 前端过滤器,不能直接使用 usb ,否则会提示 this module is designed to work with hp printers only 。 - -在ubuntu中,系统会自动转换地址为 hp 开头,从而使用 hp 前端过滤器。因此我们编写地址转换脚本,进行动态转换。 - -使用 hpcups 驱动的打印机,会调用``/usr/lib/cups/filter/hpcups`` 后端过滤器,因此我们编写脚本替换hpcups,执行转换操作之后再调用真正的 hpcups 。 - -在数据包的``/usr/lib/cups/filter/``文件夹,重命名 hpcups 为 hpcups1 ,创建 hpcups 脚本文件,文件内容详见:[dev 分支 /shell/hpcups](https://github.com/openthos/printer-analysis/blob/dev/shell/hpcups)。 - -hpcups脚本的功能就是检测地址是否为 usb 开头,如果是则转换为 hp 开头。 hp 开头的地址结构为``hp:/usb/PRINTER_NAME?serial=DEVICE_URI``。之后再调用 hpcups1 。 - -### 3.2.9 嘉华龙马打印机驱动 - -下载 https://github.com/openthos/printer-analysis/raw/dev/SecuSoft-SFL-2000.zip - -解压压缩包,将 SecuSoft-SFL-2000.ppd 放入数据包中``/usr/share/cups/model/``中,ras2jbig 放入``/usr/lib/cups/filter/``中。 - -### 3.2.10 samba - -添加samba是为了能够与Windows进行网络打印,Linux与Windows上打印系统的实现各不相同,因此想要实现两者通信,samba是必须的。 - -这里我们并不将samba服务器完全加入,而只加入我们需要用到的一部分。 - -步骤: - -1、将所需要的samba可执行文件```smbspool```拷贝至数据包的可执行文件目录中,执行```cp /usr/bin/smbspool componet_10/usr/bin/``` - -2、将samba执行所需要的配置文件拷贝至相应目录下,执行```cp /etc/samba/smb.conf componet_10/etc/samba/smb.conf``` - -3、建立Cups后台可执行文件与```smbspool```的软连接,从而让Cups可以去调用其进行与Windows连接,执行```ln -s `which smbspool` /usr/lib/cups/backend/smb``` - -4、使用[cmdldcopy.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/cmdldcopy.sh)脚本将```smbspool```执行所需要依赖的动态库进行拷贝,执行```./cmdldcopy.sh /usr/bin/smbspool ./componet_10/``` - -## 3.3 复制依赖 - -如果所需的程序都加入了,最后需要补全程序缺少的依赖,因此我们编译了[share_lib2.sh](https://github.com/openthos/printer-analysis/blob/dev/shell/share_lib2.sh)脚本来递归遍历所有动态链接程序的依赖,包括so库文件的so库依赖。 - -原理是依次调用`ldd`命令解析依赖并复制。 - -## 3.4 打包 - -``` -tar -zvcf component_10.tar.gz component_10 -``` - -我们在开发中,通常会用数字命名数据包,以区分不同的版本,防止混淆。最后放入系统时再统一名称。 - -# 4 其他 - -## 4.1 调试 - -为了便于调试数据包里程序的问题,除了cups的日志外,可使用strace程序记录系统调用。因此,我们还放入一个静态编译的strace在数据包中。 - -通常,先在ArchLinux中调试通过,再放入Openthos中测试。 - -示例: -``` -sh proot.sh -strace -f cupsd -f &> logPrint -``` -这样就能记录所有的系统调用到logPrint文件中,一定要加上`-f`参数追踪子进程的系统调用。 - -## 4.2 CUPS相关项目介绍 - -请查看:https://github.com/openthos/printer-analysis/blob/master/doc/RELATED_PROJECTS.md - -## 4.3 当时的开发环境 - -在开发整个数据包时,使用的是ArchLinux虚拟机。为了保证数据包继续开发时的兼容性,请下载VMware 12和我们提供的镜像文件。 -当然也可以选择从头制作,则不需要一致的制作环境。 - -镜像文件地址: - -* 地址1: -百度云链接:http://pan.baidu.com/s/1nuX8spN 密码:l2xk - -* 地址2: -实验室内网docker服务器中:/home/lh/hxp/archlinux 文件夹。 - -使用说明请查看镜像文件地址中的 readme.txt 文件。 diff --git a/doc/zh/NET_PRINTERS.md b/doc/zh/NET_PRINTERS.md deleted file mode 100644 index 25100db..0000000 --- a/doc/zh/NET_PRINTERS.md +++ /dev/null @@ -1,130 +0,0 @@ -#概述 - -##Openthos与Windows进行网络打印情况 -请见下面章节。 - -##Openthos与Linux(Cups)进行网络打印情况 -服务器端选择打印机驱动,客户端选择```Generic```中的```Generic IPP Everywhere Printer```驱动,如不符合具体情况,请看下面章节。 - -##Openthos与自带网络功能打印机进行网络打印情况 -请见下面章节。 - -___ - - -# 1 openthos作为打印服务器(接收打印任务) -测试机型:HP P1108、奔图P2500W、嘉华龙马 -操作方法: ->打开“本地打印服务”后,点击“添加本地打印”,输入打印机名称、正确的品牌、驱动后,将“分享打印机”一项勾上,添加成功后即完成此打印机的网络打印服务设置。 -其后根据打印客户机操作系统的不同,添加此打印机进行打印的方式不同,具体见以下各情况。 - - -## 1.1 **Windows为客户机**(**成功打印**) -操作方法: ->依次点击“开始”菜单、“设备与打印机”、“添加打印机”、“添加网络打印机”,点击“我需要的打印机不在列表中”,在“按名称选择共享打印机”一栏中填入Openthos共享的打印机的具体http地址,添加完成后即可打印。 -http地址格式:**http://ip地址:6310/printers/打印机名称** -(不可以使用ipp协议,Windows只能够创建http协议格式的网络打印机url格式地址,其余格式会弹出网络打印机名错误) - - -## 1.2 **Linux为客户机**(**成功打印**) -(这里说的Linux测试了Ubuntu以及ArchLinux,使用Ubuntu自带的Cups作为客户机进行打印,ArchLinux则是安装了最新版Cups进行打印) -操作方法: ->打开网页浏览器输入```localhost:631```,依次点击“Administrator”、“Add Printer”,勾上“Internet Printing Protocol (ipp)”,输入具体ipp地址,根据需要填写打印机名称(必填)、描述、位置,在“Make”一栏中选择正确的品牌,之后选择正确的驱动,点击“Add Printer”,添加成功后即可打印。 -ipp地址格式:**ipp://ip地址:6310/printers/打印机名称** - -驱动的选择: -### 1.2.1 Cups版本为2.0之前(测试系统Ubuntu Cups版本1.7.4) -+ 选择```Generic```栏中```Generic PostScript Printer```驱动 -测试结果:打印出的测试页丢失边框,打印文档正常 -测试机型:Pantum P2500W - -+ 选择与打印机品牌型号相应的驱动 -测试结果:打印正常 -测试机型:Pantum P2500W、HP P1108 - -### 1.2.2 Cups版本为2.0之后(测试系统ArchLinux Cups版本2.1.4) -+ 选择```Generic```栏中```Generic IPP Everywhere Printer```驱动 -测试结果:打印出的测试页丢失边框,打印文档正常 -测试机型:Pantum P2500W - - -# 2 openthos作为打印客户机(发送打印任务) -此种情况下无法像本地USB连接打印机那样检测到设备,因此需要输入相应的url地址才能够连接打印机打印。 - -操作方法: ->打开“本地打印服务”后,点击“添加网络打印机”,输入打印机名称、正确的url地址、正确的品牌及驱动,之后添加成功后即可进行打印。 -具体的url地址以及驱动根据打印机服务器操作系统的不同而不同,具体见以下各情况。 - -## 2.1 **Windows作为服务器**(**成功打印**) -测试机型:HP P1108 -需要在Windows下开启相应打印机的共享功能,下面所说打印机名称是在设置共享时所设置的名称,具体在Windows下共享打印机的步骤,请见[Windows7系统共享打印机设置方法](https://www.baidu.com/s?wd=windows%E5%A6%82%E4%BD%95%E5%85%B1%E4%BA%AB%E6%89%93%E5%8D%B0%E6%9C%BA&rsv_spt=1&rsv_iqid=0xf3deb8930002ed7c&issp=1&f=8&rsv_bp=0&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=1&rsv_sug3=34&rsv_sug1=2&rsv_sug7=101&rsv_sug2=0&inputT=5290&rsv_sug4=5293) - -客户机URL地址: ->使用samba服务器连接,具体格式:**smb://Windows用户名:密码@ip地址/共享的打印机名称** - -客户机驱动: -选择对应打印机品牌与型号的驱动 - -## 2.2 **Linux / openthos 作为服务器**(**打印成功**) -需要在Linux/Openthos下建立开启共享功能的打印机 -客户机URL地址: ->使用ipp连接,具体格式:**ipp://服务器ip地址:631/printers/打印机名称** - -客户机驱动: -驱动选择根据情况不同选择不同,具体见下 - -### 2.2.1 Linux作为服务器 - -建立共享打印机方法: ->打开网页浏览器输入```localhost:631```,依次点击“Administrator”、“Add Printer”,选择具体的USB打印机url,根据需要填写打印机名称(必填)、描述、位置并勾上“Share This Printer”一栏,在“Make”一栏中选择正确的品牌,之后选择正确的驱动,点击“Add Printer”,添加成功。 - -客户机驱动: -#### 2.2.1.1 服务器Cups版本为2.0之前(测试系统Ubuntu Cups版本1.7.4) -选择```Generic```栏中```Generic PostScript Printer```驱动 - -测试结果: -+ Pantum P2500W -打印测试页部分边框消失,原因是整个页面向右上角偏移 - -+ HP P1108 -打印正常 - -#### 2.2.1.2 服务器Cups版本为2.0之后(测试系统ArchLinux Cups版本2.1.4) -选择```Generic```栏中```Generic IPP Everywhere Printer```驱动 - -测试结果: -正常打印 - -测试机型: -Pantum P2500W - -###2.2.2 Openthos作为服务器 - -建立共享打印机方法: -具体请见本文 **1 openthos作为打印服务器(接收打印任务)** 中的具体操作方法 - -客户机驱动: -选择```Generic```栏中```Generic IPP Everywhere Printer```驱动 - -测试结果: -正常打印 - -测试机型: -HP P1108、Pantum P2500W - -## 2.3 **自带网络功能的打印机**(**成功打印**) -测试机型:嘉华龙马、奔图P2500W、HP P2015dn(失败) -目前测试嘉华龙马打印机网络功能能够成功打印、奔图P2500W也成功打印,但是对于HP P2015dn却无法连接,应该不是打印服务的问题,因为Windows上也无法连接它的网络打印功能,判断可能操作有问题或者打印机本身问题。 ->使用socket协议,socket://ip地址 -其中ip地址是指自带网络功能的打印机自身提供的ip地址,根据机型和品牌的不同查看方式也不一样。 - -成功打印的 嘉华龙马打印机 以及 奔图 P2500W 的连接方式记录如下: -### 2.3.1 **嘉华龙马打印机** -将其用网线与交换机or路由器相连接,打开开关,自动开启网络打印功能,打印机的小屏幕上会显示出打印机当前网络打印的ip地址,将此地址按照socket协议在Openthos中添加并选择正确品牌以及驱动(品牌:SecuSoft;驱动:ras2jbig 1.0.3)即可。 - -### 2.3.2 **奔图 P2500W** -此款打印机自身没有网线接口,但是自带WIFI打印功能,开启打印机后,按下WIFI按钮,看到WIFI标志的指示灯闪烁后,将PC连接至打印机发出的无线网上(名称为Pantum-AP-3DCF35),之后查看此网络的网关即可获得具体的ip地址,将此地址按照socket协议在Openthos中添加并选择正确品牌以及驱动即可。 - -### 2.3.3 **HP Laserjet Pro 400 M401dn** -将其用网线与交换机or路由器相连接,打开开关,自动开启网络打印功能,在屏幕上可以获取打印机当前网络打印的ipd地址,将此地址按照socket协议在Openthos中添加并选择正确品牌以及驱动(品牌:HP;驱动:```LaserJet Series PCL 4/5```or```LaserJet Series PCL 6```)即可。 -经验:对于HP品牌的比较高端的一些一体机机型,建议使用PCL通用驱动,即上面所写的两种驱动之一。 diff --git a/doc/zh/OVREVIEW.md b/doc/zh/OVREVIEW.md deleted file mode 100644 index 1f5804a..0000000 --- a/doc/zh/OVREVIEW.md +++ /dev/null @@ -1,83 +0,0 @@ -# Printer功能需求与设计实现文档 -内容: - -- 项目简介 -- 功能需求 -- 存在问题 -- 项目进展 -- 设计实现 - -# 项目简介 - -本项目属于openthos项目的一部分,提供 [Openthos](https://github.com/openthos/openthos/wiki) 系统本地打印机以及网络打印机支持。 - -## 当前开发人员 (20160801-20160831) -曹永韧 - -# 功能需求 - -|完成|描述| -|---|---| -|√| 支持usb接口打印机(详见支持的打印机型号) -|√| 支持网络打印机(http、ipp、smb、lpd、beh等协议) -|√| 接入安卓系统打印服务,为系统提供打印功能 -|√| 打印机管理(添加、删除、配置) -|√| 打印任务管理(暂停、恢复、取消) -|√| 在系统通知栏实现打印状态区 - -功能支持以及问题修复详细情况见:[REQUIREMENTS.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/REQUIREMENTS.md) - -## 支持的打印机型号 - -打印机支持详细情况请查看:[SUPPORTED_PRINTERS.md](https://github.com/openthos/printer-analysis/blob/master/doc/SUPPORTED_PRINTERS.md) - -## 网络打印相关 - -操作方法等具体情况详见:[NET_PRINTERS.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/NET_PRINTERS.md) - -## 与 Setting 结合相关(分离服务与界面) - -目前已制作出服务与界面分离版本原型(实现所有功能,但未深入测试),两者通过AIDL进行通信,已基本调试通过。 - -代码位于 dev-app-cs 分支,服务和界面分别为 localprint 和 localprintui 模块。 - -由于 Setting 还在制作中,所以制作成两个APP,方便后续简单移植界面部分即可放入 Setting 。 - -如8月底未集成到设置中,而作为单独应用存在的话,设计师需提供打印图标,开发将图标集成到系统中。 - -# 存在问题 - -| 简述 | 类别 | 备注 -|---|---|---| -|无法双面打印|打印|CUPS中存在设置但无效 -|无缺纸提示|打印|CUPS本身不支持,某些驱动可能支持| -|网络打印任务部分状态不追踪|打印任务|作为服务器获得新任务无法监测 -|点击窗口关闭按钮会导致程序所有进程被关闭,造成cups后台程序异常。|程序|分离服务与界面即可保证稳定性 - -# 项目进展 - -|开始时间|结束时间|内容 -|---|---|---| -|2016-01-25|2016-02-24|调研桌面Linux打印情况,初步制定基于CUPS的驱动移植方案。 -|2016-03-03|2016-03-13|针对HP P1108打印机,确定一个最简移植方案(foo2zjs + ghostscript),进行尝试。 -|2016-03-14|2016-03-28|同时进行静态编译移植、基于bionic移植两种尝试,学习安卓打印服务插件制作。 -|2016-03-29|2016-04-17|整合移植的打印驱动和安卓打印服务插件,制作针对HP P1108的打印DEMO,验证方案可行。 -|2016-04-18|2016-05-30|移植、整合包含CUPS,ghostscript,foo2zjs等Linux程序的数据包,实现在Android下运行并打印,采用方案为基于glibc动态编译。制作安卓打印程序对接CUPS程序。 -|2016-06-01|2016-06-30|完成打印程序基本功能及数据包(期末考试时期工作较少) -|2016-07-01|2016-07-30|测试并完善网络打印功能,完善数据包(包含cups,cups-filter,ghostscript,foo2zjs,epson驱动,奔图驱动,hpcups && hplip plugin,samba等),整合程序进Openthos系统,编写开发文档。 - -# 设计实现 - -请按以下步骤依次进行。 - -## 开发打印程序 - -请查看:[APP.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/APP.md) - -## 制作CUPS数据包 - -请查看:[MAKING_A_CUPS_COMPONENT.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/MAKING_A_CUPS_COMPONENT.md) - -## 构建 && 安装 - -请查看:[BUILDING.md](https://github.com/openthos/printer-analysis/blob/master/doc/zh/BUILDING.md) diff --git a/doc/zh/REQUIREMENTS.md b/doc/zh/REQUIREMENTS.md deleted file mode 100644 index 971121d..0000000 --- a/doc/zh/REQUIREMENTS.md +++ /dev/null @@ -1,42 +0,0 @@ -# 1 features - -完成 | 简介| 详细 ---- | --- | --- | -√ | 制作CUPS运行环境,移植CUPS程序 | 包含CUPS,cups-filter,ghostscript -√ | 移植foo2zjs驱动 | -√ | 移植奔图驱动 -√ | 移植EPSON驱动 -√ | 移植hpcups && hplip plugin驱动 -√ | 移植嘉华龙马驱动 -√ | 接入安卓打印 -√ | 打印任务管理 -√ | 打印机管理 -√ | 完善打印参数(颜色、页码选择等) -√ | 打印机高级设置(CUPS中包含的详细设置) -√ | 在系统通知栏实现打印状态区 -√ | 添加打印机时,自动选择匹配驱动 -√ | 插入新打印机自动提示是否添加 -√ | 第一次启动系统自动初始化数据包 -√ | 与windows系统的网络打印 -√ | 与Linux类系统的网络打印 -√ | 连接自带网络功能的打印机进行网络打印 - -# 2 bugs - -解决 | 简介| 详细 ---- | --- | --- | -√ | 打印任务状态显示unknown -√ | 打印任务从暂停状态恢复失败 -√ | 解决gs调用错误 -√ | 修复tar解压数据包部分文件权限丢失 -√ | 去除奔图ppd文件名中的空格,解决解析问题 -√ | 修复打印管理界面偶尔错乱BUG -√ | 添加本地/网络打印机字段为空判断(也不能有空格) -√ | 修改CUPSD进程位置,解决后台不运行问题 -√ | 把数据包里busybox的文件全部换成软连接,减少体积 -√ | 存在打印任务不及时更新 | https://dev.openthos.org/zentao/zentao/bug-view-195.html -√ | 打印机调整配置页面点击确定后打印服务崩溃 | https://dev.openthos.org/zentao/zentao/bug-view-197.html -√ | 缺少部分纸张大小参数MediaSize对应项 | https://dev.openthos.org/zentao/zentao/bug-view-198.html -√ | 已删除的打印机,仍显示在打印处理服务-所有打印机列表中。需更新。 | https://dev.openthos.org/zentao/zentao/bug-view-227.html -√ | HP pro400网络打印:点打印,弹出“打印处理服务”已停止。无法打印。 | https://dev.openthos.org/zentao/zentao/bug-view-228.html - | 已添加设备 -名称有误,点进去后显示名称和打印测试页是正确的。 | https://dev.openthos.org/zentao/zentao/bug-view-229.html diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..425bfde --- /dev/null +++ b/gradle.properties @@ -0,0 +1,19 @@ +## Project-wide Gradle settings. +# +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx10248m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +# +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +#Thu Apr 14 15:15:06 CST 2016 +systemProp.https.proxyPort=1080 +systemProp.http.proxyHost=127.0.0.1 +systemProp.https.proxyHost=127.0.0.1 +systemProp.http.proxyPort=1080 diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..05ef575 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..db4362b --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Thu Apr 14 15:17:42 CST 2016 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..9d82f78 --- /dev/null +++ b/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/localprint/.gitignore b/localprint/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/localprint/.gitignore @@ -0,0 +1 @@ +/build diff --git a/localprint/build.gradle b/localprint/build.gradle new file mode 100644 index 0000000..61a3857 --- /dev/null +++ b/localprint/build.gradle @@ -0,0 +1,51 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion 23 + buildToolsVersion "23.0.2" + + defaultConfig { + applicationId "com.github.openthos.printer.localprint" + minSdkVersion 21 + targetSdkVersion 22 + versionCode 23 + versionName "1.5" + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + + sourceSets { + main { + java.srcDirs = ['src/main/src'] + } + } + + signingConfigs { + + release { + storeFile file("../demo_platform.keystore") + storePassword '123456' + keyAlias 'demo_platform' + keyPassword '123456' + } + + debug { + storeFile file("../demo_platform.keystore") + storePassword '123456' + keyAlias 'demo_platform' + keyPassword '123456' + } + + } + +} + +dependencies { + compile fileTree(dir: 'libs', include: ['*.jar']) + testCompile 'junit:junit:4.12' + compile 'com.android.support:appcompat-v7:22.2.1' +} diff --git a/localprint/proguard-rules.pro b/localprint/proguard-rules.pro new file mode 100644 index 0000000..8be3951 --- /dev/null +++ b/localprint/proguard-rules.pro @@ -0,0 +1,17 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in C:\Users\bboxh\Documents\Android\sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/localprint/src/androidTest/java/com/github/openthos/printer/localprint/ApplicationTest.java b/localprint/src/androidTest/java/com/github/openthos/printer/localprint/ApplicationTest.java new file mode 100644 index 0000000..c06ae60 --- /dev/null +++ b/localprint/src/androidTest/java/com/github/openthos/printer/localprint/ApplicationTest.java @@ -0,0 +1,47 @@ +package com.github.openthos.printer.localprint; + +import android.app.Application; +import android.app.NotificationManager; +import android.content.Context; +import android.support.v7.app.NotificationCompat; +import android.test.ApplicationTestCase; +import android.widget.RemoteViews; + +import com.github.openthos.printer.localprint.task.CommandTask; + +import java.util.List; + +/** + * Testing Fundamentals + */ +public class ApplicationTest extends ApplicationTestCase { + public ApplicationTest() { + super(Application.class); + } + + public void test_usb(){ + new CommandTask(){ + + @Override + protected String bindTAG() { + return "test_usb"; + } + + @Override + protected String[] setCmd(Void... params) { + return new String[]{"sh","proot.sh","sh","/tools/usb.sh"}; + } + + @Override + protected Void handleCommand(List stdOut, List stdErr) { + return null; + } + }.start(); + } + + public void add_printer(){ + + } + + +} \ No newline at end of file diff --git a/localprint/src/main/Android.mk b/localprint/src/main/Android.mk new file mode 100644 index 0000000..75803d8 --- /dev/null +++ b/localprint/src/main/Android.mk @@ -0,0 +1,28 @@ +LOCAL_PATH:= $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE_TAGS := optional + +appcompat_dir := $(LOCAL_PATH)/../../../prebuilts/sdk/current/support/v7/appcompat/res + +LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 +LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-appcompat +LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13 + +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res $(appcompat_dir) + +LOCAL_AAPT_FLAGS := --auto-add-overlay +LOCAL_AAPT_FLAGS += --extra-packages android.support.v7.appcompat + +LOCAL_PACKAGE_NAME := Printer +LOCAL_CERTIFICATE := platform +LOCAL_PRIVILEGED_MODULE := true + +include $(BUILD_PACKAGE) + +ifeq (,$(ONE_SHOT_MAKEFILE)) +include $(call all-makefiles-under,$(LOCAL_PATH)) +endif diff --git a/localprint/src/main/AndroidManifest.xml b/localprint/src/main/AndroidManifest.xml new file mode 100644 index 0000000..ccdfebc --- /dev/null +++ b/localprint/src/main/AndroidManifest.xml @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localprint/src/main/CleanSpec.mk b/localprint/src/main/CleanSpec.mk new file mode 100644 index 0000000..3a913ae --- /dev/null +++ b/localprint/src/main/CleanSpec.mk @@ -0,0 +1,51 @@ +# Copyright (C) 2007 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# If you don't need to do a full clean build but would like to touch +# a file or delete some intermediate files, add a clean step to the end +# of the list. These steps will only be run once, if they haven't been +# run before. +# +# E.g.: +# $(call add-clean-step, touch -c external/sqlite/sqlite3.h) +# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates) +# +# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with +# files that are missing or have been moved. +# +# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory. +# Use $(OUT_DIR) to refer to the "out" directory. +# +# If you need to re-do something that's already mentioned, just copy +# the command and add it to the bottom of the list. E.g., if a change +# that you made last week required touching a file and a change you +# made today requires touching the same file, just copy the old +# touch step and add it to the end of the list. +# +# ************************************************ +# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST +# ************************************************ + +# For example: +#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates) +#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates) +#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f) +#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*) + +$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Printer_intermediates) + +# ************************************************ +# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST +# ************************************************ diff --git a/localprint/src/main/res/drawable/dialog_frame_shadow.xml b/localprint/src/main/res/drawable/dialog_frame_shadow.xml new file mode 100644 index 0000000..fd89bda --- /dev/null +++ b/localprint/src/main/res/drawable/dialog_frame_shadow.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/localprint/src/main/res/layout/activity_advanced_print_option.xml b/localprint/src/main/res/layout/activity_advanced_print_option.xml new file mode 100644 index 0000000..48aa8f7 --- /dev/null +++ b/localprint/src/main/res/layout/activity_advanced_print_option.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + +