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
- PowerPoint Slaydına Şekil Ekleme
- Bağlantılı Şekilleri PowerPoint Slaydına Ekleme
- PowerPoint Slaytlarında Şekilleri Klonlama
- C++ kullanarak PowerPoint Slaytlarından Şekilleri Kaldırma
- Desteklenen PowerPoint Şekilleri
- Ücretsiz Lisans Alın
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.
- İlk olarak, Sunum sınıfını kullanarak PowerPoint sunumunu yükleyin.
- Presentation->getSlides()->idxget (int32t index) yöntemini kullanarak şekli eklemek istediğiniz slaytı alın.
- ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height) yöntemini kullanarak şekli ekleyin.
- Son olarak, sunumu Sunum->Kaydet (System::String name, Export::SaveFormat format) yöntemini kullanarak kaydedin.
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);
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.
- İlk olarak, Sunum sınıfını kullanarak PowerPoint sunumunu yükleyin.
- Presentation->getSlides()->idxget (int32t index) yöntemini kullanarak şekilleri eklemek istediğiniz slaytı alın.
- ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height) yöntemini kullanarak şekilleri ekleyin.
- ISlide->getShapes()->AddConnector (ShapeType shapeType, float x, float y, float width, float height) yöntemini kullanarak bağlayıcıyı ekleyin.
- Şekilleri bağlayıcıya IConnector->setStartShapeConnectedTo (System::SharedPtr) kullanarak bağlayın. değeri) ve IConnector->setEndShapeConnectedTo (System::SharedPtr) değer) yöntemler.
- En kısa otomatik bağlantı yolunu oluşturmak için IConnector->Reroute() yöntemini çağırın.
- Son olarak, sunumu Sunum->Kaydet (System::String name, Export::SaveFormat format) yöntemini kullanarak kaydedin.
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);
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.
- İlk olarak, Sunum sınıfını kullanarak PowerPoint sunumunu yükleyin.
- Sunum->getSlides()->idxget (int32t dizini) yöntemini kullanarak kaynak slaydı alın.
- ISlide->getShapes() yöntemini kullanarak kaynak slaydın şekillerine erişin.
- ISlide->getShapes() yöntemini kullanarak hedef slaydın şekillerine erişin.
- IShapeCollection->InsertClone (int32t dizini, System::SharedPtr) kullanarak şekli klonlayın sourceShape, float x, float y) yöntemi.
- Son olarak, sunumu Sunum->Kaydet (System::String name, Export::SaveFormat format) yöntemini kullanarak kaydedin.
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);
C++ kullanarak PowerPoint Slaytlarından Şekilleri Kaldırma
Aşağıdakiler, PowerPoint slaytlarından şekilleri kaldırma adımlarıdır.
- İlk olarak, Sunum sınıfını kullanarak PowerPoint sunumunu yükleyin.
- Presentation->getSlides()->idxget (int32t index) yöntemini kullanarak şekli kaldırmak istediğiniz yerden slaydı alın.
- IShape->getAlternativeText() yöntemini kullanarak alternatif metni eşleştirerek gerekli şekli bulun.
- ISlide->getShapes()->Kaldır (System::SharedPtr) seçeneğini kullanarak şekli kaldırın. şekil) yöntemi.
- Son olarak, sunumu Sunum->Kaydet (System::String name, Export::SaveFormat format) yöntemini kullanarak kaydedin.
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.