iOS6のSafari MobileのCanvasにFileReaderオブジェクトをロードしたローカルイメージをレンダリングしようとしました。しかし、データURLを持つすべてのイメージは、垂直方向にスケーリングされてレンダリングされます。これはバグですか? Chromeでは正しくレンダリングされます。モバイルSafariレンダリング<img src="data:image/jpeg;base64...">キャンバスに表示されますか?
ScreenShot from iOS6(上:キャンバス、以下:オリジナル画像)
回避策には、このバグの方法はありますか?これはバグですか?
「PhotoWizard」アプリケーションを使用してデバイスのイメージのサイズを変更した後(720px幅に縮小)、Canvasは正しくレンダリングします。画像サイズやカメラアプリケーションで撮影した画像に問題があるようです:
が少し良く見える、Jake Archibaldからの提案をしようとしましたが、それでも垂直スケーリングします:
Android 4.1.1搭載のGalaxy Nexusで今日試しました。予想されるように動作しますので、これは本当にモバイルSafariの問題のようになります。
JSでイメージのサイズを変更しようとしたときに私が見つけたのは、 – NimmoNet
です。私は、 "onload"とイメージをw/hとの間に5秒の遅延を追加し、それをキャンバスにレンダリングしようとしました。それを修正しませんでした。私はキャンバスに画像を描画する前に "requestAnimationFrame"も考えていましたが、どちらも修正していませんでした。 –
このようなBlob URLを使用しようとしました:window.URL.createObjectURL(file)...そしてそれをimg.srcにロードします。同じエラーが発生し、 "Blob-src" getでイメージをレンダリングします。キャンバス上 –