国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python量化交易工程師養(yǎng)成實戰(zhàn)金融高薪領(lǐng)域-白日依山盡黃河入海流

2023-02-16 15:12 作者:山觀那恭喜囧昂貴的  | 我要投稿


前端報表如何完成無預(yù)覽打印處理計劃或靜默打印

Python量化交易工程師養(yǎng)成實戰(zhàn)金融高薪領(lǐng)域

Python量化交易工程師養(yǎng)成實戰(zhàn)金融高薪領(lǐng)域

download:https://www.zxit666.com/5814/

在前端開發(fā)中,除了將數(shù)據(jù)呈現(xiàn)后,我們常常需求為用戶提供,打印,導(dǎo)出等才能,導(dǎo)出是為了存檔或是二次剖析,而打印則由于很多單據(jù)需求打印出來作為主要的單據(jù)來停止下一環(huán)節(jié)的票據(jù)支撐, 而前端打印能夠說是十分令人頭疼的一件事。為什么令大家頭疼呢?由于前端打印,要強依賴與閱讀器的打印預(yù)覽頁面,會自然存在以下弊端:

  1. 每一次打印都要彈出來打印預(yù)覽對話框,假如前端需求批量打印,那么意味著客戶要點擊無數(shù)個關(guān)閉按鈕,才干完成批量打印,假如一次性打印幾百張上千張的報表,則會成為“NightMare”。
  2. 前端打印強依賴于閱讀器,主流的思緒是先將內(nèi)容轉(zhuǎn)換為 PDF 文件,再調(diào)用閱讀器的打印功用停止打印,而生成 PDF 文件是依賴于閱讀器關(guān)于字體,邊線等的處置,因而閱讀器的異同則直接招致打印出來的效果差距很大,有的邊線加粗,有的 1 頁數(shù)據(jù),打印出來呈現(xiàn) 2 頁,也是讓開發(fā)者非??鄲赖氖虑?,關(guān)于一些打印請求比擬高的行業(yè),這就是災(zāi)難。
    因而如何在前端完成無預(yù)覽打印,也就是用戶點擊打印之后直接就運用默許打印機打印出來。針對這個需求,我們考證了一個處理該問題的計劃,本貼就來引見該計劃如何完成。

完成思緒如下:
后端完成一個接口,接納 Blob 類型 PDF 流,然后調(diào)用系統(tǒng)默許打印機,將PDF 停止靜默打印。前端應(yīng)用 ACTIVEREPORTSJS 自帶的導(dǎo)出 PDF,導(dǎo)出 Blob 類型,然后經(jīng)過POST 懇求調(diào)用后端接口將 Blob 傳播給后端停止打印。
詳細完成步驟:
前端完成辦法:
前端應(yīng)用 ActivereportsJS 的 PDF.exportDocument 無預(yù)覽導(dǎo)出 PDF,該接口返回的 result 包含 data 屬性和 download 辦法,然后調(diào)用后端接口,將result.data 傳送給后端。


1. function printPDF() { 2. var ACTIVEREPORTSJS = GC.ActiveReports.Core; 3. var PDF = GC.ActiveReports.PdfExport; 4. 5. var settings = { 6. info: { 7. title: "test", 8. author: "GrapeCity inc.", 9. }, 10. pdfVersion: "1.7", 11. }; 12. 13. var pageReport = new ACTIVEREPORTSJS.PageReport(); 14. pageReport 15. .load("1.rdlx-json") 16. .then(function () { 17. return pageReport.run(); 18. }) 19. .then(function (pageDocument) { 20. return PDF.exportDocument(pageDocument, settings); 21. }) 22. .then(function (result) { 23. let formData = new FormData(); 24. formData.append("file", result.data); 25. fetch("http://localhost:8088/print", { 26. method: 'POST', 27. mode: 'cors', 28. body: formData 29. }) 30. }); 31. }


后端完成方式:
我這邊是采用 python 完成了一個接口,接納前端傳送的 Blob 文件流,然后調(diào)用后端部署的效勞器默許打印機直接停止靜默打印。

后端程序能夠部署到效勞器上,假如是 windows 效勞器,能夠直接下載 exe,在效勞器上運轉(zhuǎn)。



下載下來是 2 個 exe 程序,需求放在同一個文件夾,然后運轉(zhuǎn) PrintAgent.exe,切記這兩個程序需求放在同一個文件夾。

留意:假如 exe 只給效勞器上部署,那么前端在打印時調(diào)用效勞器地址接口打印,最終都會從效勞器上銜接的打印機打出來。
假如 exe 給客戶端部署了,那么前端打印就能夠代碼調(diào)用 localhost 地址去打印,最終就會從客戶端所銜接的默許打印機打印出來;切換打印機的話,就調(diào)整 windows 的默許打印機就能夠。

Python量化交易工程師養(yǎng)成實戰(zhàn)金融高薪領(lǐng)域-白日依山盡黃河入海流的評論 (共 條)

分享到微博請遵守國家法律
平安县| 浮山县| 稻城县| 扎赉特旗| 安乡县| 秭归县| 丹阳市| 桑日县| 昭通市| 金堂县| 阳东县| 仪征市| 普兰县| 阜阳市| 长岛县| 巩义市| 石城县| 大邑县| 洪江市| 博罗县| 格尔木市| 奇台县| 临沭县| 百色市| 富锦市| 南宁市| 巧家县| 象州县| 紫金县| 鹤庆县| 华池县| 蒙自县| 莱州市| 阳高县| 株洲市| 周至县| 邳州市| 泾川县| 随州市| 江安县| 凌云县|