Teilen über


InkD2DRenderer-Klasse

Implementiert die IInkD2DRenderer-Schnittstelle .

Ein IInkD2DRenderer-Objekt ermöglicht das Rendern von Freihandstrichen im angegebenen Direct2D-Gerätekontext einer universellen Windows-App anstelle des Standard-InkCanvas-Steuerelements .

Member

Die InkD2DRenderer-Klasse erbt von der IUnknown-Schnittstelle . InkD2DRenderer verfügt auch über folgende Arten von Membern:

Methoden

Die InkD2DRenderer-Klasse verfügt über diese Methoden.

Methode BESCHREIBUNG
Zeichnen Rendert den Freihandstrich im angegebenen Direct2D-Gerätekontext der App.

Erstellung\Access Functions

Rufen Sie CoCreateInstance mit dem Klassenbezeichner InkD2DRenderer auf, um einen Verweis auf das Objekt abzurufen.

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

Beispiele

Dieser Codeausschnitt aus der Datei "SceneComposer.cpp" des Komplexen Freihandbeispiels veranschaulicht das Rendern einer Sammlung von Freihandstrichen in einen Direct2D-Gerätekontext.

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

Dieser Codeausschnitt aus der Datei "InkRenderer.cpp" des Komplexen Freihandbeispiels zeigt die Render-Methode (im vorherigen Codeausschnitt aufgerufen), die die Draw-Methode zum Rendern der Striche aufruft.

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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 10 [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Nicht unterstützt
Header
Inkrenderer.h
IDL
Inkrenderer.idl
IID
IID_IInkD2DRenderer ist definiert als 4044e60c-7b01-4671-a97c-04e0210a07a5

Freihandrenderer, Stift- und Stiftinteraktionen, Freihandanalysebeispiel, Einfaches Freihandbeispiel, Komplexes Freihandbeispiel