Selaa lähdekoodia

打印预览新增,截图功能

lilei 3 vuotta sitten
vanhempi
commit
9bdfe1df98
3 muutettua tiedostoa jossa 13 lisäystä ja 5 poistoa
  1. 2 0
      public/index.html
  2. 1 1
      public/version.json
  3. 10 4
      src/views/common/pdfViewModal.vue

+ 2 - 0
public/index.html

@@ -17,6 +17,8 @@
       var isElectronApp = userAgent.indexOf(' electron/') > -1
       if (isElectronApp){
          var ipcRenderer = require('electron').ipcRenderer
+         var clipboardElectron = require('electron').clipboard
+         var nativeImageElectron = require('electron').nativeImage
          ipcRenderer.send("ready-to-show");
       }
      </script>

+ 1 - 1
public/version.json

@@ -1,5 +1,5 @@
 {
   "message": "发现有新版本发布,确定更新系统?",
   "vendorJsVersion": "",
-  "version": 1654583199749
+  "version": 1654585561210
 }

+ 10 - 4
src/views/common/pdfViewModal.vue

@@ -220,16 +220,22 @@ export default {
       })
       // 复制图片
       const base64Str = canvas.toDataURL('image/png')
-      this.copyImgBtn(base64Str.split(',')[1])
+      this.copyImgBtn(base64Str)
       // 清除画布
       ctx.clearRect(0, 0, maxWidth, maxHeight)
     },
     // 将照片复制到剪贴版
     copyImgBtn (base64Data) {
-      const blobInput = this.convertBase64ToBlob(base64Data, 'image/png')
+      const blobInput = this.convertBase64ToBlob(base64Data.split(',')[1], 'image/png')
       const clipboardItemInput = new ClipboardItem({ 'image/png': blobInput })
-      navigator.clipboard.write([clipboardItemInput])
-      this.$message.success('复制截图成功!')
+      if (navigator.clipboard) {
+        navigator.clipboard.write([clipboardItemInput])
+        this.$message.success('复制截图成功!')
+      } else {
+        const image = nativeImageElectron.createFromDataURL(base64Data)
+        clipboardElectron.writeImage(image)
+        this.$message.success('复制截图成功!')
+      }
     },
     convertBase64ToBlob (base64, type) {
       var bytes = window.atob(base64)