Skip to main content
Inspiring
May 9, 2026
Answered

How to Scale an Image Numerically Within a Frame While Keeping the Visible Area Centered in InDesign

  • May 9, 2026
  • 3 replies
  • 56 views

I have images in frames, and the images are MUCH larger than the frames. 

I’d like to be able to zoom in/out of the image, numerically (e.g. via typing in a %), but have the part of the image centered in the frame remain in the center of the frame.

Is that possible?

thanks!

    Correct answer Mike Witherell

    If the frame is selected, you can scale based on the center of the frame using the center proxy dot.

    If the graphic within the frame is selected, you can scale based on the center of the image by using the center proxy dot.

    But if you want to scale the image in the frame based on a chosen, visual centering of the image, maybe you should reach for the rarely-used Scale tool, which gives you the ability to scale from any spot you choose, not just the 9 proxy dot positions. It employs that old-school subtlety of clicking to set the centerpoint of scale. You can also opt/alt click to set the position from which it scales. Think old-school Illustrator when you use it.

    3 replies

    rob day
    Community Expert
    Community Expert
    May 9, 2026

    Hi ​@turner111 , Just to clarify, your large image is not centered in the container frame the way it is in ​@jmlevy ’s capture right? The Transform reference point is relative to the selection not its container

     

     

     

    I think you would need a script in order to scale without moving the image, like this?:

     

     

    turner111Author
    Inspiring
    May 9, 2026

    Hi Rob - correct.

    Mike Witherell
    Community Expert
    Mike WitherellCommunity ExpertCorrect answer
    Community Expert
    May 9, 2026

    If the frame is selected, you can scale based on the center of the frame using the center proxy dot.

    If the graphic within the frame is selected, you can scale based on the center of the image by using the center proxy dot.

    But if you want to scale the image in the frame based on a chosen, visual centering of the image, maybe you should reach for the rarely-used Scale tool, which gives you the ability to scale from any spot you choose, not just the 9 proxy dot positions. It employs that old-school subtlety of clicking to set the centerpoint of scale. You can also opt/alt click to set the position from which it scales. Think old-school Illustrator when you use it.

    Mike Witherell
    turner111Author
    Inspiring
    May 9, 2026

    I think this will work! Well, I mean it’ll be the closest for now. I might try to figure out a script, if this type of point in relation to its frame can be centered.

    I’ll consider this the way. Thanks.

     

    rob day
    Community Expert
    Community Expert
    May 10, 2026

    I might try to figure out a script

     

    If you haven’t tried to code this yet it’s tricky, maybe this?

     

    scaleSelectionCentered(.6)

    /**
    * Scales the selected link centered
    * @ param ammount to scale
    */

    function scaleSelectionCentered(sa){
    var sel = app.selection[0]
    if (sel == undefined || !sel.hasOwnProperty("itemLink") ) {
    alert("Select an Image")
    return
    }
    var sb = sel.geometricBounds //image bounds
    var pb = sel.parent.geometricBounds //container bounds
    var phc = [pb[1]+((pb[3]-pb[1])*.5)] //container x center point
    var pvc = [pb[0]+((pb[2]-pb[0])*.5)] //container y center point
    var shc = [sb[1]+((sb[3]-sb[1])*.5)] //selection x center point
    var svc = [sb[0]+((sb[2]-sb[0])*.5)] //selection y center point

    sel.transform(CoordinateSpaces.PARENT_COORDINATES, AnchorPoint.CENTER_ANCHOR, app.transformationMatrices.add({horizontalScaleFactor:sa, verticalScaleFactor:sa}));
    sel.move([0,0],[(phc-shc)*(1-sa),(pvc-svc)*(1-sa)])
    }

    Before and after

     

     

    jmlevy
    Community Expert
    Community Expert
    May 9, 2026

    Yes: before starting scaling, select the proxy icon and click on the center dot.

     

    turner111Author
    Inspiring
    May 9, 2026

    I tried that, but it doesn’t scale the content from the center.

    jmlevy
    Community Expert
    Community Expert
    May 9, 2026

    Are you absolutely sure that the content is selected? Because it works: