es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Convertir de Heic a Jpeg en ASP.NET Core

Estoy tratando de utilizar MagickImage en mi proyecto ASP.NET Core, dirigido a .NET 5, para convertir archivos Heic a Jpeg. Puedo instalar la biblioteca sin problemas, sin embargo, cuando intento utilizarlo de la siguiente manera

using (MagickImage image = new MagickImage(@"YourImage.jpg"))
{

}

Recibo un error

No se pudo encontrar el tipo o el espacio de nombres

Recomienda que cambie a IMagickImage. Además, la imagen que estoy intentando convertir proviene de IFormFile.

¿Alguien sabe cómo puedo convertir esto?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que estás enfrentando un error de tipo de datos incorrecto al intentar usar la clase MagickImage en tu proyecto de ASP.NET Core. Según el mensaje de error, sugiere que deberías usar IMagickImage en su lugar. Puedes probar el siguiente código para convertir tu objeto IFormFile en una imagen Jpeg.

    using ImageMagick;
    using System.IO;
    
    public byte[] ConvertHeicToJpeg(IFormFile file)
    {
        using (var image = new MagickImage(file.OpenReadStream()))
        {
            // Establece el formato de la imagen de salida
            image.Format = MagickFormat.Jpeg;
    
            // Extrae el arreglo de bytes de la imagen convertida
            return image.ToByteArray();
        }
    }
    

    Este código utiliza la clase MagickImage para leer la imagen del flujo y convertirla al formato Jpeg. El método ToByteArray extrae el arreglo de bytes de la imagen convertida, el cual puedes guardar o retornar según tus necesidades. Además, asegúrate de tener instalado el paquete de NuGet Magick.NET.Core en tu proyecto.

    Espero que esto te ayude a resolver el problema. Hazme saber si tienes alguna pregunta adicional.

Comments are closed.