기능 및 역량
기능 및 역량
Aspose.Slides FOSS for .NET provides a broad set of capabilities for working with PowerPoint .pptx 파일을 프로그래밍 방식으로 처리합니다. 이 페이지에서는 대표적인 코드 예제와 함께 지원되는 모든 기능 영역을 나열합니다.
프레젠테이션 I/O
기존 파일을 열기 .pptx 파일을 열거나 새 파일을 만든 다음 PPTX 형식으로 다시 저장합니다.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
// Open an existing presentation
using (var prs = new Presentation("input.pptx"))
{
Console.WriteLine($"Slide count: {prs.Slides.Count}");
prs.Save("output.pptx", SaveFormat.Pptx);
}
// Create a new presentation (starts with one blank slide)
using (var prs = new Presentation())
{
prs.Save("new.pptx", SaveFormat.Pptx);
}참고: PPTX는 지원되는 유일한 저장 형식입니다. PDF, HTML, SVG 또는 이미지로 내보내는 기능은 제공되지 않습니다.
소스 파일의 알 수 없는 XML 파트는 저장 시 그대로 보존되므로, 열고 다시 저장해도 .pptx 라이브러리가 아직 이해하지 못하는 콘텐츠는 절대 제거되지 않습니다.
슬라이드 관리
슬라이드를 추가, 제거, 복제 및 순서 변경합니다.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
// Access the first slide
var slide = prs.Slides[0];
// Add an additional blank slide at the end
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
Console.WriteLine($"Total slides: {prs.Slides.Count}");
prs.Save("multi-slide.pptx", SaveFormat.Pptx);도형
슬라이드에 자동도형, 그림 프레임, 표 및 연결선을 추가합니다.
AutoShapes
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Add a rectangle at (x=50, y=50) with width=300, height=100
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 300, 100);
shape.AddTextFrame("Aspose.Slides FOSS");
prs.Save("shapes.pptx", SaveFormat.Pptx);표
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Column widths and row heights in points
double[] colWidths = { 120.0, 120.0, 120.0 };
double[] rowHeights = { 40.0, 40.0, 40.0 };
var table = slide.Shapes.AddTable(50, 50, colWidths, rowHeights);
table.Rows[0][0].TextFrame.Text = "Product";
table.Rows[0][1].TextFrame.Text = "Quantity";
table.Rows[0][2].TextFrame.Text = "Price";
prs.Save("table.pptx", SaveFormat.Pptx);연결선
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 100, 150, 60);
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 350, 100, 150, 60);
var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 3; // right side
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 1; // left side
prs.Save("connector.pptx", SaveFormat.Pptx);텍스트 서식
단락 및 문자 수준에서 텍스트를 서식 지정하려면 사용합니다 PortionFormat.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold blue heading");
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("text.pptx", SaveFormat.Pptx);NullableBool.True 속성을 명시적으로 설정합니다; NullableBool.NotDefined 슬라이드 마스터에서 상속됩니다.
채우기 유형
도형에 단색, 그라디언트, 패턴 또는 그림 채우기를 적용합니다.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 300, 150);
// Solid fill
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 30, 120, 200);
prs.Save("fill.pptx", SaveFormat.Pptx);시각 효과
도형에 외부 그림자, 글로우, 부드러운 가장자리, 흐림, 반사 및 내부 그림자를 적용합니다.
효과 속성은 다음을 통해 접근할 수 있습니다 shape.EffectFormat. 호출합니다 EnableOuterShadowEffect(), EnableGlowEffect(), EnableSoftEdgeEffect(), SetBlurEffect(), EnableReflectionEffect(), 또는 EnableInnerShadowEffect() 각각을 독립적으로 구성합니다.
3D Formatting
3D 베벨, 카메라, 라이트 릭, 재질 및 압출 깊이를 다음을 통해 적용합니다 shape.ThreeDFormat. 이는 3D 효과를 지원하는 PPTX 뷰어에서 도형 렌더링의 시각적 깊이와 조명 모델을 제어합니다.
발표자 노트
어떤 슬라이드에도 메모를 첨부하려면 사용 NotesSlideManager.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var notes = prs.Slides[0].NotesSlideManager.AddNotesSlide();
notes.NotesTextFrame.Text = "Key talking point: emphasize the ROI benefit.";
prs.Save("notes.pptx", SaveFormat.Pptx);댓글
작성자 정보와 슬라이드 위치가 포함된 스레드형 댓글을 추가합니다.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var author = prs.CommentAuthors.AddAuthor("Jane Smith", "JS");
var slide = prs.Slides[0];
author.Comments.AddComment(
"Please verify this data before the presentation.",
slide,
new PointF(2.0f, 2.0f),
DateTime.Now
);
prs.Save("comments.pptx", SaveFormat.Pptx);임베드된 이미지
파일에서 이미지를 프레젠테이션에 삽입하고 슬라이드에 ~로 추가 PictureFrame.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var imageData = File.ReadAllBytes("logo.png");
var image = prs.Images.AddImage(imageData);
var slide = prs.Slides[0];
slide.Shapes.AddPictureFrame(ShapeType.Rectangle, 50, 50, 200, 150, image);
prs.Save("with-image.pptx", SaveFormat.Pptx);문서 속성
핵심, 앱 및 사용자 정의 문서 속성을 읽고 쓸 수 있습니다.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var props = prs.DocumentProperties;
// Core properties
props.Title = "Q1 Results";
props.Author = "Finance Team";
props.Subject = "Quarterly Review";
props.Keywords = "Q1, finance, results";
// Custom property
props.SetCustomPropertyValue("ReviewedBy", "Legal Team");
prs.Save("deck.pptx", SaveFormat.Pptx);알려진 제한 사항
다음 영역에서 발생합니다 NotImplementedException 그리고 이 버전에서는 사용할 수 없습니다:
| 영역 | 상태 |
|---|---|
| 차트 | 구현되지 않음 |
| SmartArt | 구현되지 않음 |
| 애니메이션 및 전환 | 구현되지 않음 |
| PDF / HTML / SVG / 이미지 내보내기 | 구현되지 않음 (PPTX 전용) |
| VBA 매크로 | 구현되지 않음 |
| 디지털 서명 | 구현되지 않음 |
| 하이퍼링크 및 동작 설정 | 구현되지 않음 |
| OLE 개체 | 구현되지 않음 |
| 수학 텍스트 | 구현되지 않음 |