png图像的base64 encoding

PNG 图像的 Base64 编码(超通俗解释)

Base64 编码 :把二进制图片文件(PNG/JPG) 转换成纯文本字符串 ,让图片可以像文字一样复制粘贴、塞进 JSON、放进 HTML/CSS里直接显示。

一、核心作用

  1. 图片 → 一大段乱码英文 + 数字 + 符号(纯文本)
  2. 纯文本 → 直接还原成图片(无需单独图片文件)

二、PNG 的 Base64 固定开头

所有 PNG 图片的 Base64 字符串一定以这个开头

plaintext

复制代码
data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...
  • data:image/png;base64, = 声明:这是PNG 图片的 Base64
  • 后面一大串乱码 = 图片内容

三、怎么用(3 个最常见场景)

1. HTML 里直接显示图片

html

预览

复制代码
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...">

2. CSS 背景图

css

复制代码
div {
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...");
}

3. JSON / API 传输图片

AI 接口、前后端传图常用:

json

复制代码
{
  "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUg..."
}

四、Python 快速生成 PNG Base64

python

运行

复制代码
import base64

# 图片转 Base64
with open("test.png", "rb") as f:
    base64_str = base64.b64encode(f.read()).decode()

# 加上前缀就是完整可用字符串
full_base64 = f"data:image/png;base64,{base64_str}"
print(full_base64)

五、优缺点

✅ 优点:

  • 纯文本,不怕传输丢失
  • 不用单独存图片文件,一个字符串搞定
  • AI 接口、前端渲染极常用

❌ 缺点:

  • 体积比原图大 1/3
  • 不适合大图(建议 < 200KB)
相关推荐
armwind4 小时前
openISP学习8-GC — Gamma Correction(Gamma 校正)
图像处理·计算机视觉
人月神话-Lee5 小时前
【图像处理】颜色空间——RGB之外的世界
图像处理·人工智能·ios·ai编程·swift·rgb·颜色空间
zh路西法6 小时前
【三维重建NeRF本地部署】基于 Nerfstudio 的单目视频三维重建全流程
图像处理
惊鸿一博7 小时前
图像修复_MPMF-Net中的“多维特征交互块”(Multi-dimension Feature Interaction Block, MFIB)
图像处理·深度学习
9527华安7 小时前
FPGA实现GTP高速收发器2路视频传输,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
图像处理·fpga开发·aurora·高速收发器·8b10b·derdes
armwind8 小时前
openISP学习9-CSC-Color Space Conversion(色彩空间转换)
图像处理·计算机视觉
armwind1 天前
openISP学习2-DPC(黑电平补偿)和BLC(黑电平补偿)
图像处理·计算机视觉
weixin_468466852 天前
深度学习图像数据增强新手实战指南
图像处理·人工智能·深度学习·ai·数据增强·机器视觉
简简单单做算法2 天前
基于混沌加密的遥感图像加密算法matlab仿真
图像处理·计算机视觉·matlab·混沌加密·遥感图像加密