Tengo el siguiente código que establece el font.color
Word.run(async (context) => { const newRange = await getTextRange(context, locationText, offset, length); if (newRange === null) return null; suggestedPosition = newRange; suggestedPosition.load('font'); await context.sync(); suggestedPosition.font.color = 'White'; suggestedPosition.track(); await context.sync(); });
Esto funciona y cambia el color a blanco. Luego, después de volver a abrir el panel de tareas, quiero que mi secuencia de comandos pueda encontrar si queda algún texto de color blanco. Hago esto buscando a través del texto.
Word.run(async function(context) { const body = context.document.body.getRange().getTextRanges([' '], true); context.load(body, ['text', 'font']); await context.sync(); for (let i = 0; i < body.items.length; i += 1) { const word = body.items[i]; if (word.font.color === 'White') console.log('found word!!!'); } })
Lo que obtengo en cambio son todos los colores del resto del texto (generalmente #000000) pero el color que cambié, obtengo ''. ¿Qué es lo que estoy haciendo mal? También probé en lugar de blanco para usar un color aleatorio (# 123543), pero seguía con el mismo problema extraño.
Puede ser totalmente irrelevante porque no conozco esta API, pero su problema suena como cuando intentamos acceder a un estilo que se ha modificado en javascript con la propiedad de estilo en lugar de usar la función getComputedStyle .