IRealTimeStylus::GetPacketDescriptionData-Methode (rtscom.h)
Ruft die Paketeigenschaften und Skalierungsfaktoren ab.
Syntax
HRESULT GetPacketDescriptionData(
[in] TABLET_CONTEXT_ID tcid,
[in, out] FLOAT *pfInkToDeviceScaleX,
[in, out] FLOAT *pfInkToDeviceScaleY,
[in, out] ULONG *pcPacketProperties,
[out] PACKET_PROPERTY **ppPacketProperties
);
Parameter
[in] tcid
Gibt den Tablet-Kontextbezeichner an.
[in, out] pfInkToDeviceScaleX
Gibt den Konvertierungsfaktor für die horizontale Achse von Freihandraum zu Digitizerkoordinaten an.
[in, out] pfInkToDeviceScaleY
Gibt den Konvertierungsfaktor für die vertikale Achse von Freihandraum zu Digitizerkoordinaten an.
[in, out] pcPacketProperties
Die Anzahl der Eigenschaften in jedem Paket.
[out] ppPacketProperties
Zeiger auf ein Array, das die GUIDs und Eigenschaftenmetriken für jede Paketeigenschaft enthält.
Rückgabewert
Eine Beschreibung der Rückgabewerte finden Sie unter RealTimeStylus-Klassen und -Schnittstellen.
Hinweise
Sie können NULL übergeben, wenn Sie die Skalierungsparameter nicht möchten.
Die IRealTimeStylus::GetPacketDescriptionData-Methode verwendet CoTaskMemAlloc , um Speicherplatz für ppPacketProperties zuzuweisen. Der Aufrufer sollte CoTaskMemFree aufrufen, wenn das Array nicht mehr benötigt wird.
Die Reihenfolge der Eigenschaften im Datenstrom, der an Plug-Ins gesendet wird, entspricht der Reihenfolge der von der IRealTimeStylus::GetPacketDescriptionData-Methode zurückgegebenen Eigenschaften. Verwenden Sie diese Methode, um zu ermitteln, was die Hardware meldet und was beim Aufrufen der IRealTimeStylus::SetDesiredPacketDescription-Methode angefordert wurde.
Beispiele
In diesem C++-Codebeispiel wird die IRealTimeStylus::GetPacketDescriptionData-Methode verwendet, um Informationen zu den Freihandpaketdaten abzurufen.
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;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP Tablet PC Edition [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Nicht unterstützt |
Zielplattform | Windows |
Kopfzeile | rtscom.h |
DLL | RTSCom.dll |
Weitere Informationen
IRealTimeStylus::GetDesiredPacketDescription-Methode