Resolver problemas Word suplementos
Este artigo aborda problemas de resolução de problemas exclusivos do Word. Utilize a ferramenta de comentários no final da página para sugerir outros problemas que podem ser adicionados a este artigo.
Todos os intervalos selecionados não são reconhecidos
Se forem efetuadas seleções não contíguas, a API de Word só funciona no último intervalo contíguo na seleção. Um caso inesperado é quando seleciona uma coluna numa tabela e, em seguida, chama, por exemplo, Document.getSelection, apenas a célula final na seleção é devolvida pela API. Embora a seleção de uma coluna pareça contígua, a API reconhece-a como uma seleção não contígua (por exemplo, uma célula por linha).
Para saber mais geralmente sobre como fazer seleções não incontigáuas, consulte Como selecionar itens que não estão ao lado uns dos outros.
Body.insertFileFromBase64 não insere cabeçalho ou rodapé
É por predefinição que o método Body.insertFileFromBase64 exclui qualquer cabeçalho ou rodapé que estava no ficheiro de origem.
Para incluir cabeçalhos ou rodapés do ficheiro de origem, utilize Document.insertFileFromBase64 como alternativa.
Obter uma GeneralException ao trabalhar com estilos
Se os utilizadores estiverem a atingir uma Exceção Geral quando o suplemento chama Document.insertFileFromBase64 ou APIs de Estilo, poderá ser que esses utilizadores estejam a exceder os limites impostos pela aplicação Word. Para saber mais sobre estes limites, veja Limitações e especificações dos parâmetros operacionais no Word.
O esquema quebra ao utilizar insertHtml
enquanto o cursor está no controlo de conteúdo no cabeçalho
Este problema pode ocorrer quando são cumpridas as três condições seguintes.
- Tenha, pelo menos, um controlo de conteúdo no cabeçalho e, pelo menos, um no rodapé do Word documento.
- Certifique-se de que o cursor está dentro de um controlo de conteúdo no cabeçalho.
- Chame insertHtml para definir um controlo de conteúdo no rodapé.
Em seguida, o rodapé é misturado inesperadamente com o cabeçalho. Para evitar esta situação, limpe o controlo de conteúdo no rodapé antes de o definir, conforme mostrado no seguinte exemplo de código.
await Word.run(async (context) => {
// Credit to https://github.com/barisbikmaz for this version of the workaround.
// For more information, see https://github.com/OfficeDev/office-js/issues/129.
// Let's say there are 2 content controls in the header and 1 in the footer.
const contentControls = context.document.contentControls;
contentControls.load();
await context.sync().then(function () {
// Clear the 2 content controls in the header.
contentControls.items[0].clear();
contentControls.items[1].clear();
// Clear the control control in the footer then update it.
contentControls.items[2].clear();
contentControls.items[2].insertHtml('<p>New Footer</p>', 'Replace');
});
});
Formatação perdida da última marca de lista numa lista ou último parágrafo
Se a formatação da última marca de lista numa lista ou último parágrafo for perdida no corpo ou intervalo especificado, marcar se estiver a utilizar Body.insertFileFromBase64 ou Range.insertFileFromBase64. Em caso afirmativo, atualize o código para utilizar Document.insertFileFromBase64 .
Significado dos valores de propriedade nulos na resposta
null
tem implicações especiais nas APIs javaScript Word. É utilizado para representar valores predefinidos ou sem formatação.
As propriedades de formatação, como a cor , irão conter null
valores na resposta quando existirem valores diferentes no intervalo especificado. Por exemplo, se você recuperar um intervalo e carregar sua propriedade range.font.color
:
- Se todo o texto no intervalo tiver a mesma cor do tipo de letra,
range.font.color
especifica essa cor. - Se houver várias cores de fonte dentro do intervalo,
range.font.color
seránull
.