소개
Aspose.Slides FOSS for .NET is now available on NuGet: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx 파일을 전적으로 C#로 작성하며, Microsoft Office나 어떤 독점 런타임에도 의존하지 않습니다.
이 라이브러리는 프레젠테이션 파일을 프로그래밍 방식으로 생성하거나 조작해야 하는 개발자를 위해 설계되었습니다: 데이터에서 슬라이드 덱을 자동화하고, 업로드된 PPTX 파일에서 텍스트와 메타데이터를 추출하며, 프레젠테이션 기반 보고 파이프라인을 구축하거나, ASP.NET 애플리케이션에 프레젠테이션 생성을 삽입하는 경우에 사용됩니다. 왜냐하면 Aspose.Slides.Foss .NET 9.0 이상이 필요하므로, Windows, macOS, Linux 및 Docker 컨테이너에서 동일하게 배포됩니다.
주요 기능
- 전체 라운드트립 PPTX 지원: 모든 파일 열기
.pptx파일을 열어 내용을 수정하고, 라이브러리가 아직 이해하지 못하는 알 수 없는 XML 부분을 잃지 않고 다시 저장합니다. - 슬라이드 관리: 슬라이드를 추가, 제거 및 반복 처리 using
prs.Slides; 프레젠테이션은 이후에 빈 슬라이드 하나로 시작합니다new Presentation(). - AutoShapes, 테이블 및 커넥터: 모양을 삽입 via
slide.Shapes.AddAutoShape(), 표 데이터를 viaslide.Shapes.AddTable(), 그리고 모양 사이의 시각적 커넥터를 viaslide.Shapes.AddConnector(). - 리치 텍스트 서식: 문자 수준에서 텍스트를 서식 지정 with
PortionFormat: 글꼴 크기, 굵게, 기울임, 밑줄 및 ARGB 색상 viaFillType.Solid그리고ColorFormat. - 채우기 유형: 적용
FillType.Solid,Gradient,Pattern, 또는Picture어떤 형태든 채워집니다. - 시각 효과: 외부 그림자, 글로우, 부드러운 가장자리, 흐림, 반사 및 내부 그림자 via
shape.EffectFormat. - 3D formatting: 베벨, 카메라, 라이트 리그, 재질, 및 압출 깊이 via
shape.ThreeDFormat. - 발표자 노트: 각 슬라이드에 노트 텍스트를 첨부 via
NotesSlideManager.AddNotesSlide(). - 스레드형 댓글: 작성자 메타데이터와 슬라이드 위치가 포함된 댓글을 추가합니다.
- 삽입된 이미지: 파일 경로, 바이트 또는
Stream. - 문서 속성: 핵심, 앱 및 사용자 정의 속성을 읽고 씁니다.
시작하기
NuGet에서 설치합니다. .NET 9.0 이상이 필요합니다.
dotnet add package Aspose.Slides.Foss
도형을 사용해 첫 번째 프레젠테이션을 만들고 저장하세요:
using Aspose.Slides.Foss;
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);
항상 사용하세요 Presentation 안에 using 블록; 이렇게 하면 블록이 종료될 때 모든 내부 리소스가 해제됩니다.
텍스트 서식 예시
using Aspose.Slides.Foss;
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);
현재 제한 사항
다음 영역에서 발생합니다 NotImplementedException 이번 릴리스에서:
- 차트, SmartArt, 및 OLE 개체
- 애니메이션 및 슬라이드 전환
- PDF, HTML, SVG 또는 이미지 형식으로 내보내기
- 하이퍼링크, 동작 설정, VBA 매크로 및 디지털 서명
로드 중에 발견된 알 수 없는 XML 파트는 저장 시 그대로 보존되므로, 다른 도구에서 생성된 PPTX 파일도 안전하게 라운드트립됩니다.