Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

162
Views
Renderizado de lienzo anotado en Google Docs

Actualmente estoy trabajando en una extensión de Chrome y quiero que funcione en Google Docs para resaltar el texto. Google docs se está moviendo a la representación de Canvas para páginas, lo que básicamente elimina todo el texto del DOM y solo tenemos un elemento de canvas en el DOM para cada página.

He notado que al configurar window._docs_force_html_by_ext = <extension-id> en la página web de Google docs, podemos forzarlo a representar DOM como HTML, no como lienzo. Esto funciona bien para mi. También he visto algunas extensiones configuradas window._docs_annotate_canvas_by_ext = <extension-id> y eso asegura que el lienzo representado esté anotado con muchos elementos DOM dentro del elemento del lienzo. Este lienzo anotado permite cálculos posicionales para el texto.

He intentado insertar el script de la misma manera pero no parece tener ningún efecto en el DOM. ¿Hay algo más que deba hacer?

Cualquier ayuda es muy apreciada. Gracias por adelantado.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En el momento actual, la opción HTML Fallback aparecerá antes que la opción Anotated Canvas. Esto significa que si tiene alguna extensión en ejecución que fuerce la opción HTML Fallback, entonces la opción Anotated Canvas no se procesará.

Esta es una mala noticia para aquellos que tienen una integración en ejecución con la opción Lienzo anotado porque cualquier otra aplicación instalada podría obligar al script a volver a la opción HTML Fallback.

Personalmente, aplico una verificación simple y manejo ambas soluciones en función de lo que devuelve el documento:

 const runInitializers = (): void => { const canvasFirstPage = document.querySelector( '#kix-appview > div.kix-appview-editor-container > div > div:nth-child(1) > div.kix-rotatingtilemanager.docs-ui-hit-region-surface > div > div.kix-page-paginated.canvas-first-page' ); const fallbackFirstPage = document.querySelector( '#kix-appview > div.kix-appview-editor-container > div > div:nth-child(1) > div.kix-zoomdocumentplugin-outer > div > div > div > div:nth-child(2) > div' ); if (canvasFirstPage) { initAnnotatedCanvas(); } else if (fallbackFirstPage) { initHTMLFallback(); } };
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!