C# XPS를 PDF로 변환 | C#에서 OXPS를 PDF로 변환

XPS(Open XML Paper Spec)OXPS(OpenXPS)는 고정 페이지 문서를 나타냅니다. XPS 문서는 원본 문서의 레이아웃과 서식을 유지한다는 점에서 PDF 문서와 유사합니다. 그러나 XPS 문서는 PDF 문서만큼 널리 지원되지 않습니다. PDF(Portable Document Format) 문서는 다양한 플랫폼과 장치에서 널리 지원됩니다. 이 기사에서는 C#에서 XPS 또는 OXPS를 PDF로 변환하는 방법을 보여줍니다.

이 문서에서는 다음 주제를 다룹니다.

  1. XPS를 PDF로 변환하는 C# API
  2. C#을 사용하여 XPS를 PDF로 변환
  3. XPS의 특정 페이지를 PDF로 변환
  4. C#에서 OXPS를 PDF로 변환기
  5. OXPS의 특정 페이지를 PDF로 변환
  6. 온라인에서 XPS 파일을 PDF로 변환
  7. XPS를 PDF로 - 무료 학습 리소스

XPS를 PDF로 변환하는 C# API

Aspose.Page for .NET API를 사용하여 XPS 또는 OXPS 문서를 PDF 형식으로 변환합니다. 개발자가 XPS 및 EPS/PS 문서를 생성, 편집, 조작 및 변환할 수 있는 강력한 API입니다. Aspose.Page for .NET은 사용하기 쉽고 .NET 애플리케이션에 통합되는 안정적인 독립형 API입니다.

API의 DLL을 다운로드하거나 다음 NuGet 명령을 사용하여 설치하십시오.

PM> Install-Package Aspose.Page

C#을 사용하여 XPS를 PDF로 변환

아래 단계에 따라 전체 XPS 문서를 PDF 형식으로 변환할 수 있습니다.

  1. 입력 XPS 파일을 로드합니다.
  2. 필요한 매개변수를 사용하여 옵션 개체를 초기화합니다.
  3. 렌더링을 위해 PdfDevice의 인스턴스를 만듭니다.
  4. XPS를 PDF 문서로 내보냅니다.

아래 제공된 코드 샘플은 C#을 사용하여 XPS 파일을 PDF로 변환하는 방법을 보여줍니다.

// PDF 출력 스트림 초기화
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// XPS 입력 스트림 초기화
//(System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open)) 사용
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.xps", System.IO.FileMode.Open))
{
// 스트림에서 XPS 문서 로드
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// 또는 파일에서 XPS 문서를 직접 로드할 수 있습니다. 그러면 xpsStream이 필요하지 않습니다.
// XpsDocument 문서 = new XpsDocument(inputFileName, new XpsLoadOptions());

// 필요한 매개변수로 옵션 객체를 초기화합니다.
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
    JpegQualityLevel = 100,
    ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
    TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
};
// PDF 형식용 렌더링 장치 만들기
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

C#에서 XPS의 특정 페이지를 PDF로 변환

아래 단계에 따라 XPS 문서의 선택한 페이지를 PDF 형식으로 변환할 수도 있습니다.

  1. XPS 입력 스트림을 초기화합니다.
  2. 스트림에서 XPS 문서를 로드합니다.
  3. PdfSaveOptions 개체를 초기화합니다.
  4. 변환할 페이지 번호를 지정하십시오.
  5. 문서를 PDF 파일로 저장합니다.

다음 코드 샘플은 C#에서 XPS의 특정 페이지를 PDF로 변환하는 방법을 보여줍니다.

// PDF 출력 스트림 초기화
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// XPS 입력 스트림 초기화
//(System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open)) 사용
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.xps", System.IO.FileMode.Open))
{
    // 스트림에서 XPS 문서 로드
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // 또는 파일에서 XPS 문서를 직접 로드할 수 있습니다. 그러면 xpsStream이 필요하지 않습니다.
    // XpsDocument 문서 = new XpsDocument(inputFileName, new XpsLoadOptions());

    // 필요한 매개변수로 옵션 객체를 초기화합니다.
    Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
    {
        JpegQualityLevel = 100,
        ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
        TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
        PageNumbers = new int[] {1, 3}
    };
    // PDF 형식용 렌더링 장치 만들기
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

이 코드 조각은 여러 페이지가 포함된 XPS 문서를 입력 파일로 사용합니다. 반면, 코드 조각에 지정된 대로 페이지 번호 1과 3만 PDF로 변환됩니다. 다음 스크린샷은 PDF 문서로 렌더링된 두 페이지를 표시합니다.

XPS를 PDF로

C#에서 OXPS를 PDF로 변환기

OXPS 형식은 XPS 파일 형식의 업데이트된 고급 형식입니다. 그러나 이러한 파일은 일부 이전 운영 체제에서는 지원되지 않습니다. 아래 단계에 따라 OXPS 문서를 PDF 형식으로 쉽게 변환할 수 있습니다.

  1. OXPS 입력 스트림을 초기화합니다.
  2. 스트림에서 OXPS 파일을 로드합니다.
  3. PdfSaveOptions 클래스의 개체 인스턴스화
  4. OXPS를 PDF 파일로 내보내기

다음 코드 샘플은 C#에서 OXPS를 PDF로 변환하는 방법을 보여줍니다.

// PDF 출력 스트림 초기화
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// OXPS 입력 스트림 초기화
//(System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.oxps", System.IO.FileMode.Open)) 사용
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.oxps", System.IO.FileMode.Open))
{
// 스트림에서 OXPS 문서 로드
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// 또는 파일에서 직접 OXPS 문서를 로드할 수 있습니다. 그러면 xpsStream이 필요하지 않습니다.
// XpsDocument 문서 = new XpsDocument(inputFileName, new XpsLoadOptions());

// 필요한 매개변수로 옵션 객체를 초기화합니다.
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
    JpegQualityLevel = 100,
    ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
    TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
};
// PDF 형식용 렌더링 장치 만들기
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

C#에서 OXPS의 특정 페이지를 PDF로 변환

마찬가지로 아래 단계에 따라 OXPS 문서의 특정 페이지를 PDF 형식으로 변환할 수도 있습니다.

  1. OXPS 파일 로드
  2. PdfSaveOptions 개체를 선언합니다.
  3. 변환하려는 페이지 번호를 설정하세요.
  4. OXPS를 PDF로 렌더링합니다.

다음 코드 조각은 C#에서 OXPS의 특정 페이지를 PDF로 변환하는 방법을 보여줍니다. 코드 조각에 언급된 대로 OXPS 파일의 첫 번째 페이지를 PDF로 변환합니다.

// PDF 출력 스트림 초기화
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// OXPS 입력 스트림 초기화
//(System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.oxps", System.IO.FileMode.Open)) 사용
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.oxps", System.IO.FileMode.Open))
{
    // 스트림에서 OXPS 문서 로드
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // 또는 파일에서 XPS 문서를 직접 로드할 수 있습니다. 그러면 xpsStream이 필요하지 않습니다.
    // XpsDocument 문서 = new XpsDocument(inputFileName, new XpsLoadOptions());

    // 필요한 매개변수로 옵션 객체를 초기화합니다.
    Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
    {
        JpegQualityLevel = 100,
        ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
        TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
        PageNumbers = new int[] {1}
    };
    // PDF 형식용 렌더링 장치 만들기
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

무료 라이센스 받기

평가 제한 없이 라이브러리를 테스트하려면 무료 임시 라이선스를 받으세요.

온라인에서 XPS 파일을 PDF로 변환

소프트웨어나 플러그인을 설치하지 않고도 이 무료 XPS-PDF 변환기 앱을 사용하여 온라인에서 XPS 파일을 PDF로 변환할 수도 있습니다.

XPS 문서를 PDF로 변환 - 학습 리소스

XPS 또는 OXPS 문서를 PDF 형식으로 변환하는 것 외에도 아래 리소스를 사용하여 라이브러리에 대해 자세히 알아보고 다양한 기타 기능을 탐색해 보세요.

결론

이 기사에서는 C#을 사용하여 프로그래밍 방식으로 XPS를 PDF로, OXPS를 PDF로 변환하는 방법을 배웠습니다. 또한 XPS 또는 OXPS 문서의 특정 페이지를 PDF 형식으로 내보내는 방법도 살펴보았습니다. API를 더 자세히 살펴보고 문서 처리 워크플로를 최적화할 수 있습니다. 모호한 점이 있으면 언제든지 무료 지원 포럼에 문의해 주세요.

또한보십시오