Delen via


Shapes voor cijfers

Arabisch en vele andere talen hebben klassieke vormen voor getallen die afwijken van de conventionele westerse cijfers die het vaakst worden gebruikt op computers. Om dubbelzinnigheid bij het benoemen van deze shapes te voorkomen, gebruikt dit document de volgende namen van de Unicode-standaard.

Unicode-naam van de cijfers Land/regio waar gebruikt
Europese cijfers Europa, Noord- en Zuid-Amerika en vele andere landen/regio's
Arabic-Indic cijfers Arabische landen/regio's (hoewel veel europese cijfers gebruiken)
Andere nationale cijfers: Indic digits, Thai digits, and the like Verschillende landen/regio's

 

Unicode biedt afzonderlijke codepunten voor elke cijfervorm. Om toegang te krijgen tot shapes voor speciale taalnummers, kan uw toepassing dus gebruikmaken van de relevante Unicode-tekencodes voor de bovenstaande cijfers, U+0030 tot en met U+0039. Deze codes worden altijd weergegeven met de juiste vorm, afhankelijk van de beschikbaarheid van lettertypen.

De Unicode-tekencodes U+0030 tot en met U+0039 vertegenwoordigen de Europese cijfers 0 tot en met 9, maar hun cijfervorm kan worden gewijzigd. GDI- en DirectWrite-tekst-API's bieden mechanismen voor toepassingen om dit gedrag te beheren. (Zie bijvoorbeeld ScriptApplyDigitSubstitution of IDWriteTextAnalysisSink::SetNumberSubstitution.) Het gedrag in sommige shell-besturingselementen en frameworks voor gebruikersinterfaces kan reageren op instellingen voor landinstellingen van gebruikers voor het vervangen van cijfers; het LOCALE_IDIGITSUBSTITUTION LCTYPE kan worden gebruikt om standaardinstellingen voor het vervangen van cijfers te verkrijgen voor verschillende landinstellingen of de bureaubladinstellingen van de huidige gebruiker voor het vervangen van cijfers.

Systeemeigen cijfers

Systeemeigen cijfers zijn de door de gebruiker gekozen cijfershapes in het eigenschappenvenster Getal in het gedeelte landinstellingen en taalopties van het Configuratiescherm. Als u de gewenste cijferpresentatie wilt vinden door de gebruiker, gebruikt uw toepassing de GetLocaleInfo- of functie GetLocaleInfoEx met de LOCALE_SNATIVEDIGITS constante die de landinstellingengegevens vertegenwoordigt.

Notitie

Normaal gesproken worden Unicode-cijfercodes gegenereerd in runtime-besturingssysteemroutines. Daarom moeten algemene runtime-besturingssystemen worden bijgewerkt voor de toepassing om LOCALE_SNATIVEDIGITS op de juiste wijze te controleren.

 

Cijfervervanging

De toepassing kan cijfervervanging gebruiken om het besturingssysteem te laten weten hoe u cijfers U+0030 tot en met U+0039 kunt afdrukken. De LOCALE_IDIGITSUBSTITUTION constante bepaalt deze bewerking.

Digit Shaping voor één functie

De ExtTextOut-, GetCharacterPlacementen GCP_RESULTS functies hebben vlaggen die de vervanging van Unicode-codes U+0030 tot en met U+0039 bepalen voor de duur van de functieoproep. Met deze vlaggen worden landinstellingen in het Configuratiescherm overschreven, maar worden de instellingen niet opnieuw ingesteld. Ze overschrijven ook de Unicode-codes NADS en NODS niet. De volgende vlaggen zijn beschikbaar.

Vlaggen Gebruikte cijfers Gebruikt in
ETO_NUMERICSLATIN Europese cijfers ExtTextOut-
ETO_NUMERICSLOCAL Cijfers die geschikt zijn voor de landinstelling ExtTextOut-
GCP_NUMERICSLATIN Europese cijfers GetCharacterPlacement-
GCP_NUMERICSLOCAL Cijfers die geschikt zijn voor de landinstelling GetCharacterPlacement-
GCPCLASS_LATINNUMBER Europese cijfers GCP_RESULTS
GCPCLASS_LOCALNUMBER Cijfers die geschikt zijn voor de landinstelling GCP_RESULTS

 

Over nationale taalondersteuning

GetLocaleInfo-

GetLocaleInfoEx-