ST_AsGDALRaster — Gibt die Rasterkachel in dem ausgewiesenen Rasterformat von GDAL aus. Sie können jedes Rasterformat angeben, das von Ihrer Bibliothek unterstützt wird. Um eine Liste mit den unterstützten Formaten auszugeben, verwenden Sie bitte ST_GDALDrivers().
bytea ST_AsGDALRaster(raster rast, text format, text[] options=NULL, integer srid=sameassource);
Gibt die Rasterkachel im dem ausgewiesenen Format zurück. Die Übergabewerte sind:
format das Format das abgerufen wird. Dies ist abhängig von den Treibern die mit Ihrer Bibliothek "libgdal" kompiliert wurden. Üblicherweise stehen 'JPEG', 'GTIff' und 'PNG' zur Verfügung. Verwenden Sie bitte ST_GDALDrivers, um eine Liste der von Ihrer Bibliothek unterstützten Formate zu erhalten.
options ein Textfeld mit Optionen für GDAL. Gültige Optionen sind formatabhängig. Siehe GDAL Raster format options für weitere Details.
srid the spatial reference identifier to embed in the output raster
Verfügbarkeit: 2.0.0 - GDAL >= 1.6.0.
Export multiple raster tiles as a single JPEG image with 50 percent quality.
SELECT ST_AsGDALRaster(ST_Union(rast), 'JPEG', ARRAY['QUALITY=50']) As rastjpg FROM dummy_rast WHERE rast && ST_MakeEnvelope(10, 10, 11, 11);
One way to export raster into another format is using PostgreSQL large object export functions. The following repeats the JPEG example and exports the result. Note that this requires superuser access because it uses server-side large object functions. It will also export to path on server network. If you need export locally, use the psql equivalent lo_ functions which export to the local file system instead of the server file system.
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;
Export a raster as a GeoTIFF using the default creation options.
SELECT ST_AsGDALRaster(rast, 'GTiff') AS rasttiff FROM dummy_rast WHERE rid = 2;
Export a GeoTIFF using JPEG compression at 90 percent quality and embed SRID 4269.
SELECT ST_AsGDALRaster(
rast,
'GTiff',
ARRAY['COMPRESS=JPEG', 'JPEG_QUALITY=90'],
4269) AS rasttiff
FROM dummy_rast WHERE rid = 2;