Freigeben über


Dynamic-Renderer Plug-Ins

Ein Dynamisches Renderer-Plug-In ist ein Objekt, das die Tablet-Stiftdaten in Echtzeit anzeigt, da es vom RealTimeStylus-Objekt behandelt wird. Später können ereignisse wie z. B. eine Formularaktualisierung, das Plug-In für dynamische Renderer oder ein Freihandsammler-Plug-In die Freihandeingabe neu zeichnen.

Das DynamicRenderer-Objekt

Das RealTimeStylus-Objekt implementiert die IStylusSyncPlugin Schnittstelle. Das DynamicRenderer Objekt rendert die Freihandeingabe in Echtzeit, wie sie gezeichnet wird. Wenn die Refresh-Methode aufgerufen wird, während das DynamicRenderer--Objekt aktiviert ist, wird der DynamicRenderer Objekt den derzeit erfassten Strich neu gezeichnet. Die eigenschaft "Enabled" des DynamicRenderer Objekts wird anfangs auf FALSE-festgelegt.

Anmerkung

Legen Sie beim Aufrufen der Refresh-Methode des DynamicRenderer Objekts innerhalb eines Paint-Ereignishandler s im verwalteten Code die ClipRectangle-Eigenschaft des DynamicRenderer Objekts auf die PaintEventArgs ClipRectangle-Eigenschaft Objekts fest.

 

Das DynamicRenderer--Objekt kann Freihanddaten vorübergehend zwischenspeichern. Um dieses Feature in verwaltetem Code zu verwenden, legen Sie die EnableDataCache-eigenschaft auf TRUEfest. Wenn das DynamicRenderer--Objekt einen Aufruf seiner IStylusSyncPlugin.StylusUp-Methode empfängt, speichert es die Strichdaten zwischen und fügt der Eingabewarteschlange benutzerdefinierte Eingabestiftdaten als Reaktion auf das StylusUpData- -Objekt für den Strich hinzu. Die Eigenschaft "CustomStylusData" Objekt CustomDataId wird auf den Wert DynamicRendererCachedDataGuid festgelegt, und die Data-Eigenschaft des CustomStylusData Objekts enthält ein DynamicRendererCachedData-Objekt. Rufen Sie die DynamicRenderer--Methode des ReleaseCachedData- Objekts auf, sobald der Strich erfasst wurde und statisch gerendert werden kann. Wenn die Refresh-Methode aufgerufen wird, während das DynamicRenderer--Objekt aktiviert ist, werden alle zwischengespeicherten Striche vom DynamicRenderer-Objekt neu gezeichnet. Wenn die eigenschaft DataCacheEnabled auf falsefestgelegt ist, werden die zwischengespeicherten Strichdaten gelöscht.

Das folgende Diagramm veranschaulicht, wie das DynamicRenderer--Objekt Daten zu den Tabletstiftdaten hinzufügt, wenn die DataCacheEnabled- Eigenschaft des DynamicRenderer Objekts festgelegt wird.

Abbildung des dynamischen Datenflusses

In diesem Diagramm stellt der kreisförmige Buchstabe "SD" ein StylusDown- -Objekt und die Kreise mit dem Buchstaben "P" Pakete Objekte dar, die bereits der Ausgabewarteschlange des RealTimeStylus Objekts hinzugefügt wurden und noch nicht an die asynchrone Plug-In-Auflistung gesendet wurden. Der kreisförmige Buchstabe "SU" stellt ein StylusUp Objekt dar, das das RealTimeStylus--Objekt derzeit verarbeitet. Sie wird an die synchrone Plug-In-Sammlung gesendet und dann in der Ausgabewarteschlange platziert. Die Kreise mit dem Buchstaben "DR" stellen benutzerdefinierte Eingabestiftdaten dar, die der Eingabewarteschlange durch den DynamicRenderer Plug-In als Reaktion auf die mit "SU" verknüpfte Eingabestiftbenachrichtigung hinzugefügt werden. Anschließend werden die benutzerdefinierten Eingabestiftdaten mit dem Buchstaben "DR" an die synchronen Plug-Ins und dann an die Ausgabewarteschlange übergeben, bevor die nächsten Tabletstiftdaten verarbeitet werden. Der leere Kreis stellt die Position in der Ausgabewarteschlange dar, an der zukünftige Tablet-Stiftdaten hinzugefügt werden. Außerdem wird im Diagramm das Freihandsammler-Plug-In dargestellt, das das DynamicRenderer-Objekt ReleaseCachedData--Methode aufruft, um die zwischengespeicherten Strichdaten freizugeben, nachdem das Ink-Collection-Plug-In den Strich verarbeitet hat.

Besondere Überlegungen

In der folgenden Liste werden weitere Punkte beschrieben, die bei Verwendung des DynamicRenderer--Objekts berücksichtigt werden.

Benutzerdefiniertes Rendering

Sie können ein eigenes Dynamic-Renderer-Plug-In erstellen, indem Sie ein synchrones Plug-In erstellen, das den StylusDown-, Paketenund StylusUp- Benachrichtigungen abonniert. Das Plug-In kann dann den Strich so rendern, wie er gezeichnet wird. Dies kann eine Möglichkeit sein, ein Auswahltool zu implementieren, das beispielsweise eine Freiformauswahl oder ein Auswahlfeld verwendet.