.NET에서 프레젠테이션 저장 방법

.NET에서 프레젠테이션 저장 방법

Aspose.Slides FOSS for .NET saves presentations exclusively to .pptx 형식 사용 prs.Save(path, SaveFormat.Pptx). 이 가이드는 올바른 저장 패턴, 다른 경로에 저장, 스트림에 저장, 그리고 일반적인 저장 관련 오류를 다룹니다.

단계별 가이드

단계 1: 패키지 설치

dotnet add package Aspose.Slides.Foss

단계 2: 프레젠테이션 열기 또는 만들기

항상 사용하십시오 using 문. 저장 호출은 객체가 해제되기 전에 이루어져야 합니다.

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

// Create new
using var prs = new Presentation();
prs.Save("new.pptx", SaveFormat.Pptx);
// Open existing
using var prs = new Presentation("input.pptx");
prs.Save("output.pptx", SaveFormat.Pptx);

단계 3: 모든 수정 후 저장

다음에 배치하십시오 Save() 수정이 모두 완료된 후, <…> 전에 호출합니다 using 범위가 종료될 때.

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, 300, 100);
shape.AddTextFrame("Hello, World!");
prs.Save("output.pptx", SaveFormat.Pptx);

단계 4: 다른 경로에 저장

원본을 수정하지 않고 새 파일을 만들기 위해 다른 출력 경로를 전달합니다:

using var prs = new Presentation("template.pptx");
// modify ...
prs.Save("customized.pptx", SaveFormat.Pptx);

다음 template.pptx 파일은 수정되지 않습니다; customized.pptx 생성됩니다(이미 존재하면 덮어쓰기됩니다).


단계 5: 스트림에 저장

다음 Presentation.Save 메서드는 또한 Stream:

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

using var prs = new Presentation();
using var stream = new MemoryStream();
prs.Save(stream, SaveFormat.Pptx);
byte[] pptxBytes = stream.ToArray();
Console.WriteLine($"Size: {pptxBytes.Length} bytes");

단계 6: 출력 확인

파일에 저장한 후, 파일이 존재하는지 확인하세요:

var info = new FileInfo("output.pptx");
Console.WriteLine($"Saved: {info.Exists}, size: {info.Length} bytes");

지원되는 저장 형식

형식열거형 값지원됨
PPTX (Office Open XML)SaveFormat.Pptx
PDFN/A아니오
HTMLN/A아니오
SVGN/A아니오
PNG / JPEGN/A아니오
ODP (OpenDocument)N/A아니오

PPTX만 지원됩니다. format 매개변수는 현재 무시되며, 지정된 SaveFormat에 관계없이 모든 프레젠테이션이 PPTX로 저장됩니다.


일반적인 문제 및 해결책

IOException: The process cannot access the file

출력 파일이 다른 애플리케이션에서 열려 있습니다(예: PowerPoint가 파일을 열고 있음). 저장하기 전에 다른 애플리케이션에서 파일을 닫으세요.

파일이 생성되었지만 비어 있거나 손상된 것으로 보입니다

보장하십시오 prs.Save() 객체가 해제되기 전에 호출됩니다. 이후 Dispose() 실행되면, 이후 호출은 실패하거나 손상된 출력을 생성합니다.

저장 시 예상치 못한 출력 형식

어떤 것을 전달하든 SaveFormat 다른 값 SaveFormat.Pptx 예외를 발생시키지 않으며 — format 매개변수는 조용히 무시되고 파일은 항상 PPTX로 저장됩니다. 없습니다 NotSupportedException 인식되지 않은 형식 값에 대해.


자주 묻는 질문

열었던 파일에 그대로 저장할 수 있나요?

예. 동일한 경로에 저장하면 원본 파일이 덮어쓰기됩니다:

using var prs = new Presentation("deck.pptx");
// modify ...
prs.Save("deck.pptx", SaveFormat.Pptx);  // overwrites original

저장 시 수정하지 않은 내용이 보존되나요?

예. 원본 파일의 알 수 없는 XML 파트는 그대로 보존됩니다. 라이브러리는 이해하는 문서 모델의 파트만 직렬화하고, 인식하지 못하는 XML은 그대로 전달합니다.


또 보기

 한국어