Я хочу разработать мобильную игру html5. Как вы знаете, экраны мобильных устройств различного размера, поэтому я хочу создать отзывчивый холст, чтобы он мог адаптироваться к другому экрану.Как создать отзывчивый холст с помощью createJs для адаптации экранов разных мобильных устройств?
4
A
ответ
6
Простейший способ - изменить размер вашего холста с помощью JavaScript на основе видового экрана, а затем оплатить содержимое.
var w = $("#container").width();
var h = $("#container").height();
stage.canvas.width = w;
stage.canvas.height = h;
// Simple "fit-to-screen" scaling
var ratio = contentWidth/contentHeight; // Use the "default" size of the content you have.
var windowRatio = w/h;
var scale = w/contentWidth;
if (windowRatio > ratio) {
scale = h/contentHeight;
}
content.scaleX = content.scaleY = scale;
Вот простой пример. Это немного отличается от кода примера, чтобы заставить его работать в окне изменения размера. http://jsfiddle.net/lannymcnie/4yy08pax/
Если вы имеете дело с мобильными устройствами, вам необходимо рассмотреть некоторые другие вещи (они автоматически масштабируют холсты для учета их высокого DPI).
Надеюсь, что это поможет.
Смежные вопросы
- 1. Отзывчивый холст для разных устройств
- 2. отзывчивый холст для разных экранов - лучший способ сделать это?
- 3. Отзывчивый веб-сайт для мобильных экранов
- 4. Раскадровки: автоматическая компоновка для разных экранов устройств
- 5. Как создать отзывчивый холст с абсолютными координатами?
- 6. Масштабирование приложения Game Maker для экранов мобильных устройств
- 7. Отзывчивый образ с CSS для меньших экранов
- 8. Веб-сайт для разных размеров мобильных устройств
- 9. Отзывчивый холст с Bootstrap
- 10. Отзывчивый дизайн для мобильных сайтов
- 11. Как создать разные макеты для разных экранов
- 12. Как создать различные изображения для разных экранов
- 13. Конфигурирование дисплеев для разных мобильных устройств
- 14. Как создать приложение для мобильных устройств?
- 15. Как установить правила css с помощью @media для разных экранов
- 16. Как считать большинство мобильных экранов с помощью @media?
- 17. Фактическое разрешение для мобильных устройств
- 18. Различные dimens.xml для разных экранов
- 19. Создать словарь для мобильных устройств с помощью J2ME
- 20. Служба для мобильных устройств
- 21. Как настроить ReactNative ScrollView для видовых экранов разных устройств?
- 22. JQuery JEasyUI treegrid или FancyTree, но отзывчивый для мобильных устройств
- 23. Fancybox полноразмерный на рабочем столе, но отзывчивый для мобильных устройств?
- 24. Изображения и иконки для мобильных устройств?
- 25. Css Отзывчивый дизайн для мобильных устройств не прокручивается вниз
- 26. Разработка для мобильных устройств
- 27. Создать сайт для мобильных устройств в php
- 28. Холст Отзывчивый - Fabricjs
- 29. Как создать отдельные кнопки для разных устройств?
- 30. Как создать imagemap с помощью createjs
Спасибо вам большое! –
Что делать, если у вас несколько фигур? Как вы можете получить contentWidth/contentHeight каждого? – user1183352
Вы хотите изменить размер каждого элемента, чтобы он соответствовал экрану? В идеале у вас есть только один фрагмент контента, который вы масштабируете, и вы знаете размер по умолчанию этого контента, который вы используете в вышеприведенном подходе. В примере используется 'exportRoot', поскольку он имеет номинальный размер, который был создан в. – Lanny