gpt4 book ai didi

javascript - 在使用 FileReader 上传之前预览图像,旋转图像

转载 作者:数据小太阳 更新时间:2023-10-29 05:23:08 24 4
gpt4 key购买 nike

我看到很多关于在上传前查看图片的帖子。一篇文章有​​一个使用 FileReader 实现的非常简单的方法:

function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();

reader.onload = function (e) {
$('#preview_image').attr('src', e.target.result);
}

reader.readAsDataURL(input.files[0]);
}
}

$("#image_input").change(function(){
readURL(this);
});

但问题是图像是旋转加载的!那么有没有丢失的属性(property)我失踪了吗?或者 FileReader 不够成熟,无法理解布局的图像。不知道!

也许我应该使用不同的方法!?将不胜感激有关此问题的任何想法。

谢谢

最佳答案

我知道回答这个问题已经晚了,但这里有一个答案

HTML代码

<form method="POST" enctype="multipart/form-data">
<input type="file" id="file">
<div id="preview"></div>
<br>
<a href="#" id="counter"><- counter</a>
<select id="degree">
<option>90</option>
<option>45</option>
</select>
<a href="#" id="clockwise">clockwise -></a>
<hr>
<button type="submit">save image</button>
</form>

Javascript 代码

$('a').click(function(){
var a = $('img').getRotateAngle();
var d = Math.abs($('#degree').val());

if($(this).attr('id') == 'counter'){
//d = -Math.abs(+a - +d);
d = a - d;
}
else{d = +a + +d;}

$('img').rotate({animateTo:d});
});

/* image preview */
$('#file').change(function(){
var oFReader = new FileReader();
oFReader.readAsDataURL(this.files[0]);
console.log(this.files[0]);
oFReader.onload = function (oFREvent) {
$('#preview').html('<img src="'+oFREvent.target.result+'">');
};
});

CSS

#preview img {
max-height: 300px;
max-width: 300px;
}

http://jsfiddle.net/AxRJh/

这不是我的代码,是在搜索相同问题时在给定的 fiddle 上找到的。

关于javascript - 在使用 FileReader 上传之前预览图像,旋转图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19072244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com