ST_AsGDALRaster — 以指定的GDAL栅格格式返回栅格平铺。栅格格式是编译后的库支持的格式之一。使用ST_GDALDrivers()获取您的库支持的格式列表。
bytea
ST_AsGDALRaster
(
raster
rast
, text
format
, text[]
options=NULL
, integer
srid=sameassource
)
;
返回指定格式的栅格平铺。以下分项列出了这些论点:
format
要输出的格式。这取决于您的libgdal库中编译的驱动程序。通常可用的有‘JPEG’、‘GTIff’、‘PNG’。使用
ST_GDALDrivers
若要获取库支持的格式列表,请执行以下操作。
options
GDAL选项的文本数组。有效选项取决于格式。参考
GDAL栅格格式选项
了解更多详细信息。
srs
要嵌入到图像中的proj4text或srtext(来自space_ref_sys)
可用性:2.0.0-需要GDAL > =1.6.0。
SELECT ST_AsGDALRaster(ST_Union(rast), 'JPEG', ARRAY['QUALITY=50']) As rastjpg
FROM dummy_rast
WHERE rast && ST_MakeEnvelope(10, 10, 11, 11);
将栅格导出为其他格式的一种方法是使用 PostgreSQL大对象导出函数 。我们将重复前面的示例,但也会导出。注意:为此,您需要拥有对db的超级用户访问权限,因为它使用服务器端lo函数。它还将导出到服务器网络上的路径。如果需要在本地导出,请使用等同于psql的lo_functions,它们会导出到本地文件系统,而不是服务器文件系统。
DROP TABLE IF EXISTS tmp_out ;
CREATE TABLE tmp_out AS
SELECT lo_from_bytea(0,
ST_AsGDALRaster(ST_Union(rast), 'JPEG', ARRAY['QUALITY=50'])
) AS loid
FROM dummy_rast
WHERE rast && ST_MakeEnvelope(10, 10, 11, 11);
SELECT lo_export(loid, '/tmp/dummy.jpg')
FROM tmp_out;
SELECT lo_unlink(loid)
FROM tmp_out;