
WMF — это сокращение от Windows MetaFile, а EMF — улучшенная версия, известная как Enhanced MetaFile. Эти метафайлы часто используются для печати. Вы можете легко преобразовать EMF или WMF в формат файла изображения SVG в соответствии с вашими требованиями. Давайте рассмотрим следующий раздел для получения дополнительной информации об этих преобразованиях файлов:
- Конвертер WMF или EMF в SVG — установка API
- Программное преобразование WMF в SVG на C#
- Преобразование EMF в SVG программно с использованием C#
- Сохранение текста в виде фигур во время преобразования EMF в SVG с использованием C#
Конвертер WMF или EMF в SVG — установка API
Aspose.Imaging for .NET API позволяет создавать, манипулировать или редактировать WMF, EMF и несколько других поддерживаемых форматов файлов. Вы можете легко настроить API, загрузив его из раздела Загрузки или через галерею NuGet с помощью следующей команды установки:
PM> Install-Package Aspose.Imaging
Программное преобразование WMF в SVG на C#
Вы можете программно преобразовать изображение WMF в SVG, используя язык C# в своих приложениях на основе .NET. Следующие шаги можно использовать для изображения WMF в SVG:
- Загрузить входной файл WMF
- Инициализировать объект класса WmfRasterizationOptions
- Сохранить выходное изображение SVG
Фрагмент кода ниже подробно описывает, как программно преобразовать изображение WMF в SVG с помощью C#:
// Путь к входному файлу WMF
string sourcePath = dataDir + @"TextHintTest.wmf";
// Путь для вывода изображения SVG
string destPath = dataDir + @"WMF_out.svg";
// Загрузить входной файл WMF
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(sourcePath))
{
// Инициализировать экземпляр WmfRasterizationOptions
WmfRasterizationOptions wmfRasterizationOptions = new WmfRasterizationOptions();
wmfRasterizationOptions.BackgroundColor = Aspose.Imaging.Color.White;
wmfRasterizationOptions.PageHeight = image.Height;
wmfRasterizationOptions.PageWidth = image.Width;
// Сохранить выходное изображение SVG
image.Save(destPath, new SvgOptions() { VectorRasterizationOptions = wmfRasterizationOptions });
}
Преобразование EMF в SVG программно с использованием C#
Файлы EMF можно эффективно преобразовать в формат файлов SVG. Пожалуйста, выполните следующие шаги, чтобы выполнить преобразование EMF:
- Загрузить входной файл EMF
- Инициализировать объект класса EmfRasterizationOptions
- Установить различные свойства
- Сохранить выходное изображение SVG
Следующий код основан на этих шагах. В нем подробно описано, как программно преобразовать EMF в SVG с помощью C#:
// Путь к входному файлу EMF
string sourcePath = dataDir + @"test.emf";
// Путь для выходного изображения SVG
string destPath = dataDir + @"EMF_out.svg";
// Загрузить входной файл EMF
using (Image image = Image.Load(sourcePath))
{
// Инициализировать объект класса EmfRasterizationOptions
EmfRasterizationOptions emfRasterizationOptions = new EmfRasterizationOptions();
emfRasterizationOptions.BackgroundColor = Color.White;
emfRasterizationOptions.PageWidth = image.Width;
emfRasterizationOptions.PageHeight = image.Height;
// Сохранить выходное изображение SVG
image.Save(destPath, new SvgOptions() { VectorRasterizationOptions = emfRasterizationOptions });
}
Сохранение текста в виде фигур во время преобразования EMF в SVG с использованием C#
API может позволить вашим приложениям обрабатывать форматы файлов для различных вариантов использования. Вам просто нужно сделать несколько вызовов API, не принимая во внимание какие-либо основные детали формата файла. API поддерживает множество свойств для управления процессами преобразования файлов. Например, вы можете сохранить текст в виде фигур во время рендеринга изображения EMF в SVG. Просто выполните шаги, перечисленные ниже:
- Загрузить входной файл EMF
- Укажите экземпляр EmfRasterizationOptions.
- Установите логическое свойство для отображения текста в виде фигур
- Сохранить выходной файл SVG
В приведенном ниже коде объясняется, как отображать текст в виде фигур при преобразовании файла изображения EMF в файл изображения SVG с помощью C#:
// Загрузить входной файл EMF
using (Image image = Image.Load(dataDir + "Test.emf"))
{
// Укажите экземпляр EmfRasterizationOptions
EmfRasterizationOptions emfRasterizationOptions = new EmfRasterizationOptions();
emfRasterizationOptions.BackgroundColor = Color.White;
emfRasterizationOptions.PageWidth = image.Width;
emfRasterizationOptions.PageHeight = image.Height;
// Сохранить выходной файл SVG
image.Save(dataDir + "TextAsShapes_out.svg", new SvgOptions
{
// Установите логическое свойство для отображения текста в виде фигур
VectorRasterizationOptions = emfRasterizationOptions,
TextAsShapes = true
});
}
Вывод
Мы научились программно преобразовывать или экспортировать файлы EMF и WMF в файлы изображений SVG с помощью C#. Вы можете подробнее изучить функции, ознакомившись с Примерами проекта или Документацией по API. Мы будем признательны за ваши отзывы и предложения, поскольку вы можете написать нам в любое время на бесплатных форумах поддержки.