Partager via


Méthode IRealTimeStylus ::GetPacketDescriptionData (rtscom.h)

Récupère les propriétés de paquet et les facteurs de mise à l’échelle.

Syntaxe

HRESULT GetPacketDescriptionData(
  [in]      TABLET_CONTEXT_ID tcid,
  [in, out] FLOAT             *pfInkToDeviceScaleX,
  [in, out] FLOAT             *pfInkToDeviceScaleY,
  [in, out] ULONG             *pcPacketProperties,
  [out]     PACKET_PROPERTY   **ppPacketProperties
);

Paramètres

[in] tcid

Spécifie l’identificateur de contexte de la tablette.

[in, out] pfInkToDeviceScaleX

Spécifie le facteur de conversion de l’axe horizontal de l’espace d’entrée manuscrite aux coordonnées du numériseur.

[in, out] pfInkToDeviceScaleY

Spécifie le facteur de conversion pour l’axe vertical de l’espace d’entrée manuscrite vers les coordonnées du numériseur.

[in, out] pcPacketProperties

Nombre de propriétés dans chaque paquet.

[out] ppPacketProperties

Pointeur vers un tableau contenant les GUID et les métriques de propriété pour chaque propriété de paquet.

Valeur retournée

Pour obtenir une description des valeurs de retour, consultez Classes et interfaces RealTimeStylus.

Remarques

Vous pouvez passer la valeur NULL si vous ne souhaitez pas les paramètres de mise à l’échelle.

La méthode IRealTimeStylus ::GetPacketDescriptionData utilise CoTaskMemAlloc pour allouer de l’espace pour ppPacketProperties. L’appelant doit appeler CoTaskMemFree lorsque le tableau n’est plus nécessaire.

L’ordre des propriétés dans le flux de données envoyés aux plug-ins est identique à l’ordre des propriétés retournées par la méthode IRealTimeStylus ::GetPacketDescriptionData. Utilisez cette méthode pour déterminer ce que le matériel signale par rapport à ce qui a été demandé lors de l’appel de la méthode IRealTimeStylus ::SetDesiredPacketDescription.

Exemples

Cet exemple de code C++ utilise la méthode IRealTimeStylus ::GetPacketDescriptionData pour obtenir des informations sur les données de paquets manuscrits.

STDMETHODIMP CCustomRenderer::StylusUp( 
            /* [in] */ IRealTimeStylus *piRtsSrc,
            /* [in] */ const StylusInfo *pStylusInfo,
            /* [in] */ ULONG cPropCountPerPkt,
            /* [size_is][in] */ LONG *pPacket,
            /* [out][in] */ LONG **ppInOutPkt)
{
TABLET_CONTEXT_ID *pTcids;
ULONG ulTcidCount;
TABLET_CONTEXT_ID tcid;
FLOAT fInkToDeviceScaleX;
FLOAT fInkToDeviceScaleY;
ULONG ulPacketProperties;
PACKET_PROPERTY *pPacketProperties;

// Get all the tablet context identifiers
HRESULT hr = piRtsSrc->GetAllTabletContextIds(&ulTcidCount, &pTcids);

// Use the first tablet context identifier in the array
tcid = *pTcids;

// Get the packet description data
hr = piRtsSrc->GetPacketDescriptionData(tcid, &fInkToDeviceScaleX, 
                                        &fInkToDeviceScaleY, &ulPacketProperties,
                                        &pPacketProperties);

// Use the packet description data to do things like scale the ink 
// to the physical display device when rendering your own strokes

	return S_OK;
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP Édition Tablet PC [applications de bureau uniquement]
Serveur minimal pris en charge Aucun pris en charge
Plateforme cible Windows
En-tête rtscom.h
DLL RTSCom.dll

Voir aussi

IRealTimeStylus

IRealTimeStylus ::GetDesiredPacketDescription, méthode

IRealTimeStylus ::SetDesiredPacketDescription, méthode

Classe RealTimeStylus