当前位置: 首页 > news >正文

图片转Base64

在Python中, 可以使用内置的base64模块以及图像处理库(如PIL, 也称为Pillow)来将图片转换为Base64编码的字符串.
以下是一个简单的示例, 说明如何实现这一过程:
首先, 需要安装Pillow库(如果尚未安装), 可以使用pip来安装: pip install pillow
然后, 可以使用以下Python代码将图片转换为Base64编码的字符串:
import base64  
from io import BytesIO  
from PIL import Image  def image_to_base64(image_path, image_format="JPEG"):  """  将图片转换为Base64编码的字符串  :param image_path: 图片路径  :param image_format: 图片格式(如 "PNG", "JPEG" 等)  :return: Base64编码的字符串  """  with Image.open(image_path) as img:  buffered = BytesIO()  img.save(buffered, format=image_format.upper())  img_byte_arr = buffered.getvalue()  base64_str = base64.b64encode(img_byte_arr).decode('utf-8')  return base64_str  # 使用示例  
image_path = 'path/to/your/image.jpg'  # 替换为你的图片路径  
base64_data = image_to_base64(image_path)  
print(base64_data)  # 输出Base64编码的字符串
在上面的代码中, image_to_base64函数接受两个参数: 图片路径和图片格式.
它首先使用Pillow库的Image.open方法打开图片, 然后将图片保存到一个字节缓冲区BytesIO中.
接下来, 它从缓冲区中获取字节数组, 并使用base64.b64encode函数进行Base64编码.
最后, 它将编码后的字节数组解码为UTF-8格式的字符串并返回.请注意, 你需要将image_path变量替换为你实际要转换的图片的路径.
此外, 如果你想要以不同的格式(如PNG)保存图片, 只需更改image_format参数即可.
使用Base64编码作为网站图标.
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>web应用</title><link rel="icon" type="image/x-icon"href="data:image/x-icon;base64, /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAQABADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3GfWdNtmmWa/tkeFS0iGVdygdcjOaw9F1aa3vrhNWmnh+1OksEdwhxHvJwgbGBgbBjP3s+tV4LQy69BDNpsh8nUri5Mj252AFH2sGI29SuMHPPtWpete6tLZ2o065trcXKSzyTGPBVDvAG1iSSwTt0zQB/9k=">
</head>
<body>
</body>
</html>

image-20240613021614943

http://www.lryc.cn/news/370862.html

相关文章:

  • STM32项目分享:智能家居语音系统
  • iOS 18 为 iPhone 15 机型引入了更多充电限制选项
  • Linux文本三剑客 awk 和 grep
  • Python NumPy 库详解
  • React state 执行时机
  • Spring基于注解开发
  • 深度探索:智能家居背后的科技力量与伦理思考
  • 鸿蒙开发:通过startAbilityByType拉起垂类应用
  • docker 更换镜像源
  • Springboot(若依)国际化配置接口访问后返回????????
  • java1
  • pytest中一个场景测试的demo
  • windows下安装IntelliJIDEA
  • string经典题目(C++)
  • 三篇卫星切换的论文
  • VUE之重定向redirect
  • 服务器时区与数据库时区不一致导致时间bug记录
  • 华为鸿蒙HarmonyOS应用开发者高级认证题库
  • 细说MCU串口函数及使用printf函数实现串口发送数据的方法
  • PBox iOS端的应用隐藏、图片视频加密软件
  • 【QT5】<总览五> QT多线程、TCP/UDP
  • fastadmin/thinkPHPQueue消息队列详细教程
  • 社区新标准发布!龙蜥社区标准化 SIG MeetUp 圆满结束
  • 快速开始一个go程序(极简-快速入门)
  • HTTPS缺失?如何轻松解决IP地址访问时的“不安全”警告
  • 验证码识别接口、多种样式验证码识别接口、中英文验证码识别接口
  • 测试bert_base不同并行方式下的推理性能
  • FFMpeg解复用流程
  • 438. 找到字符串中所有字母异位词
  • 【Qt 快速入门(三)】- Qt信号和槽