名稱

ST_AsPNG — 將光柵圖磚所選的波段以單一可攜式網路圖形 (PNG) 影像(位元組陣列)傳回。如果光柵中有 1、3 或 4 個波段,且未指定任何波段,則會使用所有波段。如果有多個(2 個以上或 4 個以上)波段且未指定任何波段,則只會使用第 1 個波段。波段會對應到 RGB 或 RGBA 色彩空間。

概要

bytea ST_AsPNG(raster rast, text[] options=NULL);

bytea ST_AsPNG(raster rast, integer nband, integer compression);

bytea ST_AsPNG(raster rast, integer nband, text[] options=NULL);

bytea ST_AsPNG(raster rast, integer[] nbands, integer compression);

bytea ST_AsPNG(raster rast, integer[] nbands, text[] options=NULL);

說明

將光柵圖磚所選的波段以單一可攜式網路圖形影像 (PNG) 傳回。如果需要匯出較不常見的光柵類型,請使用 ST_AsGDALRaster。如果未指定波段,則會匯出前 3 個波段。此函式有許多變體,並有許多選項。如果未指定 srid,則會使用光柵的 srid。這些項目詳述如下

  • nband 用於單一波段匯出。

  • nbands 是要匯出的波段陣列(請注意,PNG 的最大值為 4),且波段的順序為 RGBA。例如,ARRAY[3,2,1] 表示將波段 3 對應到紅色、波段 2 對應到綠色,以及波段 1 對應到藍色。

  • compression 數值介於 1 到 9 之間。數字越高,壓縮程度越大。

  • options GDAL 選項的文字陣列,定義為 PNG(請參閱 ST_GDALDrivers 的 PNG 的 create_options)。對於 PNG,唯一有效的是 ZLEVEL(用於壓縮的時間量,預設為 6),例如 ARRAY['ZLEVEL=9']。不允許使用 WORLDFILE,因為函式必須輸出兩個輸出。如需更多詳細資訊,請參閱GDAL 光柵格式選項

可用性:2.0.0 - 需要 GDAL >= 1.6.0。

範例

SELECT ST_AsPNG(rast) As rastpng
FROM dummy_rast WHERE rid=2;

-- export the first 3 bands and map band 3 to Red, band 1 to Green, band 2 to blue
SELECT ST_AsPNG(rast, ARRAY[3,1,2]) As rastpng
FROM dummy_rast WHERE rid=2;