Topik ini menjelaskan fungsi ST_AsPNG, yang mengonversi raster menjadi gambar PNG bertipe BYTEA.
Sintaksis
bytea ST_AsPNG(raster raster_obj,box extent,
integer pyramidLevel default 0,
cstring bands default '',
cstring option default '');Parameter
| Parameter | Deskripsi |
| raster_obj | Raster yang ingin Anda konversi. |
| extent | Cakupan gambar. Sistem koordinat geografis digunakan secara default. |
| pyramidLevel | Lapisan piramida tempat gambar berada. Nilai valid dimulai dari 0. Nilai default: 0. |
| bands | Daftar band berdasarkan mana Anda ingin mendapatkan gambar. Nilai valid dimulai dari 0. Contoh: '0-2' dan '1,2,3'. Parameter ini kosong secara default. Gambar dalam format PNG. Oleh karena itu, atur parameter ini ke 1, 2, 3, atau 4. Tiga band pertama digunakan secara default. |
| option | Opsi yang digunakan untuk mengonversi string berformat JSON. |
Tabel berikut menjelaskan bidang dalam parameter option.
| Bidang | Deskripsi | Tipe | Nilai default | Catatan pengaturan |
| nodata | Menentukan apakah akan menggunakan nilai NoData. | bool | false |
|
| nodataValue | Nilai NoData dari raster. | integer | 0 | Jika parameter nodata diatur ke true, Anda harus menentukan nilai NoData. |
| rast_coord | Menentukan apakah kotak input ditentukan dengan menggunakan koordinat piksel. | bool | false | Jika koordinat piksel digunakan, x menunjukkan nomor kolom piksel dan y menunjukkan nomor baris piksel. Baik nomor kolom maupun nomor baris dimulai dari 0. |
| strength | Menentukan apakah akan menerapkan peningkatan dalam tampilan. | string | none | Nilai valid:
|
| quality | Kualitas kompresi. | integer | 75 | Nilai valid: 1 hingga 100. |
Deskripsi
- Fungsi ini mengembalikan gambar PNG bertipe BYTEA.
- Data hasil pemotongan hingga 100 MB dapat disimpan dalam cache secara default. Hal ini menunjukkan bahwa hingga 100 MB data dapat dikembalikan. Untuk menyesuaikan batas ukuran gambar, Anda dapat menentukan ukuran cache menggunakan parameter ganos.raster.clip_max_buffer_size.
- Nilai berikut valid untuk parameter ini:
- 1: Raster memiliki satu band, berdasarkan mana raster dapat dikonversi menjadi gambar skala abu-abu.
- 2: Raster memiliki satu band, berdasarkan mana raster dapat dikonversi menjadi gambar skala abu-abu, serta band Alfa.
- 3: Raster memiliki tiga band, yaitu band R, band G, dan band B.
- 4: Raster memiliki empat band, yaitu band R, band G, band B, dan band Alfa.
Contoh
--Tentukan ukuran data hasil pemotongan yang dapat disimpan dalam cache.
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box)
FROM raster_table
WHERE id =1;
--Tentukan lapisan piramida tempat gambar berada.
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box,
1)
FROM raster_table
WHERE id =1;
--Tentukan rentang pemotongan sebuah band.
SELECT ST_AsPNG(raster_obj,
'(-180,-90), (0,0)'::Box,
1,
'0-2')
FROM raster_table
WHERE id =1;
--Tentukan untuk menerapkan peningkatan dengan menggunakan peregangan berdasarkan nilai statistik.
SELECT ST_AsPNG(rast,
'(-180,-90), (0,0)'::Box,
0,
'',
'{"nodata":"false", "nodatavalue":"0","rast_coord":"false", "strength":"stats", "quality":"75"}')
FROM raster_table
WHERE id =1;