# VkPresentScalingFlagBitsKHR(3) Manual Page

## Name

VkPresentScalingFlagBitsKHR - Bitmask specifying presentation scaling methods

Loading… please wait.

## C Specification

Bits which may be set in VkSurfacePresentScalingCapabilitiesKHR::`supportedPresentScaling`, specifying scaling modes supported by the surface, are:

    // Provided by VK_KHR_surface_maintenance1
    typedef enum VkPresentScalingFlagBitsKHR {
        VK_PRESENT_SCALING_ONE_TO_ONE_BIT_KHR = 0x00000001,
        VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_KHR = 0x00000002,
        VK_PRESENT_SCALING_STRETCH_BIT_KHR = 0x00000004,
        VK_PRESENT_SCALING_ONE_TO_ONE_BIT_EXT = VK_PRESENT_SCALING_ONE_TO_ONE_BIT_KHR,
        VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_EXT = VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_KHR,
        VK_PRESENT_SCALING_STRETCH_BIT_EXT = VK_PRESENT_SCALING_STRETCH_BIT_KHR,
    } VkPresentScalingFlagBitsKHR;

or the equivalent

    // Provided by VK_EXT_surface_maintenance1
    typedef VkPresentScalingFlagBitsKHR VkPresentScalingFlagBitsEXT;

## Description

- `VK_PRESENT_SCALING_ONE_TO_ONE_BIT_KHR` specifies that no scaling occurs, and pixels in the swapchain image are mapped to one and only one pixel in the surface. The mapping between pixels is defined by the chosen presentation gravity.

- `VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_KHR` specifies that the swapchain image will be minified or magnified such that at least one of the resulting width or height is equal to the corresponding surface dimension, and the other resulting dimension is less than or equal to the corresponding surface dimension, with the aspect ratio of the resulting image being identical to that of the original swapchain image.

- `VK_PRESENT_SCALING_STRETCH_BIT_KHR` specifies that the swapchain image will be minified or magnified such that the resulting image dimensions are equal to those of the surface.

## See Also

VK_EXT_surface_maintenance1, VK_KHR_surface_maintenance1, VkPresentScalingFlagsKHR

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0