Function sdl2_sys::SDL_GetDisplayDPI
source ยท pub unsafe extern "C" fn SDL_GetDisplayDPI(
displayIndex: c_int,
ddpi: *mut f32,
hdpi: *mut f32,
vdpi: *mut f32,
) -> c_int
Expand description
Get the dots/pixels-per-inch for a display.
Diagonal, horizontal and vertical DPI can all be optionally returned if the appropriate parameter is non-NULL.
A failure of this function usually means that either no DPI information is
available or the displayIndex
is out of range.
WARNING: This reports the DPI that the hardware reports, and it is not always reliable! It is almost always better to use SDL_GetWindowSize() to find the window size, which might be in logical points instead of pixels, and then SDL_GL_GetDrawableSize(), SDL_Vulkan_GetDrawableSize(), SDL_Metal_GetDrawableSize(), or SDL_GetRendererOutputSize(), and compare the two values to get an actual scaling value between the two. We will be rethinking how high-dpi details should be managed in SDL3 to make things more consistent, reliable, and clear.
\param displayIndex the index of the display from which DPI information should be queried \param ddpi a pointer filled in with the diagonal DPI of the display; may be NULL \param hdpi a pointer filled in with the horizontal DPI of the display; may be NULL \param vdpi a pointer filled in with the vertical DPI of the display; may be NULL \returns 0 on success or a negative error code on failure; call SDL_GetError() for more information.
\since This function is available since SDL 2.0.4.
\sa SDL_GetNumVideoDisplays