Criar e manipular tabelas no PowerPoint usando C++

O Microsoft PowerPoint oferece a capacidade de inserir tabelas em apresentações do PowerPoint. As tabelas permitem que você organize os dados na forma de linhas e colunas. Além disso, eles organizam os dados e facilitam sua visualização e análise. Para isso, este artigo ensinará como criar e manipular tabelas em apresentações do PowerPoint usando C++.

API C++ para criar e manipular tabelas em apresentações do PowerPoint

Usaremos a API Aspose.Slides for C++ para criar e manipular tabelas em apresentações do PowerPoint. É uma API poderosa e rica em recursos que suporta a criação, leitura e modificação de arquivos do PowerPoint sem a necessidade da instalação do Mircosoft PowerPoint. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção Downloads.

PM> Install-Package Aspose.Slides.Cpp

Criar uma tabela em apresentações do PowerPoint usando C++

A seguir estão as etapas para criar uma tabela em apresentações do PowerPoint.

O código de exemplo a seguir mostra como criar uma tabela em uma apresentação do PowerPoint usando C++.

// Caminho de arquivo
const String outputFilePath = u"OutputDirectory\\CreateTable_out.pptx";

// Criar uma instância da classe Presentation
auto presentation = System::MakeObject<Presentation>();

// Acesse o primeiro slide
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Definir colunas com larguras e linhas com alturas
System::ArrayPtr<double> dblCols = System::MakeObject<System::Array<double>>(4, 70);
System::ArrayPtr<double> dblRows = System::MakeObject<System::Array<double>>(4, 70);

// Adicionar forma de tabela ao slide
SharedPtr<ITable> table = slide->get_Shapes()->AddTable(100, 50, dblCols, dblRows);

// Definir o formato da borda para cada célula
for (int x = 0; x < table->get_Rows()->get_Count(); x++)
{
	SharedPtr<IRow> row = table->get_Rows()->idx_get(x);
	for (int y = 0; y < row->get_Count(); y++)
	{
		SharedPtr<ICell> cell = row->idx_get(y);

		cell->get_CellFormat()->get_BorderTop()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderTop()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderTop()->set_Width(5);

		cell->get_CellFormat()->get_BorderBottom()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderBottom()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderBottom()->set_Width(5);

		cell->get_CellFormat()->get_BorderLeft()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderLeft()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderLeft()->set_Width(5);

		cell->get_CellFormat()->get_BorderRight()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderRight()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderRight()->set_Width(5);
	}
}

// Salvar apresentação
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Tabela gerada pelo código de amostra

Tabela gerada pelo código de amostra

Acesse e modifique uma tabela em apresentações do PowerPoint usando C++

Você também pode acessar e modificar tabelas existentes em apresentações do PowerPoint. A seguir estão as etapas para acessar e modificar uma tabela em apresentações do PowerPoint.

O código de exemplo a seguir mostra como acessar e modificar uma tabela em uma apresentação do PowerPoint usando C++.

// Caminhos de arquivo
const String sourceFilePath = u"OutputDirectory\\CreateTable_out.pptx";
const String outputFilePath = u"OutputDirectory\\AccessTable_out.pptx";

// Carregar o arquivo de apresentação
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// Acesse o primeiro slide
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Acesse a tabela
SharedPtr<ITable> table;

for (SharedPtr<IShape> shape : slide->get_Shapes())
{
	if (System::ObjectExt::Is<ITable>(shape)) {
		table = System::DynamicCast_noexcept<ITable>(shape);
	}
}

// Definir texto
table->idx_get(0, 1)->get_TextFrame()->set_Text(u"Aspose");

// Salvar apresentação
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Definir a direção do texto em uma tabela do PowerPoint usando C++

A seguir estão as etapas para definir a direção do texto nas tabelas do PowerPoint.

O código de exemplo a seguir mostra como definir a direção do texto em uma tabela do PowerPoint usando C++.

// Caminhos de arquivo
const String sourceFilePath = u"SourceDirectory\\Slides\\PresentationWithTable.pptx";
const String outputFilePath = u"OutputDirectory\\SetTextDirectionInTable_out.pptx";

// Carregar o arquivo de apresentação
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// Acesse o primeiro slide
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Acesse a tabela
SharedPtr<ITable> table;

for (SharedPtr<IShape> shape : slide->get_Shapes())
{
	if (System::ObjectExt::Is<ITable>(shape)) {
		table = System::DynamicCast_noexcept<ITable>(shape);
	}
}

// Definir direção do texto
SharedPtr<ICell> cell = table->idx_get(0, 1);
cell->set_TextAnchorType(TextAnchorType::Center);
cell->set_TextVerticalType(TextVerticalType::Vertical270);

// Salvar apresentação
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Imagem da saída gerada pelo código de amostra

Imagem da saída gerada pelo código de amostra

Obtenha uma licença gratuita

Para experimentar a API sem limitações de avaliação, você pode solicitar uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como criar e atualizar tabelas em apresentações do PowerPoint. Além disso, você viu como definir a direção do texto em tabelas do PowerPoint usando Aspose.Slides for C++ API. É uma API robusta que fornece vários recursos adicionais para trabalhar com arquivos do PowerPoint. Você pode explorar a API em detalhes visitando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para nos contatar em nosso fórum de suporte gratuito.

Veja também