Transcript
Clases Graficas.
Objeto “Bitmap”. Encapsula mapas de bits de GDI+, que están formados por los datos de píxeles de una imagen de gráficos y sus atributos. Bitmap es un objeto que se utiliza para trabajar con imágenes definidas mediante datos de píxeles. Métodos Nombre
Descripción
Clone
Sobrecargado. Crea una copia de la sección de este objeto Bitmap definida con una enumeración PixelFormat especificada.
CreateObjRef
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Dispose
Sobrecargado.
Equals
Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Finalize
Permite que un objeto Object intente liberar recursos y realizar otras operaciones de limpieza antes de que el objeto Object sea reclamado por el recolector de elementos no utilizados. (Se hereda de Image).
FromHicon
Crea un objeto Bitmap a partir de un identificador de Windows para un icono.
FromResource
Crea un objeto Bitmap a partir del recurso de Windows especificado.
GetBounds
Obtiene los límites de la imagen en la unidad especificada. (Se hereda de Image).
GetEncoderParameterList
Devuelve información sobre los parámetros que admite el codificador de imágenes especificado. (Se hereda de Image).
GetFrameCount
Devuelve el número de marcos de la dimensión especificada. (Se hereda de Image).
GetHashCode
Actúa como función hash para un tipo concreto. (Se hereda de Object).
GetHbitmap
Sobrecargado. Crea un objeto de mapa de bits de GDI a partir de un objeto GDI+ Bitmap.
GetHicon
Devuelve el identificador de un icono.
GetLifetimeService
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
GetPixel
Obtiene el color del píxel especificado de este Bitmap.
GetPropertyItem
Obtiene el elemento de propiedad especificado de Image. (Se hereda de Image).
GetThumbnailImage
Devuelve una miniatura de Image. (Se hereda de Image).
GetType
Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
InitializeLifetimeService
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
LockBits
Sobrecargado. Bloquea un objeto Bitmap en la memoria del sistema.
MakeTransparent
Sobrecargado. Hace que el color transparente predeterminado sea transparente para este objeto Bitmap.
MemberwiseClone
Sobrecargado.
RemovePropertyItem
Quita el elemento de propiedad especificado de Image. (Se hereda de Image).
RotateFlip
Este método gira, voltea o gira y voltea el objeto Image. (Se hereda de Image).
Save
Sobrecargado.
SaveAdd
Sobrecargado.
SelectActiveFrame
Selecciona el marco que especifican la dimensión y el índice. (Se hereda de Image).
SetPixel
Establece el color del píxel especificado en este objeto Bitmap.
SetPropertyItem
Almacena un elemento de propiedad (fragmento de metadatos) en Image. (Se hereda de Image).
SetResolution
Establece la resolución de este objeto Bitmap.
ToString
Devuelve una clase String que representa la clase Object actual. (Se hereda de Object).
UnlockBits
Desbloquea este objeto Bitmap en la memoria del sistema.
Propiedades Nombre
Descripción
Flags
Obtiene indicadores de atributo indica para los datos de píxel de Image. (Se hereda de Image).
FrameDimensionsList
Obtiene una matriz de GUID que representa las dimensiones de los
marcos dentro de Image. (Se hereda de Image). Height
Obtiene el alto, en píxeles, de Image. (Se hereda de Image).
HorizontalResolution
Obtiene la resolución horizontal, en píxeles por pulgada, de Image. (Se hereda de Image).
Palette
Obtiene o establece la paleta de colores utilizada para Image. (Se hereda de Image).
PhysicalDimension
Obtiene el ancho y el alto de esta imagen. (Se hereda de Image).
PixelFormat
Obtiene el formato de píxeles de Image. (Se hereda de Image).
PropertyIdList
Obtiene los identificadores de los elementos de propiedad almacenados en Image. (Se hereda de Image).
PropertyItems
Obtiene todos los elementos de propiedad (fragmentos de metadatos) almacenados en Image. (Se hereda de Image).
RawFormat
Obtiene el formato de archivo de este objeto Image. (Se hereda de Image).
Size
Obtiene el ancho y el alto de esta imagen, expresado en píxeles. (Se hereda de Image).
Tag
Obtiene o establece un objeto que proporciona datos adicionales sobre la imagen. (Se hereda de Image).
VerticalResolution
Obtiene la resolución vertical, en píxeles por pulgada, de Image. (Se hereda de Image).
Width
Obtiene el ancho, en píxeles, de Image. (Se hereda de Image).
Objeto “Pen”. Define un objeto utilizado para dibujar líneas y curvas. No se puede heredar esta clase. Métodos Nombre
Descripción
Clone
Crea una copia exacta de este objeto Pen.
CreateObjRef
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Dispose
Libera todos los recursos utilizados por este Pen.
Equals
Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Finalize
Permite que un objeto Object intente liberar recursos y realizar otras operaciones de limpieza antes de que el objeto Object sea reclamado por el recolector de elementos no utilizados. (Se hereda de Object).
GetHashCode
Actúa como función hash para un tipo concreto. (Se hereda de Object).
GetLifetimeService
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
GetType
Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
InitializeLifetimeService
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
MemberwiseClone
Sobrecargado.
MultiplyTransform
Sobrecargado. Multiplica la matriz de transformación de este Pen por la Matrix especificada.
ResetTransform
Restablece la matriz de transformación geométrica de este Pen en identidad.
RotateTransform
Sobrecargado. Gira la transformación geométrica local el ángulo especificado. Este método antepone la rotación a la transformación.
ScaleTransform
Sobrecargado. Cambia el tamaño de la transformación geométrica local en los factores especificados. Este método antepone la matriz de escala a la transformación.
SetLineCap
Establece los valores que determinan el estilo de extremo que se utiliza para finalizar las líneas dibujadas con este Pen.
ToString
Devuelve una clase String que representa la clase Object actual. (Se hereda de Object).
TranslateTransform
Sobrecargado. Convierte la transformación geométrica local en las dimensiones especificadas. Este método antepone la conversión a la transformación.
Propiedades Nombre
Descripción
Alignment
Obtiene o establece la alineación de este Pen.
Brush
Obtiene o establece el Brush que determina los atributos de este Pen.
Color
Obtiene o establece el color de este Pen.
CompoundArray
Obtiene o establece una matriz de valores que especifica un lápiz compuesto. Un lápiz compuesto dibuja una línea compuesta formada por líneas y espacios paralelos.
CustomEndCap
Obtiene o establece un extremo personalizado que se utiliza al final de las líneas dibujadas con este Pen.
CustomStartCap
Obtiene o establece un extremo personalizado que se utiliza al comienzo de las líneas dibujadas con este Pen.
DashCap
Obtiene o establece el estilo de extremo que se utiliza al final de los guiones que forman las líneas discontinuas dibujadas con este Pen.
DashOffset
Obtiene o establece la distancia desde el comienzo de una línea hasta el comienzo de un modelo de guiones.
DashPattern
Obtiene o establece una matriz de guiones y espacios personalizados.
DashStyle
Obtiene o establece el estilo de las líneas discontinuas dibujadas con este Pen.
EndCap
Obtiene o establece el estilo de extremo que se utiliza al final de las líneas dibujadas con este Pen.
LineJoin
Obtiene o establece el estilo de unión de los extremos de dos líneas consecutivas dibujadas con este Pen.
MiterLimit
Obtiene o establece el límite del grosor de la combinación en una esquina en ángulo.
PenType
Obtiene el estilo de las líneas dibujadas con este Pen.
StartCap
Obtiene o establece el estilo de extremo que se utiliza al comienzo de las líneas dibujadas con este Pen.
Transform
Obtiene o establece una copia de la transformación geométrica para este objeto Pen.
Width
Obtiene o establece el ancho de este objeto Pen, en unidades del objeto Graphics utilizado para dibujar.
Objeto “Graphics”. Encapsula una superficie de dibujo de GDI+. No se puede heredar esta clase. La clase Graphics proporciona métodos para dibujar objetos en el dispositivo de pantalla. Graphics se asocia a un determinado contexto de dispositivo. Métodos Nombre
Descripción
AddMetafileComment
Agrega un comentario al Metafile actual.
BeginContainer
Sobrecargado. Guarda un contenedor de gráficos con el estado actual de este Graphics y abre y utiliza un nuevo contenedor de gráficos.
Clear
Borra toda la superficie de dibujo y la rellena con el color de
fondo especificado. CopyFromScreen
Sobrecargado. Realiza una transferencia de bloque de bits de los datos de color desde la pantalla a la superficie de dibujo de Graphics.
CreateObjRef
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Dispose
Libera todos los recursos utilizados por este Graphics.
DrawArc
Sobrecargado. Dibuja un archivo que representa una parte de una elipse especificada por un par de coordenadas, un valor de ancho y un valor de alto.
DrawBezier
Sobrecargado. Dibuja una curva spline de Bézier definida por cuatro estructuras Point.
DrawBeziers
Sobrecargado. Dibuja una serie de curvas spline de Bézier a partir de una matriz de estructuras Point.
DrawClosedCurve
Sobrecargado. Dibuja una curva spline cardinal cerrada, definida por una matriz de estructuras Point.
DrawCurve
Sobrecargado. Dibuja una curva spline cardinal a través de una matriz especificada de estructuras Point.
DrawEllipse
Sobrecargado. Dibuja una elipse definida por un rectángulo delimitador especificado por un par de coordenadas, un valor de alto y un valor de ancho.
DrawIcon
Sobrecargado. Dibuja la imagen representada por el Icon especificado en las coordenadas señaladas.
DrawIconUnstretched
Dibuja la imagen representada por el Icon especificado sin transformar a escala la imagen.
DrawImage
Sobrecargado. Dibuja la Image especificada en la ubicación que se indique y con el tamaño original.
DrawImageUnscaled
Sobrecargado. Dibuja la imagen especificada con su tamaño físico original y en la ubicación especificada por un par de coordenadas.
DrawImageUnscaledAndClipped
Dibuja la imagen especificada sin ajustar la escala y la recorta, si es necesario, para que quepa en el rectángulo especificado.
DrawLine
Sobrecargado. Dibuja una línea que conecta los dos puntos especificados por los pares de coordenadas.
DrawLines
Sobrecargado. Dibuja una serie de segmentos de línea que conectan una matriz de estructuras Point.
DrawPath
Dibuja un GraphicsPath.
DrawPie
Sobrecargado. Dibuja una forma circular definida por una
elipse determinada por un par de coordenadas, unos valores de ancho y alto y dos líneas radiales. DrawPolygon
Sobrecargado. Dibuja un polígono definido por una matriz de estructuras Point.
DrawRectangle
Sobrecargado. Dibuja un rectángulo especificado por un par de coordenadas, un valor de ancho y un valor de alto.
DrawRectangles
Sobrecargado. Dibuja una serie de rectángulos especificados por las estructuras Rectangle.
DrawString
Sobrecargado. Dibuja la cadena de texto especificada en la ubicación especificada y con los objetos Brush y Font especificados.
EndContainer
Cierra el contenedor de gráficos actual y restaura el estado que tenía este Graphics al estado guardado mediante una llamada al método BeginContainer.
EnumerateMetafile
Sobrecargado. Envía los registros del Metafile especificado, de uno en uno, a un método de devolución de llamada para su presentación en un punto determinado.
Equals
Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
ExcludeClip
Sobrecargado. Actualiza la región de recorte de este Graphics con el fin de excluir el área especificada por una estructura Rectangle.
FillClosedCurve
Sobrecargado. Rellena el interior de una curva spline cardinal cerrada, definida por una matriz de estructuras Point.
FillEllipse
Sobrecargado. Rellena el interior de una elipse definida por un rectángulo de delimitación especificado por un par de coordenadas, un valor de alto y un valor de ancho.
FillPath
Rellena el interior de un GraphicsPath.
FillPie
Sobrecargado. Rellena el interior de una sección de gráfico circular definida por una elipse, determinada por un par de coordenadas, unos valores de ancho y alto y dos líneas radiales.
FillPolygon
Sobrecargado. Rellena el interior de un polígono definido por una matriz de puntos, especificados por estructuras Point.
FillRectangle
Sobrecargado. Rellena el interior de un rectángulo especificado por un par de coordenadas, un valor de ancho y un valor de alto.
FillRectangles
Sobrecargado. Rellena el interior de una serie de rectángulos especificados por estructuras Rectangle.
FillRegion
Rellena el interior de una Region.
Finalize
Permite que un objeto Object intente liberar recursos y
realizar otras operaciones de limpieza antes de que el objeto Object sea reclamado por el recolector de elementos no utilizados. (Se hereda de Object). Flush
Sobrecargado. Fuerza la ejecución de todas las operaciones de gráficos pendientes y devuelve inmediatamente el control sin esperar a que finalicen las operaciones.
FromHdc
Sobrecargado. Crea un nuevo Graphics a partir del identificador especificado en un contexto de dispositivo.
FromHdcInternal
Infraestructura. Devuelve un Graphics correspondiente al contexto de dispositivo especificado.
FromHow
Infraestructura. Crea un objeto gráfico.
FromHwnd
Crea un nuevo Graphics a partir del identificador especificado de una ventana.
FromHwndInternal
Infraestructura. Crea un nuevo Graphics para el identificador de ventana especificado.
FromImage
Crea un nuevo Graphics con la Image especificada.
GetContextInfo
Infraestructura. Obtiene el contexto de los gráficos acumulativos.
GetHalftonePalette
Obtiene un identificador de la paleta actual de medios tonos de Windows.
GetHashCode
Actúa como función hash para un tipo concreto. (Se hereda de Object).
GetHdc
Obtiene el identificador del contexto de dispositivo asociado a este Graphics.
GetLifetimeService
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
GetNearestColor
Obtiene el color más próximo a la estructura Color especificada.
GetType
Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
InitializeLifetimeService
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
IntersectClip
Sobrecargado. Actualiza la región de recorte de este Graphics a la intersección de la actual región de recorte y la estructura Rectangle especificada.
IsVisible
Sobrecargado. Indica si el punto especificado por un par de coordenadas se halla contenido en la región de recorte visible
de este Graphics. MeasureCharacterRanges
Obtiene una matriz de objetos Region, cada uno de los cuales delimita un intervalo de posiciones de caracteres dentro de la cadena especificada.
MeasureString
Sobrecargado. Mide la cadena especificada al dibujarla con la Font especificada.
MemberwiseClone
Sobrecargado.
MultiplyTransform
Sobrecargado. Multiplica la transformación universal de este Graphics, según especifica Matrix.
ReleaseHdc
Sobrecargado. Libera un identificador de contexto de dispositivo obtenido mediante una llamada anterior al método GetHdc de este Graphics.
ReleaseHdcInternal
Infraestructura. Libera un identificador de un contexto de dispositivo.
ResetClip
Restablece la región de recorte de este Graphics en una región infinita.
ResetTransform
Restablece la matriz de transformación universal de este Graphics en la matriz de identidades.
Restore
Restaura el estado de este Graphics en el estado representado por un GraphicsState.
RotateTransform
Sobrecargado. Aplica la rotación especificada a la matriz de transformación de este Graphics.
Save
Guarda el estado actual de este Graphics e identifica el estado guardado con un GraphicsState.
ScaleTransform
Sobrecargado. Aplica la operación de cambio de escala especificada a la matriz de transformación de este Graphics, anteponiéndola a esta última.
SetClip
Sobrecargado. Establece la región de recorte de este Graphics en la propiedad Clip del Graphics especificado.
ToString
Devuelve una clase String que representa la clase Object actual. (Se hereda de Object).
TransformPoints
Sobrecargado. Transforma una matriz de puntos de un espacio de coordenadas a otro utilizando las transformaciones universal y de página actuales de este Graphics.
TranslateClip
Sobrecargado. Traslada la región de recorte de este Graphics según las magnitudes especificadas en las direcciones horizontal y vertical.
TranslateTransform
Sobrecargado. Cambia el origen del sistema de coordenadas anteponiendo la traslación especificada a la matriz de transformación de este Graphics.
Propiedades
Nombre
Descripción
Clip
Obtiene o establece un Region que limita la región de dibujo de este Graphics.
ClipBounds
Obtiene una estructura RectangleF que delimita la región de recorte de este Graphics.
CompositingMode
Obtiene un valor que especifica cómo se dibujan las imágenes compuestas en este Graphics.
CompositingQuality
Obtiene o establece la calidad de representación de las imágenes compuestas que se dibujan en este Graphics.
DpiX
Obtiene la resolución horizontal de este Graphics.
DpiY
Obtiene la resolución vertical de este Graphics.
InterpolationMode
Obtiene o establece el modo de interpolación asociado a este Graphics.
IsClipEmpty
Obtiene un valor que indica si la región de recorte de este Graphics está vacía.
IsVisibleClipEmpty
Obtiene un valor que indica si la región de recorte visible de este Graphics está vacía.
PageScale
Obtiene o establece la relación de escala entre las unidades universales y las unidades de página de este Graphics.
PageUnit
Obtiene o establece la unidad de medida utilizada para las coordenadas de página en este Graphics.
PixelOffsetMode
Obtiene o establece un valor que especifica cómo se calcula el desplazamiento de los píxeles durante la representación de este Graphics.
RenderingOrigin
Obtiene o establece el origen de representación de este Graphics para la interpolación y los pinceles de trama.
SmoothingMode
Obtiene o establece la calidad de representación de este Graphics.
TextContrast
Obtiene o establece el valor de corrección de gamma para la representación de texto.
TextRenderingHint
Obtiene o establece el modo de representación para el texto asociado a este Graphics.
Transform
Obtiene o establece una copia de la transformación universal geométrica para Graphics.
VisibleClipBounds
Obtiene el rectángulo delimitador que corresponde a la región de recorte visible de este Graphics.
Aplicación de ejemplo “Figuras geométricas”. En esta aplicación se pretende demostrar cómo realizar dibujos de figuras geométricas sencillas, las que luego combinadas adecuadamente dan lugar a representaciones graficas más sofisticadas. Vista de diseñador:
Código: using using using using using using using using
System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Windows.Forms;
namespace Graficos { public partial class Form1 : Form { Bitmap ImagenBMP; Graphics Grafico; Pen Lapiz; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { ImagenBMP = new Bitmap(PB1.Width, PB1.Height); Grafico = Graphics.FromImage(ImagenBMP); Lapiz = new Pen(Color.Red, 1); }
private void button1_Click(object sender, EventArgs e) { Grafico.Clear(Color.Black ); Grafico.DrawLine(Lapiz, 0, 0, PB1.Width, PB1.Height); PB1.Image = ImagenBMP; } private void button2_Click(object sender, EventArgs e) { Grafico.Clear(Color.Black); Grafico.DrawArc(Lapiz, 0, 0, PB1.Width, PB1.Height, 0, 45); PB1.Image = ImagenBMP; } private void button3_Click(object sender, EventArgs e) { Grafico.Clear(Color.Black); Grafico.DrawEllipse(Lapiz, 0, 0, PB1.Width, PB1.Height); PB1.Image = ImagenBMP; } private void button4_Click(object sender, EventArgs e) { Point P1=new Point(); Point P2=new Point(); int R, alpha; R = 50; alpha = 45; P1.X = PB1.Width / 2; P1.Y = PB1.Height / 2; P2.X = (int)(P1.X + (R * Math.Cos((alpha - 90) * Math.PI / 180))); P2.Y = (int)(P1.Y + (R * Math.Sin((alpha - 90) * Math.PI / 180))); Grafico.Clear(Color.Black); Lapiz.Color = Color.Brown; Grafico.DrawLine(Lapiz, P1.X, P1.Y, P2.X, P2.Y); PB1.Image = ImagenBMP; } private void button5_Click(object sender, EventArgs e) { Grafico.Clear(Color.Black); Grafico.DrawString("texto", new Font("Courier", 16, FontStyle.Bold, GraphicsUnit.Pixel), Brushes.White, 100, 100); PB1.Image = ImagenBMP; } private void button6_Click(object sender, EventArgs e) { Point[] P = new Point[3]; P[0].X = 0; P[0].Y = PB1.Height / 2;
P[1].X P[1].Y P[2].X P[2].Y
= = = =
PB1.Width / 2; 0; PB1.Width; PB1.Height / 2;
Grafico.Clear(Color.Black); Grafico.DrawPolygon(Lapiz, P); PB1.Image = ImagenBMP; } private void button7_Click(object sender, EventArgs e) { Point[] P = new Point[4]; P[0].X = 0; P[0].Y = PB1.Height / 2; P[1].X = PB1.Width / 3; P[1].Y = 0; P[2].X = PB1.Width/2; P[2].Y = PB1.Height; P[3].X = PB1.Width; P[3].Y = PB1.Width / 2; Grafico.Clear(Color.Black); Grafico.DrawLines(Lapiz, P); PB1.Image = ImagenBMP; } } }