John Cupitt 2022-03-22 09:10:34 +00:00
parent eaf34b8f13
commit a77519f7c3
2 changed files with 20 additions and 6 deletions

View File

@ -988,9 +988,16 @@ public:
} }
/** /**
* Make a new image by rendering self to a large memory area, * This operation allocates memory, renders self into it, builds a new
* wrapping a VImage around it, and copying all metadata over from * image around the memory area, and returns that.
* self. *
* If the image is already a simple area of memory, it does nothing.
*
* Call this before using the draw operations to make sure you have a
* memory image that can be modified.
*
* VImage::copy() adds a null "copy" node to a pipeline. Use that
* instead if you want to change metadata and not pixels.
*/ */
VImage VImage
copy_memory() const copy_memory() const

View File

@ -3309,10 +3309,17 @@ vips_image_rewind_output( VipsImage *image )
* vips_image_copy_memory: * vips_image_copy_memory:
* @image: image to copy to a memory buffer * @image: image to copy to a memory buffer
* *
* Make an image which is an area of memory. * This function allocates memory, renders @image into it, builds a new
* image around the memory area, and returns that.
* *
* If @image is already a memory buffer, just ref and return. If it's a file on * If the image is already a simple area of memory, it just refs @image and
* disc or a partial, allocate memory and copy the image to it. * returns it.
*
* Call this before using the draw operations to make sure you have a
* memory image that can be modified.
*
* vips_image_copy() adds a null "copy" node to a pipeline. Use that
* instead if you want to change metadata and not pixels.
* *
* This operation is thread-safe, unlike vips_image_wio_input(). * This operation is thread-safe, unlike vips_image_wio_input().
* *