Извлечь текст из фигуры SmartArt типа Gear с помощью C++
Contents
[
Hide
]
Возможные сценарии использования
Aspose.Cells for C++ умеет извлекать текст из фигуры SmartArt типа Gear. Для этого выполните следующие шаги:
- Преобразовать фигуру SmartArt в групповую фигуру с помощью метода Shape::GetResultOfSmartArt().
- Получить все отдельные фигуры, формирующие групповую фигуру, с помощью метода GroupShape::GetGroupedShapes().
- Проходить по каждой отдельной фигуре и извлекать текст с помощью метода GetText().
Извлечение текста из формы SmartArt с шестеренчатым типом
Следующий пример кода загружает пример файла Excel, содержащего фигуру SmartArt типа Gear, и извлекает текст из его отдельных фигур. Результаты смотрите в выводе консоли ниже.
Образец кода
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
using namespace Aspose::Cells::Drawing;
int main()
{
Aspose::Cells::Startup();
// Load sample Excel file containing gear type smart art shape
U16String inputFile(u"sampleExtractTextFromGearTypeSmartArtShape.xlsx");
Workbook wb(inputFile);
// Access first worksheet
Worksheet ws = wb.GetWorksheets().Get(0);
// Access first shape
Shape sh = ws.GetShapes().Get(0);
// Get SmartArt result as group shape
GroupShape gs = sh.GetResultOfSmartArt();
// Get grouped shapes collection
Vector<Shape> shps = gs.GetGroupedShapes();
// Iterate through shapes and check gear types
for (int i = 0; i < shps.GetLength(); i++)
{
Shape s = shps[i];
AutoShapeType shapeType = s.GetType();
if (shapeType == AutoShapeType::Gear9 || shapeType == AutoShapeType::Gear6)
{
std::cout << "Gear Type Shape Text: " << s.GetText().ToUtf8() << std::endl;
}
}
Aspose::Cells::Cleanup();
return 0;
}
Вывод в консоль
Gear Type Shape Text: Nice
Gear Type Shape Text: Good
Gear Type Shape Text: Excellent