C++를 사용하여 PowerPoint 프레젠테이션에서 도형 작업

Microsoft PowerPoint에서는 프레젠테이션에 도형을 추가할 수 있는 기능을 제공합니다. 셰이프는 데이터 흐름을 표시하거나 프로세스의 여러 단계를 표시하는 것과 같은 시나리오에서 유용할 수 있습니다. 타원, 선, 직사각형 등의 모양을 사용할 수 있으며 커넥터를 사용하여 연결할 수 있습니다. 프로그래밍 방식으로 PowerPoint 슬라이드에 도형을 추가해야 하는 시나리오에 직면할 수 있습니다. 이를 위해 이 기사에서는 C++를 사용하여 PowerPoint 프레젠테이션에서 도형으로 작업하는 방법을 설명합니다.

PowerPoint 프레젠테이션에서 도형 작업을 위한 C++ API

Aspose.Slides for C++은 PowerPoint 파일 생성, 읽기 및 조작을 지원하는 기본 C++ 라이브러리입니다. API는 PowerPoint 프레젠테이션의 도형 작업도 지원합니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.

PM> Install-Package Aspose.Slides.Cpp

PowerPoint 슬라이드에 도형 추가

도형을 추가하기 위해서는 API에서 제공하는 ISlide->getShapes()->AddAutoShape() 메소드를 사용하세요. 다음은 PowerPoint 슬라이드에 도형을 추가하는 단계입니다.

다음은 C++를 사용하여 PowerPoint 슬라이드에 도형을 추가하는 샘플 코드입니다.

// 파일 경로
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";

// 프레젠테이션 파일 로드
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 첫 번째 슬라이드 가져오기
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// 모양 추가
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// 프레젠테이션 파일 저장
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
PowerPoint 슬라이드에 모양 추가

PowerPoint 슬라이드에 연결된 도형 추가

커넥터를 사용하여 셰이프를 연결할 수 있습니다. 커넥터를 생성하기 위해 ISlide->getShapes()->AddConnector() 메소드를 사용할 수 있습니다. 다음은 PowerPoint 슬라이드에 연결된 도형을 추가하는 단계입니다.

다음은 C++를 사용하여 PowerPoint 슬라이드에 연결된 도형을 추가하는 샘플 코드입니다.

// 파일 경로
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";

// 프레젠테이션 파일 로드
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 첫 번째 슬라이드 가져오기
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// 첫 번째 모양 추가
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// 두 번째 모양 추가
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);

// 커넥터 추가
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);

// 커넥터로 셰이프 결합
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);

// reroute를 호출하여 도형 사이의 자동 최단 경로 설정
connector->Reroute();

// 프레젠테이션 파일 저장
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
PowerPoint 슬라이드에 연결된 도형 추가

PowerPoint 슬라이드에서 모양 복제

C++ API용 Aspose.Slides를 사용하여 기존 모양을 복제할 수도 있습니다. 모양을 복제하려면 API에서 제공하는 ShapeCollection->InsertClone() 메서드를 사용하십시오. 다음은 한 슬라이드에서 다른 슬라이드로 모양을 복제하는 단계입니다.

다음은 C++를 사용하여 PowerPoint 슬라이드의 도형을 복제하는 샘플 코드입니다.

// 파일 경로
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";

// 프레젠테이션 파일 로드
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 첫 번째 슬라이드 액세스
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// 선택한 슬라이드의 도형 컬렉션에 액세스
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();

// 대상 슬라이드에서 모양 컬렉션 가져오기
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();

// 클론 모양
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);

// 프레젠테이션 파일 저장
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
PowerPoint 슬라이드에서 모양 복제

C++를 사용하여 PowerPoint 슬라이드에서 도형 제거

다음은 PowerPoint 슬라이드에서 도형을 제거하는 단계입니다.

다음은 C++를 사용하여 PowerPoint 슬라이드에서 도형을 제거하는 샘플 코드입니다.

// 파일 경로
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";

// 프레젠테이션 파일 로드
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 첫 번째 슬라이드 액세스
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

String alttext = u"User Defined";

int iCount = slide->get_Shapes()->get_Count();

for (int i = 0; i < iCount; i++)
{
	// 도형에 액세스
	SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));

	if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
	{
		// 모양 제거
		slide->get_Shapes()->Remove(ashape);
	}
}

// 프레젠테이션 파일 저장
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

지원되는 PowerPoint 도형

C++용 Aspose.Slides는 작업할 수 있는 다양한 모양을 지원합니다. 다음은 지원되는 일부 모양의 목록입니다.

ShapeType 열거형 값을 보면 지원되는 도형의 전체 목록을 볼 수 있습니다.

무료 라이선스 받기

임시 무료 라이선스를 요청하여 평가 제한 없이 API를 사용해 볼 수 있습니다.

결론

이 문서에서는 C++를 사용하여 PowerPoint 프레젠테이션에서 도형으로 작업하는 방법을 배웠습니다. 특히 PowerPoint 슬라이드에서 도형을 추가, 복제 및 제거하는 방법을 배웠습니다. 또한 커넥터를 사용하여 모양을 연결하는 방법을 살펴보았습니다. 모양 작업 외에도 C++용 Aspose.Slides는 PowerPoint 프레젠테이션을 향상시키기 위한 많은 추가 기능을 제공합니다. API에 대한 자세한 내용은 공식 문서에서 확인할 수 있습니다. 질문이 있는 경우 무료 지원 포럼에서 언제든지 문의하십시오.

또한보십시오