Kelas InkD2DRenderer

Mengimplementasikan antarmukaIInkD2DRenderer.

ObjekIInkD2DRenderermemungkinkan penyajian goresan tinta ke konteks perangkat Direct2D yang ditunjuk dari aplikasi Universal Windows, alih-alih kontrolInkCanvas default.

Anggota

Kelas InkD2DRenderer mewarisi dari antarmuka IUnknown . InkD2DRenderer juga memiliki jenis anggota ini:

Metode

Kelas InkD2DRenderer memiliki metode ini.

Metode Deskripsi
Menggambar Merender goresan tinta ke konteks perangkat Direct2D yang ditunjuk dari aplikasi.

Fungsi Pembuatan\Akses

Panggil CoCreateInstance dengan pengidentifikasi kelas InkD2DRenderer untuk mengambil referensi ke objek.

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

Contoh

Cuplikan ini dari file "SceneComposer.cpp" dari sampel tinta Kompleks menunjukkan penyajian kumpulan goresan tinta ke konteks perangkat Direct2D.

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

Cuplikan ini dari file "InkRenderer.cpp" dari sampel penintaan Kompleks menunjukkan metode Render (disebut dalam cuplikan sebelumnya) yang memanggil metode Draw untuk merender goresan.

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

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows 10 [hanya aplikasi desktop]
Server minimum yang didukung
Tidak ada yang didukung
Kepala Halaman
Inkrenderer.h
IDL
Inkrenderer.idl
IID
IID_IInkD2DRenderer didefinisikan sebagai 4044e60c-7b01-4671-a97c-04e0210a07a5

perender Tinta , interaksi pena dan stylus, Sampel Analisis Tinta, sampel tinta sederhana , sampel penintaan kompleks