(PNG)(可攜式網路圖形)和 PDF(可攜式文件格式)在數位世界中具有不同的用途。 PNG 由於其無損壓縮和透明度支援而廣泛用於高品質圖像,使其成為網頁設計、圖形創建和詳細視覺內容的理想選擇。另一方面,PDF 是文件共用和歸檔的通用格式,可確保跨裝置的佈局一致性。將 PNG 轉換為 PDF 是建立編輯、產生專業報告的有益過程
影像轉換API
Aspose.Imaging Cloud 是我們專門開發的 REST API,旨在幫助我們的客戶在雲端中尋找影像處理和操作功能。您可以執行影像調整大小、裁切、旋轉、縮放、翻轉、搜尋、匯出為其他支援的檔案格式等操作。現在,根據本文,我們將使用 Aspose.Imaging Cloud SDK for .NET,它是 Aspose.Imaging Cloud 的包裝器。
安裝
.NET Cloud SDK 可透過 NuGet 和 GitHub 下載。請在終端機中執行以下命令透過NuGet安裝SDK:
nuget install Aspose.Imaging-Cloud
如果您需要從 NuGet Package Manager 安裝,請執行下列命令
PM> Install-Package Aspose.Imaging-Cloud
在 Visual Studio 中安裝
另一種方法是直接在 Visual Studio 中安裝:
- 開啟解決方案資源管理器。
- 展開專案並右鍵單擊解決方案中的 Packages 資料夾。
- 選擇管理 NuGet 套件…選項。
- 點擊“瀏覽”選項卡並蒐索“Aspose.Imaging-Cloud”。
- 按一下 Aspose.Imaging-Cloud 套件旁的複選框,在右側標籤中選擇適當的版本,然後按一下新增套件按鈕。
雲端訂閱
下一步是透過存取 Aspose.Cloud 儀表板 建立免費訂閱帳戶。如果您有 GitHub 或 Google 帳戶,只需註冊即可。否則,請按一下建立新帳戶按鈕並提供所需的資訊。
將 PNG 轉換為 PDF
為了將PNG圖像轉換為PDF格式,我們可以使用以下兩個API之一來完成此要求:
GET API 要求您先將映像上傳到 Cloud Storage,然後執行轉換。而第二個 API 要求您直接在請求正文中傳遞圖像,並將最終輸出儲存在雲端儲存中。
從雲端儲存載入 PNG
以下步驟定義了我們如何先將圖像上傳到雲端存儲,然後執行轉換。如果我們跳過圖像上傳例程,那麼我們也可以使用相同的程式碼片段將雲端儲存中的任何現有圖像轉換為 PDF 格式。
- 首先,我們需要建立一個 ImagingApi 對象,同時傳遞客戶端 ID 和客戶端金鑰詳細資訊作為參數。
- 其次,從本機磁碟機載入 PNG 映像並將其作為參數傳遞給 UploadFileRequest 物件。
- 第三步,呼叫ImagingApi的UploadFile(…)方法將檔案上傳到雲端儲存(如果雲端儲存中已有該圖片,則可以跳過此步驟)。
- 建立 ConvertImageRequest 類別的實例,它將映像名稱和結果輸出格式作為參數。資料夾和儲存名稱是可選的。
- 現在呼叫 ImagingApi 類別的 ConvertImage(…) 方法來啟動轉換。
- 最後,由於回應中包含串流影像,因此我們可以使用 File.Create 物件將 s 儲存到本機磁碟機(方法如下所示)。
// 從 https://dashboard.aspose.cloud/ 取得 ClientID
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// 輸入PNG檔案的路徑
string imageFile = "poodle.png";
// 輸出文件格式
string format = "pdf";
// 產生的 PDF 文件的名稱
string resultantFile = "resultant.pdf";
// 從本機磁碟機載入文件
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// 將原始文檔上傳至雲端存儲
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// 建立圖像請求
var request = new ConvertImageRequest(imageFile, format, null, null);
// 啟動轉換操作
Stream updatedImage = imagingApi.ConvertImage(request);
// 如果轉換成功則列印成功訊息
if (request != null && request.Equals("OK"))
{
Console.WriteLine("The PNG successfully converted to PDF !");
}
// 呼叫此方法透過系統磁碟機儲存輸出
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// 將 steam 物件儲存為檔案實例的自訂方法
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
從本機磁碟機載入 PNG
在下面的部分中,我們將使用 CreateConvertedImage API 來轉換直接在請求正文中傳遞的圖像。
- 第一步是建立一個 ImagingApi 對象,該對象將客戶端 ID 和客戶端金鑰詳細資訊作為參數。
- 其次,使用 File.OpenRead 物件從本機磁碟機讀取 PNG 映像。
- 第三,建立 ConvertedImageRequest 對象,該物件以 ImageStream 和輸出格式作為參數。
- 然後呼叫ImagingApi的CreateConvertedImage(…)方法執行轉換操作。
- 最後,使用 File.Create 物件保存產生的 PDF。
// 從 https://dashboard.aspose.cloud/ 取得 ClientID
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// 輸入PNG檔案的路徑
string imageFile = "poodle.png";
// 輸出文件格式
string format = "pdf";
// 產生的 PDF 文件的名稱
string resultantFile = "resultant.pdf";
try
{
using (var imageStream = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var request = new CreateConvertedImageRequest(imageStream, format, null, null);
Stream updatedImage = imagingApi.CreateConvertedImage(request);
if (request != null && request.Equals("OK"))
{
Console.WriteLine("PNG successfully converted to PDF !");
}
// 將更新後的影像儲存到本機存儲
using (var fileStream = File.Create("/Users/nshahbaz/Desktop/" + resultantFile))
{
updatedImage.Seek(0, SeekOrigin.Begin);
updatedImage.CopyTo(fileStream);
}
}
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
您可以考慮下載輸入 poodle.png 和轉換後的 resultant.pdf 以進行測試。
使用 cURL 指令在線將 PNG 轉為 PDF
我們的 API 也可以透過 cURL 命令訪問,因此我們將使用 cURL 命令將 PNG 轉換為 PDF。因此,首先我們需要根據客戶端 ID 和客戶端密鑰詳細資訊產生 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"
產生存取權杖後,請執行下列命令將雲端儲存中可用的 PNG 影像轉換為 PDF 格式。然後,輸出的 PDF 將儲存在本機磁碟機上。
curl -X GET "https://api.aspose.cloud/v3.0/imaging/poodle.png/convert?format=pdf" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o /Users/nshahbaz/Desktop/myResultant.pdf
免費 PNG 到 PDF 轉換器
為了見證 Cloud API 將 PNG 圖像轉換為 PDF 的驚人功能,您可以嘗試使用我們的免費線上 PNG 到 Acrobat 3D PDF 轉換器 應用程式。
結論
在本文中,我們探索了 Aspose.Imaging Cloud 將 PNG 轉換為 PDF 格式的功能。我們也觀察到可以使用 .NET Cloud SDK 以及 cURL 指令執行轉換。我們還提供了 Swagger UI,以便您可以直接在瀏覽器中測試 REST API。
另請注意,Cloud SDK 是根據 MIT 許可證分發的,其完整原始程式碼可透過 GitHub 下載。如果您在使用 API 時遇到任何問題或有任何疑問,請隨時透過免費產品支援論壇與我們聯絡。
相關文章
我們還建議訪問以下連結以了解更多資訊: