Partager via


Classe InkD2DRenderer

Implémente l’interfaceIInkD2DRenderer.

Un objet IInkD2DRenderer permet le rendu des traits d’encre sur le contexte d’appareil Direct2D désigné d’une application Windows universelle, au lieu du contrôle par défaut InkCanvas.

Membres

La classe InkD2DRenderer hérite de l’interface IUnknown . InkD2DRenderer a également ces types de membres :

Méthodes

La classe InkD2DRenderer a ces méthodes.

Méthode Descriptif
dessiner Affiche le trait d’encre dans le contexte d’appareil Direct2D désigné de l’application.

Création\Fonctions d’accès

Appelez CoCreateInstance avec l’identificateur de classe InkD2DRenderer pour récupérer une référence à l’objet.

CoCreateInstance(__uuidof(InkD2DRenderer),
  nullptr,
  CLSCTX_INPROC_SERVER,
  IID_PPV_ARGS(&_spInkD2DRenderer));

Exemples

Cet extrait de code du fichier « SceneComposer.cpp » de l’exemple d’entrée manuscrite complexe illustre le rendu d’une collection de traits d’encre dans un contexte d’appareil Direct2D.

_inkRenderer->Render(strokes, _deviceResources->GetD2DDeviceContext());
strokes->Clear();

Cet extrait de code du fichier « InkRenderer.cpp » de l’exemple d’entrée manuscrite complexe montre la méthode Render (appelée dans l’extrait de code précédent) qui appelle la méthode Draw pour le rendu des traits.

void InkRenderer::Render(
    Platform::Collections::Vector<
        Windows::UI::Input::Inking::InkStroke^>^ strokes,
        Microsoft::WRL::ComPtr<ID2D1DeviceContext> d2dContext)
{
    HRESULT hr = S_OK;
    if (_spInkD2DRenderer != nullptr)
    {
        if (strokes != nullptr && strokes->Size > 0)
        {
            // Cast the stroke collection into IUnknown to call Inkd2dRenderer
            ComPtr<IUnknown> spUnkStrokes = 
                reinterpret_cast<IUnknown*>(reinterpret_cast<__abi_IUnknown*>(strokes));
            hr = _spInkD2DRenderer->Draw(d2dContext.Get(), spUnkStrokes.Get(), false);
            if (FAILED(hr))
            {
                DX::ThrowIfFailed(hr);
            }
        }
    }
}

Spécifications

Besoin Valeur
Client minimal pris en charge
Windows 10 [applications de bureau uniquement]
Serveur minimal pris en charge
Aucun pris en charge
En-tête de page
Inkrenderer.h
IDL
Inkrenderer.idl
IID
IID_IInkD2DRenderer est défini comme 4044e60c-7b01-4671-a97c-04e0210a07a5

du renderer Ink, interactions stylet et stylet, exemple d’analyse d’entrée manuscrite ,exemple d’entrée manuscrite simple, exemple d’entrée manuscrite complexe