最新版Chrome瀏覽器加載ActiveX控件之Adobe PDF閱讀器控件

?背景

? ? ? Adobe PDF閱讀器控件是一個ActiveX控件,用于在Windows平臺上顯示和操作PDF文件。它提供了一系列方法和屬性,可以實現對PDF文件的加載、顯示、搜索、打印、保存等操作。

????????allWebPlugin中間件是一款為用戶提供安全、可靠、便捷的瀏覽器插件服務的中間件產品致力于將瀏覽器插件重新應用到所有瀏覽器。它不僅可以實現ActiveX控件在現代瀏覽器上使用,而且集成也非常方便。

alWebPlugin中間件核心優勢

1、自創定位算法,實現插件與頁面布局無縫銜接,極致用戶體驗。
2、自創插件接口調用方法,保持原汁原味的接口調用及事件響應方式,輕松實現OA系統升級改造。
3、支持同一頁面或不同頁面同時加載多個插件,適應各種復雜應用場景。
4、自主創新、安全可控,不受瀏覽器插件技術限制,支持更多瀏覽器(谷歌、火狐、Edge、360瀏覽器等)。
5、創新沙箱機制,隔離插件與瀏覽器運行環境,增強插件與瀏覽器穩定性和安全性。
6、攻克諸多技術難點,實現插件不修改、不注冊也能使用,極大的降低插件開發量和維護量。

準備工作

1、下載allWebPlugin中間件產品,具體如下:

鏈接:百度網盤 請輸入提取碼?
提取碼:z3q0?

運行效果

????????運行效果如下圖所示:

Adobe PDF控件打開文檔
通過接口隱藏工具條

集成代碼示例?

var acroPDFReader = null;
var hostCnt = null;
var httpclientObj = null;
var pluginUtilityObj = null;function CreateContainer(){var canvas = document.getElementById('pluginUI');var license = "1q1Sc/tJ1FY2I0gjyovEBlL5O+XF5WrNG0Aq8HHaqVcms51Cl0VS4bYdxltvoHzOdQDEmT8XQhfQhaGxcNiqLQ7oiY85BP8ZsOWCPD3ZYQ5mr14faRu6F8yxXVpgkOeRRlN4clA0lwQi3c0+X/Tvd7BRJKX9uDxkShM9orLUJA119NS++hnfEOcexzvMhL2FWjkNGa2ufV2WjC1M8hbdQSr7uy8b2H7Fiz/HMiWYEFmAnrjDytIx4njwJtO7GYCBKYIE1VGI7iWq9iz4XCIKk1sp1hje01FJCtYPj51+uHfLuWWKatvlFHzSb2IMOSpzAAAA8AEAAQMCTeMq4Dd1nDTk0VXbvFd/Yei0Ojtv60nU4n3yDQuFlxUPwKCQDmQifomaE8DZQR8bEhucH7wk2cabDLm4KCi+wUGvsoKR5r83cLSNLWtaRVtbPoWwMgpFnTmlMtnXrRvPjLx+l/UWPbMMuu9ObsWUU7kdG2mEJRyAFHvRqI+G5Zz8oSets7FNwxdwS2trEiCV4qsAkci3oWhu0ddb02uHzEyOg6sjqKLd9XfKYp4NGdWraSFUYhBsiU7LajQNwmlAeEXWnuNnT5XzoP4icvfojjZZjzw6Ar40ldB7kd9gLDsryZWfwDFsObrXeb9VRVHi8yJ9E17zXMLtpTjtBiIzsQABAYICCgGCMOohm/ugukXrQrv9ulJbVqBTGph9ScEeDPMd5ll5a+dDkRDGlb74ZElzA2gcCi9Xn+FtdXTegKWXRUH5ea5xKhN/6eZgBGL4isdUwaclkKUdq1k60BDQgbvrIx2aRt+io7NnbVJortQQpPWpy/jzQV/aFu+PB/PWwdt/wBHfqgXQw7a1R99EaK6VLtrP7PUURODEIRGk+lP+rFD08z6O/wIXk722B87lfRh+gBoRvhRchXcvlvhqBC3OM7XEBbDLgcvHQvYzm67qxcWvSNJnub+9YxB/7eYR3sE8iJ+h9sfkNE7BYeQ0HwyQpIfCp+3s7nWn8nHBOtbx2Vf5sFBaxHYAAAEOAAAAAUFXUEY=";	var installPackageUrl = "http://127.0.0.1:6651/install/allwebPlugin_x86_v2.0.1.16_20240806.exe";var installPackageVersion = "2.0.0.16";	hostCnt = new PluginHostCnt();if(hostCnt.IsInstall() == false){//未安裝,需要手動安裝if(confirm("allWebPlugin中間件未安裝或未啟動,是否立即安裝?")){window.open(installPackageUrl, '_blank');}}else{//已安裝,檢測是否需要版本更新if(hostCnt.IsNewVersion(installPackageVersion) == false){if(hostCnt.createContainer(canvas,"PluginContainer",license,false) == true){	//hostCnt.UI.ForceShowUI(false);//創建時隱藏插件,需要調用這句,隱藏插件hostCnt.RegisterEvent("*");CreatePlugin();}}else{//需要升級alert("檢測到升級包,立即升級。");hostCnt.UpdateVersion(installPackageUrl).then(function(data){if(data.code == 0){	//檢測是否安裝成功var checkInstall = setInterval(function(){if(hostCnt.GetVersion() == installPackageVersion){window.location.reload();clearTimeout(checkInstall);}}, 1000);}else{window.open(installPackageUrl, '_blank');//直接下載包,手動安裝}}).catch(function(strErr){window.open(installPackageUrl, '_blank');//直接下載包,手動安裝});}}
}function CreatePlugin(){if(hostCnt == null)return;acroPDFReader = hostCnt.createProxyPlugin("{CA8A9780-280D-11CF-A24D-444553540000}");if(acroPDFReader != null){pluginUtilityObj = hostCnt.getPluginUtility();}
}function OpenLocalFile(){pluginUtilityObj = hostCnt.getPluginUtility();pluginUtilityObj.GetLocalOpenDialog("pdf文件(*.pdf);;ofd文件(*.ofd);;所有文件(*.*)").then(function(varFile){console.log(varFile);if(varFile != ""){	acroPDFReader.src = varFile;}});
}function EnabledCanvas(blEnabled){hostCnt.UI.EnabledCanvas(blEnabled);
}function setShowToolbar(on){acroPDFReader.setShowToolbar(on);
}function setZoomRadio(fZoom){acroPDFReader.setZoom(fZoom);
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/62909.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/62909.shtml
英文地址,請注明出處:http://en.pswp.cn/web/62909.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux在沒網的情況下如何校驗時間 超詳細拿來即用

一、沒有校時服務器的話 1、手動修改 sudo date --set"2024-06-17 13:44:00"二、有校時服務器的話 1、手動校時 ntpdate 14.193.73.22、自動校時 寫一個校時服務腳本 14.193.73.2 是校驗時間服務器 #!/bin/sh while true dontpdate 14.193.73.2sleep 5;hwclock…

源碼分析之Openlayers中的控件篇Control基類介紹

概述 Openlayers 中內置了9類控件,這9類控件都是基于Control類,而Control類則是繼承于BaseObject類,如下圖所示: 如上,這9類控件分別是: Attribution:屬性控件FullScreen:全屏控件MousePositi…

計算機網絡知識點全梳理(二.HTTP知識點總結)

目錄 HTTP基本概念 HTTP優缺點 HTTP優點(1.1) HTTP缺點 HTTP與HTTPS HTTP 與 HTTPS 的區別 HTTPS 解決 HTTP 的哪些安全問題? HTTPS 如何解決安全問題? HTTPS 連接建立的過程: HTTP/1.1、HTTP/2、HTTP/3 演…

第P2周:Pytorch實現CIFAR10彩色圖片識別

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 目標 實現CIFAR-10的彩色圖片識別實現比P1周更復雜一點的CNN網絡 具體實現 (一)環境 語言環境:Python 3.10 編 譯 器: …

Quant connect的優勢和不足,學習曲線難

Quant connect的優勢和不足 Quant connect作為一個成熟的算法交易平臺,具有許多優勢,包括: 強大的回測功能:Quant connect提供了豐富的數據源和回測功能,可以對各種交易策略進行全面的回測和分析。 容易上手&#xf…

深入理解 Ansible Playbook:組件與實戰

目錄 1 playbook介紹 2 YAML語言 2.1語法簡介 2.2數據類型 3 Playbook核心組件 3.1 hosts組件 3.2 remote_user組件 3.3 task列表和action組件 3.4 handlers 3.5 tags組件 3.6 其他組件說明 1 playbook介紹 playbook 劇本是由一個或多個"play"組成的列表。…

2024年食堂采購系統源碼技術趨勢:如何開發智能的供應鏈管理APP

本篇文章,小編將與大家一同探討2024年食堂采購系統的技術趨勢,并提供開發更智能的供應鏈管理APP的策略。 一、2024年食堂采購系統的技術趨勢 1.人工智能與機器學習的深度應用 在2024年,AI和機器學習在食堂采購系統中的應用將更加普遍。這些…

代碼隨想錄-算法訓練營-番外(圖論01:圖論理論基礎,所有可到達的路徑)

day01 圖論part01 今日任務:圖論理論基礎/所有可到達的路徑 代碼隨想錄圖論視頻部分還沒更新 https://programmercarl.com/kamacoder/圖論理論基礎.html#圖的基本概念 day01 所有可達路徑 鄰接矩陣 import java.util.Scanner;import java.util.List;import java.util.ArrayL…

系統架構的演變

什么是系統架構? 系統架構是系統的一種整體的高層次的結構表示,它確定了系統的基本組織、組件之間的關系、組件與環境的關系,以及指導其設計和發展的原則。隨著技術的發展和業務需求的增長,系統架構經歷了從簡單到復雜、從集中到…

c++總復習

C 中多態性在實際項目中的應用場景 圖形繪制系統 描述:在一個圖形繪制軟件中,可能有多種圖形,如圓形、矩形、三角形等。這些圖形都有一個共同的操作,比如繪制(draw)。通過多態性,可以定義一個基…

pip離線安裝一個github倉庫

要使用pip安裝一個本地Git倉庫,你可以按照以下步驟操作: 確保你已經克隆了Git倉庫到本地。 進入倉庫所在的目錄。 使用pip安裝。 以下是具體的命令: 克隆Git倉庫到本地(替換下面的URL為你的倉庫URL) git clone https…

【從零開始入門unity游戲開發之——C#篇04】棧(Stack)和堆(Heap),值類型和引用類型,以及特殊的引用類型string

文章目錄 知識回顧一、棧(Stack)和堆(Heap)1、什么是棧和堆2、為什么要分棧和堆3、棧和堆的區別棧堆 4、總結 二、值類型和引用類型1、那么值類型和引用類型到底有什么區別呢?值類型引用類型 2、總結 三、特殊的引用類…

【C語言實現:用隊列模擬棧與用棧模擬隊列(LeetCode 225 232)】

LeetCode刷題記錄 🌐 我的博客主頁:iiiiiankor🎯 如果你覺得我的內容對你有幫助,不妨點個贊👍、留個評論?,或者收藏?,讓我們一起進步!📝 專欄系列:LeetCode…

【Python】Selenium 爬蟲的使用技巧和案例

引言 Selenium 是 Python 中功能強大的自動化測試工具,因其能夠操控瀏覽器進行模擬操作,被廣泛應用于網頁數據爬取。相比傳統的 requests 等庫,Selenium 能更好地應對動態加載內容和復雜交互場景。本文將詳細介紹 Selenium 爬蟲的使用技巧,并提供實際案例來幫助讀者快速上…

MySQL SQL語句性能優化

MySQL SQL語句性能優化指南 一、查詢設計優化1. 避免 SELECT *2. 使用 WHERE 進行條件過濾3. 避免在索引列上使用函數和表達式4. 使用 LIMIT 限制返回行數5. 避免使用子查詢6. 優化 JOIN 操作7. 避免全表掃描 二、索引優化1. 使用合適的索引2. 覆蓋索引3. 索引選擇性4. 多列索引…

Mybatis動態sql執行過程

動態SQL的執行原理主要涉及到在運行時根據條件動態地生成SQL語句,然后將其發送給數據庫執行。以下是動態SQL執行原理的詳細解釋: 一、接收參數 動態SQL首先會根據用戶的輸入或系統的條件接收參數。這些參數可以是查詢條件、更新數據等,它們…

java jar包加密 jar-protect

介紹 java 本身是開放性極強的語言,代碼也容易被反編譯,沒有語言層面的一些常規保護機制,jar包很容易被反編譯和破解。 受classfinal(已停止維護)設計啟發,針對springboot日常項目開發,重新編寫安全可靠的jar包加殼加密技術,用于保護軟件版權。 使用說…

Linux:Git

Git常見指令: git help xx_command git xx_command --help git --version 查看git版本git config --global user.name "xxx_name" 全局級別的簽名設置,全局的放在本用 git config --global user.ema…

【WiFi】WiFi中RSSI、SNR、NF之間關系及說明

RSSI(接收信號強度指示) 定義: RSSI 是一個相對值,用于表示接收到的無線信號的強度。它通常由無線設備的硬件(如無線網卡或無線芯片)直接提供。 計算: RSSI 的計算通常是由設備的無線芯片完成的…

提升音頻轉錄準確性:VAD技術的應用與挑戰

引言 在音頻轉錄技術飛速發展的今天,我們面臨著一個普遍問題:在嘈雜環境中,轉錄系統常常將非人聲誤識別為人聲,導致轉錄結果出現錯誤。例如,在whisper模式下,系統可能會錯誤地轉錄出“謝謝大家”。本文將探…