Graphics.FromHdc Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Cria um novo Graphics do handle especificado para o contexto de um dispositivo.
Sobrecargas
| Name | Description |
|---|---|
| FromHdc(IntPtr, IntPtr) |
Cria um novo Graphics handle especificado para um contexto de dispositivo e um handle para um dispositivo. |
| FromHdc(IntPtr) |
Cria um novo Graphics do handle especificado para o contexto de um dispositivo. |
FromHdc(IntPtr, IntPtr)
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
Cria um novo Graphics handle especificado para um contexto de dispositivo e um handle para um dispositivo.
public:
static System::Drawing::Graphics ^ FromHdc(IntPtr hdc, IntPtr hdevice);
public static System.Drawing.Graphics FromHdc(IntPtr hdc, IntPtr hdevice);
static member FromHdc : nativeint * nativeint -> System.Drawing.Graphics
Public Shared Function FromHdc (hdc As IntPtr, hdevice As IntPtr) As Graphics
Parâmetros
- hdc
-
IntPtr
nativeint
Handle para o contexto de um dispositivo.
- hdevice
-
IntPtr
nativeint
Manuseio para um dispositivo.
Devoluções
Este método retorna um novo Graphics para o contexto e dispositivo especificados.
Observações
Deve sempre chamar o Dispose método para libertar os Graphics recursos relacionados criados pelo FromHdc método.
Mesmo que o dispositivo de visualização tenha um perfil de cor ICM associado, o GDI+ não usará esse perfil por defeito. Para ativar o ICM para um Graphics, constrói o Graphics a partir de um HDC depois de passar o HDC (e ICM_ON) para a SetICMMode função. Depois, qualquer desenho feito pelo Graphics será ajustado de acordo com o perfil ICM associado ao dispositivo de visualização. Ativar o ICM resultará num desempenho mais lento.
O estado do contexto do dispositivo (modo de mapeamento, unidade lógica e afins) no momento em que chama FromHdc pode afetar a renderização feita pelo Graphics.
O handle do dispositivo é normalmente usado para consultar capacidades específicas da impressora.
Aplica-se a
FromHdc(IntPtr)
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
Cria um novo Graphics do handle especificado para o contexto de um dispositivo.
public:
static System::Drawing::Graphics ^ FromHdc(IntPtr hdc);
public static System.Drawing.Graphics FromHdc(IntPtr hdc);
static member FromHdc : nativeint -> System.Drawing.Graphics
Public Shared Function FromHdc (hdc As IntPtr) As Graphics
Parâmetros
- hdc
-
IntPtr
nativeint
Handle para o contexto de um dispositivo.
Devoluções
Este método retorna um novo Graphics para o contexto do dispositivo especificado.
Exemplos
O seguinte exemplo de código foi concebido para uso com Windows Forms e requer PaintEventArgse, que é um parâmetro do tratador de eventos Paint. O código executa a seguinte ação:
Cria uma variável
hdcinterna de tipo ponteiro e define-a para o handle do contexto do dispositivo do objeto gráfico da forma.Cria um novo objeto gráfico usando
hdc.Desenha um retângulo com o novo objeto gráfico (no ecrã).
Liberta o novo objeto gráfico usando
hdc.
public:
void FromHdcHdc( PaintEventArgs^ e )
{
// Get handle to device context.
IntPtr hdc = e->Graphics->GetHdc();
// Create new graphics object using handle to device context.
Graphics^ newGraphics = Graphics::FromHdc( hdc );
// Draw rectangle to screen.
newGraphics->DrawRectangle( gcnew Pen( Color::Red,3.0f ), 0, 0, 200, 100 );
// Release handle to device context and dispose of the // Graphics object
e->Graphics->ReleaseHdc( hdc );
delete newGraphics;
}
private void FromHdcHdc(PaintEventArgs e)
{
// Get handle to device context.
IntPtr hdc = e.Graphics.GetHdc();
// Create new graphics object using handle to device context.
Graphics newGraphics = Graphics.FromHdc(hdc);
// Draw rectangle to screen.
newGraphics.DrawRectangle(new Pen(Color.Red, 3), 0, 0, 200, 100);
// Release handle to device context and dispose of the // Graphics object
e.Graphics.ReleaseHdc(hdc);
newGraphics.Dispose();
}
<System.Security.Permissions.SecurityPermission( _
System.Security.Permissions.SecurityAction.LinkDemand, Flags := _
System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)> _
Private Sub FromHdcHdc(ByVal e As PaintEventArgs)
' Get handle to device context.
Dim hdc As IntPtr = e.Graphics.GetHdc()
' Create new graphics object using handle to device context.
Dim newGraphics As Graphics = Graphics.FromHdc(hdc)
' Draw rectangle to screen.
newGraphics.DrawRectangle(New Pen(Color.Red, 3), 0, 0, 200, 100)
' Release handle to device context and dispose of the Graphics ' object
e.Graphics.ReleaseHdc(hdc)
newGraphics.Dispose()
End Sub
Observações
Deve sempre chamar o Dispose método para libertar os Graphics recursos relacionados criados pelo FromHdc método.
Mesmo que o dispositivo de visualização tenha um perfil de cor ICM associado, o GDI+ não usará esse perfil por defeito. Para ativar o ICM para um Graphics, constrói o Graphics a partir de um HDC depois de passar o HDC (e ICM_ON) para a SetICMMode função. Depois, qualquer desenho feito pelo Graphics será ajustado de acordo com o perfil ICM associado ao dispositivo de visualização. Ativar o ICM resultará num desempenho mais lento.
O estado do contexto do dispositivo (modo de mapeamento, unidade lógica e afins) no momento em que chama FromHdc pode afetar a renderização feita pelo Graphics.