API C++ para converter DOTM em ODP ou aplicativo on-line

Exporte DOTM para ODP em seus aplicativos C++ sem usar o Microsoft Word® ou PowerPoint

 

Aspose.Total for C++ consiste em poderosas APIs de automação de arquivos que permitem automatizar a conversão de DOTM para ODP usando duas de suas APIs. Carregue seu DOTM 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 ODP.

Conversão de DOTM para ODP em C++

  1. Abra o arquivo DOTM usando a referência de classe Dotmument
  2. Converta DOTM para HTML usando a função de membro Save
  3. Inicialize um novo objeto Apresentação
  4. Adicione uma AutoForma em seu slide e adicione AddTextFrame nele
  5. Carregue o conteúdo HTML e escreva-o em seu arquivo de apresentação
  6. Salve o dotmumento no formato ODP usando o método Save e defina Odp 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 DOTM file with an instance of Dotmument
Dotmument dotmument = new Dotmument("template.dotm");
System::SharedPtr<Dotmument> dotm = System::MakeObject<Dotmument>(u"sourceFile.dotm");
// save the dotmument in HTML file format
dotm->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 Odp
pres->Save(output.odp, Aspose::Slides::Export::SaveFormat::Odp);                  

Conversor Online Gratuito de DOTM para ODP

Carregar dotmumento DOTM protegido por senha via C++

Além da conversão de dotmumentos, a API Aspose.Words for C++ permite vários recursos de manipulação de dotmumentos para desenvolvedores de C++. Caso seu formato de arquivo DOTM do Microsoft Word seja protegido por senha, você ainda pode abri-lo usando a API. Para carregar o dotmumento 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 dotmument, the password is passed to the dotmument's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"dotmPassword");
// load the dotmument from the local file system by filename:
SharedPtr<Dotmument> dotm = MakeObject<Dotmument>(u"Encrypted.dotm", options);

Adicionar comentários no dotmumento ODP via C++

Ao salvar o DOTM como ODP, você também pode usar o Aspose.Slides for C++ para adicionar mais recursos ao seu dotmumento ODP. 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 Odp
pres->Save(output.odp, Aspose::Slides::Export::SaveFormat::Odp);  

perguntas frequentes

  • Como posso converter DOTM para ODP Online?
    Você pode encontrar o aplicativo online para conversão DOTM acima. Para iniciar o processo de conversão, você pode adicionar o arquivo DOTM 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 DOTM para ODP, você pode baixar o arquivo convertido com apenas um clique.
  • Quanto tempo leva para converter DOTM?
    A velocidade deste conversor online depende muito do tamanho do arquivo DOTM que está sendo convertido. Pequenos arquivos DOTM podem ser convertidos em ODP 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 DOTM para ODP usando o conversor gratuito Aspose.Total?
    Claro! Depois que seu arquivo DOTM for convertido em ODP usando nosso conversor online, o link para download do arquivo ODP 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 DOTM, é 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 DOTM?
    Para conversão DOTM 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 DOTM é recomendada para um desempenho suave.

Explore DOTM Opções de conversão com C++

Converter DOTMs para CSV (Valores separados por vírgula)
Converter DOTMs para DIF (Formato de Intercâmbio de Dados)
Converter DOTMs para EXCEL (Formatos de arquivo de planilha)
Converter DOTMs para FODS (Planilha XML Plana OpenDocument)
Converter DOTMs para ODS (Planilha OpenDocument)
Converter DOTMs para POT (Arquivos de modelo do Microsoft PowerPoint)
Converter DOTMs para POTM (Arquivo de modelo do Microsoft PowerPoint)
Converter DOTMs para POTX (Modelo de apresentação do Microsoft PowerPoint)
Converter DOTMs para PPTX (Formato de apresentação XML aberto)
Converter DOTMs para PPS (Apresentação de slides do PowerPoint)
Converter DOTMs para PPSM (Apresentação de slides habilitada para macro)
Converter DOTMs para PPSX (Apresentação de slides do PowerPoint)
Converter DOTMs para PPT (Apresentação em powerpoint)
Converter DOTMs para PPTM (Arquivo de apresentação habilitado para macro)
Converter DOTMs para PPTX (Formato de apresentação XML aberto)
Converter DOTMs para SXC (Planilha do StarOffice Calc)
Converter DOTMs para TSV (Valores separados por tabulações)
Converter DOTMs para XLAM (Suplemento habilitado para macro do Excel)
Converter DOTMs para XLS (Formato binário do Microsoft Excel)
Converter DOTMs para XLSB (Pasta de trabalho binária do Excel)
Converter DOTMs para XLSM (Planilha habilitada para macro)
Converter DOTMs para XLSX (Abra a pasta de trabalho XML)
Converter DOTMs para XLT (Modelo Excel 97 - 2003)
Converter DOTMs para XLTM (Modelo habilitado para macro do Excel)
Converter DOTMs para XLTX (Modelo do Excel)
Converter DOTMs para JSON (Arquivo de Notação de Objeto JavaScript)