
VSD 檔案格式是 Microsoft Visio 應用程式的本機格式,包含進階圖表和向量圖形。這種格式使得圖表、組織結構圖和複雜流程圖的呈現變得相當方便。但是,為了查看這些文件,需要使用 Microsoft Visio 等特定軟體,而且,如果我們需要將這些詳細資訊放在網頁上,則會變得非常複雜。因此,我們可以選擇將 VSD 檔案轉換為可縮放向量圖形 (SVG) 格式。一旦我們有了 SVG,就可以使用標籤。因此,在本文中,我們將介紹使用 C# .NET REST API 將 VSD 轉換為 SVG 的步驟。
Visio 檔案處理 API
Aspose.Diagram Cloud 是我們的 REST API,使我們的使用者能夠建立、編輯和轉換 Visio 檔案和流程圖為其他支援的格式。無需安裝 Microsoft Visio 或其他應用程式即可執行所有這些操作。此外,我們還創建了免費的 SDK 作為雲端 API 的包裝器,以便您可以使用您選擇的語言執行所有文件處理操作。所以。在本文中,我們將討論使用 Aspose.Diagram Cloud SDK for .NET 進行轉換操作。
安裝
使用 Cloud SDK 的第一步是安裝。可透過 NuGet 和 GitHub 下載。您可以考慮在終端機中執行以下命令透過 NuGet 安裝 SDK:
nuget install Aspose.Diagram-Cloud
NuGet 套件管理器
或在 Visual Studio 中的套件管理器控制台中執行以下命令來在專案中取得和引用 Aspose.Diagram 組件。
PM> Install-Package Aspose.Diagram-Cloud
如果您已經擁有Aspose.Diagram Cloud SDK for .NET並且想要升級它,請執行以取得最新版本。
Update-Package Aspose.Diagram-Cloud
Visual Studio
另一種方法是直接在 Visual Studio 解決方案中安裝:
- 開啟解決方案資源管理器。
- 展開專案並右鍵單擊解決方案中的“包”資料夾。
- 選擇管理 NuGet 套件… 選項
- 點擊瀏覽標籤並蒐索“Aspose.Diagram-Cloud”。
- 點擊 Aspose.Diagram-Cloud 包,在右側標籤中選擇適當的版本,然後點擊新增包按鈕。

圖 1:- Aspose.Diagram Cloud 作為 NuGet 套件。
雲端訂閱
安裝後,設定和設定的下一個主要步驟是透過 Aspose.Cloud 儀表板 進行免費帳戶訂閱。無需信用卡或其他付款詳細信息,在免費訂閱帳戶下,您最多可以執行 150 個免費文件處理請求。因此,如果您有 GitHub 或 Google 帳戶,只需註冊即可。否則,請點擊建立新帳戶按鈕並提供所需資訊。現在使用憑證登入儀表板並從儀表板展開應用程式部分並向下捲動至用戶端憑證部分以查看用戶端 ID 和用戶端金鑰詳細資訊。

圖 2:- Aspose.Cloud 儀表板上的客戶端憑證。
在 C# 中將 VSD 轉換為 SVG
請按照下面指定的說明使用 C# .NET 程式碼片段將 VSD 檔案轉換為 SVG 格式。請注意,此程式碼片段期望輸入的 VSD 檔案位於雲端儲存。
- 首先,使用字串變數定義客戶端憑證
- 其次,建立 DiagramApi 的實例,並將客戶端憑證詳細資訊作為參數傳遞
- 第三,呼叫DiagramApi的DownloadFileWithFormat(..)方法進行轉換操作
- 最後,使用 File.Create 物件(如 saveToDisk 方法所示)將輸出保存在本機系統上
// 從 https://dashboard.aspose.cloud/ 取得 ClientID
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// 建立 DiagramApi 對象
DiagramApi diagramApi = new DiagramApi("client_credentials", clientID, clientSecret);
// 來源 VSD 檔案可在雲端儲存中找到
String inputFile = "Raise-PO-Process-Flow-Chart.vsd";
// 生成的 SVG 檔名
String resultant = "conveted.svg";
try
{
// 啟動文件轉換過程
var response = diagramApi.DownloadFileWithFormat(inputFile,format: "SVG", null);
if (response != null )
{
Console.WriteLine("Successfully converted VSD to SVG !");
}
// 自訂方法將結果檔案保存在本機系統磁碟機上
saveToDisk(response, "/Users/nshahbaz/Downloads/" + resultant);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
上述範例所使用的範例檔案可從 Purchase Order Flowchart.vsd 和 Converted.svg 下載。

圖 3:生成的 SVG 檔案的預覽。
使用 cURL 指令將 VSD 轉換為 SVG
由於我們的 API 是根據 REST 架構開發的,因此也可以透過 cURL 命令進行存取。另外,請注意,為了存取 API,我們需要根據個人化的客戶端憑證產生 JWT 存取權令牌。請執行以下命令來產生 JWT 存取令牌。
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
一旦我們有了 JWT 令牌,我們就可以使用以下命令執行轉換。
curl -X GET "https://api.aspose.cloud/v3.0/diagram/Raise-PO-Process-Flow-Chart.vsd?format=SVG" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o Converted.svg
結論
在本文中,我們討論如何使用 C# 載入和轉換 VSD 為 SVG 的簡單步驟。除了程式碼片段之外,我們還探索了透過 cURL 命令將 Visio 檔案轉換為 SVG 的可能性。請注意,我們的 SDK 是在 MIT 許可下提供的,可以從 GitHub 下載。如果您在使用 API 時遇到任何問題或有任何相關疑問,請隨時透過 免費支援論壇 與我們聯絡。
快速提示
為了查看 VSD 文件,您可以嘗試使用我們的 免費線上 Visio 檢視器。
相關文章
我們還建議您訪問以下連結以了解更多信息