Graphics.FromHdc Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un nuevo Graphics desde el identificador especificado a un contexto de dispositivo.
Sobrecargas
FromHdc(IntPtr, IntPtr) |
Crea un nuevo Graphics desde el identificador especificado hasta un contexto de dispositivo y un identificador para un dispositivo. |
FromHdc(IntPtr) |
Crea un nuevo Graphics desde el identificador especificado a un contexto de dispositivo. |
FromHdc(IntPtr, IntPtr)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
Crea un nuevo Graphics desde el identificador especificado hasta un contexto de dispositivo y un identificador para un 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
Controlar a un contexto de dispositivo.
- hdevice
-
IntPtr
nativeint
Controle a un dispositivo.
Devoluciones
Este método devuelve un nuevo Graphics para el contexto de dispositivo y el dispositivo especificados.
Comentarios
Siempre debe llamar al método Dispose para liberar el Graphics y los recursos relacionados creados por el método FromHdc.
Incluso si el dispositivo de pantalla tiene un perfil de color ICM asociado, GDI+ no usará ese perfil de forma predeterminada. Para habilitar ICM para una Graphics, construya el Graphics desde un HDC después de pasar hdC (y ICM_ON) a la función SetICMMode
. A continuación, cualquier dibujo realizado por el Graphics se ajustará según el perfil de ICM asociado al dispositivo de visualización. La habilitación de ICM dará lugar a un rendimiento más lento.
El estado del contexto del dispositivo (modo de asignación, unidad lógica y similares) en el momento en que se llama a FromHdc puede afectar a la representación realizada por el Graphics.
El identificador del dispositivo se usa normalmente para consultar funcionalidades de impresora específicas.
Se aplica a
FromHdc(IntPtr)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
Crea un nuevo Graphics desde el identificador especificado a un contexto de 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
Controlar a un contexto de dispositivo.
Devoluciones
Este método devuelve un nuevo Graphics para el contexto de dispositivo especificado.
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza la siguiente acción:
Crea una variable de tipo de puntero interno
hdc
y la establece en el identificador en el contexto del dispositivo del objeto gráfico del formulario.Crea un nuevo objeto gráfico mediante
hdc
.Dibuja un rectángulo con el nuevo objeto gráfico (en la pantalla).
Libera el nuevo objeto gráfico mediante
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
Comentarios
Siempre debe llamar al método Dispose para liberar el Graphics y los recursos relacionados creados por el método FromHdc.
Incluso si el dispositivo de pantalla tiene un perfil de color ICM asociado, GDI+ no usará ese perfil de forma predeterminada. Para habilitar ICM para una Graphics, construya el Graphics desde un HDC después de pasar hdC (y ICM_ON) a la función SetICMMode
. A continuación, cualquier dibujo realizado por el Graphics se ajustará según el perfil de ICM asociado al dispositivo de visualización. La habilitación de ICM dará lugar a un rendimiento más lento.
El estado del contexto del dispositivo (modo de asignación, unidad lógica y similares) en el momento en que se llama a FromHdc puede afectar a la representación realizada por el Graphics.