index.html 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <!DOCTYPE HTML>
  2. <html lang="zh-CN">
  3. <head>
  4. <title>二维码生成工具</title>
  5. <meta charset="UTF-8">
  6. <link rel="shortcut icon" href="../static/img/favicon.ico">
  7. <link rel="stylesheet" href="index.css" />
  8. <script type="text/javascript" src="../static/vendor/evalCore.min.js"></script>
  9. <script type="text/javascript" src="../static/vendor/vue/vue.js"></script>
  10. </head>
  11. <body>
  12. <div class="wrapper" id="pageContainer">
  13. <div class="panel panel-default" style="margin-bottom: 0px;">
  14. <div class="panel-heading">
  15. <h3 class="panel-title">
  16. <a href="https://www.baidufe.com/fehelper/index/index.html" target="_blank" class="x-a-high">
  17. <img src="../static/img/fe-16.png" alt="fehelper"/> FeHelper</a>:二维码{{qrEncodeMode? '生成':'解码'}}器
  18. <span class="x-switch ui-fl-r" ref="btnSwitch" @click="trans">切换为{{!qrEncodeMode? ' 二维码生成器 ' : ' 解码/扫码 '}}模式&gt;&gt;</span>
  19. </h3>
  20. </div>
  21. </div>
  22. <div class="panel-body mod-json">
  23. <div v-if="qrEncodeMode">
  24. <div class="row">
  25. <textarea class="form-control mod-textarea" id="codeSource" ref="codeSource" v-model="textContent" placeholder="在这里填写需要生成二维码的任意内容"></textarea>
  26. </div>
  27. <div class="row ui-mt-10">
  28. <div class="ui-d-ib x-sizes">
  29. 尺寸:<input name="opt_width" type="text" id="opt_width" v-model="qrSize" size="4" maxlength="4"/>
  30. </div>
  31. <div class="ui-d-ib x-colors">
  32. 颜色:<input type="text" id="opt_fc" v-model="qrColor" size="10" />
  33. </div>
  34. <div class="radio ui-d-ib x-icons">
  35. 图标:<label><input id="remove_icon" name="qr_icon" type="radio" value="no" v-model="useIcon" @click="convert()">不要</label>
  36. </div>
  37. <div class="radio ui-d-ib ui-ml-10">
  38. <label><input id="default_icon" name="qr_icon" type="radio" value="default" v-model="useIcon" @click="convert()">默认</label>
  39. </div>
  40. <div class="radio ui-d-ib ui-ml-10">
  41. <label><input id="upload_icon" name="qr_icon" type="radio" value="custom" v-model="useIcon" @click="$refs.fileBox.click()">上传</label>
  42. (提示:支持直接拖拽一个图标到页面)
  43. </div>
  44. <button id="confirm_button" class="btn btn-success ui-fl-r" @click="convert()">生成QR图</button>
  45. </div>
  46. <div class="row ui-mt-20" v-if="showResult">
  47. <h4>结果</h4>
  48. <hr class="x-hr"/>
  49. <div id="preview"></div>
  50. </div>
  51. </div>
  52. <div class="row" v-if="!qrEncodeMode">
  53. <table>
  54. <tr>
  55. <td>
  56. <div class="x-panel" ref="panelBox">
  57. <img id="decodePreview" alt="" :src="previewSrc" v-show="!!previewSrc.length">
  58. <div class="x-tips">
  59. <a id="upload" href="#" ref="uploadBox" @click="$refs.fileBox.click()">选择图片</a><br>
  60. 或者选择一张图片拖拽图片到这里来
  61. </div>
  62. </div>
  63. <div class="tips">
  64. 1、支持<i>屏幕截图</i>后直接在此处粘贴进行解码<br/>2、支持<i>复制文件、复制图片</i>在线地址在此处直接粘贴进行解码
  65. </div>
  66. </td>
  67. <td>
  68. <textarea id="decodeResult" title="点击自动选择" placeholder="内容会自动生成..." readonly ref="resultBox" @click="select()" v-model="resultContent" class="form-control"></textarea>
  69. </td>
  70. </tr>
  71. </table>
  72. <img id="img" alt="">
  73. </div>
  74. </div>
  75. <div class="x-logo">
  76. <img src="../static/img/fe-48.png" alt="#" id="logo_default" ref="logoDefault"/>
  77. <img src="../static/img/fe-48.png" alt="#" id="logo" ref="logoCustom"/>
  78. <form action="#">
  79. <input type="file" id="file" ref="fileBox" accept=".jpg,.jpeg,.gif,.png,.bmp" @change="fileChanged($event)">
  80. </form>
  81. </div>
  82. </div>
  83. <script type="text/javascript" src="../static/vendor/jquery/jquery-3.3.1.min.js"></script>
  84. <script type="text/javascript" src="../static/vendor/jquery/jquery.colorpicker.js"></script>
  85. <script type="text/javascript" src="../static/vendor/jquery/jquery.qrcode.min.js"></script>
  86. <script type="text/javascript" src="../static/vendor/zxing/zxing.min.js"></script>
  87. <script type="text/javascript" src="index.js"></script>
  88. </body>
  89. </html>