WebデザイナーがRetinaディスプレイデバイス向けの画像を作成する方法

WebデザイナーがRetinaディスプレイデバイス向けの画像を作成する方法

特記事項:この記事は、Chris Spooner の英語記事「Web デザイン用の Retina グラフィックスを作成する方法」に基づいて翻訳されています。翻訳全体には、私たち自身の理解と考えが含まれています。翻訳が良くなかったり間違っていたりする場合は、同僚や友人に指摘してください。 AppleはRetinaディスプレイに適した製品をさらにリリースしました。これまでのところ、Retina スクリーン技術をサポートする Apple デバイスには、「iPhone」、「iPod」、「iPad」、「Macbook Pro」などが含まれます。これらのデバイスは、より繊細で滑らかで高品質の画像効果をユーザーに提供し、ユーザーの視覚体験を向上させます。 Web デザイナーとして、Web サイト用に Retina 対応の画像をどのように作成しますか?これが今日私たちが学ぶ内容です。

Retina ディスプレイをサポートする理由は何ですか?

WebデザイナーがRetinaグラフィックスを作成する方法

結局のところ、これはまったく新しい技術なので、当初は、Retina 画面上の巨大な画像に対応するために、より大きな画像を使用することは想定していませんでした。しかし、しばらく統計をとってみると、Apple のデバイスがモバイル市場の大きなシェアを占めており、そのほとんどが「iPhone」、「iPod」、「iPad」であり、これらのデバイスはすべて Retina スクリーン テクノロジーをサポートしていることがわかりました。 13 インチおよび 15 インチの Retina ディスプレイのユーザーのほとんどは、Chrome、Firefox、Safari、IE を使ってインターネットを閲覧しています。Opera をサポートする必要がある場合、ニッチなユーザー層を対象としていることになります。 (私のウェブサイトの統計でもこの状況が示されています)

Retina画像を作成する方法

WebデザイナーがRetinaグラフィックスを作成する方法

Retina 画像は高解像度 (PPI) で保存するだけでよいと思われるかもしれませんが、そうではありません。 Retina ディスプレイでは、画像を 2 倍のサイズで保存するだけです。つまり、画像を 200 x 200 ピクセル (CSS ピクセル) で保存する場合は、400 x 400 ピクセルで保存する必要があります。これらの特大画像は元の画像と同じサイズで表示され、Retina 画面上で滑らかで鮮明な外観を実現します。

簡単そうに聞こえますが、画像のサイズを 2 倍にするにはどうすればよいでしょうか?

Illustrator を使ってロゴやアイコンをデザインする

WebデザイナーがRetinaグラフィックスを作成する方法

ベクター グラフィックスは、Retina グラフィックスを作成するのに最適なソリューションです。ロゴやアイコンを EPS または Ai ファイルとして持っている場合、その画像を Photoshop にエクスポートまたはコピーすると、ベクター画像を任意のサイズに拡大縮小できます。貼り付けられた要素は、ベクター パスを保持するスマート オブジェクトとして使用できるため、2 倍にして Retina に適した特別な画像としてエクスポートできます。

Photoshopのベクター機能を使用する

WebデザイナーがRetinaグラフィックスを作成する方法

Photoshop はピクセル グラフィック アプリケーションですが、ベクター グラフィックを作成できないわけではありません。各グラフィック ツールはピクセル レイヤーだけでなくベクター レイヤーも作成できるため、すべてのレイヤー スタイル効果はスケーラブルです。すべてを 2 倍にすると、ほぼすべてのエフェクトがちょうど 2 倍のサイズに拡大されます。

ピクセル画像を拡大する

WebデザイナーがRetinaグラフィックスを作成する方法

デザイナーとして、画像を軽々しく拡大したくないというのが 1 つのルールですが、デザインしたサイトに Retina 画像を追加し直す場合、すべての画像を手動で再作成する必要はありません。通常、画像を拡大するとぼやけてギザギザになりますが、Photoshop には「Neares Neighbor」というメニュー オプションがあり、ぼやけた外観やギザギザのエッジを回避して、画像を使える状態にするのに非常に役立ちます。要素が読み込まれるまで読み込まれませんが、タイムリーな置き換えを提供します。

200% で設計してから縮小しますか?

WebデザイナーがRetinaグラフィックスを作成する方法

必要なアイコンを作成するために要素を縮小できるように、Web レイアウト ページを 2 倍のサイズで作成できないのか、とお考えかもしれません。これは従来の印刷デザイン理論では実現可能ですが、Web デザインでは実現できません。ウェブデザインはピクセルベースで動作し、完璧な形状と線を作成するためです。画像を一定の比率で拡大し、Photoshop ソフトウェアでエクスポートした場合でも、特に小さなアイコンの場合、エクスポートされた画像はぼやけて見えます。

コードでRetina画像を制御する方法

標準画像の 2 倍のピクセル サイズを持つ標準画像のコピーを作成したら、さまざまな方法を使用してページに読み込むことができます。ファイルに名前を付ける簡単な方法は次のとおりです。標準画像と Retina 画面画像を同じフォルダに配置し、Retina 画像に通常の画像ファイル名の末尾に「 @2x 」を追加して名前を付けます。たとえば、通常の画像ファイル名が「snarf.jpg」の場合、Retina 画面上の画像には「[email protected]」という名前を付けます。

シンプルなJavaScriptメソッド

コードをコピー
コードは次のとおりです。

<script src="js/retina.js" ></script>
[/コード<strong>]
</strong>最も簡単な方法は、retina.js スクリプトを使用して Retina イメージの呼び出しを制御することです。簡単に言えば、retina.js は自動的に画像ディレクトリ内の「@2x」画像をチェックし、Retina デバイスで使用する場合は通常の画像に置き換えます。 </p> <p><strong>CSSの変更方法
</strong>[コード]
@media 画面のみかつ (-webkit-min-device-pixel-ratio: 2)、画面のみかつ (min-device-pixel-ratio: 2) {
ヘッダー h1 a {
背景画像: url(images/[email protected]);
背景サイズ: 164px 148px;
}
}

あるいは、CSS ファイルを手動で変更して、Retina デバイス上の Retina イメージを制御することもできます。メディアクエリを通じて、メディア内の条件に「min-device-pixel-ration: 2」が含まれている場合、対象要素にRetinaデバイスに適した画像「@2x」が呼び出されますが、対応する要素の「background-size」を設定することを忘れないでください。背景画像のサイズは通常の画像サイズと同じです。

HTML 画像タグ

コードをコピー
コードは次のとおりです。

<img src="images/[email protected]" 幅="300px" 高さ="150px" / >

CSS 方式では、「メディア クエリ」を通じて要素の背景画像を制御しますが、HTML では「img」画像タグを使用できます。非常に簡単です。「img」タグに「@2x」画像を読み込み、「img」タグの「width」と「height」属性値を通じて画像を拡大縮小し、通常の画像のサイズを実現します。

翻訳者の手話:フロントエンド技術のブログ記事を翻訳するのは今回が初めてです。翻訳はすべて原文に沿って行い、翻訳の過程で技術に関する私の個人的な理解を少し加えました。翻訳に間違いがありましたら、ご指摘ください。ありがとう!

<<:  Jenkinsを使用してプロジェクトを別のホストにデプロイするプロセス

>>:  CSS リスト モデルでのマーカー タグの使用

推薦する

Linux/Mac MySQL パスワードを忘れた場合のパスワード変更コマンドラインメソッド

すべての前提条件にはルート権限が必要です1. MySQLプロセスを終了する //Linux sudo...

JavaScript の構造化代入の一般的なシナリオと例 5 つ

目次序文1. データを抽出する2. エイリアス値3. 動的プロパティ4. オブジェクトの分解における...

WeChatアプレットのスケルトン画面の実装例

目次スケルトンスクリーンとはアプレットでスケルトン画面を生成する方法導入方法表示と非表示ユーザーエク...

ランダムロールコールテーブルを実装するためのネイティブJavaScript

この記事では、JavaScriptのランダムロールコールテーブルの具体的なコードを参考までに紹介しま...

ReactのsetStateがマクロタスクなのかマイクロタスクなのかについて詳しく話しましょう

目次序文面接官は適切な質問をしていますか? § React は setState をどのように制御し...

MySQL 8.0.11 のインストールと設定方法のグラフィックチュートリアル MySQL 8.0 の新しいパスワード認証方法

この記事では、参考までにMySQL8.0.11のインストールと設定方法、およびMySQL8.0の新し...

MySQL スローログ実践のまとめ

遅いログクエリ機能スロー ログ クエリの主な機能は、設定された時間しきい値を超える SQL ステート...

Linux で履歴レコードを表示し、タイムスタンプを追加するためのヒント

Linux で履歴レコードを表示し、タイムスタンプを追加するためのヒントbashに詳しい人なら、hi...

VS2019をMySQLデータベースに接続するプロセスと一般的な問題の概要

今日の午後からVS2019をMySQLで使えるのではないかと思い、いろいろ環境構築を始めました。プロ...

Navicat の MySQL へのリモート接続が遅い理由の詳細な説明

最終的な解決策は最後の写真にありますリモート データベース ( Linux システム) に接続したと...

Docker を使用した RabbitMQ 環境のデプロイの詳細な紹介

前提条件: Dockerはすでにインストールされています1. 画像を見つける(方法は2つあります) ...

Node.jsとDenoの比較

目次序文Denoとは何ですか? Node.jsとの比較建築ESモジュール依存関係の管理TypeScr...

MySQL 5.7.19 Winx64 ZIP アーカイブのインストールと使用に関する問題の概要

今日はMySQLのインストール方法を学びましたが、その過程でいくつか問題が発生しました。関連記事をい...

WeChat アプレット学習 WXS 使用方法チュートリアル

wxsとは何ですか? wxs (WeiXin Script) は、小規模プログラム用のスクリプト言語...

nginx で同時接続リクエストの数を制限する方法

導入同時接続数を制限するモジュールは http_limit_conn_module です。アドレス:...