WMF 是 Windows MetaFile 的縮寫,而 EMF 是改進版,稱為 Enhanced MetaFile。這些圖元文件經常用於打印目的。您可以根據需要輕鬆地將 EMF 或 WMF 轉換為 SVG 圖像文件格式。讓我們通過以下部分了解有關這些文件轉換的更多詳細信息:
- WMF 或 EMF 到 SVG 轉換器 - API 安裝
- 在 C# 中以編程方式將 WMF 轉換為 SVG
- 使用 C# 以編程方式將 EMF 轉換為 SVG
- 使用 C# 在 EMF 到 SVG 轉換期間將文本另存為形狀
WMF 或 EMF 到 SVG 轉換器 - API 安裝
Aspose.Imaging for .NET API 允許您創建、操作或編輯 WMF、EMF 和其他幾種支持的文件格式。您可以通過從 下載 部分下載或通過 NuGet 庫使用以下安裝命令輕鬆配置 API:
PM> Install-Package Aspose.Imaging
在 C# 中以編程方式將 WMF 轉換為 SVG
您可以在基於 .NET 的應用程序中使用 C# 語言以編程方式將 WMF 轉換為 SVG 圖像。以下步驟可用於 WMF 到 SVG 圖像:
- 加載輸入 WMF 文件
- 初始化WmfRasterizationOptions類對象
- 保存輸出 SVG 圖像
下面的代碼片段詳細說明瞭如何使用 C# 以編程方式將 WMF 轉換為 SVG 圖像:
// 輸入 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 });
}
使用 C# 以編程方式將 EMF 轉換為 SVG
EMF 文件可以高效地轉換為 SVG 文件格式。請按照以下步驟進行 EMF 轉換:
- 加載輸入 EMF 文件
- 初始化 EmfRasterizationOptions 類對象
- 設置不同的屬性
- 保存輸出 SVG 圖像
以下代碼基於這些步驟。它詳細說明瞭如何使用 C# 以編程方式將 EMF 轉換為 SVG:
// 輸入 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 });
}
使用 C# 在 EMF 到 SVG 轉換期間將文本另存為形狀
API 可以讓您的應用程序處理不同用例的文件格式。您只需要進行一些 API 調用,而無需考慮文件格式的任何底層細節。 API 支持很多屬性來控製文件轉換過程。例如,您可以在 EMF 到 SVG 圖像渲染期間將文本保存為形狀。只需按照下面列出的步驟操作:
- 加載輸入 EMF 文件
- 指定 EmfRasterizationOptions 實例
- 設置布爾屬性以將文本呈現為形狀
- 保存輸出 SVG 文件
下面的代碼解釋瞭如何在使用 C# 將 EMF 轉換為 SVG 圖像文件時將文本呈現為形狀:
// 加載輸入 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
});
}
結論
我們已經學習瞭如何使用 C# 以編程方式將 EMF 和 WMF 文件轉換或導出為 SVG 圖像文件。您可以通過查看 Examples Project 或 API Documentation 來進一步探索這些功能。我們將感謝您的反饋和建議,因為您可以隨時在 免費支持論壇 上給我們寫信。