2013-07-17 83 views
3

我們正在通過Google雲打印服務打印成功。但想知道是否有人在提交工作打印時提供有關功能參數的信息,以及有關如何創建和操作這種我認爲是ppd的格式的指示。Google雲打印和功能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

GCP文檔在這方面嚴重不足。無論如何,我設法發現發送打印機設置的正確參數是,而不是功能。參數的第一部分對應於打印對話框中的基本設置,它們非常容易理解,並且值很容易更改。 vendor_ticket_item數組有點複雜。它包含由打印機功能描述的id /值對。該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. 
    ] 
} 
}