Foros del Web » Programación para mayores de 30 ;) » .NET »

Obtener objeto Region desde Metafile

Estas en el tema de Obtener objeto Region desde Metafile en el foro de .NET en Foros del Web. Estoy intentando obtener regiones para los controles para personalizarlos. He visto purulando por ahi las instrucciones para hacerlo con Bitmap (raster) pero pierden definición al ...
  #1 (permalink)  
Antiguo 14/09/2006, 11:51
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 2
Pregunta Obtener objeto Region desde Metafile

Estoy intentando obtener regiones para los controles para personalizarlos. He visto purulando por ahi las instrucciones para hacerlo con Bitmap (raster) pero pierden definición al redimensionar. En la ayuda he visto que el análogo vectorial es Metafile pero no se como llegar a la región desde aqui. Se me ocurre el convertir el metafile ampliado en bitmap (con esto no perdería definición) y desde ahí el mismo proceso. Pero no sé como hacer esta conversión.
  #2 (permalink)  
Antiguo 14/09/2006, 23:35
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 23 años, 1 mes
Puntos: 50
estás probando con la clase Metafile del propio framework ?

o como estás cargando tus metafiles ?

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 15/09/2006, 04:47
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 2
Si, la del framework... por?
  #4 (permalink)  
Antiguo 15/09/2006, 11:58
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 2
Me respondo yo mismo:

Para pasar desde metafila a bitmap he hecho lo siguiente:

Código:
Dim bmi As New Bitmap(Me.Width, Me.Height)
        Dim gr As Graphics = Graphics.FromImage(bmi)
        If Not mf Is Nothing Then
            gr.DrawImage(mf, 0, 0, bmi.Width, bmi.Height)
            e.Graphics.Clear(Me.BackColor)
            e.Graphics.DrawImage(bmi, 0, 0)
            If mfr Is Nothing Then
                SetRegion(bmi)
            End If
        End If
Esto es para mostrarlo en pantalla. El sub SetRegion utiliza el bitmap para crear la region del formulario. La pega: Es lentisimo... hay que recorrer todos los pixeles, si alguien sabe otra forma, muy agradecido.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:15.