Condividi tramite


Metodo IRealTimeStylus::GetPacketDescriptionData (rtscom.h)

Recupera le proprietà dei pacchetti e i fattori di ridimensionamento.

Sintassi

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

Parametri

[in] tcid

Specifica l'identificatore del contesto del tablet.

[in, out] pfInkToDeviceScaleX

Specifica il fattore di conversione per l'asse orizzontale dallo spazio input penna alle coordinate del digitalizzatore.

[in, out] pfInkToDeviceScaleY

Specifica il fattore di conversione per l'asse verticale dallo spazio input penna alle coordinate del digitalizzatore.

[in, out] pcPacketProperties

Numero di proprietà in ogni pacchetto.

[out] ppPacketProperties

Puntatore a una matrice contenente i GUID e le metriche delle proprietà per ogni proprietà del pacchetto.

Valore restituito

Per una descrizione dei valori restituiti, vedere Classi e interfacce RealTimeStylus.

Commenti

È possibile passare NULL se non si desidera che i parametri di ridimensionamento.

Il metodo IRealTimeStylus::GetPacketDescriptionData usa CoTaskMemAlloc per allocare spazio per ppPacketProperties. Il chiamante deve chiamare CoTaskMemFree quando la matrice non è più necessaria.

L'ordine delle proprietà nel flusso di dati inviati ai plug-in corrisponde all'ordine delle proprietà restituite dal metodo IRealTimeStylus::GetPacketDescriptionData. Usare questo metodo per determinare l'hardware che segnala rispetto a ciò che è stato richiesto quando si chiama il metodo IRealTimeStylus::SetDesiredPacketDescription.

Esempio

Questo esempio di codice C++ usa il metodo IRealTimeStylus::GetPacketDescriptionData per ottenere informazioni sui dati del pacchetto input penna.

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;
}

Requisiti

Requisito Valore
Client minimo supportato Windows XP Tablet PC Edition [solo app desktop]
Server minimo supportato Nessuno supportato
Piattaforma di destinazione Windows
Intestazione rtscom.h
DLL RTSCom.dll

Vedi anche

IRealTimeStylus

Metodo IRealTimeStylus::GetDesiredPacketDescription

Metodo IRealTimeStylus::SetDesiredPacketDescription

Classe RealTimeStylus