ST_AsJPEG
Name
ST_AsJPEG — Return the raster tile selected bands as a single Joint Photographic Exports Group (JPEG) image (byte array). If no band is specified and 1 or more than 3 bands, then only the first band is used. If only 3 bands then all 3 bands are used and mapped to RGB.
Synopsis
bytea
ST_AsJPEG
(
raster
rast
, text[]
options=NULL
)
;
bytea
ST_AsJPEG
(
raster
rast
, integer
nband
, integer
quality
)
;
bytea
ST_AsJPEG
(
raster
rast
, integer
nband
, text[]
options=NULL
)
;
bytea
ST_AsJPEG
(
raster
rast
, integer[]
nbands
, text[]
options=NULL
)
;
bytea
ST_AsJPEG
(
raster
rast
, integer[]
nbands
, integer
quality
)
;
Description
Returns the selected bands of the raster as a single Joint Photographic Exports Group Image (JPEG). Use ST_AsGDALRaster if you need to export as less common raster types. If no band is specified and 1 or more than 3 bands, then only the first band is used. If 3 bands then all 3 bands are used. There are many variants of the function with many options. These are itemized below:
-
nband
is for single band exports. -
nbands
is an array of bands to export (note that max is 3 for JPEG) and the order of the bands is RGB. e.g ARRAY[3,2,1] means map band 3 to Red, band 2 to green and band 1 to blue -
quality
number from 0 to 100. The higher the number the crisper the image. -
options
text Array of GDAL options as defined for JPEG (look at create_options for JPEG ST_GDALDrivers ). For JPEG valid ones arePROGRESSIVE
ON or OFF andQUALITY
a range from 0 to 100 and default to 75. Refer to GDAL Raster format options for more details.
Availability: 2.0.0 - requires GDAL >= 1.6.0.
Examples: Output
-- output first 3 bands 75% quality SELECT ST_AsJPEG(rast) As rastjpg FROM dummy_rast WHERE rid=2; -- output only first band as 90% quality SELECT ST_AsJPEG(rast,1,90) As rastjpg FROM dummy_rast WHERE rid=2; -- output first 3 bands (but make band 2 Red, band 1 green, and band 3 blue, progressive and 90% quality SELECT ST_AsJPEG(rast,ARRAY[2,1,3],ARRAY['QUALITY=90','PROGRESSIVE=ON']) As rastjpg FROM dummy_rast WHERE rid=2;