吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2195|回复: 13
收起左侧

[其他转载] X才简历下载

  [复制链接]
lovelinessmoe 发表于 2022-8-31 22:41
本帖最后由 lovelinessmoe 于 2022-9-1 08:37 编辑

本人所发布的一切软件仅限用于学习和研究目的,不得用于商业或非法用途,否则,一切后果请自负。版权争议与本站无关。您必须在下载后的24小时内,从您的设备中彻底删除上述内容。若您需要非免费软件或服务,请购买正版授权合法使用。若侵犯您权益,请资料联系我。

2eb9b59f9283145ad5629d844b9c6203.png

阿巴阿巴,这个艾特自动变成了艾特朋友,呜呜呜,手动改下吧,大家

OK兄弟们,虽然不是同一时间,也不是同一地点,这次老师要做简历,同学好不容易填完的东西发现要会员才能下载简历,还是写个脚本下载

GreasyFork也是没上传,别问,问就是怕死

使用jsPDF+html2canvas实现了PDF格式的下载

按钮比较丑,丑就丑吧

是个油候脚本,要在简历的的查看页面中或者分享界面使用

45286355-5997-4C6A-B205-87A5AE0296D3.png

// ==UserScript==
// @name         免费下载简历
// @namespace
// @version      0.1
// @description  一键下载
// @AuThor       loveliness
// @match        https://www.ycresume.com/cv/*
// @Icon         http://q1.qlogo.cn/g?b=qq&nk=1695560542&s=640
// @require      https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js
// @require      https://cdn.bootcss.com/FileSaver.js/1.3.8/FileSaver.min.js
// @require      https://html2canvas.hertzen.com/dist/html2canvas.min.js
// @require      https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jspdf/2.5.1/jspdf.umd.min.js
// @grant        unsafeWindow
// @license MIT
// ==/UserScript==

(function ($) {
    'use strict';

    let btn =
        '<button type="button" id="downFree" class="el-button my_cloud_r_btn el-button--primary">' +
        '<span><i class="webfont webicon-xiazai"></i> 下载简历FREE</span>' +
        '</button>';
    //添加按钮
    $(".fixed_box").prepend(btn);

    $("#downFree").click(function () {
        downMain()
    });

    let downMain = function () {
        window.jsPDF = window.jspdf.jsPDF;
        let filename = '导出的页面名字.pdf';
        let element = $('.resume_box');    // 这个dom元素是要导出pdf的div容器
        let w = element.width();    // 获得该容器的宽
        let h = element.height();    // 获得该容器的高
        let offsetTop = element.offset().top;    // 获得该容器到文档顶部的距离
        let offsetLeft = element.offset().left;    // 获得该容器到文档最左的距离
        let canvas = document.createElement("canvas");
        let abs = 0;
        let win_i = $(window).width();    // 获得当前可视窗口的宽度(不包含滚动条)
        let win_o = window.innerWidth;    // 获得当前窗口的宽度(包含滚动条)
        if (win_o > win_i) {
            abs = (win_o - win_i) / 2;    // 获得滚动条长度的一半
        }
        canvas.width = w * 2;    // 将画布宽&&高放大两倍
        canvas.height = h * 2;
        let context = canvas.getContext("2d");
        context.scale(2, 2);
        context.translate(-offsetLeft - abs, -offsetTop);
        // 这里默认横向没有滚动条的情况,因为offset.left(),有无滚动条的时候存在差值,因此
        // translate的时候,要把这个差值去掉
        html2canvas(element[0], {
            useCORS: true,
            dpi: window.devicePixelRatio * 2,
            scale: 2,
            width: w,
            height: h,
            pagesplit: true,
            background: "#ffffff"
        }).then(function (canvas) {
            let contentWidth = canvas.width;
            let contentHeight = canvas.height;
            //一页pdf显示html页面生成的canvas高度;
            let pageHeight = contentWidth / 592.28 * 841.89;
            //未生成pdf的html页面高度
            let leftHeight = contentHeight;
            //页面偏移
            let position = 0;
            //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高
            let imgWidth = 595.28;
            let imgHeight = 592.28 / contentWidth * contentHeight;

            let pageData = canvas.toDataURL('image/jpeg', 1.0);

            let pdf = new jsPDF('', 'pt', 'a4');

            //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89)
            //当内容未超过pdf一页显示的范围,无需分页
            if (leftHeight < pageHeight) {
                pdf.addImage(pageData, 'JPEG', 0, 0, imgWidth, imgHeight);
            } else {    // 分页
                while (leftHeight > 0) {
                    pdf.addImage(pageData, 'JPEG', 0, position, imgWidth, imgHeight)
                    leftHeight -= pageHeight;
                    position -= 841.89;
                    //避免添加空白页
                    if (leftHeight > 0) {
                        pdf.addPage();
                    }
                }
            }
            pdf.save(filename);
        });

    }

})(jQuery);

免费评分

参与人数 2吾爱币 +1 热心值 +2 收起 理由
VansChina + 1 + 1 我很赞同!
yanghui0705 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lovelinessmoe 发表于 2022-9-18 17:51
C哥888 发表于 2022-9-1 11:36
贴在脚本出现很多错误啊,上面的图片代码要自己打就算了

他是自动把油猴的艾特变成艾特人了,不知道怎么弄回去
dork 发表于 2022-9-1 01:15
dkzzlf 发表于 2022-9-1 06:54
l441669899 发表于 2022-9-1 07:27
感谢楼主分享!
cn2jp 发表于 2022-9-1 07:44
一遇到这种纯代码的就蒙……
iawyxkdn8 发表于 2022-9-1 08:21
感谢楼主分享!
sololdz 发表于 2022-9-1 08:34
感谢分享,正好需要
头像被屏蔽
james1977 发表于 2022-9-1 10:32
提示: 作者被禁止或删除 内容自动屏蔽
xiaomingSTUDENT 发表于 2022-9-1 10:51
可以可以,学到了。
su1u 发表于 2022-9-1 11:24
可以可以 楼主可以
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 04:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表