Difference between revisions of "love.window.getPixelScale"

m
m (0.11.0 -> 11.0)
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{{newin|[[0.9.1]]|091|type=function}}
 
{{newin|[[0.9.1]]|091|type=function}}
Gets the DPI scale factor associated with the window. In Mac OS X with the window in a retina screen and the <code>highdpi</code> window flag enabled this will be 2.0, otherwise it will be 1.0.
+
{{oldin|[[11.0]]|110|type=function|text=This function has been renamed to [[love.window.getDPIScale]]}}
 +
Gets the DPI scale factor associated with the window.
  
The scale factor is used to display graphics at a size the user is expecting, rather than the size of the pixels. On retina displays with the <code>highdpi</code> window flag enabled, the pixels in the window are 2x smaller than the scale of the normal content on the screen, so [[love.window.getPixelScale]] will return 2.
+
The pixel density inside the window might be greater (or smaller) than the "size" of the window. For example on a retina screen in Mac OS X with the <code>highdpi</code> [[love.window.setMode|window flag]] enabled, the window may take up the same physical size as an 800x600 window, but the area inside the window uses 1600x1200 pixels. <code>love.window.getPixelScale()</code> would return <code>2.0</code> in that case.
 +
 
 +
The [[love.window.fromPixels]] and [[love.window.toPixels]] functions can also be used to convert between units.
 +
 
 +
The <code>highdpi</code> window flag must be enabled to use the full pixel density of a Retina screen on Mac OS X and iOS. The flag currently does nothing on Windows and Linux, and on Android it is effectively always enabled.
  
 
== Function ==
 
== Function ==
Line 15: Line 20:
  
 
== Notes ==
 
== Notes ==
The units of [[love.graphics.getWidth]], [[love.graphics.getHeight]], [[love.mouse.getPosition]], and mouse events are always in terms of pixels.
+
The units of [[love.graphics.getWidth]], [[love.graphics.getHeight]], [[love.mouse.getPosition]], mouse events, [[love.touch.getPosition]], and touch events are always in terms of pixels.
  
 
== See Also ==
 
== See Also ==

Latest revision as of 13:12, 29 December 2018

Available since LÖVE 0.9.1
This function is not supported in earlier versions.
Removed in LÖVE 11.0
This function has been renamed to love.window.getDPIScale.

Gets the DPI scale factor associated with the window.

The pixel density inside the window might be greater (or smaller) than the "size" of the window. For example on a retina screen in Mac OS X with the highdpi window flag enabled, the window may take up the same physical size as an 800x600 window, but the area inside the window uses 1600x1200 pixels. love.window.getPixelScale() would return 2.0 in that case.

The love.window.fromPixels and love.window.toPixels functions can also be used to convert between units.

The highdpi window flag must be enabled to use the full pixel density of a Retina screen on Mac OS X and iOS. The flag currently does nothing on Windows and Linux, and on Android it is effectively always enabled.

Function

Synopsis

scale = love.window.getPixelScale( )

Arguments

None.

Returns

number scale
The pixel scale factor associated with the window.

Notes

The units of love.graphics.getWidth, love.graphics.getHeight, love.mouse.getPosition, mouse events, love.touch.getPosition, and touch events are always in terms of pixels.

See Also

Other Languages