IContextNode::GetPropertyData-Methode
Ruft anwendungsspezifische Daten oder andere Eigenschaftsdaten für den angegebenen Bezeichner ab.
Syntax
HRESULT GetPropertyData(
[in] const GUID *pPropertyDataId,
[in, out] ULONG *pulPropertyDataSize,
[out] BYTE **ppbPropertyData
);
Parameter
-
pPropertyDataId [ In]
-
Der Bezeichner für die Daten.
-
pulPropertyDataSize [ in, out]
-
Die Größe der Daten in Bytes. Der übergebene Wert wird nicht verwendet.
-
ppbPropertyData [ out]
-
Ein Zeiger auf ein 8-Bit-Ganzzahlarray ohne Vorzeichen, das die Eigenschaftsdaten enthält.
Rückgabewert
Eine Beschreibung der Rückgabewerte finden Sie unter Klassen und Schnittstellen – Ink-Analyse.
Bemerkungen
Achtung
Um einen Speicherverlust zu vermeiden, verwenden Sie CoTaskMemFree, um den Arbeitsspeicher von * ppbPropertyData freizugeben, wenn Sie die Informationen nicht mehr benötigen.
Zusätzlich zum Abrufen anwendungsspezifischer Daten, die mit IContextNode::AddPropertyDatahinzugefügt wurden, wird diese Methode verwendet, um allgemeine Eigenschaften abzurufen, die von den Konstanten für Kontextknoteneigenschaften beschrieben werden.
Die Eigenschaften des Zeichenfolgentyps umfassen Folgendes:
- GUID _ CNP _ RECOGNIZEDSTRING
- GUID _ CNP _ SHAPENAME
- GUID _ AHP _ ANALYSISHINTNAME
- GUID _ AHP _ PREFIXTEXT
- GUID _ AHP _ SUFFIXTEXT
- GUID _ AHP _ FACTOID
Der Rückgabewert ist **WCHAR **. Wenn Sie den _ ppbPropertyData-Parameter in ** WCHAR umbenennen, lautet die zurückgegebene Länge (length of the string + 1) _ sizeof(WCHAR) .
Zu den Booleschen Eigenschaften gehören:
- GUID _ AHP _ OVERRIDELANGUAGEID
- GUID _ AHP _ COERCETOFACTOID
- GUID _ AHP _ WORDMODE
Der Rückgabewert ist VARIANT _ BOOL. Wenn Sie den * ppbPropertyData-Parameter in VARIANT _ BOOL * umbenennen, lautet die zurückgegebene Länge sizeof(VARIANT_BOOL) .
GUID _ AHP _ GUIDE ist eine Eigenschaft vom Typ "Guide". Der Rückgabewert ist *InkAnalysisRecognitionGuide * _. Wenn Sie den _ ppbPropertyData-Parameter in * InkAnalysisRecognitionGuide umbenennen, lautet die zurückgegebene Länge sizeof(InkAnalysisRecognitionGuide) .
Eigenschaften vom Typ "Integer" umfassen:
- GUID _ CNP _ LINENUMBER
- _ _ GUID-CNP-PUNKTEPERINCH
- GUID _ CNP _ CONFIDENCELEVEL
- _GUID-CNP-BESTÄTIGUNG _
- GUID _ CNP _ MAXIMUMSTROKECOUNT
- _GUID-CNP-SEGMENTIERUNG _
- GUID _ CNP _ ALIGNMENTLEVEL
Der Rückgabewert ist *LONG * _. Wenn Sie den _ ppbPropertyData-Parameter in LONG * umbenennen, lautet die zurückgegebene Länge sizeof(LONG) .
Eigenschaften vom Typ "Linienmetriken" umfassen Folgendes:
- GUID _ CNP _ ASCENDERS
- GUID _ CNP _ DESCENDERS
- _GUID-CNP-BASELINE _
- GUID _ CNP _ MIDLINE
Der Rückgabewert ist **LONG **. Wenn Sie den _ ppbPropertyData-Parameter in *LONG * umbenennen, ist die zurückgegebene Länge sizeof(LONG)_4 , was die (x, y) Werte für die Startpunkte gefolgt von den (x, y) Werten für die Endpunkte anschreibt.
GUID _ CNP _ TEXTRECOGNIZERID ist eine GUID-Eigenschaft. Der Rückgabewert ist *GUID * _. Wenn Sie den _ ppbPropertyData-Parameter in GUID umbenennen, lautet die zurückgegebene * Länge sizeof(GUID) .
GUID _ CNP _ ROTATEDBOUNDINGBOX ist eine gedrehte Begrenzungsfeldeigenschaft. Der Rückgabewert ist **LONG **. Wenn Sie den _ ppbPropertyData-Parameter in ** LONG umbenennen, ist die zurückgegebene Länge sizeof(LONG)_8 , was die (x, y) -Werte für die vier Ecken des Felds darstellt.
GUID _ CNP _ HOTPOINT ist eine Hot Point-Eigenschaft. Der Rückgabewert ist **LONG **. Wenn Sie den _ ppbPropertyData-Parameter in *LONG * umbenennen, lautet die zurückgegebene Länge sizeof(LONG)_2 , was die (x, y) -Werte für den Punkt darstellt.
GUID _ AHP _ WORDLIST ist eine Wortlisteneigenschaft. Der Rückgabewert ist **WCHAR **. Wenn Sie den _ ppbPropertyData-Parameter in *WCHAR * umbenennen, lautet die zurückgegebene Länge n _ sizeof(WCHAR) , wobei die Summe der n Zeichenfolgenlängen der Anzahl der Zeichenfolgen in der Liste plus 1 für jedes NULL-Beendigungszeichen für jede Zeichenfolge ist.
Beispiele
Dieses Beispiel zeigt eine Methode, die auf die AlignmentLevel-Kontextknoteneigenschaft eines Absatzkontextknotentyps zugreift.
// Checks a paragraph context node's alignment level property.
// Only paragraph type context nodes contain the alignment level property.
HRESULT CMyClass::ExploreParagraphNode(
IContextNode *pParagraphNode)
{
// Get the AlignmentLevel property data for the paragraph.
LONG * alignmentLevel = NULL;
ULONG ulDataLen = 0;
HRESULT hr = pParagraphNode->GetPropertyData(
(const GUID*)&GUID_CNP_ALIGNMENTLEVEL,
&ulDataLen,
(BYTE**)&alignmentLevel);
if( FAILED(hr) ||
ulDataLen != sizeof(LONG) ||
alignmentLevel == NULL )
{
// Insert code that handles an error here.
}
else
{
// Insert code that uses the alignment level here.
}
// Free the memory allocated for the property data.
::CoTaskMemFree(alignmentLevel);
return hr;
}
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows Nur Desktop-Apps der XP Tablet PC Edition [] |
| Unterstützte Mindestversion (Server) |
Nicht unterstützt |
| Header |
|
| DLL |
|