输出
toFile¶
Write output image data to a file.
If an explicit output format is not selected, it will be inferred from the extension, with JPEG, PNG, WebP, TIFF, DZI, and libvips' V format supported. Note that raw pixel data is only supported for buffer output.
A Promise is returned when callback is not provided.
参数
fileOutString the path to write the image data to.-
callbackFunction? called on completion with two arguments(err, info).infocontains the output imageformat,size(bytes),width,height,channelsandpremultiplied(indicating if premultiplication was used). When using a crop strategy also containscropOffsetLeftandcropOffsetTop. -
Throws Error Invalid parameters
返回 Promise<Object> when no callback is provided
toBuffer¶
Write output to a Buffer. JPEG, PNG, WebP, TIFF and RAW output are supported. By default, the format will match the input image, except GIF and SVG input which become PNG output.
callback, if present, gets three arguments (err, data, info) where:
erris an error, if any.datais the output image data.infocontains the output imageformat,size(bytes),width,height,channelsandpremultiplied(indicating if premultiplication was used). When using a crop strategy also containscropOffsetLeftandcropOffsetTop.
A Promise is returned when callback is not provided.
参数
optionsObject?options.resolveWithObjectBoolean? Resolve the Promise with an Object containingdataandinfoproperties instead of resolving only withdata.
callbackFunction?
返回 Promise<Buffer> when no callback is provided
withMetadata¶
Include all metadata (EXIF, XMP, IPTC) from the input image in the output image.
The default behaviour, when withMetadata is not used, is to strip all metadata and convert to the device-independent sRGB colour space.
This will also convert to and add a web-friendly sRGB ICC profile.
参数
-
withMetadataObject?withMetadata.orientationNumber? value between 1 and 8, used to update the EXIFOrientationtag.
-
Throws Error Invalid parameters
返回 Sharp
jpeg¶
Use these JPEG options for output image.
参数
-
optionsObject? output optionsoptions.qualityNumber quality, integer 1-100 (optional, default80)options.progressiveBoolean use progressive (interlace) scan (optional, defaultfalse)options.chromaSubsamplingString set to '4:4:4' to prevent chroma subsampling when quality <= 90 (optional, default'4:2:0')options.trellisQuantisationBoolean apply trellis quantisation, requires mozjpeg (optional, defaultfalse)options.overshootDeringingBoolean apply overshoot deringing, requires mozjpeg (optional, defaultfalse)options.optimiseScansBoolean optimise progressive scans, forces progressive, requires mozjpeg (optional, defaultfalse)options.optimizeScansBoolean alternative spelling of optimiseScans (optional, defaultfalse)options.forceBoolean force JPEG output, otherwise attempt to use input format (optional, defaulttrue)
-
Throws Error Invalid options
返回 Sharp
png¶
Use these PNG options for output image.
参数
-
optionsObject?options.progressiveBoolean use progressive (interlace) scan (optional, defaultfalse)options.compressionLevelNumber zlib compression level, 0-9 (optional, default9)options.adaptiveFilteringBoolean use adaptive row filtering (optional, defaultfalse)options.forceBoolean force PNG output, otherwise attempt to use input format (optional, defaulttrue)
-
Throws Error Invalid options
返回 Sharp
webp¶
Use these WebP options for output image.
参数
-
optionsObject? output optionsoptions.qualityNumber quality, integer 1-100 (optional, default80)options.alphaQualityNumber quality of alpha layer, integer 0-100 (optional, default100)options.losslessBoolean use lossless compression mode (optional, defaultfalse)options.nearLosslessBoolean use near_lossless compression mode (optional, defaultfalse)options.forceBoolean force WebP output, otherwise attempt to use input format (optional, defaulttrue)
-
Throws Error Invalid options
返回 Sharp
tiff¶
Use these TIFF options for output image.
参数
-
optionsObject? output optionsoptions.qualityNumber quality, integer 1-100 (optional, default80)options.forceBoolean force TIFF output, otherwise attempt to use input format (optional, defaulttrue)options.compressionBoolean compression options: lzw, deflate, jpeg (optional, default'jpeg')options.predictorBoolean compression predictor options: none, horizontal, float (optional, default'horizontal')options.xresNumber horizontal resolution in pixels/mm (optional, default1.0)options.yresNumber vertical resolution in pixels/mm (optional, default1.0)options.squashBoolean squash 8-bit images down to 1 bit (optional, defaultfalse)
-
Throws Error Invalid options
返回 Sharp
raw¶
Force output to be raw, uncompressed uint8 pixel data.
返回 Sharp
toFormat¶
Force output to a given format.
参数
format(String | Object) as a String or an Object with an 'id' attribute-
optionsObject output options -
Throws Error unsupported format or options
返回 Sharp
tile¶
Use tile-based deep zoom (image pyramid) output.
Set the format and options for tile images via the toFormat, jpeg, png or webp functions.
Use a .zip or .szi file extension with toFile to write to a compressed archive file format.
参数
tileObject?tile.sizeNumber tile size in pixels, a value between 1 and 8192. (optional, default256)tile.overlapNumber tile overlap in pixels, a value between 0 and 8192. (optional, default0)tile.containerString tile container, with valuefs(filesystem) orzip(compressed file). (optional, default'fs')tile.layoutString filesystem layout, possible values aredz,zoomifyorgoogle. (optional, default'dz')
Examples
sharp('input.tiff')
.png()
.tile({
size: 512
})
.toFile('output.dz', function(err, info) {
// output.dzi is the Deep Zoom XML definition
// output_files contains 512x512 tiles grouped by zoom level
});
- Throws Error Invalid parameters
返回 Sharp