首页 > 其他分享 >【组件】前端js HEIC/HEIF 转换为JPEG、PNG或GIF格式 苹果格式

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

时间:2024-09-24 13:57:06浏览次数:7  
标签:const image JPEG GIF HEIF 格式 HEIC PNG


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

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

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

https://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.

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

代码  直接保存成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 转换为 PNG
                heic2any({
                    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>

标签:const,image,JPEG,GIF,HEIF,格式,HEIC,PNG
From: https://blog.51cto.com/u_14976802/12098752

相关文章

  • C# json格式化
    //格式化JsonprivatestringConvertStringToJson(stringstr){//格式化json字符串JsonSerializerserializer=newJsonSerializer();TextReadertr=newStringReader(str);JsonTextReaderj......
  • 多语言文本 AI 纠错格式化 API 数据接口
    多语言文本AI纠错格式化API数据接口AI/文本处理AI模型智能纠正语法纠错/文本格式化。1.产品功能支持多语言文本的语法纠错;自动识别并纠正拼写错误、语法错误和标点符号使用不当;优化文本格式,提高可读性;基于AI模型,持续学习和更新,提高纠错准确率;适用于文档校对......
  • RMC语句格式
    RMC语句格式举例在GNSS(全球导航卫星系统)通信中,RMC(RecommendedMinimumSpecificGNSSData)语句是一种常用的NMEA0183格式数据,用于提供关于接收机的定位信息、速度及方向等关键数据。RMC语句特别适用于需要实时位置和速度信息的场景,如导航、跟踪和监控系统。以下是一个RMC......
  • SQL Server 日期格式查询详解
    引言在SQLServer中,日期格式的查询和处理是数据库开发和管理过程中经常遇到的需求。无论是在数据过滤、排序还是数据分析中,日期都起着关键的作用。理解如何操作和格式化日期数据,不仅能够提升查询效率,还能够保证输出数据的准确性和一致性。本文将深入探讨SQLServer中日期格式查......
  • 常见格式的MIME TYPE对照表
    //常见格式的MIMETYPE对照表constACCEPT_FILE_TYPE_MAP={'.3gp':'video/3gpp','.apk':'application/vnd.android.package-archive','.asf':'video/x-ms-asf','.avi':'video/x-msvi......
  • Linux系统使用 mkfs.xfs 格式化磁盘分区
    Linux系统使用mkfs.xfs格式化磁盘分区1.安装xfs工具集在CentOS7上安装:yuminstallxfsprogs-y在Ubuntu18上安装:apt-getinstallxfsprogs在ArchLinux上安装:pacman-Sxfsprogs2.修改磁盘分区表使用fdisk创建分区:fdisk/dev/vdb使用pa......
  • Linux系统使用 mkfs.ext4 格式化磁盘分区
    Linux系统使用mkfs.ext4格式化磁盘分区1.安装格式化工具大多数系统默认已经安装相关的软件工具。2.修改分区表可以使用fdisk或parted来修改分区表。3.格式化磁盘格式化指定分区:mkfs.ext4/dev/vdb1格式化完成后进行优化配置:tune2fs-c-1/dev/vdb14.......
  • 奥维互动地图经纬度导入,再导出ovjsn再转化为kml格式
    一、使用python将excel表中的经纬度换算成小数格式。在文件上看到的经纬度是东经116°5′27.78″,北纬23°10′57.18″,要转化为116.09105,23.182550000000003格式。如果要用vba编写函数,可能比较麻烦,为此我使用python来转化importsys#获取命令行参数arguments=sys.a......
  • java 正则表达式 匹配日期格式的字符串
    这个正则表达式 ^\d{4}-\d{2}-\d{2}$ 用于匹配特定格式的字符串,具体来说,它匹配一个由四位数字、一个短横线(-)、接着是两位数字、再一个短横线、最后是两位数字组成的字符串。这种格式通常用于表示日期(年-月-日),但需要注意的是,它并不验证日期的有效性(比如,它不会检查月份是否超过12或......
  • 【目标检测数据集】小车表面缺陷破损检测数据集3135张8类标签VOC+YOLO格式(裂纹掉漆划
    数据集格式:PascalVOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数):3135标注数量(xml文件个数):3135标注数量(txt文件个数):3135标注类别数:8标注类别名称:["crack","dent1","dent2","dislocation"......