SDL_SetWindowAspectRatio - Request that the aspect ratio of a window's client area be set.
Contents
Availability
This function is available since SDL 3.2.0.
Description
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.
Function 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.
Header File
Defined in SDL3/SDL_video.h
Name
SDL_SetWindowAspectRatio - Request that the aspect ratio of a window's client area be set.
Return Value
Returns true on success or false on failure; call
SDL_GetError () for more information.
See Also
•(3), SDL_GetWindowAspectRatio(3), •(3), SDL_SyncWindow(3) Simple Directmedia Layer SDL 3.2.10 SDL_SetWindowAspectRatio(3)
Synopsis
#include"SDL3/SDL.h"boolSDL_SetWindowAspectRatio(SDL_Window*window,floatmin_aspect,floatmax_aspect);
Thread Safety
This function should only be called on the main thread.
