struttura D2D1_RENDER_TARGET_PROPERTIES (d2d1.h)

Contiene opzioni di rendering (hardware o software), formato pixel, informazioni DPI, opzioni di comunicazione remota e requisiti di supporto Direct3D per una destinazione di rendering.

Sintassi

typedef struct D2D1_RENDER_TARGET_PROPERTIES {
  D2D1_RENDER_TARGET_TYPE  type;
  D2D1_PIXEL_FORMAT        pixelFormat;
  FLOAT                    dpiX;
  FLOAT                    dpiY;
  D2D1_RENDER_TARGET_USAGE usage;
  D2D1_FEATURE_LEVEL       minLevel;
} D2D1_RENDER_TARGET_PROPERTIES;

Members

type

Tipo: D2D1_RENDER_TARGET_TYPE

Valore che specifica se la destinazione di rendering deve forzare il rendering hardware o software. Un valore di D2D1_RENDER_TARGET_TYPE_DEFAULT specifica che la destinazione di rendering deve usare il rendering hardware, se disponibile; in caso contrario, usa il rendering software. Si noti che le destinazioni di rendering bitmap WIC non supportano il rendering hardware.

pixelFormat

Tipo: D2D1_PIXEL_FORMAT

Formato pixel e modalità alfa della destinazione di rendering. È possibile usare la funzione D2D1::P ixelFormat per creare un formato pixel che specifica che Direct2D deve selezionare automaticamente il formato pixel e la modalità alfa. Per un elenco dei formati pixel e delle modalità alfa supportate da ogni destinazione di rendering, vedi Formati pixel supportati e modalità alfa.

dpiX

Tipo: FLOAT

DPI orizzontale della destinazione di rendering. Per usare il valore DPI predefinito, impostare dpiX e dpiY su 0. Per altre informazioni, vedere la sezione Osservazioni.

dpiY

Tipo: FLOAT

DPI verticale della destinazione di rendering. Per usare il valore DPI predefinito, impostare dpiX e dpiY su 0. Per altre informazioni, vedere la sezione Osservazioni.

usage

Tipo: D2D1_RENDER_TARGET_USAGE

Valore che specifica il modo in cui la destinazione di rendering è remota e se deve essere compatibile con GDI. Impostare su D2D1_RENDER_TARGET_USAGE_NONE per creare una destinazione di rendering non compatibile con GDI e usa la comunicazione remota del flusso di comandi Direct3D, se disponibile.

minLevel

Tipo: D2D1_FEATURE_LEVEL

Valore che specifica il livello minimo di funzionalità Direct3D necessario per il rendering hardware. Se il livello minimo specificato non è disponibile, la destinazione di rendering usa il rendering software se il membro del tipo è impostato su D2D1_RENDER_TARGET_TYPE_DEFAULT; se il tipo è impostato su D2D1_RENDER_TARGET_TYPE_HARDWARE, la creazione della destinazione di rendering ha esito negativo. Un valore di D2D1_FEATURE_LEVEL_DEFAULT indica che Direct2D deve determinare se il livello di funzionalità Direct3D del dispositivo è adeguato. Questo campo viene usato solo quando si creano oggetti ID2D1HwndRenderTarget e ID2D1DCRenderTarget .

Commenti

Usare questa struttura durante la creazione di una destinazione di rendering o usarla con il metodo ID2D1RenderTarget::IsSupported per controllare le proprietà supportate da una destinazione di rendering esistente.

Per praticità, Direct2D fornisce la funzione helper D2D1::RenderTargetProperties per la creazione di strutture D2D1_RENDER_TARGET_PROPERTIES . Un modo semplice per creare una struttura di D2D1_RENDER_TARGET_PROPERTIES che funziona per la maggior parte delle destinazioni di rendering consiste nel chiamare la funzione senza specificare parametri. In questo modo viene creata una struttura D2D1_RENDER_TARGET_PROPERTIES con i relativi campi impostati sui valori predefiniti. Per altre informazioni, vedere D2D1::RenderTargetProperties.

Non tutte le destinazioni di rendering supportano il rendering hardware. Per un elenco, vedere Panoramica delle destinazioni di rendering.

Uso delle impostazioni DPI predefinite

Per usare il valore DPI predefinito, impostare dpiX e dpiY su 0. Il valore DPI predefinito varia a seconda della destinazione di rendering:
  • Per una destinazione di rendering compatibile, il valore DPI predefinito è il valore DPI della destinazione di rendering padre.
  • Per id2D1HwndRenderTarget, il valore DPI predefinito è il valore DPI di sistema ottenuto dall'ID2D1Factory della destinazione di rendering.
  • Per altre destinazioni di rendering, il valore DPI predefinito è 96.
Per usare l'impostazione DPI predefinita, sia dpiX che dpiY devono essere impostati su 0. L'impostazione di un solo valore su 0 causa un errore E_INVALIDARG quando si tenta di creare una destinazione di rendering.

Esempio

Nell'esempio seguente viene utilizzata la funzione D2D1::RenderTargetProperties per creare una struttura D2D1_RENDER_TARGET_PROPERTIES adatta alla maggior parte delle destinazioni di rendering.

RECT rc;
GetClientRect(m_hwnd, &rc);

D2D1_SIZE_U size = D2D1::SizeU(
    rc.right - rc.left,
    rc.bottom - rc.top
    );

// Create a Direct2D render target.
hr = m_pD2DFactory->CreateHwndRenderTarget(
    D2D1::RenderTargetProperties(),
    D2D1::HwndRenderTargetProperties(m_hwnd, size),
    &m_pRenderTarget
    );

Requisiti

Requisito Valore
Client minimo supportato Windows 7, Windows Vista con SP2 e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2, Windows Server 2008 con SP2 e Platform Update per Windows Server 2008 [app desktop | App UWP]
Intestazione d2d1.h

Vedi anche

ID2D1RenderTarget::IsSupported

Panoramica delle destinazioni di rendering