¿Quieres descargar un archivo de Google Drive de solo lectura? Esto que la interfaz no nos deja hacer, es posible con un pequeño truco.
En julio de 2015 Google hizo un cambio en la forma de visualizar los archivos de solo lectura (Disable downloading, printing, and copying of any Google Drive file – July 14, 2015). Hasta ese momento los documentos solo lectura se podían copiar, descargar e imprimir. Y después de ese cambio ya solo se podían visualizar.
¿Cómo guarda Google Drive los documentos solo lectura?
Google Drive guarda los documentos de solo lectura como imágenes.
¿Se puede descargar un documento solo lectura de Drive?
- Abrimos el documento en Google Drive.
- Vamos al final del documento para que todas las páginas estén visibles. Esto es muy importante para que luego nos guarde todas las páginas.
- Abrimos las herramientas de desarrollo (CTRL+mayúsculas+I).
- Vamos a la solapa de la consola.
- Pegamos este código creado por CodingCat.codes:
let jspdf = document.createElement("script"); jspdf.onload = function () { let pdf = new jsPDF(); let elements = document.getElementsByTagName("img"); for (let i in elements) { let img = elements[i]; console.log("add img ", img); if (!/^blob:/.test(img.src)) { console.log("invalid src"); continue; } let can = document.createElement('canvas'); let con = can.getContext("2d"); can.width = img.width; can.height = img.height; con.drawImage(img, 0, 0); let imgData = can.toDataURL("image/jpeg", 1.0); pdf.addImage(imgData, 'JPEG', 0, 0); pdf.addPage(); } pdf.save("download.pdf"); }; jspdf.src = 'https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.5.3/jspdf.debug.js'; document.body.appendChild(jspdf);
- Y pulsamos ENTER.
- Y automáticamente comienza la descarga del PDF.
P.D. Lo hemos probado en Google Chrome y Opera.
¿Qué hace este código?
Va navegando por el documento buscando imágenes (como decíamos antes, Google Drive guarda las páginas en estos documentos como imágenes) y después escribe su contenido en un PDF.
Sencillo y a su vez genial.