MÉTHODE ID2D1RenderTarget ::CreateLayer(constD2D1_SIZE_F*,ID2D1Layer**) (d2d1.h)
Crée une ressource de couche qui peut être utilisée avec cette cible de rendu et ses cibles de rendu compatibles.
Syntaxe
HRESULT CreateLayer(
const D2D1_SIZE_F *size,
ID2D1Layer **layer
);
Paramètres
size
Type : [in] const D2D1_SIZE_F*
Si (0, 0) est spécifié, aucun magasin de stockage n’est créé derrière la ressource de couche. La ressource de couche est allouée à la taille minimale lorsque PushLayer est appelé.
layer
Type : [out] ID2D1Layer**
Lorsque la méthode retourne, contient un pointeur vers un pointeur vers la nouvelle couche. Ce paramètre est passé sans être initialisé.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT .
Remarques
La couche se redimensionne automatiquement, selon les besoins.
Exemples
L’exemple suivant utilise une couche pour découper une bitmap en masque géométrique. Pour obtenir l’exemple complet, consultez Guide pratique pour découper un masque géométrique.
HRESULT DemoApp::RenderWithLayer(ID2D1RenderTarget *pRT)
{
HRESULT hr = S_OK;
// Create a layer.
ID2D1Layer *pLayer = NULL;
hr = pRT->CreateLayer(NULL, &pLayer);
if (SUCCEEDED(hr))
{
pRT->SetTransform(D2D1::Matrix3x2F::Translation(350, 50));
// Push the layer with the geometric mask.
pRT->PushLayer(
D2D1::LayerParameters(D2D1::InfiniteRect(), m_pPathGeometry),
pLayer
);
pRT->DrawBitmap(m_pOrigBitmap, D2D1::RectF(0, 0, 200, 133));
pRT->FillRectangle(D2D1::RectF(0.f, 0.f, 25.f, 25.f), m_pSolidColorBrush);
pRT->FillRectangle(D2D1::RectF(25.f, 25.f, 50.f, 50.f), m_pSolidColorBrush);
pRT->FillRectangle(D2D1::RectF(50.f, 50.f, 75.f, 75.f), m_pSolidColorBrush);
pRT->FillRectangle(D2D1::RectF(75.f, 75.f, 100.f, 100.f), m_pSolidColorBrush);
pRT->FillRectangle(D2D1::RectF(100.f, 100.f, 125.f, 125.f), m_pSolidColorBrush);
pRT->FillRectangle(D2D1::RectF(125.f, 125.f, 150.f, 150.f), m_pSolidColorBrush);
pRT->PopLayer();
}
SafeRelease(&pLayer);
return hr;
}
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d2d1.h |
Bibliothèque | D2d1.lib |
DLL | D2d1.dll |