Преобразование формата изображения из .bmp в другие форматы изображений в vb.net

Как преобразовать изображение System.Drawing.Bitmap в изображение другого типа? Я попробовал CType, но это не удалось, так как я не знаю тип для .png или .jpg. В гугле тоже нигде не могу найти.

Каков наиболее эффективный способ сделать это, сохраняя при этом максимально высокое качество изображения?


person Cyclone    schedule 06.09.2009    source источник


Ответы (3)


Класс system.Drawing.Bitmap может открывать и сохранять любые растровые изображения, включая JPG, PNG, GIF, BMP и другие.

Чтобы сохранить уже открытый файл в другом формате, вы можете использовать метод сохранения так

MyImage.Save("ImageName.jpg",System.Drawing.Imaging.ImageFormat.Jpeg)

Имя класса Bitmp относится более конкретно к общей концепции хранения изображения в виде последовательности цветных пикселей, а не к фактическому формату BMP, который является одним из возможных способов хранения представления пикселей, составляющих изображение.

person Kibbee    schedule 06.09.2009

Ознакомьтесь с методом Drawing.Bitmap.Save(). Я рекомендую сохранять в формате PNG — он без потерь и обеспечивает разумное сжатие. См. перечисление Imaging.ImageFormat — это это то, как вы указываете тип изображения, которое хотите.

person Charlie Salts    schedule 06.09.2009

Вот как преобразовать тип изображения без сохранения в файл в VB.NET. Вы также можете перенести это на C#, но я этого не проверял.

Public Function ConvertImageType(Image As Bitmap, Format As 
    Drawing.Imaging.ImageFormat) As Byte()
        'Declare a new memory stream to write to
        Dim SaveStream As New IO.MemoryStream
        'Save the bitmap/image to the memory stream in the desired format
        Image.Save(SaveStream, Format)
        'Extract the file bytes from the memory stream
        Dim ConvertedImageBytes() As Byte = SaveStream.ToArray
        'Return bytes to caller
        Return ConvertedImageBytes
    End Function

Этот метод может преобразовать тип Bitmap/Image в следующие форматы: Jpeg, Png, Bmp, Ico, Gif, Emf, Exif, Tiff и Wmf.

person Shimmy Shimmias    schedule 25.05.2019