Поделиться через


Мини-driver-предоставленные полутонные шаблоны

Внимание

Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.

Дополнительные сведения см. в статье "Современная платформа печати" и руководство по проектированию приложений поддержки печати.

Когда используются методы полутонов GDI, GDI разрешает спецификацию настраиваемых шаблонов полутонов. Чтобы указать настраиваемые шаблоны полутонов, используйте атрибуты параметров для функции половины следующим образом:

  • Атрибуты *rcHTPatternID, *HTPatternSize и *HTNumPatterns позволяют описывать шаблоны полутонов, хранящиеся в библиотеке DLL ресурсов. Ресурсы шаблонов половины — это трехмерные массивы двоичных данных, начиная с границы адреса DWORD. Их можно указать с помощью следующего формата, который вычисляет правильный размер и обеспечивает требуемое выравнивание адресов:

    BYTE HTPatternResource [HTNumPatterns][(HTPatternSize.y*HTPatternSize.x+3) & ~3];
    

    В RC-файле, используемом для создания библиотеки DLL ресурсов, шаблон может быть указан следующим образом:

    1     RC_HTPATTERN LOADONCALL DISCARDABLE HALFTONE.BIN
    

    где halftone.bin — это файл, содержащий полутонный шаблон.

  • Атрибут *HTCallbackID позволяет указать, что вы реализуете метод IPrintOemUni::HalftonePattern в подключаемом модуле отрисовки. Уникальное значение *HTCallbackID должно быть предоставлено для каждого шаблона метода IPrintOemUni::HalftonePattern .

Вы можете предоставить ресурсы шаблона половины, метод IPrintOemUni::HalftonePattern или оба, как показано ниже:

  • Если вы предоставляете только полутонные шаблоны, Unidrv получает шаблоны из библиотеки DLL ресурсов и передает их в GDI. Не удается зашифровать шаблоны.

  • Если вы предоставляете только метод IPrintOemUni::HalftonePattern , метод должен создавать и возвращать шаблоны полутонов в Unidrv, который передает их в GDI.

  • Если вы хотите поместить зашифрованные шаблоны полутонов в библиотеку DLL ресурсов, необходимо также предоставить метод IPrintOemUni::HalftonePattern для декодирования шаблонов и возврата их в Unidrv, который, в свою очередь, передает их в GDI.

Дополнительные сведения о полутоне см. в разделе "Настраиваемый полутон".