elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  F1 - Cortar una imagen VB.NET
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: F1 - Cortar una imagen VB.NET  (Leído 5,570 veces)
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
F1 - Cortar una imagen VB.NET
« en: 18 Noviembre 2012, 16:32 pm »

Encontre muchos ejemplos sobre cortar un área rectangular, pero nada sobre un polígono, y antes de hacerlo pixel por pixel, queria consultar, a lo mejor alguien tiene algún link que compartir.

Ejemplo recorte rectangular:

http://www.elguille.info/NET/dotnet/trocear_imagen.htm


Saludos.


En línea

Un error se comete al equivocarse.
Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: F1 - Cortar una imagen VB.NET
« Respuesta #1 en: 18 Noviembre 2012, 18:34 pm »

Todo lo imaginable es posible con el GDI de .Net ;), mira este ejemplo:

Un proyecto Windows Forms vació, carga una imagen, crea un objeto GraphicPath y agrega los puntos que conforman el Polígono, obtiene la región que ocupa dicho Polígono, luego recorre cada Rectángulo que conforma la región pintando cada parte de la Imagen con ayuda de la función Offset que mueve los ejes hacia el Origen deseado (El punto desde donde se comenzara a Dibujar la Imagen) y el Destino (El punto desde donde se cortara el polígono en la imagen).

Código
  1. Imports System.Drawing.Drawing2D
  2.  
  3. Public Class Form1
  4.  
  5.    Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
  6.  
  7.        Dim Imagen As Image = Image.FromFile("C:\Ejemplo.JPG")
  8.  
  9.        Dim Forma As New GraphicsPath
  10.  
  11.        Forma.AddPolygon(New PointF() {New PointF(10, 20), New PointF(250, 35), New PointF(150, 200)})
  12.  
  13.        Dim Poligono As New Region(Forma)
  14.  
  15.        Dim Origen As New Point(10, 10), Destino As New Point(20, 20)
  16.        Dim RectanguloOrigen As RectangleF, RectanguloDestino As RectangleF
  17.  
  18.        For Each Rectangulo As RectangleF In Poligono.GetRegionScans(New Matrix)
  19.            RectanguloOrigen = Rectangulo : RectanguloOrigen.Offset(Origen)
  20.            RectanguloDestino = Rectangulo : RectanguloDestino.Offset(Destino)
  21.            e.Graphics.DrawImage(Imagen, RectanguloOrigen, RectanguloDestino, GraphicsUnit.Pixel)
  22.        Next
  23.  
  24.    End Sub
  25.  
  26. End Class


« Última modificación: 18 Noviembre 2012, 19:04 pm por Keyen Night » En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cortar una Imagen
Diseño Gráfico
{_The_Alwar_} 2 2,231 Último mensaje 29 Julio 2005, 23:21 pm
por z3u2
CORTAR DVD en DOS
Multimedia
_Albert7_ 2 1,841 Último mensaje 30 Agosto 2005, 23:05 pm
por _Albert7_
cortar parte de una imagen
Programación Visual Basic
erick185 0 1,333 Último mensaje 1 Julio 2006, 06:24 am
por erick185
Como cortar una imagen en distintos trozos
Desarrollo Web
pajaras 3 3,157 Último mensaje 10 Septiembre 2011, 01:02 am
por pajaras
Problemas al cortar una imagen
PHP
sexto 4 1,928 Último mensaje 16 Mayo 2014, 13:19 pm
por sexto
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines