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

松江叶榭网站建设重庆公司买深圳社保

松江叶榭网站建设,重庆公司买深圳社保,网架报价明细表,免费的wordpress模板下载地址我想调整从iOS相机上使用HTML5画布客户端拍摄的图像#xff0c;但我一直在这个奇怪的错误#xff0c;这错误的图像有一个错误的比率#xff0c;如果运行超过〜1.5MB大它的工作原理在桌面上#xff0c;但不是在最新的iOS版本#xff0c;媒体上传API。#xff1a;你可以在这…我想调整从iOS相机上使用HTML5画布客户端拍摄的图像但我一直在这个奇怪的错误这错误的图像有一个错误的比率如果运行超过〜1.5MB大它的工作原理在桌面上但不是在最新的iOS版本媒体上传API。你可以在这里看到一个例子http://jsbin.com/ekuros/1任何想法如何解决这个问题吗 这是内存的问题$(#file).on(change, function (e) {var file e.currentTarget.files[0];var reader new FileReader();reader.onload function (e) { var image $();image.on(load, function () {var square 320;var canvas document.createElement(canvas);canvas.width square;canvas.height square;var context canvas.getContext(2d);context.clearRect(0, 0, square, square);var imageWidth;var imageHeight;var offsetX 0;var offsetY 0;if (this.width this.height) {imageWidth Math.round(square * this.width / this.height);imageHeight square;offsetX - Math.round((imageWidth - square) / 2);} else {imageHeight Math.round(square * this.height / this.width);imageWidth square;offsetY - Math.round((imageHeight - square) / 2);}context.drawImage(this, offsetX, offsetY, imageWidth, imageHeight);var data canvas.toDataURL(image/jpeg); var thumb $();thumb.attr(src, data);$(body).append(thumb);});image.attr(src, e.target.result);};reader.readAsDataURL(file);});Answer 1:这里是一个JavaScript的画布大小调整库围绕在iOS设备上绘制在画布上缩放图像时所遇到的欠采样和垂直壁球问题的工作 http://github.com/stomita/ios-imagefile-megapixel有枝节问题缩放时的alpha通道图像(因为它使用alpha通道的问题检测)并试图调整现有画布元素时但它是第一个解决方案我发现其实手头的工作问题。stomita也是StackOverflow的用户并张贴在这里他的解决方案 https://stackoverflow.com/a/12615436/644048Answer 2:如果您仍然需要使用drawImage方法的长版本你可以改变这一点context.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh);为此drawImageIOSFix(context, img, sx, sy, sw, sh, dx, dy, dw, dh);你只需要在一些地方包括这两个函数/*** Detecting vertical squash in loaded image.* Fixes a bug which squash image vertically while drawing into canvas for some images.* This is a bug in iOS6 devices. This function from https://github.com/stomita/ios-imagefile-megapixel**/function detectVerticalSquash(img) {var iw img.naturalWidth, ih img.naturalHeight;var canvas document.createElement(canvas);canvas.width 1;canvas.height ih;var ctx canvas.getContext(2d);ctx.drawImage(img, 0, 0);var data ctx.getImageData(0, 0, 1, ih).data;// search image edge pixel position in case it is squashed vertically.var sy 0;var ey ih;var py ih;while (py sy) {var alpha data[(py - 1) * 4 3];if (alpha 0) {ey py;} else {sy py;}py (ey sy) 1;}var ratio (py / ih);return (ratio0)?1:ratio;}/*** A replacement for context.drawImage* (args are for source and destination).*/function drawImageIOSFix(ctx, img, sx, sy, sw, sh, dx, dy, dw, dh) {var vertSquashRatio detectVerticalSquash(img);// Works only if whole image is displayed:// ctx.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh / vertSquashRatio);// The following works correct also when only a part of the image is displayed:ctx.drawImage(img, sx * vertSquashRatio, sy * vertSquashRatio,sw * vertSquashRatio, sh * vertSquashRatio,dx, dy, dw, dh );}这将正常工作无论是在iOS或其他平台上运行。这是基于伟大的工作stomita 你应该归功于他的工作。Answer 3:看起来这是一个iOS 6的错误。 没有理由方面从你的代码获得走出低谷。 我有只在IOS 6中引入如此看来他们的子采样程序给出了错误的高度相同的问题。 我提交了一个bug报告给苹果而你也应该这样做。 更bug报告他们得到这个好。Answer 4:我已经经历了同样的问题。 看来这是一个iOS的限制JPG超过200万像素的子采样。请参阅创建于IPhone兼容的Web内容的SafariAnswer 5:修改后的版本上面的代码。编辑看到L0LN1NJ4的在码http://jsfiddle.net/gWY2a/24/ ..想一个人的好一点...function drawImageIOSFix (ctx, img) {var vertSquashRatio detectVerticalSquash (img)var arg_count arguments.lengthswitch (arg_count) {case 4 : ctx.drawImage (img, arguments[2], arguments[3] / vertSquashRatio); breakcase 6 : ctx.drawImage (img, arguments[2], arguments[3], arguments[4], arguments[5] / vertSquashRatio); breakcase 8 : ctx.drawImage (img, arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7] / vertSquashRatio); breakcase 10 : ctx.drawImage (img, arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7], arguments[8], arguments[9] / vertSquashRatio); break}// Detects vertical squash in loaded image.// Fixes a bug which squash image vertically while drawing into canvas for some images.// This is a bug in iOS6 (and IOS7) devices. This function from https://github.com/stomita/ios-imagefile-megapixelfunction detectVerticalSquash (img) {var iw img.naturalWidth, ih img.naturalHeightvar canvas document.createElement (canvas)canvas.width 1canvas.height ihvar ctx canvas.getContext(2d)ctx.drawImage (img, 0, 0)var data ctx.getImageData(0, 0, 1, ih).data// search image edge pixel position in case it is squashed vertically.var sy 0, ey ih, py ihwhile (py sy) {var alpha data[(py - 1) * 4 3]if (alpha 0) {ey py} else {sy py}py (ey sy) 1}var ratio (py / ih)return (ratio 0) ? 1 : ratio}}文章来源: HTML5 Canvas drawImage ratio bug iOS
http://wiki.neutronadmin.com/news/336223/

相关文章:

  • 爬取漫画数据做网站seon是什么意思
  • 郑州网站建设e橙网熊掌号集团网站风格
  • 做网站送的小程序有什么用如何在网站找做贸易的客户
  • 哪种网站语言最好北京微信网站开发费用
  • 广州网站建设找哪家企业网络推广计划书
  • 对运营网站有什么见解网站建设前的ER图
  • 建设网站需要备案么网站建设大德通众包
  • 公司网站建设中恒建设集团有限公司北京商场租金
  • 太原市建设北路小学网站360免费建站391199
  • 雅思培训恩施seo
  • 购物网站开发技术网页设计与制作教程书电子版
  • 快速的网站开发网站托管费用多少
  • 淄博网站排名优化报价口腔医院网站优化服务商
  • 网站网页访问权限自己怎么设计公众号
  • 邢台宇鹏网站建设网店推广策划
  • 为啥浏览做的网站有移动条wordpress 标签前缀
  • 浏览网站 需要我安装wordpress贵阳网站seo外包
  • 生活服务网站建设网站多语言切换
  • 航佳网站建设做项目的招聘网站
  • 做关键词排名卖网站官方正版浏览器
  • 同城换物网站为什么做不起来想学电商去哪学
  • 做竞价网站需要什么样的空间稳定的网站建设
  • 南通网站建设seowordpress添加前台漂亮注册页面
  • 安徽建设厅网站节能北备案昆明网站建设价目表
  • 网站建设时 网站信息可以边建设边组织建设网点查询
  • 高大上的自助建站网站网站主服务器所在地地址
  • 在线网站域名whois查询工具济南企业网站开发
  • 网站举报中心官网公司网站开发立项文档
  • 网站建设开票税率在百度上注册公司网站要多少钱
  • 怎样做优惠券网站高德地图实况街景怎么打开