レンダリング API 概要
imgix レンダリング API は、画像を最適化し、ページの速度を向上させ、レスポンシブデザインを簡単に作成するのに役立ちます。
これらのパラメーターを画像の URL に追加することで、画像を強化したり、リサイズやトリミングしたり、圧縮したり、パフォーマンス向上のためにフォーマットを変更したり、複雑な構成を作成したり、有用なメタデータを抽出したりできます。これらの操作は、プログラムでリアルタイムに画像ライブラリ全体に適用でき、バッチ処理や複数の画像のコピーをデバイスのブレークポイントに合わせる必要がありません。
このドキュメントのこのセクションでは、レンダリング API で利用可能なすべてのパラメーターを説明し、実験できるライブな例を含めています。特定のユースケースに実装する方法の詳細については、チュートリアルセクションをご覧ください。サービスを設定した後に画像を提供する基本的な方法について学ぶには、画像の提供ガイドを読んでください。
Base64 のバリアント
すべての imgix パラメーター値(auto
と ch
を除く)は、URL 安全な Base64 スキームを使用してエンコードできます。
この方法を使用するには、値を事前にエンコードして、パラメーター名の末尾に 64 を追加します。
例えば、txt は txt64 になります。
これは、RFC 4648 で定義されている URL 安全なアルファベットを使用し、最終的なエンコードされた値からパディング文字(=)を省略する必要があることに注意してください。
次に例を示します:
?txt=Hello%2C%20World!
上記がBase64エンコードされた場合は、次のようになります。
?txt64=SGVsbG8sIFdvcmxkIQ
Base64 エンコードされたパラメーターを生成することは、多くの言語で簡単です。いくつかのコード例を紹介します:
const encodedString = btoa('Hello, World!')
.replace(/\+/g, '-')
.replace(/\//g, '_')
.replace(/=+$/, '');
console.log(encodedString);
//=> 'SGVsbG8sIFdvcmxkIQ'
多くの imgix クライアントライブラリは、Base64 バリアントパラメーターに渡された文字列を自動的にエンコードします。 使用しているライブラリについての詳細な実装については、それぞれのライブラリをチェックしてください。
色
一部のパラメーター、例えば bg
や border
のようなものは、色を値として受け入れます。色は次のように表現できます:
- 色のキーワード(“orange” や “lightsteelblue” など)
- 3桁(RGB)、4桁(ARGB)の16進数、または 6桁(RRGGBB)または 8桁(AARRGGBB)の16進数。4桁または 8桁の 16 進数値の “A” は、色のアルファ透過度を表します。透過性をサポートしていない(JPEG など)画像フォーマットを出力する場合は、この値を非透明の色に設定します。
メタデータ
imgix は、通常、imgix によって処理された画像からほとんどのメタデータ(EXIF データ、ジオロケーションなど)を削除します。唯一の例外は、パススルーで提供される画像です。
画像に保存されている著作権や IPTC メタデータを保持する必要がある場合は、お問い合わせください。
制限
- キャンバスサイズ: 最大サポートされるキャンバスサイズは 8192px × 8192px です。画像がこの制限よりも大きい場合、その他の imgix の操作が行われる前に、制限内に収まるようにリサイズされます。より大きなキャンバスサイズが必要な場合は、お問い合わせください。
- 入力ファイルサイズ: 最大受け入れ可能な入力ファイルサイズは 500MB です。画像がこの制限よりも大きい場合、
413 Entity Too Large
エラーが発生する場合があります。より大きな入力ファイルサイズが必要な場合は、お問い合わせください。