none
Crop una imagen con un rectangulo con angulo RRS feed

  • Pregunta

  • Hola necesito cortar una imagen a partir de las coordenadas determinadas por un rectangulo, el problema es que el mismo tiene a veces un angulo de por ejemplo 45grados.

        var imagenOriginal = new WebImage("~" +editor.Profile.ImageUrl);
              
              
                image = image.Crop((int)editor.Top, (int)editor.Left, height - y2, (int)(width - editor.Right));
    

    Se puede hacer un Crop pero no indicar la inclinacion del rectangulo. Alguna ayuda?

    La plataforma es Asp.NET MVC. Saludos!

    jueves, 18 de diciembre de 2014 12:52

Todas las respuestas

  • ¿El rectángulo es el molde a usar para recortar la imagen?  ¿Entendí bien?

    Es perfectamente posible pero no creo que con WebImage.  Supongo que deberá usar GDI+ directamente.  Estoy muy pero muy lejos de ser experto en gráficos, pero me imagino que es algo relativamente sencillo.  Tal vez un World transform que rote el sistema de coordenadas 45° y listo, el recorte se hace sobre el plano rotado.

    Tome en cuenta, sin embargo, que todo archivo de imagen es rectangular sin rotación.  Necesitará guardar la imagen resultante en un formato que soporte transparancia para mantener esa idea de que es una imagen rotada.  Algo como gif o png.


    Jose R. MCP
    Code Samples

    viernes, 19 de diciembre de 2014 4:13
    Moderador
  • Muchas gracias por tu respuesta Jose. el tema es asi: en el cliente uso Fabric que es una librreria queme permite mover rectangulos con fondos transparentes para definir el area de la imagen de fondo a realizar el Crop.

    Una vez definido dicho rectangulo que puede estar rotado, envio a un Controller (uso MVC es una aplicacion Web), un Json con las coordenadas del rectangulo seleccionado.

    No veo manera de replicar el escenario en el servidor, es decir de cortar la imagen con el rectangulo enviado.

    Y desde el cliente con Fabric me envia el rectangulo, sin la imagen de fondo....

    Muchas gracias por tu interes!

    Cecilia

    viernes, 19 de diciembre de 2014 12:45