Especificar Opções de Carga

Ao carregar um documento, você pode definir algumas propriedades avançadas. Aspose.Words fornece-lhe com o LoadOptions classe, que permite o controle mais preciso do processo de carga. Alguns formatos de carga têm uma classe correspondente que possui opções de carga para este formato de carga, por exemplo, há PdfLoadOptions para carregar em formato PDF ou TxtLoadOptions para carregar para TXT. Este artigo fornece exemplos de trabalhar com opções do LoadOptions classe.

Conjunto Microsoft Word Versão para mudar a aparência

Versões diferentes do Microsoft Word aplicativo pode exibir documentos de forma diferente. Por exemplo, há um problema bem conhecido com documentos OOXML como DOCX ou DOTX produzido usando WPS Office. Nesses casos, elementos essenciais de marcação de documentos podem estar ausentes ou podem ser interpretados de forma diferente. Microsoft Word 2019 para mostrar tal documento diferentemente em comparação com Microsoft Word 2010.

Por padrão Aspose.Words abre documentos usando Microsoft Word Regras de 2019. Se você precisar fazer o carregamento de documentos aparecer como aconteceria em um dos anteriores Microsoft Word versões do aplicativo, você deve especificar explicitamente a versão desejada usando o MswVersion propriedade da LoadOptions classe.

O seguinte exemplo de código mostra como definir o Microsoft Word versão com opções de carga:

Definir preferências de idioma para mudar a aparência

Os detalhes de exibir um documento em Microsoft Word depender não só da versão do aplicativo e da MswVersion valor de propriedade, mas também nas configurações do idioma. Microsoft Word pode mostrar documentos de forma diferente dependendo das configurações de diálogo “Preferências de idioma do escritório”, que podem ser encontradas em “File → Opções → Languаge”. Usando esta caixa de diálogo um usuário pode selecionar, por exemplo, linguagem primária, linguagens de prova, linguagens de exibição e assim por diante. Aspose.Words fornece o LanguagePreferences propriedade como o equivalente desta caixa de diálogo. Se Aspose.Words saída difere do Microsoft Word saída, definir o valor apropriado para EditingLanguage – isso pode melhorar o documento de saída.

O seguinte exemplo de código mostra como definir japonês como EditingLanguage:

Uso WarningCallback para controlar problemas Carregando um documento

Alguns documentos podem ser corrompidos, conter entradas inválidas, ou ter recursos não suportados atualmente Aspose.Words. Se você quiser saber sobre problemas que ocorreram ao carregar um documento, Aspose.Words fornece o IWarningCallback interface.

O seguinte exemplo de código mostra a implementação da IWarningCallback interface:

Para obter informações sobre todos os problemas ao longo do tempo de carga, use o WarningCallback propriedade.

O exemplo de código a seguir mostra como usar esta propriedade:

Use o recursoLoading Retorno ao Controle dos Recursos Externos

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á situações em que esse processo precisa ser controlado. Por exemplo, para decidir se realmente precisamos carregar uma determinada imagem ou talvez pular. O ResourceLoadingCallback opção de carga permite que você controle isso.

O seguinte exemplo de código mostra a implementação da IResourceLoadingCallback interface:

O seguinte exemplo de código mostra como usar o ResourceLoadingCallback propriedade:

Use TempFolder para evitar uma exceção de memória

Aspose.Words suporta documentos extremamente grandes que têm milhares de páginas cheias de conteúdo rico. Carregar tais documentos pode exigir muito RAM. No processo de carregamento, Aspose.Words precisa ainda mais memória para manter estruturas temporárias usadas para analisar um documento.

Se você tiver um problema com a exceção Out of Memory ao carregar um documento, tente usar o TempFolder propriedade. Neste caso, Aspose.Words armazenará alguns dados em arquivos temporários em vez de memória, e isso pode ajudar a evitar tal exceção.

O seguinte exemplo de código mostra como definir TempFolder:

Definir o Encoding Explicitly

A maioria dos formatos de documentos modernos armazenam seu conteúdo em Unicode e não exigem manipulação especial. Por outro lado, ainda há muitos documentos que usam alguma codificação pré-Unicode e, às vezes, ou perder informações de codificação ou nem mesmo apoiar informações de codificação por natureza. Aspose.Words tenta detectar automaticamente a codificação apropriada por padrão, mas em um caso raro você pode precisar usar uma codificação diferente da detectada pelo nosso algoritmo de reconhecimento de codificação. Neste caso, use o Encoding propriedade para obter ou definir a codificação.

O exemplo a seguir mostra como definir a codificação para substituir a codificação automaticamente escolhida:

Carregar documentos criptografados

Você pode carregar Documentos do Word criptografados com uma senha. Para fazer isso, use uma sobrecarga especial do construtor, que aceita um LoadOptions objeto. Este objeto contém Password propriedade, que especifica a string de senha.

O exemplo de código a seguir mostra como carregar um documento criptografado com uma senha:

Se você não sabe com antecedência se o arquivo é criptografado, você pode usar o FileFormatUtil classe, que fornece métodos utilitários para trabalhar com formatos de arquivo, tais como detectar o formato de arquivo ou converter extensões de arquivo para / de enumerações de formato de arquivo. Para detectar se o documento é criptografado e requer uma senha para abri-lo, use o IsEncrypted propriedade.

O exemplo de código a seguir mostra como verificar OpenDocument é criptografado ou não: