Difference between revisions of "love.window.fromPixels (简体中文)"

(Created page with "{{newin|0.9.2|092|type=function}} 把数字从像素单位转换为密度无关单位。 窗口内的像素密度可能比窗口的“大小”更大(或更小)。The...")
 
Line 1: Line 1:
 
{{newin|[[0.9.2]]|092|type=function}}
 
{{newin|[[0.9.2]]|092|type=function}}
把数字从像素单位转换为密度无关单位。
+
把数字从像素单位转换为像素密度无关单位。
  
窗口内的像素密度可能比窗口的“大小”更大(或更小)。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.fromPixels(1600)</code> would return <code>800</code> in that case.
+
窗口内的像素密度可能比窗口的“大小”更大(或更小)。例如通过[[love.window.setMode]] 启用在Mac OS X 上的Retina屏幕的<code>highdpi</code> ,窗口会使用相同的800x600的物理窗口大小,但窗口的内部区域使用1600x1200像素。那样的话<code>love.window.fromPixels(1600)</code> 将返回 <code>800</code>
  
This function converts coordinates from pixels to the size users are expecting them to display at onscreen. [[love.window.toPixels]] does the opposite. 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.
+
这个函数转换坐标从像素到用户期望的在屏幕上显示的大小。[[love.window.toPixels]]函数则相反。在Mac OS X 和 iOS平台上,<code>highdpi</code>的window flag必须被启用,以使用Retina屏幕的全像素密度。
 +
这个标志在Windows 和 Linux上不产生影响,但在Android上总是启用的。
  
Most LÖVE functions return values and expect arguments in terms of pixels rather than density-independent units.
+
大多数的 LÖVE 函数 return values and expect arguments in terms of pixels rather than density-independent units.
  
 
== Function ==
 
== Function ==

Revision as of 10:28, 7 May 2016

Available since LÖVE 0.9.2
This function is not supported in earlier versions.

把数字从像素单位转换为像素密度无关单位。

窗口内的像素密度可能比窗口的“大小”更大(或更小)。例如通过love.window.setMode 启用在Mac OS X 上的Retina屏幕的highdpi ,窗口会使用相同的800x600的物理窗口大小,但窗口的内部区域使用1600x1200像素。那样的话love.window.fromPixels(1600) 将返回 800

这个函数转换坐标从像素到用户期望的在屏幕上显示的大小。love.window.toPixels函数则相反。在Mac OS X 和 iOS平台上,highdpi的window flag必须被启用,以使用Retina屏幕的全像素密度。 这个标志在Windows 和 Linux上不产生影响,但在Android上总是启用的。

大多数的 LÖVE 函数 return values and expect arguments in terms of pixels rather than density-independent units.

Function

Synopsis

value = love.window.fromPixels( pixelvalue )

Arguments

number pixelvalue
A number in pixels to convert to density-independent units.

Returns

number value
The converted number, in density-independent units.

Function

Synopsis

x, y = love.window.fromPixels( px, py )

Arguments

number px
The x-axis value of a coordinate in pixels.
number py
The y-axis value of a coordinate in pixels.

Returns

number x
The converted x-axis value of the coordinate, in density-independent units.
number y
The converted y-axis value of the coordinate, in density-independent units.

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