Microsoft Project (MPP) 檔案包含詳細的排程和資源規劃數據,但 PDF 是一種普遍格式,更適合用於共享和展示項目資訊。我們有時需要將 MPP 轉換為 PDF 格式,以便能夠與客戶或團隊分享項目時間表、列印甘特圖和排程、防止未經授權的修改、歸檔項目文件,甚至在所有平台上查看項目數據。

在這篇文章中,我們將探討如何快速且可靠地在線將 MPP 轉換為 PDF,而無需安裝 Microsoft Project。


專案管理 API

Aspose.Tasks Cloud SDK for .NET 是一個輕量級的解決方案,根據 REST 架構開發,能夠讓您創建和操作 Microsoft Project 或 Primavera P6 格式。從雲端儲存中提取文件或從本地驅動器上傳,並在您的 .NET 應用程序中進行處理(無需安裝任何第三方軟件)。


安裝 MPP 轉 PDF 的轉換 API

第一步是將 SDK 參考添加到您的 .NET 解決方案中。請執行以下命令:

dotnet add package Aspose.Tasks-Cloud --version 25.7.0

您還需要為 Aspose Cloud Dashboard 獲取您的個性化客戶憑證。


Convert MPP File to PDF in C# .NET

以下是一個完整的範例,顯示如何從本地磁碟上傳 MPP 檔案並將其轉換為 PDF。

步驟 1 — 初始化 API:

TasksApi tasksApi = new TasksApi(clientSecret, clientID);

步驟 2 — 從本地驅動器上傳 MPP 文件:

using var stream = File.OpenRead("Commercial_construction.mpp");
tasksApi.UploadFile(new Requests.PostCreateRequest("input.mpp", stream));

步驟 3 — 指定 MPP 到 PDF 轉換設置

GetTaskDocumentWithFormatRequest formatRequest = new GetTaskDocumentWithFormatRequest()
{
    Format = ProjectFileFormat.Pdf,
    Name = inputFile 
    ReturnAsZipArchive = false
};

步驟 4 — 執行 MPP 轉 PDF 轉換

var output = tasksApi.GetTaskDocumentWithFormat(formatRequest);
// 欲查看更多範例,請訪問 https://github.com/aspose-tasks-cloud/aspose-tasks-cloud-dotnet

// 從 https://dashboard.aspose.cloud/ 獲取客戶端憑證
string clientSecret = "XXXXXXX";
string clientID = "XXXXX-XXXXXXXXX";

// 創建 TasksApi 類別的實例
TasksApi tasksApi = new TasksApi(clientSecret, clientID);

// Name of input MPP file
String inputFile = "CommercialProject.mpp";
// name of resultant PDF file
String resultant = "output.pdf";

// 創建 MPP 文件轉換請求
GetTaskDocumentWithFormatRequest formatRequest = new GetTaskDocumentWithFormatRequest()
{
    Format = ProjectFileFormat.Pdf,
    Name = inputFile,
    // do not save output as ZIP archive
    ReturnAsZipArchive = false
};

// 執行 MPP 到 PDF 的轉換並將輸出作為串流實例返回
var output = tasksApi.GetTaskDocumentWithFormat(formatRequest);

// 自定義方法將結果文件保存到本地系統驅動器
saveToDisk(response, resultant);

// 將串流內容保存到本地磁碟的方式
public static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

MS Project to PDF using cURL

作為一種替代的方法,您可以考慮使用 cURL 命令來實現轉換過程。這種方法可以讓您無縫地將此功能整合到您的應用程序或工作流程中。它還使您能夠自動化 MPP 到 XML 的轉換,使其成為一個實用的選擇,如果您希望高效處理大量項目數據。

第 1 步 — 獲取存取權杖:

curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=XXXXXX-XXXXXXX&client_secret=XXXXXXXX" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

步驟 2 — 轉換為 PDF

curl -v -X GET "https://api.aspose.cloud/v3.0/tasks/{sourceMPP}/format?format=pdf" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <accessToken>" \
-o {resultantFile}

Try Online MPP to PDF Converter

如果您有興趣在網頁瀏覽器中嘗試將 MS Project 轉換為 PDF 的方法,而不需要撰寫一行代碼甚至不使用 cURL 命令,那麼請嘗試使用我們的免費在線 MPP to PDF Converter 應用程式。它是基於 Aspose.Tasks Cloud 開發的,讓您可以在線體驗 MS Project 文件轉換為 PDF。

MPP 轉 PDF 轉換器

免費的在線 MPP 轉 PDF 轉換器。


結論

在這篇文章中,您學習了如何使用 Aspose.Tasks Cloud SDK for .NET 將 MPP 檔案轉換為 PDF。它消除了對 Microsoft Project 的需求,並提供快速、安全和可擴展的文檔轉換。因此,使用簡單的 API 調用,您可以:

  • 上傳本地 MPP 檔案
  • 轉換雲端儲存的文件
  • 生成高品質的 PDF 輸出
  • 建立自動化專案處理工作流程

常見問題 (FAQs)

Q1: 我能轉換大型 MPP 文件嗎? 是的。Aspose.Tasks Cloud 支援大型 MS Project 檔案的轉換。

Q2: 我需要安裝 Microsoft Project 嗎? 不。轉換是完全通過雲端 API 處理的。

Q3: 我可以轉換已經在雲端儲存中的 MPP 嗎? 是的。請提供現有 MPP 文件的檔案路徑。

Q4: 我需要執照來進行測試嗎? 不,您可以註冊一個 free trial account 來測試所有轉換功能,但使用量有限。


相關文章