Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Stellt eine Auflistung von Zeichenfolgen dar, die nach Gebietsschemanamen indiziert sind.
Vererbung
Die IDWriteLocalizedStrings-Schnittstelle erbt von der IUnknown-Schnittstelle . IDWriteLocalizedStrings verfügt auch über folgende Membertypen:
Methoden
Die IDWriteLocalizedStrings-Schnittstelle verfügt über diese Methoden.
|
IDWriteLocalizedStrings::FindLocaleName Ruft den nullbasierten Index des Gebietsschemanamens-Zeichenfolgenpaars mit dem angegebenen Gebietsschemanamen ab. |
|
IDWriteLocalizedStrings::GetCount Ruft die Anzahl der Sprach-Zeichenfolgenpaare ab. |
|
IDWriteLocalizedStrings::GetLocaleName Kopiert den Gebietsschemanamen mit dem angegebenen Index in das angegebene Array. (IDWriteLocalizedStrings.GetLocaleName) |
|
IDWriteLocalizedStrings::GetLocaleNameLength Ruft die Länge des Gebietsschemanamens mit dem angegebenen Index in Zeichen (ohne null-Abschlussator) ab. (IDWriteLocalizedStrings.GetLocaleNameLength) |
|
IDWriteLocalizedStrings::GetString Kopiert die Zeichenfolge mit dem angegebenen Index in das angegebene Array. (IDWriteLocalizedStrings.GetString) |
|
IDWriteLocalizedStrings::GetStringLength Ruft die Länge der Zeichenfolge mit dem angegebenen Index in Zeichen (ohne null-Abschlussator) ab. (IDWriteLocalizedStrings.GetStringLength) |
Hinweise
Der Satz von Zeichenfolgen, die durch eine IDWriteLocalizedStrings dargestellt werden, werden durch eine nullbasierte UINT32-Zahl indiziert, die einem Gebietsschema zugeordnet ist. Der numerische Index für ein bestimmtes Gebietsschema wird mithilfe der FindLocaleName-Methode erneut überprüft.
Eine häufige Verwendung für die IDWriteLocalizedStrings-Schnittstelle besteht darin, eine Liste lokalisierter Schriftartfamiliennamen zu enthalten, die mithilfe der IDWriteFontFamily::GetFamilyNames-Methode erstellt wurden. Das folgende Beispiel zeigt, wie Sie den Familiennamen für das Gebietsschema "en-us" abrufen.
IDWriteLocalizedStrings* pFamilyNames = NULL;
// Get a list of localized strings for the family name.
if (SUCCEEDED(hr))
{
hr = pFontFamily->GetFamilyNames(&pFamilyNames);
}
UINT32 index = 0;
BOOL exists = false;
wchar_t localeName[LOCALE_NAME_MAX_LENGTH];
if (SUCCEEDED(hr))
{
// Get the default locale for this user.
int defaultLocaleSuccess = GetUserDefaultLocaleName(localeName, LOCALE_NAME_MAX_LENGTH);
// If the default locale is returned, find that locale name, otherwise use "en-us".
if (defaultLocaleSuccess)
{
hr = pFamilyNames->FindLocaleName(localeName, &index, &exists);
}
if (SUCCEEDED(hr) && !exists) // if the above find did not find a match, retry with US English
{
hr = pFamilyNames->FindLocaleName(L"en-us", &index, &exists);
}
}
// If the specified locale doesn't exist, select the first on the list.
if (!exists)
index = 0;
UINT32 length = 0;
// Get the string length.
if (SUCCEEDED(hr))
{
hr = pFamilyNames->GetStringLength(index, &length);
}
// Allocate a string big enough to hold the name.
wchar_t* name = new (std::nothrow) wchar_t[length+1];
if (name == NULL)
{
hr = E_OUTOFMEMORY;
}
// Get the family name.
if (SUCCEEDED(hr))
{
hr = pFamilyNames->GetString(index, name, length+1);
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
| Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
| Zielplattform | Windows |
| Kopfzeile | dwrite.h |