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

【组件】前端js HEIC/HEIF 转换为JPEG、PNG或GIF格式 苹果格式

【组件】前端js HEIC/HEIF 转换为JPEG、PNG或GIF格式

Heic2any: Client-side conversion of HEIC/HEIF image files to JPEG,PNG, or GIF in the browser.icon-default.png?t=O83Ahttps://alexcorvi.github.io/heic2any/#demo

GitHub - alexcorvi/heic2any: Converting HEIF/HEIF image formats to PNG/GIF/JPEG in the browser

Demo

Heic2any: Client-side conversion of HEIC/HEIF image files to JPEG,PNG, or GIF in the browser.

代码  直接保存成html 本地运行即可看到效果

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>HEIC to PNG Conversion</title><script src="https://cdn.jsdelivr.net/npm/heic2any"></script>
</head>
<body><h2>Upload HEIC Image and Convert to PNG</h2><input type="file" id="heicInput" accept="image/heic" /><br><br><div id="previewContainer"><h3>Converted Image Preview:</h3><img id="preview" style="max-width: 100%; height: auto;" /></div><script>document.getElementById('heicInput').addEventListener('change', function (event) {const file = event.target.files[0];if (!file) return;// 使用 FileReader 读取 HEIC 文件const reader = new FileReader();reader.onload = function (e) {const heicBlob = e.target.result;// 使用 heic2any 将 HEIC 转换为 PNGheic2any({blob: new Blob([heicBlob], { type: 'image/heic' }),toType: "image/png"}).then(function (resultBlob) {// 生成图片的 URL 并展示预览const previewImg = document.getElementById('preview');const url = URL.createObjectURL(resultBlob);previewImg.src = url;}).catch(function (error) {console.error("Error converting HEIC to PNG:", error);});};// 以二进制格式读取 HEIC 文件reader.readAsArrayBuffer(file);});</script>
</body>
</html>

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

相关文章:

  • Vue3中slot插槽的几种使用实践
  • SSH工具 MobaXterm的使用与快捷配置
  • git 远程分支同步本地落后的有冲突的分支
  • 如何基于Java解析国密数字证书
  • java实现系统文件管理
  • pytorch快速入门(一)—— 基本工具及平台介绍
  • 『功能项目』怪物的有限状态机【42】
  • 【C++】模板进阶:深入解析模板特化
  • Python数据分析-世界上最富有的1000人
  • CSS中隐藏滚动条的同时保留滚动功能
  • 我的标志:奇特的头像
  • 中国空间计算产业链发展分析
  • DAY14信息打点-JS 架构框架识别泄漏提取API 接口枚举FUZZ 爬虫插件项目
  • TS - tsconfig.json 和 tsconfig.node.json 的关系,如何在TS 中使用 JS 不报错
  • revisiting拉普拉斯模板
  • 深入分析计算机网络性能指标
  • pyflink 安装和测试
  • 《网络故障处理案例:公司网络突然中断》
  • JavaSE:9、数组
  • 【裸机装机系列】2.kali(ubuntu)-裸机安装kali并进行磁盘分区-2024.9最新
  • 解决:Vue 中 debugger 不生效
  • Mac笔记本上查看/user/目录下的文件的几种方法
  • 工程师 - ACPI和ACPICA的区别
  • 一文快速上手-create-vue脚手架
  • 笔记整理—内核!启动!—kernel部分(7)rcs文件和登录部分与密码解析
  • 朴素贝叶斯 (Naive Bayes)
  • 高德2.0 多边形覆盖物无法选中编辑
  • 时序最佳入门代码|基于pytorch的LSTM天气预测及数据分析
  • 85-MySQL怎么判断要不要加索引
  • 车载软件架构 --- SOA设计与应用(中)