GIMP Script-fu

sg-layer-fit-to-selection
Login
Command:
Fit to Selection
Menu:
"<Image>/Layer/Fit to Selection"
PDB Name:
script-fu-sg-layer-fit-to-selection
Download:
sg-layer-fit-to-selection.scm (after the page appears, click on the "Download" command)
License:
GPLv2+

Description:

This script will scale the current layer so that it fits within the boundaries of the selection. If there is no selection when the script is run, the layer is scaled to fit within the image canvas. The original aspect ratio of the layer is maintained.

Note: this script uses the selection in a somewhat unconventional manner. Whereas selections are usually employed to delineate affected regions of the image, this script uses it to specify the target size of the layer.

Note: a version of this command which does not preserve the aspect ratio is also available.