Sdílet prostřednictvím


Odkazování na národní prostředí

Důležitý

Moderní tisková platforma je upřednostňovaná pro komunikaci s tiskárnami ve Windows. Doporučujeme použít ovladač třídy doručené pošty IPP od Microsoftu spolu s tiskovými podpůrnými aplikacemi (PSA) k přizpůsobení prostředí tisku ve Windows 10 a 11 pro vývoj zařízení tiskárny.

Další informace najdete v průvodci návrhem aplikace Podpora tisku.

Použití souborů GPD

Soubory GPD mohou odkazovat na národní prostředí systému. Typicky se identifikátory národního prostředí používají v příkazech Switch, kde lze specifikovat parametry, jako jsou výchozí velikosti papíru a knihovny DLL prostředků, způsobem specifickým pro národní prostředí.

Aby bylo možno odkazovat na informace o národním prostředí, musí soubor GPD obsahovat příkaz *Include, který obsahuje soubor locale.gpd, který je součástí sady Windows Driver Kit (WDK), následujícím způsobem:

*Include: locale.gpd

Tento soubor GPD definuje funkci s názvem Národní prostředí a definuje možnosti pro mnoho národních prostředí. (Projděte si soubor a zjistěte, která národní prostředí jsou definovaná.) Následuje příklad použití těchto možností národního prostředí. Výchozí velikost papíru v příkladu je založena na národním nastavení.

*Feature: PaperSize
{
...
    Option: A4
    {
    }
    ...
*switch: Locale
{
    *case: English_United_States
    {
        *DefaultOption: Letter
    }
    *case: English_United_Kingdom
    {
        *DefaultOption: A4
    }
    *default:
    {
        *DefaultOption: Letter
    }
} *% End of switch
} *% End of Feature: PaperSize

V době běhu unidrv určuje výchozí národní prostředí systému voláním GetSystemDefaultLCID. Při instalaci tiskárny analyzátor GPD přečte soubor GPD tiskárny a použije informace v příkazu *Case přidruženém k výchozímu národnímu prostředí. Všimněte si, že pokud se po instalaci tiskárny změní národní prostředí systému, možnosti založené na národním prostředí se nezmění.

Tady je další příklad, který vybere knihovnu DLL prostředků na základě národního prostředí. Knihovna prostředků DLL může obsahovat lokální prostředky, například textové řetězce.

*switch: Locale
{
    *case: English_United_States
    {
        *ResourceDLL: english.dll
    }
    *case: German_Standard
    {
        *ResourceDLL: german.dll
    }
    *default:
    {
        *ResourceDLL: english.dll
    }
}

Nastavení výchozího formátu papíru podle národního prostředí

Možná budete chtít, aby ovladač na základě zeměpisné polohy uživatele nastavil výchozí formát papíru, a to buď metrický nebo nemetrický.

Následující algoritmus načte výchozí národní prostředí systému a pak použije kódy země/oblasti k určení, zda národní prostředí systému představuje zemi, která obvykle používá metriky nebo nemetrické formáty papíru. S těmito informacemi může ovladač správně nastavit výchozí formát papíru, například A4 pro země, které používají systém metrik a velikost písmen pro země, které nemají.

  1. K načtení výchozího národního prostředí systému použijte funkci GetLocaleInfo. Pro první parametr použijte LOCALE_SYSTEM_DEFAULT, Locale, a LOCALE_ICOUNTRY pro druhý parametr, LCType.

  2. Pomocí výchozího systémového národního prostředí získaného z GetLocaleInfo určete metriku nebo nemetrickou velikost papíru.

    • Nepoužít metrický systém, pokud je výchozí systémové místní nastavení:

      • CTRY_UNITED_STATES nebo

      • CTRY_CANADA nebo

      • Větší než nebo rovno 50, ale menší než 60 a nikoli CTRY_BRAZIL nebo

      • Větší než nebo rovno 500, ale menší než 600

    • Jinak z hlediska metriky.