龙空技术网

JavaScript读写jpg文件属性信息

否否正能量 68

前言:

此时你们对“htmljpg图片太小”大致比较注重,你们都需要知道一些“htmljpg图片太小”的相关内容。那么小编在网上搜集了一些关于“htmljpg图片太小””的相关文章,希望小伙伴们能喜欢,朋友们快快来了解一下吧!

JavaScript通过使用插件对jpg文件属性信息进行读写

1、读取JPG属性信息

Exif.js 地址:

代码实现:

<script src="exif.js"></script>
EXIF.getData(document.getElementById('imgElement'), function(){  EXIF.getAllTags(this);  EXIF.getTag(this, 'Orientation');  EXIF.getAllTags(this)  EXIF.pretty(this);});

引用信息:

2、写入JPG属性信息

Piexifjs 地址:

其实Piexifjs功能已经支持了图片属性信息的读取和写入

代码实现:

<script src="piexif.js"></script>
var zeroth = {};var exif = {};var gps = {};zeroth[piexif.ImageIFD.Make] = "Make";zeroth[piexif.ImageIFD.XResolution] = [777, 1];zeroth[piexif.ImageIFD.YResolution] = [777, 1];zeroth[piexif.ImageIFD.Software] = "Piexifjs";zeroth[piexif.ImageIFD.Artist] = "作者";exif[piexif.ExifIFD.DateTimeOriginal] = "2010:10:10 10:10:10";exif[piexif.ExifIFD.LensMake] = "LensMake";exif[piexif.ExifIFD.Sharpness] = 777;exif[piexif.ExifIFD.LensSpecification] = [[1, 1], [1, 1], [1, 1], [1, 1]];gps[piexif.GPSIFD.GPSVersionID] = [7, 7, 7, 7];gps[piexif.GPSIFD.GPSDateStamp] = "1999:99:99 99:99:99";//此处属性信息根据需要变更进行设置var exifObj = {"0th":zeroth, "Exif":exif, "GPS":gps};var exifbytes = piexif.dump(exifObj);//插入属性信息,生成新图片var newJpeg = piexif.insert(exifbytes, jpegData)

例子:

<input type="file" id="files" /><script source="/js/piexif.js" /><script>function handleFileSelect(evt) {    var file = evt.target.files[0];    var zeroth = {};    var exif = {};    var gps = {};    zeroth[piexif.ImageIFD.Make] = "Make";    zeroth[piexif.ImageIFD.XResolution] = [777, 1];    zeroth[piexif.ImageIFD.YResolution] = [777, 1];    zeroth[piexif.ImageIFD.Software] = "Piexifjs";    exif[piexif.ExifIFD.DateTimeOriginal] = "2010:10:10 10:10:10";    exif[piexif.ExifIFD.LensMake] = "LensMake";    exif[piexif.ExifIFD.Sharpness] = 777;    exif[piexif.ExifIFD.LensSpecification] = [[1, 1], [1, 1], [1, 1], [1, 1]];    gps[piexif.GPSIFD.GPSVersionID] = [7, 7, 7, 7];    gps[piexif.GPSIFD.GPSDateStamp] = "1999:99:99 99:99:99";    var exifObj = {"0th":zeroth, "Exif":exif, "GPS":gps};    var exifbytes = piexif.dump(exifObj);    var reader = new FileReader();    reader.onload = function(e) {        var inserted = piexif.insert(exifbytes, e.target.result);        var image = new Image();        image.src = inserted;        image.width = 200;        var el = $("<div></div>").append(image);        $("#resized").prepend(el);    };    reader.readAsDataURL(file);}document.getElementById('files').addEventListener('change', handleFileSelect, false);</script>

引用信息:

标签: #htmljpg图片太小 #js的files #filereaderjs #jsread #javascript写入文件