Name

ST_AsPNG — 将栅格平铺所选波段作为单个便携网络图形(PNG)图像(字节数组)返回。如果栅格中的1、3或4个标注栏未指定标注栏,则将使用所有标注栏。如果超过2个或4个标注栏但未指定标注栏,则仅使用标注栏1。标注栏映射到RGB或RGBA空间。

Synopsis

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。例如,数组[3,2,1]表示将波段3映射为红色,将波段2映射为绿色,将波段1映射为蓝色

  • compression 从1到9的数字。数字越大,压缩越大。

  • options 为PNG定义的GDAL选项的文本数组(查看PNG的CREATE_OPTIONS,共 ST_GDALDrivers )。对于PNG,有效的值仅为ZLEVEL(用于压缩的时间量--默认为6),例如数组[‘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;
                

另请参阅

ST_AsGDALRaster, ST_ColorMap, ST_GDALDrivers, Section 11.3, “使用PostGIS栅格构建自定义应用程序”