Aspose.Total for C++ consiste em poderosas APIs de automação de arquivos que permitem automatizar a conversão de DOCM para PPTX usando duas de suas APIs. Carregue seu DOCM usando Aspose.Words for C++ e converta-o em HTML, depois carregue o HTML via API C++ de manipulação do PowerPoint Aspose.Slides for C++ para criar uma nova apresentação e salvá-la como PPTX.
Conversão de DOCM para PPTX em C++
- Abra o arquivo DOCM usando a referência de classe Document
- Converta DOCM para HTML usando a função de membro Save
- Inicialize um novo objeto Apresentação
- Adicione uma AutoForma em seu slide e adicione AddTextFrame nele
- Carregue o conteúdo HTML e escreva-o em seu arquivo de apresentação
- Salve o docmumento no formato PPTX usando o método Save e defina Pptx como SaveFormat
Requisitos de conversão
Instale a partir da linha de comando como nuget install Aspose.Total.Cpp
ou via Package Manager Console do Visual Studio com Install-Package Aspose.Total.Cpp
.
Como alternativa, obtenha o instalador MSI offline ou as DLLs em um arquivo ZIP em downloads .
// load DOCM file with an instance of Document
Document docmument = new Document("template.docm");
System::SharedPtr<Document> docm = System::MakeObject<Document>(u"sourceFile.docm");
// save the docmument in HTML file format
docm->Save(u"HtmlOutput.HTML");
// load the desired the presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0);
// add an AutoShape of Rectangle type
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 10, 10, 700, 500);
// reset default fill color
ashp->get_FillFormat()->set_FillType(FillType::NoFill);
// add TextFrame to the Rectangle
ashp->AddTextFrame(u" ");
// access the text frame
SharedPtr<ITextFrame> txtFrame = ashp->get_TextFrame();
// get Paragraphs collection
SharedPtr<Aspose::Slides::IParagraphCollection>ParaCollection = txtFrame->get_Paragraphs();
// clear all paragraphs in added text frame
ParaCollection->Clear();
// load the HTML file using stream reader
SharedPtr<System::IO::StreamReader> tr = MakeObject<System::IO::StreamReader>(HtmlOutput.HTML);
// add text from HTML stream reader in text frame
ParaCollection->AddFromHtml(tr->ReadToEnd());
// save presentation as Pptx
pres->Save(output.pptx, Aspose::Slides::Export::SaveFormat::Pptx);
Conversor Online Gratuito de DOCM para PPTX
Carregar docmumento DOCM protegido por senha via C++
Além da conversão de docmumentos, a API Aspose.Words for C++ permite vários recursos de manipulação de docmumentos para desenvolvedores de C++. Caso seu formato de arquivo DOCM do Microsoft Word seja protegido por senha, você ainda pode abri-lo usando a API. Para carregar o docmumento criptografado, você pode usar uma sobrecarga de construtor especial, que aceita um objeto LoadOptions . Este objeto contém a propriedade Password, que especifica a string de senha.
// when loading password protected docmument, the password is passed to the docmument's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"docmPassword");
// load the docmument from the local file system by filename:
SharedPtr<Document> docm = MakeObject<Document>(u"Encrypted.docm", options);
Adicionar comentários no docmumento PPTX via C++
Ao salvar o DOCM como PPTX, você também pode usar o Aspose.Slides for C++ para adicionar mais recursos ao seu docmumento PPTX. Por exemplo, você pode adicionar comentários em sua apresentação. O comentário do slide da apresentação está associado a um autor específico. A classe Presentation contém a coleção de autores em ICommentAuthorCollection que são responsáveis por adicionar comentários ao slide. Para cada autor, há uma coleção de comentários em ICommentCollection.
// instantiate Presentation class
SharedPtr<Presentation>pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ILayoutSlide>layout = pres->get_LayoutSlides()->idx_get(0);
// add empty slide
pres->get_Slides()->AddEmptySlide(layout);
// adding Author
SharedPtr<ICommentAuthor> author = pres->get_CommentAuthors()->AddAuthor(u"John Doe", u"MF");
// set position of comments
System::Drawing::PointF point = System::Drawing::PointF(0.2f, 0.2f);
// add slide comment for an author on slide 1
author->get_Comments()->AddComment(u"Hello John, this is a slide comment", pres->get_Slides()->idx_get(1), point, DateTime::get_Now());
// access ISlide 1
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// save presentation as Pptx
pres->Save(output.pptx, Aspose::Slides::Export::SaveFormat::Pptx);
perguntas frequentes
- Como posso converter DOCM para PPTX Online?Você pode encontrar o aplicativo online para conversão DOCM acima. Para iniciar o processo de conversão, você pode adicionar o arquivo DOCM arrastando e soltando ou clicando dentro da área branca para importar o documento. Depois de adicionar o arquivo, basta clicar no botão "Converter". Após a conclusão da conversão de DOCM para PPTX, você pode baixar o arquivo convertido com apenas um clique.
- Quanto tempo leva para converter DOCM?A velocidade deste conversor online depende muito do tamanho do arquivo DOCM que está sendo convertido. Pequenos arquivos DOCM podem ser convertidos em PPTX em apenas alguns segundos. Se você estiver usando o código de conversão em um aplicativo C++, a velocidade de conversão dependerá de quão bem você otimizou seu aplicativo.
- É seguro converter DOCM para PPTX usando o conversor gratuito Aspose.Total?Claro! Depois que seu arquivo DOCM for convertido em PPTX usando nosso conversor online, o link para download do arquivo PPTX estará imediatamente disponível. Levamos a sério a segurança e a privacidade de seus arquivos enviados e os excluímos 24 horas após a conclusão do processo de conversão. Fique tranquilo, ninguém terá acesso aos seus arquivos. Nosso processo de conversão, incluindo conversão DOCM, é totalmente seguro. Fornecemos um aplicativo gratuito para fins de teste para que você possa verificar os resultados antes de integrar o código.
- Qual navegador devo usar para converter DOCM?Para conversão DOCM online, você pode usar qualquer navegador moderno, como Google Chrome, Firefox, Opera ou Safari. No entanto, se você estiver desenvolvendo um aplicativo de desktop, a API de conversão Aspose.Total DOCM é recomendada para um desempenho suave.