JavaScript を使用して画像のファイル サイズと寸法を確認するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-23 05:23:14
オリジナル
891 人が閲覧しました

How can I determine the file size and dimensions of an image using JavaScript?

JavaScript を使用した画像ファイルのサイズと寸法の決定

Web アプリケーションでは、Web ページに表示される画像に関する情報を取得する必要があります。一般的な要件の 1 つは、画像のファイル サイズと解像度を完全にブラウザーのコンテキスト内で決定することです。この記事では、このタスクを達成するためのさまざまなクロスブラウザー手法について説明します。

画像のサイズを取得する

Web ページに表示される画像の解像度を決定するには、以下を利用できます。画像を含む DOM 要素の clientWidth プロパティと clientHeight プロパティ。この方法では、境界線や余白を除いた、ブラウザ内の画像のピクセル寸法が返されます。

var img = document.getElementById('imageId');

var width = img.clientWidth;
var height = img.clientHeight;
ログイン後にコピー

ファイル サイズの取得

ファイル サイズを取得するには画像の場合、オプションの 1 つは、Internet Explorer でドキュメントおよび IMG 要素に使用できる fileSize プロパティを使用することです。ただし、このアプローチは IE に限定されており、他のブラウザではサポートされていません。

HEAD HTTP リクエストの使用

より汎用性の高い手法は、HTTP HEAD リクエストを画像のURL。 HEAD リクエストは、コンテンツをダウンロードせずに、リソースに関するメタデータを取得します。応答ヘッダーには、ファイル サイズをバイト単位で表す Content-Length が含まれます。

var xhr = new XMLHttpRequest();
xhr.open('HEAD', 'img/test.jpg', true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      alert('Size in bytes: ' + xhr.getResponseHeader('Content-Length'));
    } else {
      alert('ERROR');
    }
  }
};
xhr.send(null);
ログイン後にコピー

注: Ajax リクエストは同一生成元ポリシーの対象となり、リソースのみにアクセスできることを意味します。 Web ページと同じドメインから。

元の画像を取得しています寸法

サイズ変更またはトリミングする前に画像の元の寸法を決定するには、IMG 要素をプログラムで作成し、その onload イベントを設定してその寸法を取得できます。

var img = document.createElement('img');

img.onload = function() { alert(img.width + ' x ' + img.height); };

img.src='http://sstatic.net/so/img/logo.png';
ログイン後にコピー

以上がJavaScript を使用して画像のファイル サイズと寸法を確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート