pdf.html 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="apple-mobile-web-app-capable" content="yes">
  6. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  7. <meta name="format-detection" content="telephone=no" />
  8. <meta name="msapplication-tap-highlight" content="no" />
  9. <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">
  10. <meta http-equiv="pragma" content="no-cache">
  11. <meta http-equiv="cache-control" content="no-cache">
  12. <meta http-equiv="expires" content="0">
  13. <title>PDFH5</title>
  14. <link rel="stylesheet" href="css/style.css" />
  15. <link rel="stylesheet" href="css/pdfh5.css" />
  16. <link href="https://www.gjtool.cn/download/pdfh5.png" type="image/x-icon" rel="shortcut icon" />
  17. <style>
  18. html,
  19. body {
  20. width: 100%;
  21. height: 100%;
  22. }
  23. #demo {
  24. display: none;
  25. /* height: 33%; */
  26. }
  27. #demo2 {
  28. /* display: none; */
  29. height: 33%;
  30. }
  31. #demo3 {
  32. /* display: none; */
  33. height: 33%;
  34. }
  35. </style>
  36. </head>
  37. <body>
  38. <div id="app">
  39. <div class="text-wrapper">
  40. <div class="text part1">
  41. <div>
  42. <span class="letter">
  43. <div class="character">L</div> <span></span>
  44. </span>
  45. <span class="letter">
  46. <div class="character">o</div> <span></span>
  47. </span>
  48. <span class="letter">
  49. <div class="character">a</div> <span></span>
  50. </span>
  51. <span class="letter">
  52. <div class="character">d</div> <span></span>
  53. </span>
  54. <span class="letter">
  55. <div class="character">i</div> <span></span>
  56. </span>
  57. <span class="letter">
  58. <div class="character">n</div> <span></span>
  59. </span>
  60. <span class="letter">
  61. <div class="character">g</div> <span></span>
  62. </span>
  63. </div>
  64. </div>
  65. <div class="how-to"><span>正在加载中,请您耐心等待...</span></div>
  66. </div>
  67. </div>
  68. <div id="demo"></div>
  69. <script src="js/pdf.js"></script>
  70. <script src="js/pdf.worker.js"></script>
  71. <script src="js/jquery-3.6.0.min.js" type="text/javascript" charset="utf-8"></script>
  72. <script src="js/pdfh5.js" type="text/javascript" charset="utf-8"></script>
  73. <script src="./vconsole.min.js"></script>
  74. <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  75. <!-- 微信 JS-SDK 如果不需要兼容小程序,则无需引用此 JS 文件。 -->
  76. <script type="text/javascript" src="//res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
  77. <!-- uni 的 SDK,必须引用。 -->
  78. <script type="text/javascript" src="//js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.0.1.52.js"></script>
  79. <script type="text/javascript">
  80. // 解析 URL 参数
  81. const urlParams = new URLSearchParams(window.location.search);
  82. console.log(urlParams);
  83. const pdfUrl = urlParams.get('pdfUrl') || 'https://example.com/default.pdf'; // 获取参数
  84. var pdfh5;
  85. $("#app").remove();
  86. $("#demo").show();
  87. pdfh5 = new Pdfh5('#demo', {
  88. pdfurl: pdfUrl,
  89. lazy: true, // 是否懒加载
  90. // URIenable: true,
  91. // renderType: "svg",
  92. // cMapUrl:"https://unpkg.com/pdfjs-dist@2.7.570/cmaps/",
  93. // responseType: "blob" // blob arraybuffer
  94. });
  95. pdfh5.on("complete", function(status, msg, time) {
  96. console.log("状态:" + status + ",总耗时:" + time + "毫秒,总页数:" + this.totalNum, msg);
  97. });
  98. // pdfh5.on("scroll", function (scrollTop, currentNum) {
  99. // console.log("scrollTop:"+scrollTop,"currentNum:"+currentNum);
  100. // });
  101. //配置项参数 renderType:"svg" 渲染模式为svg,默认canvas
  102. // var pdfh5 = new Pdfh5('#demo', {
  103. // pdfurl: "./default.pdf",
  104. // renderType:"svg"
  105. // });
  106. //配置项参数 URIenable:true 开启获取地址栏file参数,获取地址栏pdf路径?file=xxx.pdf,默认false不开启
  107. // var pdfh5 = new Pdfh5('#demo', {
  108. // URIenable:false,
  109. // pdfurl: "./default.pdf"
  110. // });
  111. //配置项参数 是否显示小部件 顶部绿色加载进度条loadingBar 左上角页码显示pageNum 右下角回到顶部按钮backTop 默认显示
  112. // var pdfh5 = new Pdfh5('#demo', {
  113. // loadingBar: false,
  114. // pageNum:false,
  115. // backTop:false
  116. // });
  117. //配置项参数data,文件流形式传入 pdfurl和data二选一
  118. // var pdfh5 = new Pdfh5('#demo', {
  119. // data: data
  120. // });
  121. //配置项参数scrollEnable:false不允许pdf滚动,true允许pdf滚动 默认允许
  122. // var pdfh5 = new Pdfh5('#demo', {
  123. // scrollEnable:false,//是否允许pdf滚动
  124. // pdfurl: url
  125. // });
  126. //pdfh5.scrollEnable(true)允许pdf滚动,pdfh5.scrollEnable(false)不允许pdf滚动
  127. //配置项参数zoomEnable:false不允许pdf手势缩放,true允许pdf手势缩放 默认允许
  128. // var pdfh5 = new Pdfh5('#demo', {
  129. // zoomEnable:false,//是否允许pdf手势缩放
  130. // pdfurl: url
  131. // });
  132. //pdfh5还原、销毁(附带回调函数): pdfh5.reset pdfh5.destroy
  133. //pdfh5显示、隐藏(附带回调函数): pdfh5.show pdfh5.hide
  134. //pdf准备开始渲染,此时可以拿到pdf总页数
  135. // pdfh5.on("ready", function() {
  136. // console.log("pdf准备开始渲染,总页数:" + this.totalNum)
  137. // })
  138. //监听pdf渲染失败
  139. // pdfh5.on("error", function (time) {
  140. // console.log("渲染失败,总耗时" + time + "毫秒")
  141. // })
  142. //监听完成事件,加载失败、渲染成功都会触发
  143. // pdfh5.on("complete", function(status, msg, time) {
  144. // console.log("状态:" + status + ",总耗时:" + time + "毫秒,总页数:" + this.totalNum, msg)
  145. // })
  146. //监听渲染中事件
  147. // pdfh5.on("render", function(currentNum, time, currentPageDom) {
  148. // // currentPageDom.append("<span class='name-logo'>张三</span>")
  149. // console.log("当前页码:" + currentNum)
  150. // })
  151. //on方法,监听事件: 开始初始化 init 准备渲染pdf ready 加载完成 complete 加载失败 error 加载成功 success 渲染pdf中 render
  152. // 缩放zoom 滚动scroll 显示show 隐藏hide 还原reset 销毁destroy 允许缩放zoomEnable 允许滚动scrollEnable
  153. //pdfh5支持在线预览
  154. //http://www.gjtool.cn/pdfh5/pdf.html?file=http://www.gjtool.cn/pdfh5/default.pdf
  155. </script>
  156. </body>
  157. </html>