Image
Alexa Imageレスポンシブ対応コンポーネント(AlexaImage)は、画像を表示します。標準的なアスペクト比(縦長や円形など)と、角丸などの効果を使用して画像を表示できます。
互換性
AlexaImageは、alexa-viewport-profilesパッケージのすべての標準Viewportプロファイルで動作するように設計されています。次のプロファイルに対応しています。
- すべての円形デバイスプロファイル
- すべての横長デバイスプロファイル
- すべての縦長デバイスプロファイル
- すべてのモバイルプロファイル
- すべてのテレビプロファイル
サポートされていないViewportでAlexaImageを使用すると、予期しない結果になることがあります。Viewportプロファイルの詳細については、Viewportプロファイルを参照してください。
alexa-layoutsパッケージをインポートする
AlexaImageを使用するには、alexa-layoutsパッケージをインポートします。
alexa-layoutsパッケージの最新バージョンは1.7.0です。AlexaImageはバージョン1.1.0で導入されました。
このページの上部にあるその他のバージョンオプションをクリックすると、別のバージョンのAlexaImageドキュメントが表示されます。パラメーターの表には、それぞれのパラメーターが追加されたalexa-layoutsのバージョンが示されています。
AlexaImageのパラメーター
type以外のパラメーターはすべてオプションです。imageHeightとimageWidthは、どちらか一方を指定する必要がありますが、両方を指定する必要はありません。
| 名前 | 型 | デフォルト | 説明 | ウィジェットのサポート | 追加されたバージョン |
|---|---|---|---|---|---|
|
文字列 |
|
バウンディングボックス内での画像の配置方法を決定します。画像がバウンディングボックスよりも小さい場合に使用されます。指定できる値は、bottom、bottom-left、bottom-right、center、left、right、top、top-left、top-rightです。 |
サポートされません |
1.1.0 | |
|
文字列 |
|
画像のバウンディングボックスに使用するアスペクト比です。 |
サポートされません |
1.1.0 | |
|
ブール値 |
|
|
サポートされません |
1.1.0 | |
|
— |
画像のバウンディングボックスの高さです。画像は、この高さに収まるように |
サポートされません |
1.1.0 | ||
|
文字列 |
|
バウンディングボックス内に収まるように画像を拡大縮小する方法を決定します。指定できる値は、none、fill、best-fit、best-fill、best-fit-downです。 |
サポートされません |
1.1.0 | |
|
— |
画像のバウンディングボックスの幅です。画像は、この幅に収まるように |
サポートされません |
1.1.0 | ||
|
|
文字列 |
画像を説明する文字列です。ユーザーがこのコンポーネントを選択すると、ボイスオーバーでこの文字列が読み上げられます。 |
サポートされません |
1.7.0 | |
|
|
配列 |
— |
このコンポーネントにバインドするentityデータの配列です。 |
サポートされません |
1.2.0 |
|
|
数値 |
0.3 |
グラデーションの |
サポートされません |
1.6.0 |
|
|
ブール値 |
|
|
サポートされません |
1.1.0 |
|
|
ブール値 |
|
|
サポートされません |
1.3.0 |
|
|
文字列 |
— |
画像のURIです。 |
サポートされません |
1.1.0 |
|
|
ブール値 |
|
|
サポートされません |
1.6.0 |
|
|
文字列 |
— |
常に |
サポートされません |
1.1.0 |
imageHeight、imageWidth
これらのパラメーターは、画像のバウンディングボックスの高さと幅を設定するディメンションです。AlexaImageは、imageScaleオプションに従って画像がボックス内に収まるように画像サイズを調整し、imageAlignmentオプションの指定に従って画像を配置します。
少なくとも、imageHeightとimageWidthのどちらか一方を指定する必要があります。
- 両方を指定すると、画像のバウンディングボックスは指定されたディメンションになります。
- 一方だけを指定すると、
AlexaImageは指定されたimageAspectRatioに基づいてもう一方のディメンションを計算します。
imageAlignment
バウンディングボックス内での画像の配置方法を決定します。表示する画像がバウンディングボックスよりも小さい場合に使用されます。
imageAlignmentパラメーターには、次のオプションを指定できます。
| 名前 | 説明 |
|---|---|
bottom |
下揃えで左右中央に配置します。 |
bottom-left |
左下隅に配置します。 |
bottom-right |
右下隅に配置します。 |
center |
左右・上下の中央に配置します。 |
left |
左揃えで上下中央に配置します。 |
right |
右揃えで上下中央に配置します。 |
top |
上揃えで左右中央に配置します。 |
top-left |
左上隅に配置します。 |
top-right |
右上隅に配置します。 |
imageAspectRatio
imageHeightかimageWidthの一方だけを設定した場合の、画像のバウンディングボックスのアスペクト比とサイズを決定します。
imageAspectRatioパラメーターには、次のオプションを指定できます。
| 名前 | 比率 |
|---|---|
| square | 1:1 |
| round | 1:1 |
| standard_landscape | 4:3 |
| standard_portrait | 3:4 |
| poster_landscape | 3:2 |
| poster_portrait | 2:3 |
| widescreen | 16:9 |
一方のディメンション(imageHeightまたはimageWidth)だけを設定した場合、AlexaImageは、結果のバウンディングボックスが指定されたアスペクト比に一致するようにもう一方のディメンションのサイズを計算します。たとえば、imageWidthが300dpでimageAspectRatioがstandard_landscapeの場合、結果の画像のバウンディングボックスは、幅が300dpで高さが400dpの4:3のアスペクト比になります。
imageWidthとimageHeightの両方を指定すると、AlexaImageは、指定されたディメンションを画像のバウンディングボックスのサイズとして使用します。この場合、imageAspectRatioは無視されます。
imageAspectRatioは、画像のバウンディングボックスのアスペクト比を決定するものであることに注意してください。バウンディングボックスのサイズとアスペクト比は、ソース画像の実際のアスペクト比と一致する必要はありません。たとえば、imageAspectRatioをsquareに設定し、横長の画像を参照するimageSourceを渡しても構いません。この場合、imageScaleによって、その画像をどのようにボックス内に収めるかが決定されます。例については、画像のアスペクト比と拡大縮小の例を参照してください。
imageBlurredBackground
trueの場合、画像の背後にその画像のコピーをぼかして表示します。背景は、画像のバウンディングボックスが、サイズ調整された実際の画像よりも大きい場合に表示されます。これは通常、imageScale設定にbest-fitまたはbest-fit-downを使用した場合が当てはまります。また、拡大縮小オプションがnoneで、画像がバウンディングボックスより小さい場合にも背景が表示されます。fillとbest-fillの場合は、画像がバウンディングボックス全体を覆うようにサイズ調整されるため、これらの拡大縮小オプションではimageBlurredBackgroundは無視されます。
imageBlurredBackgroundプロパティは、画像のリストなどで、サイズが異なるさまざまな画像を一定のサイズのボックスに表示する場合に便利です。ぼかした背景でスペースを埋めることができるため、同じサイズのボックスを任意のサイズの画像に使用できます。
best-fitとbest-fillの違いについては、画像のアスペクト比と拡大縮小の例を参照してください。
imageScale
バウンディングボックス内に収まるように画像を拡大縮小する方法を決定します。imageScaleプロパティには、次のオプションを指定できます。
| 名前 | 説明 |
|---|---|
none |
画像のサイズは変更されません。AlexaImageは、imageAlignプロパティに従って画像をバウンディングボックス内に配置します。バウンディングボックスからはみ出た部分は切り取られます。 |
fill |
画像の幅をバウンディングボックスの幅に合わせ、画像の高さをバウンディングボックスの高さに合わせるように不均等にサイズを調整します。 |
best-fill |
バウンディングボックスが完全に覆われるように、画像のサイズを均等に拡大または縮小します。AlexaImageは、サイズ調整した画像をimageAlignプロパティに従ってバウンディングボックス内に配置します。 |
best-fit |
画像全体がバウンディングボックス内に収まるように、画像のサイズを均等に拡大または縮小します。AlexaImageは、サイズ調整した画像をimageAlignプロパティに従ってバウンディングボックス内に配置します。 |
best-fit-down |
best-fitと同じように画像のサイズを調整しますが、縮小のみを許可し、拡大は行いません。これにより、画像が粗く表示されるのを防ぐことができます。 |
best-fitとbest-fillの違いについては、画像のアスペクト比と拡大縮小の例を参照してください。
画像のアスペクト比と拡大縮小の例
以下の例では、同じソース画像を使用してさまざまなimageAspectRatioオプションの結果を示します。すべての例で次の横長の画像を使用しています。

imageAspectRatioの例で使用される横長の画像それぞれの例には次の設定が適用されます。
imageWidth- 300dp(imageHeightは設定されません)imageAlignment-center(best-fillでは無視されます)imageBlurredBackground-true(best-fillでは無視されます)imageRoundedCorner-falseimageAspectRatio-imageAspectRatioオプションのいずれか(表の行に記載)imageScale-best-fitまたはbest-fill(表の列見出しに記載)
これらの画像を生成するAPLドキュメントについては、AlexaImageの例を参照してください。
| imageAspectRatio | best-fit | best-fill |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
standard_landscape、poster_landscape、widescreenの例でも、それぞれのアスペクト比に合わせるには画像のサイズを調整する必要があることに注意してください。ソース画像は横長ですが、画像のアスペクト比は、imageAspectRatioで定義されている4:3(standard_landscape)、3:2(poster_landscape)、16:9(widescreen)のアスペクト比のいずれにも正確には一致しません。ソース画像はwidescreenオプションに最も近いため、その例で適用されるサイズ調整はわずかです。
AlexaImageの例
この例では、Viewportの中央に正方形を表示します。正方形はぼかした画像のコピーで塗りつぶされ、この正方形に収まるように画像全体のサイズが調整されます。imageAspectRatioプロパティとimageScaleプロパティを変更すると、画像のアスペクト比と拡大縮小の例と同様の効果を確認できます。
関連トピック
最終更新日: 2025 年 11 月 04 日









