C++ kullanarak PowerPoint sunumlarında Şekillerle çalışma

Microsoft PowerPoint, sunumlarınıza şekiller eklemenizi sağlar. Şekiller, veri akışını göstermek veya bir sürecin farklı aşamalarını göstermek gibi senaryolarda yardımcı olabilir. Elips, çizgi, dikdörtgen vb. şekilleri kullanabilir ve bunları bağlayıcılar kullanarak bağlayabilirsiniz. Kendinizi PowerPoint slaytlarına programlı olarak şekiller eklemeniz gereken senaryoların içinde bulabilirsiniz. Bu amaçla, bu makale size C++ kullanarak PowerPoint sunumlarında şekillerle nasıl çalışacağınızı öğretecektir.

PowerPoint Sunumlarında Şekillerle Çalışmak için C++ API’si

Aspose.Slides for C++, PowerPoint dosyaları oluşturmayı, okumayı ve değiştirmeyi destekleyen yerel bir C++ kitaplığıdır. API, PowerPoint sunumlarında şekillerle çalışmayı da destekler. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.

PM> Install-Package Aspose.Slides.Cpp

PowerPoint Slaydına Şekil Ekleme

Şekil eklemek için API tarafından sağlanan ISlide->getShapes()->AddAutoShape() yöntemini kullanın. PowerPoint slaydına şekil ekleme adımları aşağıda verilmiştir.

C++ kullanarak bir PowerPoint slaydına şekil eklemek için örnek kod aşağıdadır.

// dosya yolları
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";

// Sunum dosyasını yükleyin
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// İlk slaydı alın
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// şekli ekle
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// Sunum dosyasını kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
PowerPoint Slaytına Şekil Ekleme

Bağlantılı Şekilleri PowerPoint Slaydına Ekleme

Bağlayıcılar şekilleri bağlamak için kullanılabilir. Bir bağlayıcı oluşturmak için ISlide->getShapes()->AddConnector() yöntemini kullanabilirsiniz. Aşağıda, bir PowerPoint slaydına bağlantılı şekiller ekleme adımları verilmiştir.

Aşağıda, C++ kullanarak bir PowerPoint slaydına bağlı şekiller eklemek için örnek kod verilmiştir.

// dosya yolları
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";

// Sunum dosyasını yükleyin
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// İlk slaydı alın
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// İlk şekli ekle
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// İkinci şekli ekle
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);

// Bağlayıcıyı ekleyin
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);

// Şekilleri bağlayıcıyla birleştirin
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);

// Şekiller arasındaki otomatik en kısa yolu ayarlamak için arama yeniden yönlendirme
connector->Reroute();

// Sunum dosyasını kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Bağlantılı Şekilleri PowerPoint Slaydına Ekleme

PowerPoint Slaytlarında Şekilleri Klonlama

Aspose.Slides for C++ API’yi kullanarak mevcut şekilleri de klonlayabilirsiniz. Bir şekli klonlamak için API tarafından sağlanan ShapeCollection->InsertClone() yöntemini kullanın. Aşağıdakiler, şekilleri bir slayttan diğerine kopyalama adımlarıdır.

Aşağıda, C++ kullanarak PowerPoint slaytlarındaki şekilleri klonlamak için örnek kod verilmiştir.

// dosya yolları
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";

// Sunum dosyasını yükleyin
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// İlk slayda erişin
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Seçili slayt için şekiller koleksiyonuna erişme
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();

// Hedef slayttan şekil koleksiyonunu alın
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();

// klon şekli
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);

// Sunum dosyasını kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
PowerPoint Slaytlarında Şekilleri Klonlama

C++ kullanarak PowerPoint Slaytlarından Şekilleri Kaldırma

Aşağıdakiler, PowerPoint slaytlarından şekilleri kaldırma adımlarıdır.

C++ kullanarak PowerPoint slaytlarından şekilleri kaldırmak için örnek kod aşağıdadır.

// dosya yolları
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";

// Sunum dosyasını yükleyin
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// İlk slayda erişin
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++)
{
	// Şekle erişin
	SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));

	if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
	{
		// şekli kaldır
		slide->get_Shapes()->Remove(ashape);
	}
}

// Sunum dosyasını kaydet
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Desteklenen PowerPoint Şekilleri

Aspose.Slides for C++, üzerinde çalışabileceğiniz birçok şekli destekler. Aşağıda, desteklenen bazı şekillerin bir listesi bulunmaktadır.

ShapeType numaralandırma değerlerini görüntüleyerek desteklenen şekillerin tam listesini görüntüleyebilirsiniz.

Ücretsiz Lisans Alın

API’yi değerlendirme sınırlamaları olmaksızın denemek için ücretsiz bir geçici lisans talep edebilirsiniz.

Çözüm

Bu makalede, C++ kullanarak PowerPoint sunumlarında şekillerle nasıl çalışacağınızı öğrendiniz. Özellikle, PowerPoint slaytlarından şekil eklemeyi, klonlamayı ve kaldırmayı öğrendiniz. Ayrıca, bir bağlayıcı kullanarak şekilleri nasıl bağlayacağınızı gördünüz. Şekillerle çalışmaya ek olarak Aspose.Slides for C++, PowerPoint sunumlarınızı geliştirmek için birçok ek özellik sağlar. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olursa lütfen ücretsiz destek forumumuzdan bize ulaşmaktan çekinmeyin.

Ayrıca bakınız