Partilhar via


Opções parametrizadas versus opções não parametrizadas

Este tópico não é atual. Para obter as informações mais atuais, consulte o Print Schema Specification .

Os provedores PrintCapabilities e PrintTicket devem lidar corretamente com instâncias de Opção parametrizadas durante o processo de validação do PrintTicket. Conforme discutido em Definições de Opção, uma etapa executada na validação do PrintTicket é encontrar a Opção no documento PrintCapabilities do dispositivo atual (a Opção candidata) que melhor corresponde à Opção especificada no PrintTicket (a Opção de referência). Quando uma ou ambas as instâncias Option são parametrizadas, há três casos possíveis que devem ser tratados pelo processo de pontuação definido pelo driver de dispositivo: o caso em que ambas as instâncias Option são parametrizadas e os dois casos em que uma Option é parametrizada e a outra não. Nos casos a seguir, supõe-se que há uma correspondência entre as instâncias ScoredProperty parametrizadas na opção PrintTicket e uma ScoredProperty específica na opção PrintCapabilities. Se não houver correspondência, o processo de pontuação pode tratar essas instâncias ScoredProperty da mesma forma que trata quaisquer outras instâncias ScoredProperty não correspondentes.

Caso 1 - Opções de documentos parametrizados PrintTicket e PrintCapabilities

Neste caso, tanto a Opção de referência (no PrintTicket) como a Opção candidata (no documento PrintCapabilities) são parametrizadas. Acesse a instância ParameterDef referenciada pela Option candidata (ambas no documento PrintCapabilities) e determine se o valor ParameterInit especificado no PrintTicket cai no intervalo permitido pela instância ParameterDef. Em caso afirmativo, considere este ScoredProperty como uma correspondência. Caso contrário, este ScoredProperty não é uma correspondência.

Caso 2 - Opção PrintTicket Parametrizado, Opção de Documento PrintCapabilities Não Parametrizado

Nesse caso, o PrintTicket contém um Recurso com uma Opção parametrizada, enquanto o Recurso correspondente no documento PrintCapabilities contém pelo menos uma Opção que não é parametrizada. Mesmo que o documento PrintCapabilities também contenha outras instâncias de Option parametrizadas, o processo de pontuação deve ser aplicado a cada Option, porque o objetivo é identificar a melhor opção correspondente. O cliente deve ser capaz de comparar candidatos a Opção não parametrizados com uma Opção de referência parametrizada.

Como a opção parametrizada aparece no PrintTicket, as instâncias ParameterInit também devem estar presentes como ilustrado no caso anterior. O processo de pontuação pode simplesmente substituir qualquer instância ParameterRef na opção parametrizada do PrintTicket pelo valor especificado pela instância ParameterInit do PrintTicket. Isso efetivamente converte uma opção parametrizada em uma que não é parametrizada. Neste ponto, o processo de correspondência convencional pode ser usado.

Caso 3 - Opção PrintTicket não parametrizada, opção de documento PrintCapabilities parametrizada

Neste caso, a Opção de referência no PrintTicket não é parametrizada, enquanto a Opção candidata no documento PrintCapabilities é parametrizada. Acesse a instância ParameterDef no documento PrintCapabilities que é referenciada pela instância ParameterRef da opção candidata no PrintTicket e determine se o Value definido na referência Option para o ScoredProperty correspondente está no intervalo permitido pela instância ParameterDef. Em caso afirmativo, considere este ScoredProperty como uma correspondência. Se não, este ScoredProperty não é uma correspondência.

Deve-se enfatizar que você faz a determinação de quão perto duas instâncias Option correspondem pelo número (e significância) das instâncias ScoredProperty que correspondem, independentemente de as instâncias ScoredProperty conterem instâncias Value explícitas ou instâncias ParameterRef. É possível que uma Opção candidata seja a melhor correspondência, mesmo que contenha várias instâncias de Propriedade que não correspondam às da Opção de referência ou que não tenham Propriedade correspondente na Opção de referência.

Especificação do esquema de impressão