IContextNode::GetPropertyData-Methode
Ruft anwendungsspezifische Daten oder andere Eigenschaftendaten 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 ganzzahliges 8-Bit-Array ohne Vorzeichen, das die Eigenschaftendaten enthält.
Rückgabewert
Eine Beschreibung der Rückgabewerte finden Sie unter Klassen und Schnittstellen – Freihandanalyse.
Bemerkungen
Achtung
Um einen Speicherverlust zu vermeiden, verwenden Sie CoTaskMemFree , um den Arbeitsspeicher aus *ppbPropertyData freizugeben, wenn Sie die Informationen nicht mehr benötigen.
Zusätzlich zum Abrufen anwendungsspezifischer Daten, die mit IContextNode::AddPropertyData hinzugefügt wurden, wird diese Methode verwendet, um allgemeine Eigenschaften abzurufen, die von den Kontextknoteneigenschaften-Konstanten beschrieben werden.
Zu den Eigenschaften vom Typ Zeichenfolgen gehören:
- 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* umwandeln, ist (length of the string + 1) * sizeof(WCHAR)
die zurückgegebene Länge .
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* umwandeln, ist sizeof(VARIANT_BOOL)
die zurückgegebene Länge .
GUID_AHP_GUIDE ist eine Eigenschaft vom Typ "Guide". Der Rückgabewert ist InkAnalysisRecognitionGuide*. Wenn Sie den *ppbPropertyData-Parameter in InkAnalysisRecognitionGuide* umwandeln, ist sizeof(InkAnalysisRecognitionGuide)
die zurückgegebene Länge .
Zu den Eigenschaften vom Typ Integer gehören:
- GUID_CNP_LINENUMBER
- GUID_CNP_POINTSPERINCH
- GUID_CNP_CONFIDENCELEVEL
- GUID_CNP_CONFIRMATION
- GUID_CNP_MAXIMUMSTROKECOUNT
- GUID_CNP_SEGMENTATION
- GUID_CNP_ALIGNMENTLEVEL
Der Rückgabewert ist LONG*. Wenn Sie den *ppbPropertyData-Parameter in LONG* umwandeln, ist sizeof(LONG)
die zurückgegebene Länge .
Zu den Eigenschaften des Zeilenmetrikentyps gehören:
- GUID_CNP_ASCENDERS
- GUID_CNP_DESCENDERS
- GUID_CNP_BASELINE
- GUID_CNP_MIDLINE
Der Rückgabewert ist LONG*. Wenn Sie den *ppbPropertyData-Parameter in LONG* umwandeln, ist sizeof(LONG)*4
seine zurückgegebene Länge , die die Werte (x, y) für die Startpunkte, gefolgt von den (x, y)-Werten für die Endpunkte darstellt.
GUID_CNP_TEXTRECOGNIZERID ist eine GUID-Eigenschaft . Der Rückgabewert ist GUID*. Wenn Sie den Parameter *ppbPropertyData in GUID* umwandeln, ist sizeof(GUID)
die zurückgegebene Länge .
GUID_CNP_ROTATEDBOUNDINGBOX ist eine gedrehte Begrenzungsrahmeneigenschaft. Der Rückgabewert ist LONG*. Wenn Sie den *ppbPropertyData-Parameter in LONG* umwandeln, ist sizeof(LONG)*8
seine zurückgegebene Länge , was die Werte (x, y) für die vier Ecken des Felds anzeigt.
GUID_CNP_HOTPOINT ist eine Heißpunkteigenschaft. Der Rückgabewert ist LONG*. Wenn Sie den *ppbPropertyData-Parameter in LONG* umwandeln, ist sizeof(LONG)*2
seine zurückgegebene Länge , was die Werte (x, y) für den Punkt anzeigt.
GUID_AHP_WORDLIST ist eine Wortlisteneigenschaft. Der Rückgabewert ist WCHAR*. Wenn Sie den *ppbPropertyData-Parameter in WCHAR* umwandeln, ist n * sizeof(WCHAR)
seine zurückgegebene Länge , wobei n
die Summe der 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;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows XP Tablet PC Edition [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Nicht unterstützt |
Header |
|
DLL |
|