Data URL Encoder
将文件转换为base64数据URL以嵌入HTML和CSS。
将文件拖到此处或点击上传
关于此工具
Data URL 是一种特殊的URL格式,它将文件内容直接编码到URL字符串中,允许您在HTML和CSS中嵌入图像、字体和其他资源,而无需单独的HTTP请求。此工具将任何文件转换为Base64编码的Data URL,有助于减少服务器请求、提高小型资源的页面加载速度,并在需要自包含标记时简化部署过程。
使用此工具非常简单,只需上传文件或粘贴其内容,编码器会立即生成可以直接复制粘贴到CSS背景图像属性、HTML img src属性或其他嵌入上下文中的Data URL。该工具会自动检测文件类型并在Data URL中设置正确的MIME类型,这样您的浏览器就能正确解释嵌入的内容。
Data URL最适合用于小文件(通常不超过100 KB),因为嵌入过大的文件会导致HTML和CSS臃肿。它对于优化网站性能的Web开发人员、嵌入自定义字体的设计师,以及构建电子邮件模板或离线优先应用程序(其中外部资源请求并不实用)的团队特别有用。
常见问题
代码实现
import base64
import mimetypes
from pathlib import Path
def file_to_data_url(filepath: str) -> str:
"""Convert a file to a base64 Data URL."""
path = Path(filepath)
mime_type, _ = mimetypes.guess_type(filepath)
if mime_type is None:
mime_type = "application/octet-stream"
with open(path, "rb") as f:
data = f.read()
encoded = base64.b64encode(data).decode("utf-8")
return f"data:{mime_type};base64,{encoded}"
# Example usage
url = file_to_data_url("image.png")
print(url[:80] + "...")
print(f"Total length: {len(url)} chars")
# Embed in HTML
html = f'<img src="{url}" alt="Embedded image">'Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.