Function SDL_SetWindowAspectRatio
pub unsafe extern "C" fn SDL_SetWindowAspectRatio(
window: *mut SDL_Window,
min_aspect: f32,
max_aspect: f32,
) -> bool
dep_sdl3
only.Expand description
Request that the aspect ratio of a window’s client area be set.
The aspect ratio is the ratio of width divided by height, e.g. 2560x1600 would be 1.6. Larger aspect ratios are wider and smaller aspect ratios are narrower.
If, at the time of this request, the window in a fixed-size state, such as maximized or fullscreen, the request will be deferred until the window exits this state and becomes resizable again.
On some windowing systems, this request is asynchronous and the new window
aspect ratio may not have have been applied immediately upon the return of
this function. If an immediate change is required, call SDL_SyncWindow()
to
block until the changes have taken effect.
When the window size changes, an [SDL_EVENT_WINDOW_RESIZED
] event will be
emitted with the new window dimensions. Note that the new dimensions may
not match the exact aspect ratio requested, as some windowing systems can
restrict the window size in certain scenarios (e.g. constraining the size
of the content area to remain within the usable desktop bounds).
Additionally, as this is just a request, it can be denied by the windowing
system.
§Parameters
window
: the window to change.min_aspect
: the minimum aspect ratio of the window, or 0.0f for no limit.max_aspect
: the maximum aspect ratio of the window, or 0.0f for no limit.
§Return value
Returns true on success or false on failure; call SDL_GetError()
for more
information.
§Thread safety
This function should only be called on the main thread.
§Availability
This function is available since SDL 3.2.0.