前端vue实现给pdf添加水印

实现效果:

前端vue实现给pdf添加水印_第1张图片

实现原理:将PDF文件一页一页的渲染在画布上面,然后将水印文字也渲染在画布上面。

在网上也找了很多教程,自己试了一下,或多或少有点问题,最后结合了一下,做了些修改实现了。

 使用到的插件 pdfjs-dist,这个版本需要注意,太低或太高版本都不行。我最后选的是2.6.347,成功运行了。

package.json配置文件:

{
  "name": "pdf",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.8.3",
    "pdfjs-dist": "^2.6.347",
    "vue": "^2.6.14"
  },
  "devDependencies": {
    "@babel/core": "^7.12.16",
    "@babel/eslint-parser": "^7.12.16",
    "@vue/cli-plugin-babel": "~5.0.0",
    "@vue/cli-plugin-eslint": "~5.0.0",
    "@vue/cli-service": "~5.0.0",
    "eslint": "^7.32.0",
    "eslint-plugin-vue": "^8.0.3",
    "vue-template-compiler": "^2.6.14"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "@babel/eslint-parser"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

vue代码:








你可能感兴趣的:(web前端,pdf,vue.js,前端)