• JS 图片转Base64


    JS 图片转Base64

    有时候需要向HTML中插入一张图片,可苦于上线后找不到一个合适的网盘来存储这些图片,有没有一种办法能将图片转换成文字,然后直接插入HTML中呢,通过Base64编码就可以解决这个问题。

    废话不多说直接上代码。不知道什么是Base64的请自行百度

    图片转Base64 示例代码
    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>JS 图片转Base64</title>
    6. <script src="//cdn.bootcss.com/jquery/2.2.0/jquery.min.js"></script>
    7. <script>
    8. function run(input_file,get_data){
    9. /*input_file:文件按钮对象*/
    10. /*get_data: 转换成功后执行的方法*/
    11. if ( typeof(FileReader) === 'undefined' ){
    12. alert("抱歉,你的浏览器不支持 FileReader,不能将图片转换为Base64,请使用现代浏览器操作!");
    13. } else {
    14. try{
    15. /*图片转Base64 核心代码*/
    16. var file = input_file.files[0];
    17. //这里我们判断下类型如果不是图片就返回 去掉就可以上传任意文件
    18. if(!/image\/\w+/.test(file.type)){
    19. alert("请确保文件为图像类型");
    20. return false;
    21. }
    22. var reader = new FileReader();
    23. reader.onload = function(){
    24. get_data(this.result);
    25. }
    26. reader.readAsDataURL(file);
    27. }catch (e){
    28. alert('图片转Base64出错啦!'+ e.toString())
    29. }
    30. }
    31. }
    32. $(function () {
    33. $("input").change(function () {
    34. run(this, function (data) {
    35. $('img').attr('src',data);
    36. $('textarea').val(data);
    37. });
    38. });
    39. });
    40. </script>
    41. </head>
    42. <body>
    43. <input type="file">
    44. <hr>
    45. <img style="max-height: 300px; height: 8em; min-8em;">
    46. <hr>
    47. <textarea style="display: block; 100%;height: 30em;"></textarea>
    48. </body>
    49. </html>

    Base64图片的使用

    Base64格式
    data:[][;charset=][;base64],
    Base64 在CSS中的使用
    .demoImg{ background-image: url("data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...."); }
    Base64 在HTML中的使用
    <img width="40" height="30" src="data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...." />
  • 相关阅读:
    Python第二弹--------类和对象
    Python第一弹--------初步了解Python
    Java标记接口
    CentOS7下的YUM源服务器搭建详解,过程写的很详细(转)
    CentOS7.0安装Nginx 1.10.0
    QT中C++与Html端通信例子
    QT基础:QMainWindow学习小结
    QT基础:QT 定时器学习
    QT3D场景快速绘制入门学习
    QT编译错误:cannot find file: *.pro
  • 原文地址:https://www.cnblogs.com/wujingtao/p/5196836.html
Copyright © 2020-2023  润新知