谷歌云打印和功能PPD

时间:2013-07-17 06:32:48

标签: php printing cloud

我们通过Googles Cloud Print服务打印成功。但是想知道是否有人在提交打印作业时有关于能力参数的信息,以及如何创建和使用这种格式的一些指示,我认为这是ppd。

我们已经能够通过使用返回打印机所有值的方法http://www.google.com/cloudprint/printer来获得打印机的功能。问题是我们不太明白我们要做什么,以便定义我们想要打印的功能选项。这将包括打印页面副本,纸张类型和打印质量的选项。我们可以收到的功能信息的示例如下:

{
    "name": "copies",
    "displayName": "Copies",
    "type": "ParameterDef"
}

{
     "UIType": "PickOne",
     "name": "HPEconoMode",
     "displayName": "EconoMode",
     "type": "Feature",
     "options": [
      {
       "ppd:value": "\"\"",
       "default": true,
       "name": "PrinterDefault",
       "displayName": "Printer's Current Setting"
      },
      {
       "ppd:value": "\u003c\u003c/EconoMode true\u003e\u003e setpagedevice",
       "name": "True",
       "displayName": "Save Toner"
      },
      {
       "ppd:value": "\u003c\u003c/EconoMode false\u003e\u003e setpagedevice",
       "name": "False",
       "displayName": "Highest Quality"
      }
     ]
    }

1 个答案:

答案 0 :(得分:1)

GCP文档在这方面非常缺乏。无论如何,我已经设法发现发送打印机设置的正确参数是票据,而不是功能。参数的第一部分对应于打印对话框中的基本设置,它们非常不言自明,值很容易更改。 vendor_ticket_item数组有点复杂。它包含打印机功能描述的id / value对。 id将包含功能中参数的名称,值将包含参数选项中的一个记录的名称,或者数值等,如功能中所述。

有关模式的详细信息,请查看我的full solution

{
"version":"1.0",
 "print":{
    "color":{"vendor_id":"psk:Color","type":0},
    "duplex":{"type":0},
    "page_orientation":{"type":1},
    "copies":{"copies":1},
    "dpi":{"horizontal_dpi":600,"vertical_dpi":600},
    "media_size":{"width_microns":148000,"height_microns":210000,"is_continuous_feed":false},
    "collate":{"collate":true}
    ,
    "vendor_ticket_item":[
        //Printer specific settings here, from the capabilities:
        {"id":"psk:JobInputBin","value":"ns0000:Tray3"},
        {"id":"psk:PageICMRenderingIntent","value":"psk:Photographs"},
        {"id":"psk:PageMediaType","value":"ns0000:Auto"},
        {"id":"psk:JobOutputBin","value":"ns0000:Auto"},
        //etc.
    ]
 }
}