(PNG) (Portable Network Graphics) 및 PDF(Portable Document Format)는 디지털 세계에서 서로 다른 목적을 수행합니다. PNG는 손실 없는 압축 및 투명성 지원으로 인해 고품질 이미지에 널리 사용되어 웹 디자인, 그래픽 제작 및 세부적인 시각적 콘텐츠에 이상적입니다. 반면 PDF는 문서 공유 및 보관을 위한 보편적인 형식으로, 장치 간에 레이아웃 일관성을 보장합니다. PNG를 PDF로 변환하는 것은 컴파일을 만들고 전문적인 보고서를 생성하는 데 유용한 프로세스입니다.
이미지 변환 API
Aspose.Imaging Cloud는 클라우드에서 이미지 처리 및 조작 기능을 찾는 고객을 지원하기 위해 개발된 전담 REST API입니다. 이미지 크기 조정, 자르기, 회전, 크기 조정, 뒤집기, 검색, 다른 지원되는 파일 형식으로 내보내기와 같은 작업을 수행할 수 있습니다. 이제 이 문서에 따라 Aspose.Imaging Cloud를 래퍼로 사용하는 Aspose.Imaging Cloud SDK for .NET을 사용하려고 합니다.
설치
.NET Cloud SDK는 NuGet 및 GitHub에서 다운로드할 수 있습니다. NuGet을 통해 SDK를 설치하려면 터미널에서 다음 명령을 실행하세요.
nuget install Aspose.Imaging-Cloud
NuGet 패키지 관리자에서 설치해야 하는 경우 다음 명령을 실행하세요.
PM> Install-Package Aspose.Imaging-Cloud
Visual Studio에 설치
또 다른 방법은 Visual Studio 내에서 직접 설치하는 것입니다.
- 솔루션 탐색기를 엽니다.
- 프로젝트를 확장하고 솔루션 내에서 패키지 폴더를 마우스 오른쪽 버튼으로 클릭합니다.
- NuGet 패키지 관리… 옵션을 선택합니다.
- 찾아보기 탭을 클릭하고 “Aspose.Imaging-Cloud“를 검색합니다.
- Aspose.Imaging-Cloud 패키지 옆에 있는 체크박스를 클릭하고 오른쪽 탭에서 적절한 버전을 선택한 후 패키지 추가 버튼을 클릭합니다.
클라우드 구독
다음 단계는 Aspose.Cloud 대시보드를 방문하여 무료 구독 계정을 만드는 것입니다. GitHub 또는 Google 계정이 있는 경우 간단히 가입하세요. 그렇지 않은 경우 새 계정 만들기 버튼을 클릭하고 필요한 정보를 제공하세요.
PNG를 PDF로 변환
PNG 이미지를 PDF 형식으로 변환하려면 다음 두 가지 API 중 하나를 사용하여 요구 사항을 달성할 수 있습니다.
GET API는 먼저 이미지를 Cloud Storage에 업로드한 다음 변환을 수행해야 합니다. 반면 두 번째 API는 요청 본문에서 이미지를 직접 전달해야 하며 최종 출력은 Cloud Storage에 저장됩니다.
클라우드 스토리지에서 PNG 로드
다음 단계는 먼저 이미지를 클라우드 스토리지에 업로드한 다음 변환을 수행하는 방법을 정의합니다. 이미지 업로드 루틴을 건너뛰면 동일한 코드 조각으로 클라우드 스토리지에 있는 기존 이미지를 PDF 형식으로 변환할 수도 있습니다.
- 먼저, 클라이언트 ID와 클라이언트 비밀번호 정보를 인수로 전달하면서 ImagingApi 객체를 생성해야 합니다.
- 둘째, 로컬 드라이브에서 PNG 이미지를 로드하여 UploadFileRequest 객체에 인수로 전달합니다.
- 셋째, ImagingApi의 UploadFile(…) 메서드를 호출하여 파일을 클라우드 저장소에 업로드합니다(이미지가 이미 클라우드 저장소에 있는 경우 이 단계를 건너뛸 수 있습니다).
- 이미지 이름과 결과 출력 형식을 인수로 받는 ConvertImageRequest 클래스의 인스턴스를 만듭니다. 폴더 및 저장소 이름은 선택 사항입니다.
- 이제 ImagingApi 클래스의 ConvertImage(…) 메서드를 호출하여 변환을 시작합니다.
- 마지막으로, 응답에 스트리밍된 이미지가 포함되어 있으므로 File.Create 객체를 사용하여 로컬 드라이브에 저장할 수 있습니다(메서드는 아래와 같습니다).
// 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
{
// ImageRequest 생성
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를 사용하여 요청 본문에 직접 전달된 이미지를 변환합니다.
- 첫 번째 단계는 클라이언트 ID와 클라이언트 비밀번호 세부 정보를 인수로 사용하는 ImagingApi 객체를 만드는 것입니다.
- 둘째, File.OpenRead 객체를 사용하여 로컬 드라이브에서 PNG 이미지를 읽습니다.
- 셋째, ImageStream과 출력 형식을 인수로 받는 ConvertedImageRequest 객체를 생성합니다.
- 그런 다음 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 to PDF 변환기
PNG 이미지를 PDF로 변환하기 위한 클라우드 API의 놀라운 기능을 직접 확인해보려면 무료 온라인 PNG to Acrobat 3D PDF 변환기 앱을 사용해 보세요.
결론
이 문서에서는 Aspose.Imaging Cloud의 PNG를 PDF 형식으로 변환하는 기능을 살펴보았습니다. 또한 .NET Cloud SDK와 cURL 명령을 사용하여 변환을 수행할 수 있음을 확인했습니다. 또한 Swagger UI를 제공하여 브라우저 내에서 직접 REST API를 테스트할 수 있습니다.
또한 Cloud SDK는 MIT 라이선스에 따라 배포되며 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다. API를 사용하는 동안 문제가 발생하거나 궁금한 사항이 있는 경우 무료 제품 지원 포럼을 통해 언제든지 문의해 주십시오.
관련기사
자세한 내용을 알아보려면 다음 링크를 방문해 보세요.