소개

Aspose.Slides FOSS for .NET는 이제 NuGet에서 제공됩니다: Microsoft Office나 어떤 독점 런타임에도 의존하지 않고 C#에서 완전히 PowerPoint .pptx 파일을 생성, 읽기 및 편집할 수 있는 무료, MIT 라이선스 라이브러리입니다.

이 라이브러리는 개발자가 프레젠테이션 파일을 프로그래밍 방식으로 생성하거나 조작해야 할 때 설계되었습니다: 데이터에서 슬라이드 데크 자동화, 업로드된 PPTX 파일에서 텍스트 및 메타데이터 추출, 프레젠테이션 기반 보고 파이프라인 구축, 또는 ASP.NET 애플리케이션에 프레젠테이션 생성 기능을 삽입하는 경우 등. Aspose.Slides.Foss는 .NET 9.0 이상이 필요하므로 Windows, macOS, Linux 및 Docker 컨테이너에서 동일하게 배포됩니다.

주요 기능

  • 전체 라운드트립 PPTX 지원: 모든 .pptx 파일을 열고, 내용을 수정한 뒤, 라이브러리가 아직 이해하지 못하는 알 수 없는 XML 파트를 잃지 않고 다시 저장합니다.
  • 슬라이드 관리: prs.Slides을 사용하여 슬라이드를 추가, 제거 및 순회합니다; 프레젠테이션은 new Presentation() 후에 빈 슬라이드 하나로 시작합니다.
  • 자동 도형, 표 및 연결선: slide.Shapes.AddAutoShape()을 통해 도형을 삽입하고, slide.Shapes.AddTable()을 통해 표 데이터를 삽입하며, slide.Shapes.AddConnector()을 통해 도형 간 시각적 연결선을 삽입합니다.
  • 리치 텍스트 서식: PortionFormat을 사용하여 문자 수준에서 텍스트를 서식 지정합니다: 글꼴 크기, 굵게, 기울임꼴, 밑줄 및 FillType.SolidColorFormat을 통한 ARGB 색상.
  • 채우기 유형: FillType.Solid, Gradient, Pattern 또는 Picture 채우기를 모든 도형에 적용합니다.
  • 시각 효과: shape.EffectFormat을 통해 외부 그림자, 광채, 부드러운 가장자리, 흐림, 반사 및 내부 그림자를 적용합니다.
  • 3D 서식: shape.ThreeDFormat을 사용하여 베벨, 카메라, 라이트 릭, 재질 및 돌출 깊이를 지정합니다.
  • 발표자 메모: NotesSlideManager.AddNotesSlide()을 통해 각 슬라이드에 메모 텍스트를 첨부합니다.
  • 스레드형 댓글: 작성자 메타데이터와 슬라이드 위치가 포함된 댓글을 추가합니다.
  • 임베디드 이미지: 파일 경로, 바이트 배열 또는 Stream을 통해 이미지를 삽입합니다.
  • 문서 속성: 핵심, 앱 및 사용자 정의 속성을 읽고 쓸 수 있습니다.

시작하기

NuGet에서 설치합니다. .NET 9.0 이상이 필요합니다.

dotnet add package Aspose.Slides.Foss

모양을 사용하여 첫 번째 프레젠테이션을 만들고 저장하세요:

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("hello.pptx", SaveFormat.Pptx);

항상 Presentationusing 블록 안에서 사용하십시오; 이렇게 하면 블록이 종료될 때 모든 내부 리소스가 해제됩니다.

텍스트 서식 예제

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold heading in corporate blue");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 28;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("formatted.pptx", SaveFormat.Pptx);

현재 제한 사항

다음 영역은 이번 릴리스에서 지원되지 않습니다:

  • 차트, 스마트아트 및 OLE 개체
  • 애니메이션 및 슬라이드 전환
  • PDF, HTML, SVG 또는 이미지 형식으로 내보내기
  • 하이퍼링크, 동작 설정, VBA 매크로 및 디지털 서명

로드 중에 발견된 알 수 없는 XML 파트는 저장 시 그대로 보존되므로, 다른 도구에서 생성된 PPTX 파일이 안전하게 라운드 트립됩니다.

또 보기