1. レンディション

レンディション

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SDK を使用すると、レンディション情報の取得やレンディション バイナリのダウンロードが可能です。

[!警告] レンディションはスクリプト SDK ではサポートされていません。

レンディションの取得

レンディションの取得は、エンティティ オブジェクト (IEntity) を介して行われます。 すべてのエンティティがレンディションをサポートしているわけではありませんが、たとえば、M.Asset はサポートしています。

レンディションには、IEntity.Renditionsプロパティを介してアクセスできます。これは、IRenditionオブジェクトのリストを返します。 レンディションは、レンディション名とレンディション アイテムで構成されます。 既定では、アセットのレンディションは次のように名前が付けられています (カスタマイズすることはできます)。

  • 「bigthumbnail」
  • 「downloadAlternative」
  • 「downloadOriginal」
  • 「downloadPreview」
  • 「metadata」
  • 「pdf」
  • 「preview」
  • 「thumbnail」

レンディション アイテム (IRendition.Items) の数は、ファイルとレンディションによって異なります。 画像は、1 つまたは複数のアイテムに処理できます。 たとえば、画像のレイヤーごとにアイテムが存在する場合があります。 PDF ファイルには、ページごとにレンディション アイテムを含めることができます。

レンディションをサポートしないエンティティは、空のレンディション リストを返します。

レンディションのダウンロード

レンディションのダウンロードは、IRendition オブジェクトおよび IRenditionItemオブジェクトを通してダウンロードできます。 レンディションは、IRenditionItem オブジェクトの Href プロパティを使用して手動でダウンロードできますが、指定したファイルパスへの直接ダウンロードまたはストリームとしてのダウンロードもサポートしています。

次の例では、元のファイル (「downloadOriginal」) の最初のレンディション アイテムが id 8626 のアセットからダウンロードされます。directory 変数は、レンディションが保存されるフォルダーです。

var asset = await client.Entities.GetAsync(8626);
var original = asset.GetRendition("downloadOriginal");
var rendition = original.Items.FirstOrDefault();

if (rendition != null)
{
    var filename = asset.GetPropertyValue<string>(Constants.Asset.FileName);
    var directory = @"C:\Users\Stylelabs\Desktop";
    var filepath = Path.Combine(directory, filename);
    await rendition.DownloadAsync(filepath);
}

[!注] SDK でレンディションを使用する前にアセットを処理する必要があります。 アセットがまだ処理されていない場合、IEntity.Renditions プロパティは空になります。 レンディションのステータスは、「Renditions」という名前のアセット プロパティで確認できます。これには JToken が含まれています。

この記事を改善するための提案がある場合は、 お知らせください!