すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:イメージのサイズ変更

最終更新日:Feb 17, 2025

GetObjectリクエストに画像サイズ変更パラメーターを追加して、画像のサイズを変更できます。

シナリオ

  • Webページのデザイン: webページのデザインとモバイルアプリの開発中に、さまざまな画面サイズと解像度のデバイスに表示するように画像を自動的に調整する必要があります。

  • ソーシャルメディア: ユーザーがソーシャルメディアプラットフォームにアップロードした画像のサイズはさまざまです。 より良いプレビュー体験を提供するために、プラットフォームは画像のサイズを変更する必要があります。

  • 画像認識と分析: コンピュータビジョンと機械学習では、処理効率を高めるために画像のサイズを変更する必要があります。

制限事項

制限事項

項目

説明

ソース画像

イメージ形式

JPG、PNG、BMP、GIF、WebP、TIFF、およびHEIC形式のみがサポートされています。

画像サイズ

ソースイメージのサイズは20 MBを超えることはできません。 クォータセンターでソースイメージのサイズの制限を変更することができます。 制限の変更を申請するには、次の手順を実行します。Object Storage Service (OSS) コンソールに移動します。 左側のナビゲーションウィンドウで、[セルフサービスツール] > [その他のツール] を選択の制限を変更します。

画像の幅と高さ

ソースイメージの幅または高さは30,000ピクセルを超えることはできません。 ソースイメージのピクセルの総数は250万を超えることはできません。

説明

GIF画像などの動画像の総画素数は、幅 × 高さ × 画像フレーム数の式に基づいて計算される。 PNG画像のような静止画像の総ピクセル数は、以下の式に基づいて計算される: 幅 × 高さ

サイズ変更された画像

画像のサイズ変更

サイズ変更された画像の幅または高さは16,384ピクセルを超えることはできません。 サイズ変更画像の総ピクセル数は16,777,216を超えることはできません。

課金

画像のサイズ変更機能を使用すると、次の請求可能なアイテムに対して課金されます。

  • API操作呼び出し料金: OSSのイメージサイズ変更機能は、GetObject操作を呼び出すことによって実装されます。 GETリクエストの数に基づいて、API操作呼び出し料金が請求されます。 詳細については、「API 操作呼び出し料金」をご参照ください。

  • トラフィック料金: 処理された画像のサイズに基づいて、インターネット経由のアウトバウンドトラフィックに対して課金されます。 詳細については、「トラフィック料金」をご参照ください。

ソースイメージのストレージクラスが標準でない場合、ソースイメージのサイズに基づいてイメージ処理料金も請求されます。 詳細については、「データ処理料金」をご参照ください。

演算方法

OSSでは、イメージURLに? x-oss-process=image/resize,parame_valueパラメーターを指定すると、OSSはイメージをリアルタイムで処理し、処理されたイメージを返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、parameはサイズ変更するパラメーターを指定し、valueはサイズ変更するパラメーターの値を指定します。 パラメーターのサイズ変更の詳細については、「パラメーターの説明」をご参照ください。 複数のパラメータを組み合わせて使用できます。

イメージのアクセス制御リスト (ACL) が公開されている場合は、イメージのURLにイメージのサイズ変更パラメーターを追加して、匿名ユーザーが処理されたイメージにアクセスできるようにすることができます。 イメージのACLがプライベートイメージの場合、リクエストに署名を含めて、OSS SDKを使用するか、API操作を呼び出してイメージを処理する必要があります。

パブリック読み取りイメージ

次の表では、? x-oss-process=image/resize,parame_valueパラメーターをパブリック読み取りイメージのURLの末尾に設定します。 parame_valueを実際のパラメーターと値に置き換えるだけです。

ソースイメージのURL

ソースイメージの処理に使用されるURL

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,p_50

プライベート画像

OSS SDKの使用

OSS SDKを使用して、画像のサイズ変更パラメーターを含む署名付きURLを生成し、署名付きURLを取得したユーザーが処理された画像に一時的にアクセスできるようにすることができます。 次のサンプルコードは、OSS SDKを使用して、? x-oss-process=image/parame_valueプライベートイメージのパラメータ:

Java

package com.aliyun.oss.demo;
import com.aliyun.oss.*;
import com.aliyun.oss.common.auth.*;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.GeneratePresignedUrlRequest;
import java.net.URL;
import java.util.Date;

public class Demo {
    public static void main(String[] args) throws Throwable {
        // Specify the endpoint of the region. In this example, the endpoint of the China (Hangzhou) region is used. Specify your actual endpoint. 
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured. 
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // Specify the name of the bucket. Example: examplebucket. 
        String bucketName = "examplebucket";
        // Specify the full path of the image that you want to process. If the image is not stored in the root directory of the bucket, you must specify the full path of the image. Example: exampledir/exampleobject.jpg.
        String objectName = "exampledir/exampleobject.png";
        // Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to cn-hangzhou. 
        String region = "cn-hangzhou";

        // Create an OSSClient instance. 
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
        OSS ossClient = OSSClientBuilder.create()
                .endpoint(endpoint)
                .credentialsProvider(credentialsProvider)
                .clientConfiguration(clientBuilderConfiguration)
                .region(region)
                .build();

        try {
            // Specify the image resizing parameters. Replace parame_value with the actual parameter values. For example, if you replace parame_value with p_50, the image is proportionally scaled down to 50% of the original size.
            String style = "image/resize,parame_value";
            // Set the validity period of the signed URL to 3600 seconds.
            Date expiration = new Date(new Date().getTime() + 3600 );
            GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, objectName, HttpMethod.GET);
            req.setExpiration(expiration);
            req.setProcess(style);
            URL signedUrl = ossClient.generatePresignedUrl(req);
            System.out.println(signedUrl);
        } catch (OSSException oe) {
            System.out.println("Caught an OSSException, which means your request made it to OSS, "
                    + "but was rejected with an error response for some reason.");
            System.out.println("Error Message:" + oe.getErrorMessage());
            System.out.println("Error Code:" + oe.getErrorCode());
            System.out.println("Request ID:" + oe.getRequestId());
            System.out.println("Host ID:" + oe.getHostId());
        } catch (ClientException ce) {
            System.out.println("Caught an ClientException, which means the client encountered "
                    + "a serious internal problem while trying to communicate with OSS, "
                    + "such as not being able to access the network.");
            System.out.println("Error Message:" + ce.getMessage());
        } finally {
            if (ossClient != null) {
                ossClient.shutdown();
            }
        }
    }
}

Python

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

# Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured. 
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# Specify the name of the bucket.
bucket = 'examplebucket'

# Specify the endpoint of the region in which the bucket is located. In this example, the endpoint of the China (Hangzhou) region is used.
endpoint = 'https://oss-cn-hangzhou.aliyuncs.com'

# Specify the ID of the Alibaba Cloud region in which the bucket is located.
region = 'cn-hangzhou'
bucket = oss2.Bucket(auth, endpoint, bucket, region=region)

# Specify the name of the image that you want to process. If the image is not stored in the root directory of the bucket, you must specify the full path of the image. Example: exampledir/exampleobject.jpg.
key = 'exampledir/exampleobject.png'

# Specify the expiration time. Unit: seconds.
expire_time = 3600

# Specify the image resizing parameters. Replace parame_value with the actual parameter values. For example, if you replace parame_value with p_50, the image is proportionally scaled down to 50% of the original size.
image_process = 'image/resize,parame_value'

# Generate a signed URL that includes Image Processing (IMG) parameters.
url = bucket.sign_url('GET', key, expire_time, params={'x-oss-process': image_process}, slash_safe=True)

# Print the signed URL.
print(url)

PHP

<?php
if (is_file(__DIR__ . '/../autoload.php')) 
    require_once __DIR__ . '/../autoload.php';
}
if (is_file(__DIR__ . '/../vendor/autoload.php')) {
    require_once __DIR__ . '/../vendor/autoload.php';
}

use OSS\Credentials\EnvironmentVariableCredentialsProvider;
use OSS\OssClient;

// Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured. 
$provider = new EnvironmentVariableCredentialsProvider();
// Specify the endpoint of the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the endpoint to https://oss-cn-hangzhou.aliyuncs.com. 
$endpoint = "yourEndpoint";
// Specify the name of the bucket. Example: examplebucket. 
$bucket= "examplebucket";
// Specify the full path of the object. Example: exampledir/exampleobject.jpg. Do not include the bucket name in the full path. 
$object = "exampledir/exampleobject.jpg";

$config = array(
        "provider" => $provider,
        "endpoint" => $endpoint,
        "signatureVersion" => OssClient::OSS_SIGNATURE_VERSION_V4,
        "region"=> "cn-hangzhou"
    );
    $ossClient = new OssClient($config);

// Generate a signed URL that includes IMG parameters. The validity period of the URL is 3,600 seconds. The signed URL can be directly used to access the image by using a browser. 
$timeout = 3600;

$options = array(
    // Specify the image resizing parameters. Replace parame_value with the actual parameter values. For example, if you replace parame_value with p_50, the image is proportionally scaled down to 50% of the original size.
    OssClient::OSS_PROCESS => "image/resize,parame_value");

$signedUrl = $ossClient->signUrl($bucket, $object, $timeout, "GET", $options);
print("rtmp url: \n" . $signedUrl);

Go

package main

import (
	"fmt"
	"os"

	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func HandleError(err error) {
	fmt.Println("Error:", err)
	os.Exit(-1)
}

func main() {
	// Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured. 
	provider, err := oss.NewEnvironmentVariableCredentialsProvider()
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	// Create an OSSClient instance. 
	// Specify the endpoint of the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the endpoint to https://oss-cn-hangzhou.aliyuncs.com. Specify your actual endpoint. 
	// Specify the region of the bucket. For example, if your bucket is located in the China (Hangzhou) region, set the region to cn-hangzhou. Specify your actual region. 
	clientOptions := []oss.ClientOption{oss.SetCredentialsProvider(&provider)}
	clientOptions = append(clientOptions, oss.Region("yourRegion"))
	// Specify the signature version.
	clientOptions = append(clientOptions, oss.AuthVersion(oss.AuthV4))
	client, err := oss.New("yourEndpoint", "", "", clientOptions...)
	if err != nil {
		HandleError(err)
	}

	// Specify the name of the bucket in which the source image is stored. Example: examplebucket. 
	bucketName := "examplebucket"
	bucket, err := client.Bucket(bucketName)
	if err != nil {
		HandleError(err)
	}
	// Specify the name of the image. If the image is not stored in the root directory of the bucket, you must specify the full path of the image. Example: exampledir/exampleobject.jpg. 
	ossImageName := "exampledir/exampleobject.png"
	// Generate a signed URL that includes IMG parameters. Set the validity period of the URL to 3,600 seconds. The maximum validity period of a signed URL is 32,400 seconds.
	// Specify the image resizing parameters. Replace parame_value with the actual parameter values. For example, if you replace parame_value with p_50, the image is proportionally scaled down to 50% of the original size.
	signedURL, err := bucket.SignURL(ossImageName, oss.HTTPGet, 3600, oss.Process("image/resize,parame_value"))
	if err != nil {
		HandleError(err)
	} else {
		fmt.Println(signedURL)
	}
}

次のサンプルコードは、署名付きURLを生成する方法の例を示しています。

https://examplebucket.oss-cn-hangzhou.aliyuncs.com/exampledir/exampleobject.png?x-oss-process=image%2Fresize%2Cp_50&x-oss-date=20241111T113707Z&x-oss-expires=3600&x-oss-signature-version=OSS4-HMAC-SHA256&x-oss-credential=LTAI********************%2F20241111%2Fcn-hangzhou%2Foss%2Faliyun_v4_request&x-oss-signature=6fd07a2ba50bf6891474dc56aed976b556b6fbcd901cfd01bcde5399bf4802cb

他のプログラミング言語のOSS SDKを使用して画像のサイズを変更する方法については、「概要」をご参照ください。

OSS APIの使用

ビジネスで高度なカスタマイズが必要な場合は、OSS APIを直接呼び出すことができます。 API操作を直接呼び出すには、コードに署名計算を含める必要があります。 承認ヘッダーの計算方法については、「 (推奨) 承認ヘッダーにV4署名を含める」をご参照ください。

GetObject操作に画像のサイズ変更パラメーターを追加して、画像のサイズを変更できます。 詳細については、「GetObject」をご参照ください。

GET /oss.jpg?x-oss-process=image/resize,p_50 HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: SignatureValue

パラメータ説明

アクション: resize

比例スケーリング

pパラメーターを使用して、画像の比例スケーリングを指定できます。

パラメーター

説明

p

画像のサイズを変更する割合を指定します。

1から1000。

100より小さい値は、イメージが縮小されることを指定します。 100より大きい値は、イメージが拡大されることを指定します。

指定した幅と高さに基づいて画像のサイズを変更する

wパラメーターとhパラメーターを使用して、画像のサイズを変更する幅と高さを指定し、mパラメーターを使用してサイズ変更アクションのタイプを指定できます。 これにより、さまざまなレイアウト要件を満たすことができます。 サイズを変更した画像の長辺または短辺の長さを制限する場合は、lまたはsパラメーターを使用します。 イメージをスケールアップする場合は、limit_0パラメーターを追加する必要があります。

パラメーター

説明

w

画像のサイズを変更する幅を指定します。

1から16384。

h

画像のサイズを変更する高さを指定します。

1から16384。

m

サイズ変更アクションのタイプを指定します。

  • lfit (デフォルト): 指定された幅と高さに基づいて、ソースイメージを長方形の最大サイズに比例的に拡大縮小します。

  • mfit: 指定された幅と高さに基づいて、長方形をカバーできるサイズにソースイメージを比例的に拡大縮小します。

  • fill: 指定された幅と高さに基づいて長方形を覆うことができるサイズにソース画像を比例的に拡大縮小し、中央から指定された幅と高さまで画像をトリミングします。

  • pad: 指定された幅と高さに基づいて、ソースイメージを長方形の可能な最大サイズに比例的に拡大縮小し、長方形の空きスペースを埋めて、必要なサイズの最終イメージを生成します。

  • fixed: 固定幅と高さに基づいてソースイメージのサイズを強制的に変更します。

サイズ変更画像の説明については、「サイズ変更画像のサイズを計算する方法」をご参照ください。

説明

mパラメーターの値とwまたはhパラメーターの値を指定した場合、lまたはsパラメーターの設定は有効になりません。

l

画像のサイズを変更する長辺の長さを指定します。

説明

長辺とは、元のサイズと目標サイズとの比が大きい辺を指す。 例えば、ソース画像が100 × 200ピクセルから100 × 100ピクセルにサイズ変更される場合、オリジナル対ターゲット比は2 (200/100) 及び1 (100/100) である。 2が1より大きいとすると、元々200ピクセルであった辺が長辺であり、元々100ピクセルであった辺が短辺である。

1から16384。

s

画像のサイズを変更する短辺の長さを指定します。

1から16384。

制限

ターゲットイメージの解像度がソースイメージの解像度よりも高い場合にイメージのサイズを変更するかどうかを指定します。

重要

サイズ変更されたイメージのサイズがソースイメージのサイズより大きい場合、ソースイメージが返されます。 イメージをスケールアップする場合は、limit_0パラメーターを追加します。

  • 1 (デフォルト): ソースイメージの解像度に基づいて処理されたイメージを返します。 返されるイメージのサイズは、ソースイメージのサイズとは異なる場合があります。

  • 0: 指定したパラメータに基づいてソースイメージのサイズを変更します。

説明

GIFイメージのサイズは、指定された幅と高さに基づいてのみ縮小できます。

カラー

サイズ変更タイプをpadに設定した場合、空のスペースを塗りつぶす色を選択できます。

RGBカラー値。 例えば、000000は黒を指定し、FFFFFFは白を指定する。

デフォルト値: FFFFFF

説明
  • サイズ変更後の画像の幅または高さのみを指定する場合は、次の項目に注意してください。

    • サイズ変更タイプをlfit、mfit、またはfixedに設定すると、OSSはソースイメージのサイズを比例的に変更します。 たとえば、ソースイメージの高さを256 × 144ピクセルから100ピクセルにサイズ変更すると、ソースイメージの幅は178ピクセルにサイズ変更されます。

    • サイズ変更タイプをpadまたはfillに設定した場合、OSSは指定された値に基づいてソースイメージのサイズを変更します。 たとえば、ソースイメージの高さを256 × 144ピクセルから100ピクセルにサイズ変更すると、ソースイメージの幅も100ピクセルにサイズ変更されます。

  • lパラメーターとsパラメーターのいずれか一方のみを指定した場合、OSSは指定された値に基づいてソースイメージの指定された辺のサイズを変更し、もう一方の辺を元のアスペクト比に基づいて自動的に調整します。 この場合、mパラメーターの設定は有効になりません。

  • lパラメーターとsパラメーターを同時に指定すると、ソースイメージのサイズ変更中に元のアスペクト比が維持されます。 この場合、mパラメーターの設定が有効になります。 サイズ変更タイプを指定しない場合、デフォルトでlfitが使用されます。

サイズ変更画像のサイズを計算する方法

ソースイメージのサイズ

指定されたイメージサイズ変更パラメーター

サイズ変更タイプ

サイズ変更された画像のサイズ

200 × 100ピクセル

150 × 80ピクセル

lfit (デフォルト)

OSSは、指定された幅と高さに基づいて、長方形の最大サイズに比例してソースイメージのサイズを変更します。

150 × 75ピクセル

lfit

mfit

OSSは、指定された幅と高さの長方形を超えた最小サイズにソースイメージのサイズを比例的に変更します。

160 × 80ピクセル

mfit

fill

OSSは、指定された幅と長さの長方形を超えて広がる可能な最小サイズにソース画像を比例的にサイズ変更し、中央から指定された幅と高さまで画像をトリミングします。

150 × 80ピクセル

fill

パッド

OSSは、指定された幅と長さの長方形に収まる最大サイズにソースイメージのサイズを比例的に変更し、指定された幅と高さに基づいて長方形の空きスペースを埋めて、必要なサイズの最終イメージを生成します。

150 × 80ピクセル

pad

固定

OSSは、指定された幅と高さに基づいてソースイメージのサイズを強制的に変更します。 サイズ変更された画像のアスペクト比がソース画像のアスペクト比と異なる場合、画像は歪んでいる。

150 × 80ピクセル

fixed

説明

mパラメーターをlfitまたはmfitに設定すると、比率が小数の場合、ソースイメージのアスペクト比は整数に丸められます。

画像を比例的に縮小する

を追加すると、? x-oss-process=image/resize,p_{percentage}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された割合に基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、pは画像のサイズ変更を行う割合を指定します。 p1 ~ 100の範囲内の値に設定した場合、画像は指定された割合に基づいて縮小されます。 pの値は正の整数でなければなりません。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,p_50パラメーターをソースイメージのURLに追加して、イメージを元のサイズの50% に縮小します。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,p_50

画像サイズ

2,500x1,875ピクセル

1,250x938ピクセル

画像を比例的にスケールアップする

を追加すると、? x-oss-process=image/resize,p_{percentage}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された割合に基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、pは画像のサイズ変更を行う割合を指定します。 p100〜1000の範囲内の値に設定すると、指定した割合に基づいて画像が拡大されます。 pの値は正の整数でなければなりません。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,p_120パラメータがソースイメージのURLに追加され、イメージを元のサイズの120% に拡大します。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,p_120

画像サイズ

2,500x1,875ピクセル

3,000x2,250ピクセル

指定した幅に基づいて画像をスケールダウンする

を追加すると、? x-oss-process=image/resize,w_{width}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された幅に基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、wは画像のサイズ変更先の幅を指定します。 wの値は、1〜16384の範囲内の正の整数でなければなりません。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,w_200パラメータがソースイメージのURLに追加され、幅が200ピクセルに固定され、高さが自動的に縮小されます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,w_200

画像サイズ

2,500x1,875ピクセル

200x150ピクセル

指定した幅に基づいて画像をスケールアップする

を追加すると、? x-oss-process=image/resize,w_{width}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された幅に基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、wは画像のサイズ変更先の幅を指定します。 wの値は、1〜16384の範囲内の正の整数でなければなりません。

重要

サイズ変更されたイメージのサイズがソースイメージのサイズより大きい場合、ソースイメージが返されます。 イメージをスケールアップする場合は、limit_0パラメーターを追加します。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,w_3000,limit_0パラメータがソースイメージのURLに追加され、幅が3,000ピクセルに固定され、高さが自動的に拡大されます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,w_3000,limit_0

画像サイズ

2,500x1,875ピクセル

3,000x2,250ピクセル

指定した高さに基づいて画像をスケールダウンする

を追加すると、? x-oss-process=image/resize,h_{height}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された高さに基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、hは画像のサイズを変更する高さを指定します。 hの値は、1〜16384の範囲内の正の整数でなければなりません。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,h_100パラメータがソースイメージのURLに追加され、高さが100ピクセルに固定され、幅が自動的に縮小されます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,h_100

画像サイズ

2,500x1,875ピクセル

133x100ピクセル

指定した高さに基づいて画像をスケールアップする

を追加すると、? x-oss-process=image/resize,h_{height}パラメーターを画像のURLの末尾に設定すると、OSSは画像をリアルタイムで処理し、指定された高さに基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、hは画像のサイズを変更する高さを指定します。 hの値は、1〜16384の範囲内の正の整数でなければなりません。

重要

サイズ変更されたイメージのサイズがソースイメージのサイズより大きい場合、ソースイメージが返されます。 イメージをスケールアップする場合は、limit_0パラメーターを追加します。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,h_2000,limit_0パラメータがソースイメージのURLに追加され、高さが2,000ピクセルに固定され、幅が自動的に縮小されます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,h_2000,limit_0

画像サイズ

2,500x1,875ピクセル

2,667x2,000ピクセル

長辺の指定された長さに基づいて画像のサイズを変更する

説明

長辺とは、元のサイズと目標サイズとの比が大きい辺を指す。 例えば、ソース画像が100 × 200ピクセルから100 × 100ピクセルにサイズ変更される場合、オリジナル対ターゲット比は2 (200/100) 及び1 (100/100) である。 2が1より大きいとすると、元々200ピクセルであった辺が長辺であり、元々100ピクセルであった辺が短辺である。

指定した長辺の長さに基づいて画像のサイズを変更すると、元のアスペクト比に基づいて短辺の長さが自動的に調整されます。 この場合、mパラメーターの設定は有効になりません。

image/resize,l_{length} パラメーターを画像のURLの末尾に追加すると、OSSは画像をリアルタイムで処理し、長辺の長さに基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、lは長辺の長さに基づいて画像のサイズ変更を指定します。 lの値は、1〜16384の範囲内の正の整数でなければなりません。

重要

サイズ変更されたイメージのサイズがソースイメージのサイズより大きい場合、ソースイメージが返されます。 イメージをスケールアップする場合は、limit_0パラメーターを追加します。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,l_200パラメーターをソースイメージのURLに追加して、長辺の長さを200ピクセルに固定し、短辺の長さを自動的にスケーリングします。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,l_200

画像サイズ

2,500x1,875ピクセル

200x150ピクセル

指定した短辺の長さに基づいて画像のサイズを変更する

指定した短辺の長さに基づいて画像のサイズを変更すると、元のアスペクト比に基づいて長辺の長さが自動的に調整されます。 この場合、mパラメーターの設定は有効になりません。

image/resize,s_{length} パラメーターを画像のURLの末尾に追加すると、OSSは画像をリアルタイムで処理し、短辺の長さに基づいて画像のサイズを比例的に変更してから、処理された画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、sは長辺の長さに基づいて画像のサイズ変更を指定します。 sの値は、1 ~ 16384の範囲内の正の整数である必要があります。

重要

サイズ変更されたイメージのサイズがソースイメージのサイズより大きい場合、ソースイメージが返されます。 イメージをスケールアップする場合は、limit_0パラメーターを追加します。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,s_200,limit_0パラメータをソースイメージのURLに追加して、短辺の長さを200ピクセルに固定し、長辺の長さを自動的にスケーリングします。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

ソースイメージの処理に使用されるURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,s_200

画像サイズ

2,500x1,875ピクセル

267x200 px

画像のサイズを固定の幅と高さに変更し、空きスペースを埋める

この方法を使用して画像のサイズを変更すると、画像の元の縦横比が保持され、画像の幅と高さが固定値に調整されます。

image/resize,m_pad,w_{height},h_{height},color_{RGB} パラメーターを画像のURLの末尾に追加すると、OSSは画像をリアルタイムで処理し、処理済みの画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定します。m_padは、指定された幅と高さに基づいて長方形に収まる可能な最大サイズに画像のサイズ変更を指定します。colorは、指定された幅と高さに基づいて空きスペースを埋めるために使用される色を指定し、必要なサイズの最終画像を生成します。wは画像のサイズを変更する幅を指定し、hは画像のサイズを変更する高さを指定します。 カラーパラメータを指定しない場合、デフォルトでは白が使用されます。 wおよびhの値は、1〜16384の範囲内の正の整数でなければならない。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,m_pad,w_100,h_100パラメータがソースイメージのURLに追加され、幅と高さが100ピクセルに固定されます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,m_pad,w_100,h_100

画像サイズ

2,500x1,875ピクセル

100x100 px

次の例では、? x-oss-process=image/resize,m_pad,w_100,h_100,color_FF0000パラメータがソースイメージのURLに追加され、幅と高さが100ピクセルに固定され、空のスペースが赤い色で塗りつぶされます。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,m_pad,w_100,h_100,color_FF0000

画像サイズ

2,500x1,875ピクセル

100x100 px

イメージのサイズを固定の幅と高さに変更し、イメージを中央から指定した幅と高さにトリミングします。

この方法を使用して画像のサイズを変更すると、ターゲットの縦横比の幅と高さに基づいて画像が比例的に拡大縮小され、ソース画像の縦横比がサイズ変更された画像の縦横比と一致しない場合は、中心から指定された幅と高さまでトリミングされます。

image/resize,m_fill,w_{height},h_{height} パラメーターを画像のURLの末尾に追加すると、OSSは画像をリアルタイムで処理し、指定された幅と高さに基づいて画像のサイズを変更し、処理した画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、m_fillは、指定された幅と高さの長方形を超えて、中心から指定された幅と高さにトリミングされる最小サイズに画像のサイズ変更を指定します。wは、画像のサイズを変更する幅を指定します。hは、画像のサイズを変更する高さを指定します。 wおよびhの値は、1〜16384の範囲内の正の整数でなければならない。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,m_fill,w_100,h_100パラメータがソース画像のURLに追加され、幅と高さを100ピクセルに固定し、画像を中央から指定された幅と高さにトリミングします。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,m_fill,w_100,h_100

画像サイズ

2,500x1,875ピクセル

100x100 px

指定した高さと幅に基づいて画像のサイズを強制的に変更する

この方法を使用すると、ソースイメージの縦横比に関係なく、イメージは指定された幅と高さに強制的にサイズ変更されます。 これは、指定されたサイズに合わせて画像が引き伸ばされたりスケーリングされたりするため、画像の歪みを引き起こします。

image/resize,m_fixed,w_{height},h_{height} パラメーターを画像のURLの末尾に追加すると、OSSは画像をリアルタイムで処理し、指定された幅と高さに基づいて画像のサイズを強制的に変更し、処理した画像を返します。 パラメーターで、image/resizeは画像のサイズ変更を指定し、m_fixedは画像を指定し、wは画像のサイズ変更先の幅を指定し、hは画像のサイズ変更先の高さを指定します。 wおよびhの値は、1〜16384の範囲内の正の整数でなければならない。

サイズ変更画像のサンプル

次の例では、? x-oss-process=image/resize,m_fixed,w_100,h_100パラメータがソースイメージのURLに追加され、イメージを100x100ピクセルに強制的に縮小します。

項目

ソースイメージ

処理されたイメージ

画像プレビュー

image

image

URL

ソースイメージのURL: https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,m_fixed,w_100,h_100

画像サイズ

2,500x1,875ピクセル

100x100 px

よくある質問

画像のサイズ変更パラメータが有効にならない場合はどうすればよいですか?

Alibaba Cloud Content Delivery Network (CDN) ドメイン名を使用しているかどうか、およびパラメーターキャッシュ無視機能を無効にしているかどうかを確認します。 CDNでパラメーターフィルター機能を有効にすると、リクエストURLの疑問符 (?) に続くすべてのクエリパラメーターが削除され、example.jpgなどのソースオブジェクトにアクセスされます。 オブジェクトが正しくキャッシュされ、アクセスされるようにするには、CDNのパラメータキャッシュ無視機能を無効にします。 詳細については、「パラメーターの無視」をご参照ください。 CDNでパラメーターキャッシュ無視機能を無効にすると、パラメーターが異なるURLは独立したリクエストとして扱われます。 これにより、OSSに転送されるリクエストの数が増加し、キャッシュ効率に影響を与える可能性があります。

指定した幅または高さに基づいて画像を拡大できない場合はどうすればよいですか?

指定した幅または高さに基づいて画像を拡大するには、limitパラメーターを0に設定します。 そうしないと、イメージのスケールアップに失敗します。

たとえば、次のURLは、画像の高さを1,875ピクセルから2,000ピクセルに拡大するために使用されます。

https://oss-console-img-demo-cn-hangzhou-3az.oss-cn-hangzhou.aliyuncs.com/example1.jpg?x-oss-process=image/resize,h_2000,limit_0

処理した画像を永続的に保存する方法?

デフォルトでは、OSSはIMGリクエストのパラメーターに基づいてソースイメージを処理しますが、処理されたイメージは保存しません。 サムネイル、トリミングされた画像、フォーマット変換された画像など、同じ処理結果を表示する場合は、リクエストにsaveasパラメーターを追加し、その画像を特定のバケットに保存することで、処理済みの画像を保存できます。 詳細については、「処理済みイメージの保存」をご参照ください。

イメージのACLが非公開の場合、サイズ変更されたイメージにアクセスするにはどうすればよいですか?

画像にアクセスするには、画像のURLに署名情報を追加します。 詳細については、「署名付きURLを使用したオブジェクトのダウンロード」をご参照ください。

イメージのサイズ変更リクエストのアウトバウンドトラフィック料金は、ソースイメージまたはサイズ変更されたイメージに基づいて計算されますか。

画像サイズ変更要求のアウトバウンドトラフィック料金は、サイズ変更された画像に基づいて計算されます。 たとえば、20 MBのイメージを2 MBのイメージにサイズ変更するようにリクエストした場合、リクエストに対して生成されるアウトバウンドトラフィック料金は、サイズ変更されたイメージ (2 MB) に基づいて計算されます。

WebP形式のソースイメージをデコードするときに例外が発生した場合はどうすればよいですか?

WebP形式のソースイメージをデコードするときに例外が発生した場合、ソースイメージは動的イメージである可能性があります。 例外をトラブルシューティングするには、

WebPダイナミックイメージデコード機能を有効にします。