STERFIELD

HTML5のCanvasで画像をリサイズ&トリミングして中央表示する方法

HTML5のCanvasで画像をリサイズ&トリミングして中央表示する方法

画像をリサイズ&トリミングして中央は位置する方法にも、

PHPなどサーバーサイドで書き出す方法や,

JavaScriptでトリミングしているように見せかける方法、

CSS3のcropを用いる方法などいろいろありますが、

今回はCanvasを使って画像をリサイズ&トリミングし、中央に配置する方法について考えてみんました。

 

↓こちらがデモです

DEMO

 

方法

HTML

 

JavaScript

 

手順としては、

  1. HTMLで、<img>の代わりに<canvas>を設置し、src属性の代わりにdata-src属性に画像のパスを設定する。
  2. JavaScriptで、Image()オブジェクトを使って、元画像の大きさを取得し、縦横比を計算。
  3. 縦・横の幅の小さい方を基準に画像をリサイズし、はみ出す分画像位置を移動し、Canvasに表示する。

 

となっております。

 

参考サイト

drawImage() メソッド – Canvasリファレンス – HTML5.JP

【jQuery】画像のオリジナルサイズを取得する | 03LOG

Author Profile

著者近影

NINOMIYA

Webデザイナー兼コーダー出身のフロントエンド開発者です。 UXデザインやチーム開発の効率化など、勉強中です。

SHARE

合わせて読みたい