---
title: "adjustPageWidthNew(_:left:right:limit:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nsview/adjustpagewidthnew(_:left:right:limit:)"
---

# adjustPageWidthNew(_:left:right:limit:)

Overridden by subclasses to adjust page width during automatic pagination.

## Declaration

```swift
func adjustPageWidthNew(_ newRight: UnsafeMutablePointer<CGFloat>, left oldLeft: CGFloat, right oldRight: CGFloat, limit rightLimit: CGFloat)
```

## Parameters

- `newRight`: Returns by indirection a new doc://com.apple.documentation/documentation/CoreFoundation/CGFloat-swift.struct value for the right edge of the pending page rectangle in the view’s coordinate system.
- `oldLeft`: A doc://com.apple.documentation/documentation/CoreFoundation/CGFloat-swift.struct value that sets the left edge of the pending page rectangle in the view’s coordinate system.
- `oldRight`: A doc://com.apple.documentation/documentation/CoreFoundation/CGFloat-swift.struct value that sets the right edge of the pending page rectangle in the view’s coordinate system.
- `rightLimit`: The leftmost doc://com.apple.documentation/documentation/CoreFoundation/CGFloat-swift.struct value newRight can be set to, as calculated using the value of the doc://com.apple.appkit/documentation/AppKit/NSView/widthAdjustLimit property.

## Discussion

Discussion This method is invoked by printView(_:). The view can pull in the right edge and return the new value in newRight, allowing it to prevent items such as small images or text columns from being divided across pages. If rightLimit is exceeded, the pagination mechanism simply uses rightLimit for the right edge. The default implementation of this method propagates the message to its subviews, allowing nested views to adjust page width for their drawing as well. An NSButton object or other small view, for example, will nudge the right edge out if necessary to prevent itself from being cut in two (thereby pushing it onto an adjacent page). Subclasses should invoke super’s implementation, if desired, after first making their own adjustments.

## See Also

### Handling Pagination

- [heightAdjustLimit](appkit/nsview/heightadjustlimit.md)
- [widthAdjustLimit](appkit/nsview/widthadjustlimit.md)
- [adjustPageHeightNew(_:top:bottom:limit:)](appkit/nsview/adjustpageheightnew(_:top:bottom:limit:).md)
- [knowsPageRange(_:)](appkit/nsview/knowspagerange(_:).md)
- [rectForPage(_:)](appkit/nsview/rectforpage(_:).md)
- [locationOfPrintRect(_:)](appkit/nsview/locationofprintrect(_:).md)
