Condividi tramite


Halftoning fornito dal minidriver

Importante

La piattaforma di stampa moderna è il mezzo preferito di Windows per comunicare con le stampanti. Ti consigliamo di usare il driver di classe IPP di Microsoft, insieme a Print Support Apps (PSA), per personalizzare l'esperienza di stampa in Windows 10 e 11 per lo sviluppo di dispositivi per stampanti.

Per altre informazioni, vedere Piattaforma di stampa moderna e guida alla progettazione dell'app di supporto per la stampa.

Se un formato di colore specificato è uno per il quale il numero di bit per pixel usato per il rendering dell'immagine (*DrvBPP) è maggiore dei bit per pixel supportati dalla stampante (*DevBPP moltiplicato per *DevNumOfPlanes), è necessario fornire funzionalità di halftoning personalizzate.

Per fornire funzionalità di halftoning personalizzate, è necessario eseguire le operazioni seguenti:

  • Fornire un plug-in di rendering che implementa il metodo IPrintOemUni ImageProcessing.

  • Includere una voce Halftone*Feature nel file GPD e, per ogni metodo di halftoning personalizzato, includere una voce *Option che descrive il metodo halftoning. Non usare alcun attributo di opzione per la funzionalità halftone.

  • Includere una voce ColorMode *Feature nel file GPD. Per ogni opzione di formattazione dei colori specificata, è necessario includere un attributo *IPCallbackID se si vuole che il metodo IPrintOemUni ImageProcessing gestisca il halftoning per tale formato di colore.

Nell'esempio seguente vengono definiti due formati di colore e quattro metodi di halftoning. Nell'esempio vengono utilizzati vincoli di opzione per specificare i metodi di halftoning Unidrv che consentono a un utente di selezionare per ogni formato di colore.

*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"
    }
}

Nell'esempio entrambe le opzioni ColorFormat1 e ColorFormat2 ColorMode rappresentano i formati di colore che Unidrv può gestire, come illustrato in Gestione dei formati di colore. Per ColorFormat2 viene specificato un attributo *IPCallbackID . Se l'utente della stampante seleziona ColorFormat2 come formato di colore, Unidrv chiama il metodo COM IPrintOemUni ImageProcessing della stampante per gestire l'halftoning. Uno dei parametri del metodo è un puntatore al nome della stringa che rappresenta il metodo di halftoning attualmente selezionato.

Per altre informazioni sul halftoning, vedere Halftoning personalizzato.