Преобразование метафайла в PNG-файл в C#

Метафайл (файл WMF) содержит команды рисования, которые сообщают программе, как создавать изображение. Это очень полезно и позволяет изменять размер изображения без создания уродливых эффектов сглаживания, но иногда вам может понадобиться растровое изображение, чтобы вы могли управлять своими пикселями. В этом примере вы можете загружать файлы WMF и сохранять их в виде файлов PNG.

Программа использует следующий код для загрузки WMF-файла.

// Откройте файл WMF.
private void mnuFileOpen_Click(object sender, EventArgs e)
{
    if (ofdWmfFile.ShowDialog() == DialogResult.OK)
    {
        picImage.Image = new Bitmap(ofdWmfFile.FileName);
        mnuFileSaveAs.Enabled = true;

        ClientSize = new Size(
            picImage.Right + picImage.Left,
            picImage.Bottom + picImage.Left);
    }
}

В коде отображается FileOpenDialog, чтобы пользователь мог выбрать метафайл. Если пользователь выбирает файл и нажимает «Открыть», программа загружает метафайл в Bitmap и отображает его.

Программа использует следующий код для сохранения загруженного изображения метафайлов в виде файла PNG.

// Сохраним изображение в виде файла PNG.
private void mnuFileSaveAs_Click(object sender, EventArgs e)
{
    if (sfdPngFile.ShowDialog() == DialogResult.OK)
    {
        Bitmap bm = (Bitmap)picImage.Image;
        bm.Save(sfdPngFile.FileName, ImageFormat.Png);
    }
}

Этот код отображает SaveFileDialog, чтобы пользователь мог выбрать файл для сохранения изображения. Затем он вызывает метод загруженного bitmap Сохранить, передавая ему имя файла и значение ImageFormat.Png, чтобы указать, что изображение должно быть сохранено в виде файла PNG.

Оба файла WMF и PNG поддерживают прозрачные пиксели. Когда эта программа преобразует WMF в PNG-файл, сохраняются любые прозрачные пиксели.

Источник: http://csharphelper.com/blog/2016/09/convert-a-metafile-into-a-png-file-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector