Dalam Object Storage Service (OSS), gaya citra memungkinkan Anda melakukan serangkaian operasi pemrosesan citra, seperti mengubah ukuran, memotong, memutar, dan menambahkan watermark. Anda dapat membuat gaya citra untuk menentukan operasi tersebut, lalu menerapkannya pada citra di dalam bucket guna pemrosesan dan transformasi yang cepat.
Catatan
Untuk informasi selengkapnya mengenai parameter pemrosesan citra yang didukung oleh gaya citra, lihat Pemrosesan citra.
Topik ini menggunakan titik akhir publik wilayah China (Hangzhou). Jika Anda mengakses OSS dari layanan Alibaba Cloud lainnya yang berada di wilayah yang sama dengan OSS, gunakan titik akhir internal. Untuk informasi selengkapnya mengenai wilayah dan titik akhir OSS, lihat Wilayah dan titik akhir.
Topik ini memperoleh kredensial akses dari variabel lingkungan. Untuk informasi selengkapnya mengenai cara mengonfigurasi kredensial akses, lihat Konfigurasikan kredensial akses menggunakan OSS SDK untuk Python 1.0.
Topik ini membuat instans OSSClient menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS), lihat Inisialisasi.
Izin
Akun Alibaba Cloud secara default memiliki izin yang diperlukan untuk operasi gaya citra. Untuk melakukan operasi ini sebagai pengguna Resource Access Management (RAM) atau menggunakan STS, Anda harus memiliki izin yang sesuai:
Untuk membuat gaya citra, Anda harus memiliki izin
oss:PutStyle.Untuk mengkueri informasi tentang gaya citra tertentu di dalam bucket, Anda harus memiliki izin
oss:GetStyle.Untuk mengkueri semua gaya citra yang telah dibuat di dalam bucket, Anda harus memiliki izin
oss:ListStyle.Untuk menghapus gaya citra tertentu di dalam bucket, Anda harus memiliki izin
oss:DeleteStyle.
Untuk informasi selengkapnya, lihat Berikan kebijakan akses kustom kepada pengguna RAM.
Buat gaya citra
Anda dapat membuat hingga 50 gaya citra untuk satu bucket. Kode berikut menunjukkan cara membuat gaya citra:
# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Tentukan titik akhir wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur titik akhir menjadi https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Tentukan wilayah titik akhir tersebut. Contoh: cn-hangzhou. Parameter ini wajib jika Anda menggunakan algoritma signature V4.
region = "cn-hangzhou"
# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)
# Tentukan nama gaya citra, misalnya imagestyle.
style = 'imagestyle'
# Tentukan operasi gaya citra, misalnya mengubah ukuran citra menjadi lebar 200 piksel.
content = 'image/resize,w_200'
# Buat gaya citra.
result = bucket.put_bucket_style(style, content)
print('Gaya berhasil dibuat. Kode status: ' + str(result.status))Setelah membuat gaya citra, Anda dapat menggunakannya untuk memproses citra. Untuk informasi selengkapnya, lihat Gunakan gaya citra untuk memproses citra.
Kueri gaya citra tertentu
Kode berikut menunjukkan cara mengkueri informasi tentang gaya citra tertentu di dalam bucket.
# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, atur variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Atur endpoint ke titik akhir wilayah tempat bucket berada. Misalnya, untuk wilayah China (Hangzhou), atur titik akhir menjadi https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Atur region ke wilayah yang sesuai dengan titik akhir Anda, seperti cn-hangzhou. Catatan: Parameter ini wajib untuk signature V4.
region = "cn-hangzhou"
# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)
# Tentukan nama gaya citra, misalnya imagestyle.
style = 'imagestyle'
# Kueri informasi tentang gaya citra tertentu di bucket examplebucket.
result = bucket.get_bucket_style(style)
print('name: ' + result.name)
print('content: ' + result.content)Kueri semua gaya citra
Kode berikut menunjukkan cara mengkueri semua gaya citra yang telah dibuat di dalam bucket.
# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah diatur.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Tentukan titik akhir wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur titik akhir menjadi https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Tentukan wilayah yang sesuai dengan titik akhir tersebut, seperti cn-hangzhou. Catatan: Parameter ini wajib untuk signature V4.
region = "cn-hangzhou"
# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)
# Kueri semua gaya citra yang telah dibuat di bucket examplebucket.
result = bucket.list_bucket_style()
for sty in result.styles:
print('name: ' + sty.name)
print('content: ' + sty.content)Hapus gaya citra tertentu
Gunakan kode berikut untuk menghapus gaya citra tertentu dari bucket examplebucket.
# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, atur variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Atur endpoint ke titik akhir wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur endpoint menjadi https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Atur wilayah yang sesuai dengan titik akhir tersebut, seperti cn-hangzhou. Parameter ini wajib untuk signature V4.
region = "cn-hangzhou"
# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)
# Tentukan nama gaya citra, misalnya imagestyle.
style = 'imagestyle'
# Hapus gaya citra yang ditentukan.
result = bucket.delete_bucket_style(style)
print('Gaya berhasil dihapus. Status pengembalian: ' + str(result.status))Referensi
Untuk informasi selengkapnya mengenai operasi API untuk membuat gaya citra, lihat PutStyle.
Untuk informasi selengkapnya mengenai operasi API untuk mengkueri gaya citra tertentu di dalam bucket, lihat GetStyle.
Untuk informasi selengkapnya mengenai operasi API untuk menampilkan daftar semua gaya citra di dalam bucket, lihat ListStyle.
Untuk informasi selengkapnya mengenai operasi API untuk menghapus gaya citra tertentu di dalam bucket, lihat DeleteStyle.