Класс: Phaser.ScaleManager
Конструктор
new ScaleManager(game, width, height)
Создать новый объект ScaleManager — это делается автоматически Phaser.Game
Параметры конструктора width и height могут быть числом, представляющим пиксели, или строкой, представляющей процент: например, 800 (для 800 пикселей) или "80%" для 80%.
Параметры
| Имя | Тип | Описание |
|---|---|---|
game | Phaser.Game | Ссылка на текущую запущенную игру. |
width | число | строка | Ширина игры. Смотрите выше. |
height | число | строка | Высота игры. Смотрите выше. |
- Исходный код: core/ScaleManager.js (Строка 46)
Публичные свойства
- Исходный код: core/ScaleManager.js (Строка 609)
- Исходный код: core/ScaleManager.js (Строка 617)
- Исходный код: core/ScaleManager.js (Строка 633)
- Исходный код: core/ScaleManager.js (Строка 625)
- Исходный код: core/ScaleManager.js (Строка 641)
- Исходный код: core/ScaleManager.js (Строка 349)
- Исходный код: core/ScaleManager.js (Строка 2091)
- Исходный код: core/ScaleManager.js (Строка 342)
- Внутренняя информация:
- Этот член внутренний (защищённый) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 410)
- Внутренняя информация:
- Этот член внутренний (защищённый) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 2224)
- Внутренняя информация:
- Этот член внутренний (защищённый) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 62)
- Исходный код: core/ScaleManager.js (Строка 211)
[static] EXACT_FIT : integer
Режим масштабирования, который растягивает содержимое, чтобы заполнить всё доступное пространство — см. scaleMode.
[static] NO_SCALE : integer
Режим масштабирования, который предотвращает любое масштабирование — см. scaleMode.
[static] RESIZE : integer
Режим масштабирования, который изменяет размер игры — см. scaleMode.
[static] SHOW_ALL : integer
Режим масштабирования, который отображает всю игру, сохраняя пропорции — см. scaleMode.
[static] USER_SCALE : integer
Режим масштабирования, который позволяет использовать произвольный коэффициент масштабирования — см. scaleMode.
[readonly] aspectRatio : number
Соотношение сторон отмасштабированной области отображения.
[readonly] boundingParent :DOMElement
Элемент DOM, рассматриваемый как ограничивающий элемент родителя, если таковой имеется.
Этот элемент null если parentIsWindow имеет значение true или если режим полноэкранного режима включён и указан fullScreenTarget.
Также он будет null, если нет элемента холста игры или если у элемента холста игры нет родителя.
[readonly] bounds : Phaser.Rectangle
Пределы отмасштабированной игры. Значения x/y будут соответствовать смещению элемента холста, а ширина/высота — отмасштабированной ширине и высоте.
<internal> compatibility
Различные параметры совместимости.
Значение "(auto)" указывает, что параметр настроен на основе информации об устройстве и среде выполнения.
После внесения изменений может потребоваться выполнить refresh.
Свойства:
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
supportsFullScreen | boolean | <optional> | (auto) | True только в том случае, если будет использована поддержка полноэкранного режима. (Изменение на полноэкранный режим всё ещё может не сработать.) |
orientationFallback | boolean | <optional> | (auto) | |
noMargins | boolean | <optional> | false | Если true, поля отступа элемента Display холста больше не будут обновляться: существующие поля отступа необходимо удалять вручную. Отключение полей отступа предотвращает автоматическое выравнивание/центрирование холста, возможно, в полноэкранном режиме. |
scrollTo | Phaser.Point | <optional> <nullable> | (auto) | Если указано, окно будет прокручено до этого положения при каждом обновлении. |
forceMinimumDocumentHeight | boolean | <optional> | false | Если включено, минимальная высота элементов документа явно задаётся при обновлениях. |
canExpandParent | boolean | <optional> | true | Если включено, режимы SHOW_ALL и USER_SCALE могут попытаться расширить родительский элемент. Может потребоваться, чтобы родительский элемент наложил ограничения CSS ширины/высоты. |
clickTrampoline | string | <optional> | (auto) | В некоторых браузерах (например, IE) события FullScreen необходимо вызывать с помощью событий 'click'. |
<internal, readonly> currentScaleMode : number
Возвращает текущий режим масштабирования — для нормальной или полноэкранной работы.
См. scaleMode для различных разрешённых режимов.
<internal, readonly> dom : Phaser.DOM
Обеспечивает доступ к некоторым кросс-устройствам DOM функциям.
enterIncorrectOrientation : Phaser.Signal
Это сигнал, который отправляется, когда браузер переходит в неправильное ориентацию, как определено forceOrientation.
Этот сигнал отправляется из preUpdate (или pauseUpdate) даже когда игра приостановлена.
<internal, readonly> forceLandscape : boolean
Если true, игра должна запускаться только в альбомной ориентации.
Изменяется с помощью forceOrientation.
- Внутренний:
- Этот член является внутренним (protected) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 140)
- Внутренний:
- Этот член является внутренним (protected) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 150)
- Исходный код: core/ScaleManager.js (Строка 2183)
- Исходный код: core/ScaleManager.js (Строка 248)
- Внутренний:
- Этот член является внутренним (protected) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 54)
- Исходный код: core/ScaleManager.js (Строка 69)
- Исходный код: core/ScaleManager.js (Строка 233)
- Исходный код: core/ScaleManager.js (Строка 83)
- Внутренний:
- Этот член является внутренним (protected) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 161)
- Исходный код: core/ScaleManager.js (Строка 2315)
- Исходный код: core/ScaleManager.js (Строка 2380)
- Исходный код: core/ScaleManager.js (Строка 2362)
- Исходный код: core/ScaleManager.js (Строка 2347)
- Исходный код: core/ScaleManager.js (Строка 2332)
- Исходный код: core/ScaleManager.js (Строка 221)
- Bounds-like
- Внутренний:
- Этот член является внутренним (protected) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 335)
<internal, readonly> forcePortrait : boolean
Если true, игра должна запускаться только в портретной ориентации
Измените с помощью forceOrientation.
fullScreenScaleMode : integer
Метод масштабирования, используемый ScaleManager в полноэкранном режиме.
См. scaleMode для различных допустимых режимов.
fullScreenTarget :DOMElement
Если указан, это DOM-элемент, на котором будет вызван запрос API полноэкранного режима.
Целевой элемент должен иметь правильный стиль CSS и содержать холст отображения.
Стиль элементов будет изменен (например, ширина и высота могут быть установлены в 100%)
, но он не будет добавлен, удален или перемещен в DOM.
При выходе из полноэкранного режима предпринимается попытка восстановить соответствующие изменения стиля.
Для поведения до версии 2.2.0 установите game.scale.fullScreenTarget = game.canvas.
<internal, readonly> game : Phaser.Game
Ссылка на запущенную игру.
grid : Phaser.FlexGrid
ЭКСПЕРИМЕНТАЛЬНО: Адаптивная сетка, на которой можно выравнивать игровые объекты.
hasPhaserSetFullScreen : boolean
Это булево значение позволяет определить, находится ли браузер в полноэкранном
режиме (через API полноэкранного режима), и был ли Phaser ответственным за его активацию.
Возможно, что ScaleManager.isFullScreen возвращает true даже если Phaser не был
тем, кто перевел браузер в полноэкранный режим, поэтому этот флаг позволяет это определить.
[только для чтения] height : number
Целевая высота (в пикселях) холста отображения.
<internal, readonly> incorrectOrientation : boolean
True, если forceLandscape или forcePortrait установлены и не совпадают с ориентацией браузера.
Это значение не обновляется немедленно.
[только для чтения] isFullScreen : boolean
Возвращает true, если браузер находится в полноэкранном режиме, иначе false.
[только для чтения] isGameLandscape : boolean
Возвращает true, если размеры игры ландшафтные (ширина > высота).
Это особенно полезно для проверки при использовании режима масштабирования RESIZE
, но при желании сохранить ориентацию игры в настольных браузерах,
где обычно ориентация экрана всегда будет ландшафтной независимо от окна просмотра браузера.
[только для чтения] isGamePortrait : boolean
Возвращает true, если размеры игры портретные (высота > ширина).
Это особенно полезно для проверки при использовании режима масштабирования RESIZE
, но при желании сохранить ориентацию игры в настольных браузерах,
где обычно ориентация экрана всегда будет ландшафтной независимо от окна просмотра браузера.
[только для чтения] isLandscape : boolean
Возвращает true, если ориентация экрана ландшафтная.
[только для чтения] isPortrait : boolean
Возвращает true, если ориентация экрана портретная.
leaveIncorrectOrientation : Phaser.Signal
Этот сигнал отправляется, когда браузер выходит из неправильной ориентации, как определено в forceOrientation.
Этот сигнал подается из preUpdate (или pauseUpdate) даже когда игра приостановлена.
<internal, readonly> margin :Bounds-like
Холст отображения выравнивается путем регулировки полей; последние поля хранятся здесь.
Тип
<internal, readonly> maxHeight : number
Максимальная высота, до которой должен быть масштабирован холст (в пикселях).
Если null, он будет масштабироваться до любой высоты, которую может обработать браузер.
Измените с помощью setMinMax.
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 121)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 102)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 111)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 92)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 130)
- Исходный код: core/ScaleManager.js (Строка 290)
- Исходный код: core/ScaleManager.js (Строка 301)
- После инициализации холст отображения перемещается на
targetElementна период полноэкранного режима и возвращается в исходное местоположение DOM при выходе из полноэкранного режима. - Элемент
targetElementперемещается/переродится в DOM, и его стили CSS могут быть обновлены. - Исходный код: core/ScaleManager.js (Строка 279)
-
scale- объект ScaleManager -
prevOrientation, строка - Предыдущая ориентация согласно screenOrientation. -
wasIncorrect, булево значение - True, если предыдущая ориентация в последний раз была определена как неправильная. - Исходный код: core/ScaleManager.js (Строка 201)
- Исходный код: core/ScaleManager.js (Строка 487)
- К задаче:
-
- Сформулируйте аргументы, если таковые имеются, передаваемые в этот сигнал.
- Значение по умолчанию
- false
- Исходный код: core/ScaleManager.js (Строка 2244)
<внутреннее, только для чтения> maxWidth : число
Максимальная ширина, к которой должен быть масштабирован холст (в пикселях).
Если null, то масштабирование будет происходить до любой ширины, которую может обработать браузер.
Изменение с помощью setMinMax.
<внутреннее, только для чтения> minHeight : число
Минимальная высота, к которой должен быть масштабирован холст (в пикселях).
Изменение с помощью setMinMax.
<внутреннее, только для чтения> minWidth : число
Минимальная ширина, к которой должен быть масштабирован холст (в пикселях).
Изменение с помощью setMinMax.
<внутреннее, только для чтения> offset : Phaser.Point
Координаты смещения холста отображения относительно левого верхнего угла окна браузера.
Используется внутри Phaser.Pointer (для ввода) и, возможно, других типов.
onFullScreenChange : Phaser.Signal
Этот сигнал отправляется при входе или выходе браузера в полноэкранный режим, если он поддерживается.
Сигналу передаётся один аргумент: scale (менеджер масштабирования). Используйте scale.isFullScreen для определения
того, находится ли игра в полноэкранном режиме.
onFullScreenError : Phaser.Signal
Этот сигнал отправляется, когда браузер не может перейти в полноэкранный режим;
или если устройство не поддерживает полноэкранный режим и startFullScreen вызван.
Сигналу передаётся один аргумент: scale (менеджер масштабирования).
onFullScreenInit : Phaser.Signal
Этот сигнал отправляется, когда полноэкранный режим готов к инициализации, но
перед запросом полноэкранного режима.
Сигналу передаются два аргумента: scale (менеджер масштабирования) и объект в форме {targetElement: DOMElement}.
Элемент targetElement — это элемент fullScreenTarget,
если он назначен, или новый элемент, созданный с помощью createFullScreenTarget.
Необходимые пользовательские стили CSS или сбросы можно применить к targetElement.
Если targetElement не тот же элемент, что и fullScreenTarget:
Поведение предварительно назначенного целевого элемента описано в fullScreenTarget.
onOrientationChange : Phaser.Signal
Этот сигнал отправляется при изменении ориентации или изменении валидности текущей ориентации.
Сигналу передаются следующие аргументы:
Доступ к текущей ориентации и ее валидности с помощью scale.screenOrientation и scale.incorrectOrientation.
Таким образом, можно выполнить следующие проверки:
// The orientation itself changed: scale.screenOrientation !== prevOrientation // The orientation just became incorrect: scale.incorrectOrientation && !wasIncorrect
Возможна ситуация, когда этот сигнал срабатывает после forceOrientation, поэтому корректность ориентации изменяется, даже если сама ориентация не меняется.
Этот сигнал отправляется от preUpdate (или pauseUpdate) даже когда игра приостановлена.
onSizeChange : Phaser.Signal
Этот сигнал отправляется при изменении размера холста отображения или размера игры.
Вызов происходит после обновления размера/позиции холста.
Этот сигнал только вызывается при изменении, и может потребоваться перестроение.
Например, если размер холста не меняется из-за настроек CSS (например, min-width),
то этот сигнал не будет сгенерирован.
Используйте его для обработки параметров адаптивного макета игры.
Этот сигнал отправляется от preUpdate (или pauseUpdate) даже когда игра приостановлена.
pageAlignHorizontally : логическое значение
При включении холст отображения будет выровнен по горизонтали в контейнере родителя (или окне).
Для выравнивания холста отображения по горизонтали на всей странице его следует добавить непосредственно на страницу;
или контейнер-родитель должен быть выровнен по горизонтали.
Горизонтальное выравнивание не применимо к режиму масштабирования RESIZE.
pageAlignVertically : логическое значение
- Значение по умолчанию
- false
- Исходный код: core/ScaleManager.js (Строка 2276)
- Исходный код: core/ScaleManager.js (Строка 442)
- Исходный код: core/ScaleManager.js (Строка 452)
- Исходный код: core/ScaleManager.js (Строка 459)
- Исходный код: core/ScaleManager.js (Строка 318)
- Внутренний:
- Этот член является внутренним (защищенным) и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 326)
- Phaser.ScaleManager.NO_SCALE
-
Область отображения игры не будет масштабироваться – даже если она слишком велика для холста/экрана.
Этот режим игнорирует любой применённый масштабный коэффициент и отображает холст с размером игры.
- Phaser.ScaleManager.EXACT_FIT
-
Область отображения игры будет растянута для заполнения всего размера родительского элемента холста и/или экрана.
Пропорции не сохраняются.
- Phaser.ScaleManager.SHOW_ALL
-
Отобразить всю область отображения игры, сохраняя исходное соотношение сторон.
- Phaser.ScaleManager.RESIZE
-
Размеры области отображения игры изменяются для соответствия размеру родительского контейнера.
То есть, этот режим меняет размер игры для соответствия размеру отображения.
Любой вручную заданный размер игры (см. setGameSize) игнорируется, пока он активен.
- Phaser.ScaleManager.USER_SCALE
-
Отображение игры масштабируется в соответствии с пользователем заданным масштабом, установленным с помощью setUserScale.
Этот масштаб может быть скорректирован в обработчик изменения размера
для гибких пользовательских нужд масштабирования.
- Исходный код: core/ScaleManager.js (Строка 2119)
- Исходный код: core/ScaleManager.js (Строка 311)
- Исходный код: core/ScaleManager.js (Строка 356)
- Внутренний:
- Этот член является внутренним (защищенным) и может быть изменён или удалён в будущем.
- Значение по умолчанию
- 2000
- Исходный код: core/ScaleManager.js (Строка 470)
- См.
- Исходный код: core/ScaleManager.js (Строка 76)
- Если 'visual', граница будет ограничена областью окна/отображения
- Если 'layout', граница будет ограничена границами CSS макета
- Неверное значение обрабатывается как 'visual'
- Значение по умолчанию
- {"right":"layout","bottom":""}
- Исходный код: core/ScaleManager.js (Строка 379)
При включении холст отображения будет вертикально выровнен в контейнере родителя (или окне).
Для вертикального выравнивания элемент родителя должен иметь несужающуюся высоту, так чтобы он поддерживал
высоту больше, чем высота холста игры – холст игры будет затем масштабирован по вертикали
в пределах оставшейся доступной высоты, определенной элементом родителя.
Один из способов предотвращения сужения родителя – добавление абсолютной свойства «min-height» CSS к элементу родителя.
Если задается относительная «min-height/height» или корректируются отступы, высота родителя должна быть все же неподвижной (см. примечание).
Примечание: В версии 2.2 минимальная высота документа не автоматически устанавливается на высоту viewport/окна.
Для автоматического обновления минимальной высоты документа установите compatibility.forceMinimumDocumentHeight в true.
Вертикальное выравнивание не применимо к режиму масштабирования RESIZE.
parentIsWindow : boolean
Если контейнер родителя холста игры – само окно браузера (т.е. document.body),
а не другой div, это должно быть установлено в true.
Свойство parentNode обычно игнорируется, пока это активна.
parentNode :DOMElement
Оригинальный элемент DOM для родителя холста отображения.
Это может быть другим в полноэкранном режиме – см. createFullScreenTarget.
Это следует изменять только после перемещения холста игры в другой родительский элемент DOM.
[readonly] parentScaleFactor : Phaser.Point
Масштаб игры по отношению к её родительскому контейнеру.
[readonly] scaleFactor : Phaser.Point
Текущий масштабный коэффициент на основе размеров игры по сравнению с размерами после масштабирования.
<internal, readonly> scaleFactorInversed : Phaser.Point
Текущий инвертированный масштабный коэффициент. Размеры отображения, делённые на размеры игры.
scaleMode : integer
Метод масштабирования, используемый ScaleManager, когда не используется полноэкранный режим.
[readonly] screenOrientation : string
Последнее известное ориентация экрана, определённая в Web API Window Screen.
См. Phaser.DOM.getScreenOrientation для возможных значений.
[readonly] sourceAspectRatio : number
Соотношение сторон исходных размеров игры.
<internal> trackParentInterval : integer
Максимальное время (в мс) между проверками обновления размеров родительского элемента холста (или окна).
Проверки обновления обычно происходят быстрее в ответ на другие события.
[readonly] width : number
Целеная ширина (в пикселях) холста отображения.
windowConstraints
Границы, в которых следует ограничить отображение/холст игры кроме ограничений родительского контейнера.
Свойства – строки и могут быть '', 'visual', 'layout' или 'layout-soft'.
Свойства:
| Имя | Тип | Описание |
|---|---|---|
bottom | string | |
right | string |
Общедоступные методы
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 645)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 1728)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 2058)
- Исходный код: core/ScaleManager.js (Строка 1163)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 1408)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 748)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: core/ScaleManager.js (Строка 1028)
- событие изменения устройства не распознается должным образом; или
- размер Родителя изменяется (и требуется немедленное перерасчет); или
- состояние ScaleManager обновляется нестандартными средствами; или
- некоторые свойства совместимости изменяются вручную.
- Исходный код: core/ScaleManager.js (Строка 1301)
<internal> boot()
Запустить ScaleManager.
<internal> createFullScreenTarget()
Создает целевой объект полноэкранного режима. Это вызывается автоматически при необходимости при переходе в
полноэкранный режим, и полученный элемент передается в onFullScreenInit.
Используйте onFullScreenInit, чтобы настроить созданный объект.
<internal> destroy()
Уничтожает ScaleManager и удаляет все обработчики событий.
Это следует делать только при уничтожении игры.
forceOrientation(forceLandscape, forcePortrait)
Принудительно устанавливает режим ориентации игры.
Это позволяет генерировать неправильные сигналы ориентации и влияет на изменение размера, но не поворачивает и не блокирует ориентацию.
Проверка ориентации выполняется через API ориентации экрана, если она доступна в браузере. Это означает, что он будет проверять ориентацию вашего монитора
на настольном компьютере или ориентацию вашего устройства на мобильном телефоне, а не сравнивать фактические размеры игры. Если вам нужно проверить размеры представления вместо этого и обойти API ориентации экрана, установите: ScaleManager.compatibility.orientationFallback = 'viewport'
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
forceLandscape | boolean | true, если игра должна запускаться только в альбомной ориентации. | ||
forcePortrait | boolean | <optional> | false | true, если игра должна запускаться только в портретной ориентации. |
<internal> getParentBounds(target) → {Phaser.Rectangle}
Возвращает вычисленный размер/границы Родителя, которые может/должен заполнить холст Display.
Если в полноэкранном режиме или без родителя (см. parentIsWindow),
это будут границы самого визуального представления.
Эта функция учитывает windowConstraints — если родитель частично находится за пределами
видимого экрана, эта функция может вернуть размер меньше ожидаемого.
Значения округляются до ближайшего пикселя.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
target | Phaser.Rectangle | <optional> | (new Rectangle) | Прямоугольник для обновления; новый создается при необходимости. |
Возвращает
Установленные границы родителя.
<internal> parseConfig(config)
Загрузка параметров конфигурации.
Параметры
| Имя | Тип | Описание |
|---|---|---|
config | object | Объект конфигурации игры. |
<internal> preUpdate()
ScaleManager.preUpdate вызывается автоматически основным циклом игры.
refresh()
Метод «обновить» сообщает ScaleManager о необходимости обновления макета.
ScaleManager автоматически добавляет в очередь обновление макета (например, обновляет размер игры или макет холста Display)
при изменении размера браузера, изменении ориентации или при обнаружении изменения
размера Родителя. Обновление также выполняется автоматически при обновлении общедоступных свойств,
например, scaleMode, или вызове методов изменения состояния.
Метод «обновить» может потребоваться в некоторых (редких) случаях, когда
Очередное обновление макета не происходит немедленно, а будет выполнено в ближайшем preRender.
<internal> scaleSprite(sprite, width, height, letterBox) → {Phaser.Sprite | Phaser.Image}
Принимает объект Sprite или Image и масштабирует его до указанных размеров.
Масштабирование происходит пропорционально без искажений текстуры спрайта.
Параметр letterBox управляет тем, будет ли масштабирование производить эффект черного поля или увеличивать
спрайт до тех пор, пока он не заполнит заданные значения. Обратите внимание, что при letterBox, установленного в false, масштабированный спрайт может выходить за пределы
горизонтальных или вертикальных сторон целевых размеров. Если вы хотите предотвратить это, вы можете обрезать спрайт.
Параметры
- Внутреннее использование:
- Этот член предназначен для внутреннего (защищенного) использования и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 1988)
- Режим масштабирования
- Коэффициент масштабирования
- Размер родительского элемента Canvas или CSS-правила, такие как min-height/max-height;
- Размер окна
- Исходный код: core/ScaleManager.js (Строка 881)
- Когда устройство не находится в неправильном ориентации; или
- Режим масштабирования EXACT_FIT не в полноэкранном режиме
- Исходный код: core/ScaleManager.js (Строка 996)
- Задачи:
-
- Эти значения иногда игнорируются.
- Может быть вызван, даже если размеры родительского контейнера или холста не изменились
- В отличие от onSizeChange, он выполняется до гарантированного обновления холста
- Вызывается из
preUpdate, даже когда игра приостановлена - Исходный код: core/ScaleManager.js (Строка 933)
- Внутреннее использование:
- Этот член предназначен для внутреннего (защищенного) использования и может быть изменён или удалён в будущем.
- Исходный код: core/ScaleManager.js (Строка 781)
- Исходный код: core/ScaleManager.js (Строка 909)
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
sprite | Phaser.Sprite | Phaser.Image | Спрайт, который мы хотим масштабировать. | ||
width | целое число | <необязательно> | Целевое значение ширины, в которую мы хотим поместить спрайт. Если не указано, используется значение ScaleManager.width. | |
height | целое число | <необязательно> | Целевое значение высоты, в которую мы хотим поместить спрайт. Если не указано, используется значение ScaleManager.height. | |
letterBox | логическое значение | <необязательно> | false | Истинно, если мы хотим использовать режим |
Возвращаемое значение
Отмасштабированный спрайт.
setGameSize(width, height)
Установить фактический размер игры.
Используйте эту функцию вместо непосредственного изменения game.width или game.height.
Фактический размер отображения (размер элемента Canvas) зависит от различных настроек, включая:
Параметры
| Имя | Тип | Описание |
|---|---|---|
width | целое число | Ширина игры в пикселях. |
height | целое число | Высота игры в пикселях. |
setMinMax(minWidth, minHeight, maxWidth, maxHeight)
Установить минимальные и максимальные размеры холста отображения.
Примечание: Минимальные/максимальные размеры применяются только в некоторых случаях:
Параметры
| Имя | Тип | Аргумент | Описание |
|---|---|---|---|
minWidth | число | Минимальная ширина, до которой разрешено масштабировать игру. | |
minHeight | число | Минимальная высота, до которой разрешено масштабировать игру. | |
maxWidth | число | <необязательно> | Максимальная ширина, до которой разрешено масштабировать игру; изменяется только при указании. |
maxHeight | число | <необязательно> | Максимальная высота, до которой разрешено масштабировать игру; изменяется только при указании. |
setResizeCallback(callback, context)
Устанавливает обратный вызов, который будет вызван перед расчётом размеров.
Это подходящее место для вызова setUserScale, если требуется настраиваемое динамическое масштабирование.
Обратный вызов получает два аргумента: scale и parentBounds, где scale — ScaleManager,
и parentBounds, Phaser.Rectangle, — размер родительского элемента.
Этот обратный вызов:
См. onSizeChange для лучшего способа реакции на обновления макета.
Параметры
| Имя | Тип | Описание |
|---|---|---|
callback | функция | Обратный вызов, который вызывается каждый раз, когда происходит событие window.resize, или если задано, при изменении размеров родительского контейнера. |
context | объект | Контекст, в котором будет вызван обратный вызов. |
<internal> setupScale(width, height)
Вычисляет и устанавливает размеры игры на основе заданной ширины и высоты.
Не следует вызывать этот метод в полноэкранном режиме.
Параметры
| Имя | Тип | Описание |
|---|---|---|
width | число | строка | Ширина игры. |
height | число | строка | Высота игры. |
setUserScale(hScale, vScale, hTrim, vTrim)
Установить коэффициент масштабирования пользователя, используемый в режиме USER_SCALE.
Целевые размеры холста вычисляются следующим образом:
canvas.width = (game.width * hScale) - hTrim canvas.height = (game.height * vScale) - vTrim
Этот метод может использоваться в обратном вызове изменения размера.
Параметры
| Имя | Тип | Аргумент | Значение по умолчанию | Описание |
|---|---|---|---|---|
hScale | число | Горизонтальный коэффициент масштабирования. | ||
vScale | число | Вертикальный коэффициент масштабирования. | ||
hTrim | целое число | <необязательно> | 0 | Горизонтальное обрезание, применяется после масштабирования. |
vTrim | целое число | <необязательно> | 0 | Вертикальное обрезание, применяется после масштабирования. |
startFullScreen(antialias, allowTrampoline) → {boolean}
- Исходный код: core/ScaleManager.js (Строка 1749)
- Исходный код: core/ScaleManager.js (Строка 1842)
Запустить полноэкранный режим браузера — это обязательно должно вызываться из события указателя или мыши пользователя.
Для работы API полноэкранного режима браузер должен его поддерживать — это не то же самое, что установка
размера игры для заполнения окна браузера. Проверьте совместимость compatibility.supportsFullScreen, чтобы проверить, сообщает ли текущее
устройство о поддержке полноэкранного режима.
Сигнал fullScreenFailed будет отправлен, если запрос на изменение полноэкранного режима не удался или игра не поддерживает API полноэкранного режима.
Параметры
| Имя | Тип | Аргумент | Описание |
|---|---|---|---|
antialias | boolean | <optional> | Изменяет функцию сглаживания антиалиасинга холста перед переходом в полноэкранный режим (false = сохранить пиксельную графику, true = сгладить графику). Если не указано, то изменения не производятся. Работает только в режиме CANVAS. |
allowTrampoline | boolean | <optional> | Внутренний аргумент. Если |
Возвращаемое значение
Возвращает true, если устройство поддерживает полноэкранный режим и попытка запуска полноэкранного режима была предпринята. (Возможно, он не будет запущен, дождитесь сигналов.)
stopFullScreen() → {boolean}
Останавливает/выходит из полноэкранного режима, если он активен.
Возвращаемое значение
Возвращает true, если браузер поддерживает полноэкранный режим и полноэкранный режим будет закрыт.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.ScaleManager.html