Partager via


Tramage fourni par le minipilote

Important

La plateforme d’impression moderne est le moyen privilégié de Windows pour communiquer avec les imprimantes. Nous vous recommandons d’utiliser le pilote de classe IPP en boîte de Microsoft, ainsi que les applications de support d’impression (PSA), pour personnaliser l’expérience d’impression dans Windows 10 et 11 pour le développement de périphériques d’impression.

Pour plus d’informations, veuillez consulter la section Plateforme d’impression moderne et le Guide de conception des applications de support d’impression.

Si un format de couleur spécifié est tel que le nombre de bits par pixel utilisé pour le rendu de l’image (*DrvBPP) est supérieur au nombre de bits par pixel pris en charge par l’imprimante (*DevBPP multiplié par *DevNumOfPlanes), alors vous devez fournir des capacités de tramage personnalisées.

Pour fournir des capacités de tramage personnalisées, vous devez faire ce qui suit :

  • Fournir un plug-in de rendu qui implémente la méthode IPrintOemUni ImageProcessing.

  • Inclure une entrée Halftone*Feature dans votre fichier GPD et, pour chaque méthode de tramage personnalisée, inclure une entrée *Option décrivant la méthode de tramage. (Ne pas utiliser les attributs d’option pour la fonction de tramage).

  • Inclure une entrée ColorMode *Feature dans votre fichier GPD. Pour chaque option de formatage de couleur spécifiée, vous devez inclure un attribut *IPCallbackID si vous souhaitez que votre méthode IPrintOemUni ImageProcessing gère le tramage pour ce format de couleur.

L’exemple suivant définit deux formats de couleur et quatre méthodes de tramage. L’exemple utilise des contraintes d’option pour spécifier les méthodes de tramage que Unidrv doit permettre à un utilisateur de sélectionner pour chaque format de couleur.

*Feature: ColorMode
{
    *Option: ColorFormat1
    {
        *Name: "Color Format 1"
        *DevBPP: 1
        *DevNumofPlanes: 4
        *ColorPlaneOrder: LIST (CYAN, MAGENTA, YELLOW, BLACK)
        *DrvBPP: 4
        *Constraints: LIST (Halftone.CustomHalftoneMethod1,
+                           Halftone.CustomHalftoneMethod2)
    }
    *Option: ColorFormat2
    {
        *Name: "Color Format 2"
        *DevBPP: 24
        *DevNumofPlanes: 1
        *DrvBPP: 8
        *IPCallbackID: 100
        *Constraints: LIST (Halftone.StandardHalftoneMethod1,
+                           Halftone.StandardHalftoneMethod2)
    }
}
*Feature: Halftone
{
    *Option: StandardHalftoneMethod1
    {
        *Name: "Standard Halftone Method 1"
    }
    *Option: StandardHalftoneMethod2
    {
        *Name: "Standard Halftone Method 2"
    }
    *Option: CustomHalftoneMethod1
    {
        *Name: "Custom Halftone Method 1"
    }
    *Option: CustomHalftoneMethod2
    {
        *Name: "Custom Halftone Method 2"
    }
}

Dans l’exemple, les options ColorMode ColorFormat1 et ColorFormat2 représentent des formats de couleur que Unidrv peut gérer, comme expliqué dans Gestion des formats de couleur. Pour ColorFormat2, un attribut *IPCallbackID est spécifié. Si l’utilisateur de l’imprimante sélectionne ColorFormat2 comme format de couleur, Unidrv appelle la méthode COM IPrintOemUni ImageProcessing de l’imprimante pour gérer le tramage. L’un des paramètres de la méthode est un pointeur vers le nom de chaîne représentant la méthode de tramage actuellement sélectionnée.

Pour plus d’informations sur le tramage, veuillez consulter la section Tramage personnalisé.