Extraer texto de la forma SmartArt de tipo engranaje con C++

Escenarios de uso posibles

Aspose.Cells for C++ puede extraer texto de la forma de SmartArt de tipo engranaje. Para lograrlo, siga estos pasos:

  1. Convertir la forma de SmartArt en forma de grupo usando el método Shape::GetResultOfSmartArt().
  2. Recuperar todas las formas individuales que forman la forma de grupo usando el método GroupShape::GetGroupedShapes().
  3. Iterar a través de cada forma individual y extraer el texto usando el método GetText().

Extraer Texto de la Forma de Arte SmartArt de Tipo de Engranaje

El siguiente código de ejemplo carga un archivo de Excel de muestra que contiene una forma de SmartArt de tipo engranaje y extrae texto de sus formas individuales. Consulte la salida en consola a continuación para obtener los resultados.

Código de muestra

#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;
}

Salida de la consola

Gear Type Shape Text: Nice
Gear Type Shape Text: Good
Gear Type Shape Text: Excellent