{"@attributes":{"version":"2.0"},"channel":{"title":"Documentation \u2013 Criar ou carregar um documento em C++","link":"https:\/\/docs.aspose.com\/words\/pt\/cpp\/create-or-load-a-document\/","description":"Recent content in Criar ou carregar um documento em C++ on Documentation","generator":"Hugo -- gohugo.io","language":"pt","item":[{"title":"Cpp: Especificar op\u00e7\u00f5es de carregamento Em C++","link":"https:\/\/docs.aspose.com\/words\/pt\/cpp\/specify-load-options\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/words\/pt\/cpp\/specify-load-options\/","description":"\n        \n        \n        <p>Ao carregar um documento, pode definir algumas propriedades avan\u00e7adas. Aspose.Words fornece a classe <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/\">LoadOptions<\/a>, que permite um controle mais preciso do processo de carga. Alguns formatos de carga t\u00eam uma classe correspondente que cont\u00e9m op\u00e7\u00f5es de carga para este formato de carga, por exemplo, existe <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/pdfloadoptions\/\">PdfLoadOptions<\/a> para carregar para o formato PDF ou <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/txtloadoptions\/\">TxtLoadOptions<\/a> para carregar para TXT. Este artigo fornece exemplos de trabalho com op\u00e7\u00f5es da classe <strong>LoadOptions<\/strong>.<\/p>\n<h2 id=\"definir-microsoft-word-vers\u00e3o-para-alterar-a-apar\u00eancia\">Definir Microsoft Word vers\u00e3o para alterar a apar\u00eancia<\/h2>\n<p>Diferentes vers\u00f5es da aplica\u00e7\u00e3o Microsoft Word podem apresentar documentos indiferentemente. Por exemplo, existe um problema bem conhecido com OOXML documentos como DOCX ou DOTX produzidos utilizando WPS Office. Nesse caso, os elementos essenciais de marca\u00e7\u00e3o de documentos podem estar em falta ou podem ser interpretados de forma diferente, fazendo com que Microsoft Word 2019 mostre esse documento de forma diferente em compara\u00e7\u00e3o com Microsoft Word 2010.<\/p>\n<p>Por padr\u00e3o, Aspose.Words abre documentos usando as regras Microsoft Word 2019. Se voc\u00ea precisar fazer com que o carregamento de documentos apare\u00e7a como aconteceria em uma das vers\u00f5es anteriores do aplicativo Microsoft Word, especifique explicitamente a vers\u00e3o desejada usando a propriedade <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/get_mswversion\/\">MswVersion<\/a> da classe <strong>LoadOptions<\/strong>.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como definir a vers\u00e3o Microsoft Word com op\u00e7\u00f5es de carregamento:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-SetMSWordVersion.cpp\"><\/script>\n\n<h2 id=\"definir-prefer\u00eancias-de-idioma-para-alterar-a-apar\u00eancia\">Definir prefer\u00eancias de idioma para alterar a apar\u00eancia<\/h2>\n<p>Os detalhes da exibi\u00e7\u00e3o de um documento em Microsoft Word dependem n\u00e3o apenas da vers\u00e3o do aplicativo e do valor da propriedade <strong>MswVersion<\/strong>, mas tamb\u00e9m das configura\u00e7\u00f5es de idioma. Microsoft Word pode apresentar documentos de forma diferente, dependendo das defini\u00e7\u00f5es da caixa de di\u00e1logo &ldquo;Prefer\u00eancias de idioma do Office&rdquo;, que pode ser encontrada em &ldquo;Ficheiro Op\u00e7\u00f5es de Ficheiro Op\u00e7\u00f5es de idioma&rdquo;. Utilizando esta caixa de di\u00e1logo, o utilizador pode seleccionar, por exemplo, o idioma principal, os idiomas de revis\u00e3o, os idiomas de apresenta\u00e7\u00e3o, etc. Aspose.Words fornece a propriedade <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/get_languagepreferences\/\">LanguagePreferences<\/a> como equivalente a esta caixa de di\u00e1logo. Se a sa\u00edda Aspose.Words for diferente da sa\u00edda Microsoft Word, Defina o valor apropriado para <strong>EditingLanguage<\/strong> \u2013 isso pode melhorar o documento de sa\u00edda.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como definir japon\u00eas como <strong>EditingLanguage<\/strong>:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-Setuplanguagepreferences-AddJapaneseAsEditinglanguages.cpp\"><\/script>\n\n<h2 id=\"use-warningcallback-para-controlar-problemas-ao-carregar-um-documento\">Use WarningCallback para controlar problemas ao carregar um documento<\/h2>\n<p>Alguns documentos podem estar corrompidos, conter entradas inv\u00e1lidas ou ter funcionalidades actualmente n\u00e3o suportadas por Aspose.Words. Se voc\u00ea quiser saber sobre problemas que ocorreram durante o carregamento de um documento, Aspose.Words fornece a interface <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words\/iwarningcallback\/\">IWarningCallback<\/a>.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra a implementa\u00e7\u00e3o da interface <strong>IWarningCallback<\/strong>:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-DocumentLoadingWarningCallback.cpp\"><\/script>\n\n<p>Para obter informa\u00e7\u00f5es sobre todos os problemas ao longo do tempo de carregamento, use a propriedade <code>WarningCallback<\/code>.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como usar essa propriedade:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-LoadOptionsWarningCallback.cpp\"><\/script>\n\n<h2 id=\"use-resourceloadingcallback-para-controlar-o-carregamento-de-recursos-externos\">Use ResourceLoadingCallback para controlar o carregamento de recursos externos<\/h2>\n<p>Um documento pode conter links externos para imagens localizadas em algum lugar em um disco local, rede ou Internet. Aspose.Words carrega automaticamente essas imagens em um documento, mas h\u00e1 situa\u00e7\u00f5es em que esse processo precisa ser controlado. Por exemplo, para decidir se realmente precisamos carregar uma determinada imagem ou talvez ignor\u00e1-la. A op\u00e7\u00e3o de carregamento ResourceLoadingCallback permite-lhe controlar isto.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra a implementa\u00e7\u00e3o da interface IResourceLoadingCallback:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-HtmlLinkedResourceLoadingCallback.cpp\"><\/script>\n\n<p>O exemplo de c\u00f3digo a seguir mostra como usar a propriedade <strong>ResourceLoadingCallback<\/strong>:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-LoadOptionsResourceLoadingCallback.cpp\"><\/script>\n\n<h2 id=\"use-tempfolder-para-evitar-uma-exce\u00e7\u00e3o-de-mem\u00f3ria\">Use TempFolder para evitar uma exce\u00e7\u00e3o de mem\u00f3ria<\/h2>\n<p>Aspose.Words suporta documentos extremamente grandes que t\u00eam milhares de p\u00e1ginas cheias de conte\u00fado rico. O carregamento desses documentos pode exigir muito RAM. No processo de carregamento, Aspose.Words precisa de ainda mais mem\u00f3ria para armazenar estruturas tempor\u00e1rias usadas para analisar um documento.<\/p>\n<p>Se voc\u00ea tiver um problema com a exce\u00e7\u00e3o falta de mem\u00f3ria ao carregar um documento, tente usar a propriedade <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/get_tempfolder\/\">TempFolder<\/a>. Nesse caso, Aspose.Words armazenar\u00e1 alguns dados em arquivos tempor\u00e1rios em vez de mem\u00f3ria, e isso pode ajudar a evitar essa exce\u00e7\u00e3o.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como definir <strong>TempFolder<\/strong>:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-SetTempFolder.cpp\"><\/script>\n\n<h2 id=\"definir-a-codifica\u00e7\u00e3o-explicitamente\">Definir a codifica\u00e7\u00e3o explicitamente<\/h2>\n<p>A maioria dos formatos de documentos modernos armazena seu conte\u00fado em Unicode e n\u00e3o requer tratamento especial. Por outro lado, ainda existem muitos documentos que utilizam alguma codifica\u00e7\u00e3o pr\u00e9-Unicode e, por vezes, perdem informa\u00e7\u00f5es de codifica\u00e7\u00e3o ou nem sequer suportam informa\u00e7\u00f5es de codifica\u00e7\u00e3o por natureza. Aspose.Words tenta detectar automaticamente a codifica\u00e7\u00e3o apropriada por padr\u00e3o, mas em um caso raro voc\u00ea pode precisar usar uma codifica\u00e7\u00e3o diferente da detectada pelo nosso algoritmo de reconhecimento de codifica\u00e7\u00e3o. Nesse caso, use a propriedade <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/get_encoding\/\">Encoding<\/a> para obter ou definir a codifica\u00e7\u00e3o.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como definir a codifica\u00e7\u00e3o para substituir a codifica\u00e7\u00e3o escolhida automaticamente:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-LoadOptionsEncoding.cpp\"><\/script>\n\n<h2 id=\"carregar-documentos-encriptados\">Carregar Documentos Encriptados<\/h2>\n<p>Voc\u00ea pode carregar documentos do Word criptografados com uma senha. Para fazer isso, use uma sobrecarga de construtor especial, que aceita um objeto <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/\">LoadOptions<\/a>. Este objecto cont\u00e9m a propriedade <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words.loading\/loadoptions\/get_password\/\">Password<\/a>, que especifica a cadeia de palavras-passe.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como carregar um documento criptografado com uma senha:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-OpenEncryptedDocument-OpenEncryptedDocument.cpp\"><\/script>\n\n<p>Se voc\u00ea n\u00e3o souber com anteced\u00eancia se o arquivo est\u00e1 criptografado, poder\u00e1 usar a classe <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words\/fileformatutil\/\">FileFormatUtil<\/a>, que fornece m\u00e9todos utilit\u00e1rios para trabalhar com formatos de arquivo, como detectar o formato do arquivo ou converter extens\u00f5es de arquivo de\/para enumera\u00e7\u00f5es de formato de arquivo. Para detectar se o documento est\u00e1 criptografado e requer uma senha para abri-lo, use a propriedade <code>IsEncrypted<\/code>.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como verificar OpenDocument se ele est\u00e1 criptografado ou n\u00e3o:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-Load_Options-VerifyODTdocument.cpp\"><\/script>\n\n\n      "},{"title":"Cpp: Detectar o formato do ficheiro e verificar a compatibilidade do formato","link":"https:\/\/docs.aspose.com\/words\/pt\/cpp\/detect-file-format-and-check-format-compatibility\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/words\/pt\/cpp\/detect-file-format-and-check-format-compatibility\/","description":"\n        \n        \n        <p>\u00c0s vezes, \u00e9 necess\u00e1rio determinar o formato de um documento antes de abrir, porque a extens\u00e3o do arquivo n\u00e3o garante que o conte\u00fado do arquivo seja apropriado. Por exemplo, sabe-se que o Crystal Reports apresenta frequentemente documentos no formato RTF, mas fornece-lhes o.extens\u00e3o doc.<\/p>\n<p>Aspose.Words permite obter informa\u00e7\u00f5es sobre o tipo de ficheiro, a fim de evitar uma excep\u00e7\u00e3o se n\u00e3o tiver a certeza do conte\u00fado real do ficheiro.<\/p>\n<h2 id=\"detectar-o-formato-do-ficheiro-sem-excep\u00e7\u00e3o\">Detectar o formato do Ficheiro sem excep\u00e7\u00e3o<\/h2>\n<p>Quando se trata de v\u00e1rios documentos em v\u00e1rios formatos de ficheiro, pode ser necess\u00e1rio separar os ficheiros que podem ser processados por Aspose.Words daqueles que n\u00e3o podem. Talvez queira tamb\u00e9m saber por que raz\u00e3o alguns dos documentos n\u00e3o podem ser tratados.<\/p>\n<p>Se voc\u00ea tentar carregar um arquivo em um objeto <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words\/document\/\">Document<\/a> e Aspose.Words n\u00e3o puder reconhecer o formato do arquivo ou o formato n\u00e3o for suportado, Aspose.Words lan\u00e7ar\u00e1 uma exce\u00e7\u00e3o. Voc\u00ea pode capturar essas exce\u00e7\u00f5es e analis\u00e1-las, mas Aspose.Words tamb\u00e9m fornece o m\u00e9todo <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words\/fileformatutil\/detectfileformat\/\">DetectFileFormat<\/a> que nos permite determinar rapidamente o formato do arquivo sem carregar um documento com poss\u00edveis exce\u00e7\u00f5es. Este m\u00e9todo retorna um objeto <a href=\"https:\/\/reference.aspose.com\/words\/cpp\/aspose.words\/fileformatinfo\/\">FileFormatInfo<\/a> que cont\u00e9m as informa\u00e7\u00f5es detectadas sobre o tipo de arquivo.<\/p>\n\n\n<div class=\"alert alert-primary\" role=\"alert\">\n\nDetectFileFormat apenas verifica o formato do ficheiro, mas n\u00e3o o valida. N\u00e3o h\u00e1 garantia de que o arquivo ser\u00e1 aberto com sucesso, mesmo que <strong>DetectFileFormat<\/strong> retorne que \u00e9 um dos formatos suportados. Isso ocorre porque o m\u00e9todo <strong>DetectFileFormat<\/strong> l\u00ea apenas dados parciais do formato do arquivo, suficientes para verificar o formato do arquivo, mas n\u00e3o suficientes para a valida\u00e7\u00e3o completa.\n<\/div>\n\n<h2 id=\"verificar-a-compatibilidade-do-formato-dos-ficheiros\">Verificar A Compatibilidade Do Formato Dos Ficheiros<\/h2>\n<p>Podemos verificar a compatibilidade de formatos de todos os ficheiros da pasta seleccionada e classific\u00e1-los por formato nas subpastas correspondentes.<\/p>\n<p>Como estamos lidando com conte\u00fado em uma pasta, a primeira coisa que precisamos fazer \u00e9 obter uma cole\u00e7\u00e3o de todos os arquivos nesta pasta usando o m\u00e9todo <strong>GetFiles<\/strong> da classe <code>Directory<\/code> (do namespace <code>System.IO<\/code>).<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como obter uma lista de todos os arquivos na pasta:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-CheckFormat-GetListOfFilesInFolder.cpp\"><\/script>\n\n<p>Quando todos os arquivos s\u00e3o coletados, o restante do trabalho \u00e9 feito pelo m\u00e9todo <strong>DetectFileFormat<\/strong>, que verifica o formato do arquivo.<\/p>\n<p>O exemplo de c\u00f3digo a seguir mostra como iterar sobre a lista coletada de arquivos, verificar o formato de cada arquivo e mover cada arquivo para a pasta apropriada:<\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-words-gists\/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Loading-and-Saving-CheckFormat-CheckFormatCompatibility.cpp\"><\/script>\n\n<p>Os arquivos s\u00e3o movidos para subpastas apropriadas usando o m\u00e9todo <code>Move<\/code> da classe <code>File<\/code>, do mesmo namespace <code>System.IO<\/code>.<\/p>\n<p>Os seguintes ficheiros s\u00e3o utilizados no exemplo acima. O nome do ficheiro est\u00e1 \u00e0 esquerda e a sua descri\u00e7\u00e3o est\u00e1 \u00e0 direita:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align:left\">Grupo de Ficheiros<\/th>\n<th style=\"text-align:left\">Documento De Entrada<\/th>\n<th style=\"text-align:left\">Tipo<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align:left\">Formatos de ficheiro suportados<\/td>\n<td style=\"text-align:left\">Test File (DOC).doc<\/td>\n<td style=\"text-align:left\">Microsoft Word 95\/6.0 ou Microsoft Word 97 \u2013 2003 documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (DOT).dot<\/td>\n<td style=\"text-align:left\">Modelo Microsoft Word 95\/6.0 ou Microsoft Word 97 \u2013 2003.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (DOCX).docx<\/td>\n<td style=\"text-align:left\">Office abrir XML documento WordprocessingML sem macros.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (DOCM).docm<\/td>\n<td style=\"text-align:left\">Office abrir XML documento WordprocessingML com macros.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (DOTX).dotx<\/td>\n<td style=\"text-align:left\">Escrit\u00f3rio Aberto XML WordprocessingML modelo.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (DOTM).dotm<\/td>\n<td style=\"text-align:left\">Office abrir XML Modelo WordprocessingML com macros.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (XML).xml<\/td>\n<td style=\"text-align:left\">FlatOPC OOXML Documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (RTF).rtf<\/td>\n<td style=\"text-align:left\">Documento em formato Rich Text.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (WordML).xml<\/td>\n<td style=\"text-align:left\">Microsoft Word documento WordprocessingML de 2003.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (HTML).html<\/td>\n<td style=\"text-align:left\">HTML documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (MHTML).mhtml<\/td>\n<td style=\"text-align:left\">MHTML (arquivo Web) documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (ODT).odt<\/td>\n<td style=\"text-align:left\">OpenDocument Texto (OpenOffice Escritor).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (OTT).ott<\/td>\n<td style=\"text-align:left\">OpenDocument Modelo De Documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Ficheiro De Ensaio (DocPreWord60).doc<\/td>\n<td style=\"text-align:left\">Microsoft Word 2.0 documento.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\">Documentos encriptados<\/td>\n<td style=\"text-align:left\">Test File (Enc).doc<\/td>\n<td style=\"text-align:left\">Documento encriptado Microsoft Word 95 \/ 6.0 ou Microsoft Word 97 \u2013 2003.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\"><\/td>\n<td style=\"text-align:left\">Test File (Enc).docx<\/td>\n<td style=\"text-align:left\">Escrit\u00f3rio encriptado abrir XML documento WordprocessingML.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align:left\">Formatos de ficheiro n\u00e3o suportados<\/td>\n<td style=\"text-align:left\">Test File (JPG).jpg<\/td>\n<td style=\"text-align:left\">JPEG ficheiro de imagem.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n      "}]}}