STERFIELD
開発ナレッジ2014.10.22

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

WRITER

ninomiya

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

この著者の記事を見る

CONTACT

記事の内容について
相談したい方へ

実際の進め方は、状況を伺ってからご提案します。

2営業日以内にご返信します
資料ダウンロード無料相談に申し込む