卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章66109本站已运行422

解锁受保护的 PDF

解锁受保护的 pdf

几年前,我写了一篇要点,引起了很多积极的兴趣,强调了开发人员的共同需求。鉴于其受欢迎程度,是时候与您分享这个解决方案了。这篇文章将指导您使用 javascript 下载受保护的 pdf 的实用方法,确保高分辨率输出。

这种方法允许您通过捕获每个页面的高分辨率图像来绕过仅限查看的限制。

第 1 步:打开文档

在 google 文档中打开受保护的文档。
滚动浏览整个文档以确保所有页面均已完全加载。有些文档需要放大才能获得更好的分辨率。

第2步:打开开发者工具

导航到“控制台”选项卡。

第 3 步:运行此脚本将图像转换为 pdf

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 image 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); 

注意:查看原始 gist 和其他评论以及各种改进和建议。

道德使用注意事项

请记住尊重版权和隐私法。请负责任地使用此方法,并且仅适用于您有权下载的文档。

卓越飞翔博客
上一篇: shadcn-ui/ui 代码库分析:shadcn-ui CLI 是如何工作的? - 第1部分
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏