ST_AsGDALRaster — Returnerar rasterplattan i det angivna GDAL Raster-formatet. Rasterformat är ett av de format som stöds av ditt kompilerade bibliotek. Använd ST_GDALDrivers() för att få en lista över de format som stöds av ditt bibliotek.
bytea ST_AsGDALRaster(raster rast, text format, text[] options=NULL, integer srid=sameassource);
Returnerar rasterplattan i det angivna formatet. Argumenten specificeras nedan:
format anger det format som ska matas ut. Det beror på de drivrutiner som har kompilerats in i libgdal-biblioteket. Vanligtvis finns JPEG, GTIff och PNG tillgängliga. Använd ST_GDALDrivers för att få en lista över de format som stöds av biblioteket.
options är en textmatris med GDAL-alternativ. Giltiga alternativ beror på formatet. Se GDAL Raster format options för mer information.
srid, den rumsliga referensidentifierare som ska bäddas in i utdatarastret
Tillgänglighet: 2.0.0 - kräver GDAL >= 1.6.0.
Exportera flera rasterrutor som en enda JPEG-bild med 50 procents kvalitet.
SELECT ST_AsGDALRaster(ST_Union(rast), 'JPEG', ARRAY['QUALITY=50']) As rastjpg FROM dummy_rast WHERE rast && ST_MakeEnvelope(10, 10, 11, 11);
Ett sätt att exportera raster till ett annat format är att använda PostgreSQL-funktioner för export av stora objekt. Följande upprepar JPEG-exemplet och exporterar resultatet. Observera att detta kräver superanvändaråtkomst eftersom det använder serverfunktioner för stora objekt. Det exporterar också till en sökväg i serverns nätverk. Om du behöver exportera lokalt ska du använda motsvarande lo_-funktioner i psql, som exporterar till det lokala filsystemet i stället för serverns filsystem.
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;
Exportera ett raster som GeoTIFF med standardskapandealternativen.
SELECT ST_AsGDALRaster(rast, 'GTiff') AS rasttiff FROM dummy_rast WHERE rid = 2;
Exportera en GeoTIFF med JPEG-komprimering med 90 procents kvalitet och bädda in SRID 4269.
SELECT ST_AsGDALRaster(
rast,
'GTiff',
ARRAY['COMPRESS=JPEG', 'JPEG_QUALITY=90'],
4269) AS rasttiff
FROM dummy_rast WHERE rid = 2;