Search code examples
c#magicknet

Convert MagickImage to bitmap


I thought it would be easier, but I can't find a way to do it. How can I convert a MagickImage to System.Drawing.Image (eg a Bitmap)

    public System.Drawing.Image CreateThumbnailIcon(string sourceImagePath, int iconSize )
    {
        MagickImage image = new MagickImage(sourceImagePath);
        MagickGeometry geometry = new MagickGeometry(iconSize, iconSize);
        image.Resize(geometry);
        return image.??????;
    }

Solution

  • I cannot confirm this works, I am doing this from memory, but give it a try:

    MagickImage image = new MagickImage(sourceImagePath);
    MagickGeometry geometry = new MagickGeometry(iconSize, iconSize);
    image.Resize(geometry);
    
    using (var memStream = new MemoryStream())
    {
      // Write the image to the memorystream
      image.Write(memStream);
      
      return new System.Drawing.Bitmap(memStream);
    }