Método IContextNode::GetPropertyData
Recupera datos específicos de la aplicación u otros datos de propiedad para el identificador especificado.
Sintaxis
HRESULT GetPropertyData(
[in] const GUID *pPropertyDataId,
[in, out] ULONG *pulPropertyDataSize,
[out] BYTE **ppbPropertyData
);
Parámetros
-
pPropertyDataId [in]
-
Identificador de los datos.
-
pulPropertyDataSize [in, out]
-
Tamaño de los datos en bytes. No se usa el valor que se pasa en .
-
ppbPropertyData [out]
-
Puntero a una matriz de enteros sin signo de 8 bits que contiene los datos de propiedad.
Valor devuelto
Para obtener una descripción de los valores devueltos, vea Clases e interfaces : análisis de entrada de lápiz.
Observaciones
Precaución
Para evitar una pérdida de memoria, use CoTaskMemFree para liberar la memoria de *ppbPropertyData cuando ya no necesite la información.
Además de recuperar datos específicos de la aplicación que se agregaron con IContextNode::AddPropertyData, este método se usa para recuperar las propiedades comunes descritas por las constantes Propiedades del nodo de contexto .
Las propiedades de tipo de cadena incluyen:
- GUID_CNP_RECOGNIZEDSTRING
- GUID_CNP_SHAPENAME
- GUID_AHP_ANALYSISHINTNAME
- GUID_AHP_PREFIXTEXT
- GUID_AHP_SUFFIXTEXT
- GUID_AHP_FACTOID
El valor devuelto es WCHAR*. Si convierte el parámetro *ppbPropertyData en WCHAR* su longitud devuelta es (length of the string + 1) * sizeof(WCHAR)
.
Las propiedades booleanas de tipo incluyen:
- GUID_AHP_OVERRIDELANGUAGEID
- GUID_AHP_COERCETOFACTOID
- GUID_AHP_WORDMODE
El valor devuelto es VARIANT_BOOL. Si convierte el parámetro *ppbPropertyData en VARIANT_BOOL* su longitud devuelta es sizeof(VARIANT_BOOL)
.
GUID_AHP_GUIDE es una propiedad de tipo guía. El valor devuelto es InkAnalysisRecognitionGuide*. Si convierte el parámetro *ppbPropertyData en InkAnalysisRecognitionGuide* su longitud devuelta es sizeof(InkAnalysisRecognitionGuide)
.
Entre las propiedades de tipo entero se incluyen:
- GUID_CNP_LINENUMBER
- GUID_CNP_POINTSPERINCH
- GUID_CNP_CONFIDENCELEVEL
- GUID_CNP_CONFIRMATION
- GUID_CNP_MAXIMUMSTROKECOUNT
- GUID_CNP_SEGMENTATION
- GUID_CNP_ALIGNMENTLEVEL
El valor devuelto es LONG*. Si convierte el parámetro *ppbPropertyData en LONG* su longitud devuelta es sizeof(LONG)
.
Las propiedades de tipo de métricas de línea incluyen:
- GUID_CNP_ASCENDERS
- GUID_CNP_DESCENDERS
- GUID_CNP_BASELINE
- GUID_CNP_MIDLINE
El valor devuelto es LONG*. Si convierte el parámetro *ppbPropertyData en LONG* su longitud devuelta es sizeof(LONG)*4
, lo que indica los valores (x, y) de los puntos iniciales seguidos de los valores (x, y) de los puntos finales.
GUID_CNP_TEXTRECOGNIZERID es una propiedad GUID . El valor devuelto es GUID*. Si convierte el parámetro *ppbPropertyData en GUID* su longitud devuelta es sizeof(GUID)
.
GUID_CNP_ROTATEDBOUNDINGBOX es una propiedad de rectángulo delimitador girado. El valor devuelto es LONG*. Si convierte el parámetro *ppbPropertyData en LONG* su longitud devuelta es sizeof(LONG)*8
, lo que significa los valores (x, y) de las cuatro esquinas del cuadro.
GUID_CNP_HOTPOINT es una propiedad de punto frecuente. El valor devuelto es LONG*. Si convierte el parámetro *ppbPropertyData en LONG* su longitud devuelta es sizeof(LONG)*2
, lo que indica los valores (x, y) del punto.
GUID_AHP_WORDLIST es una propiedad de lista de palabras. El valor devuelto es WCHAR*. Si convierte el parámetro *ppbPropertyData en WCHAR* su longitud devuelta es n * sizeof(WCHAR)
, donde n
es la suma de las longitudes de cadena del número de cadenas de la lista más 1 para cada carácter de terminación NULL para cada cadena.
Ejemplos
En este ejemplo se muestra un método que tiene acceso a la propiedad de nodo de contexto AlignmentLevel de un tipo de nodo de contexto Paragraph.
// 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;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows XP Tablet PC Edition [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
No se admite ninguno |
Encabezado |
|
Archivo DLL |
|