Nano Hash - криптовалюты, майнинг, программирование

Lua Corona: невозможно центрировать изображение и заполнить им весь экран

Поэтому я перепробовал все, но не могу заставить изображение занять весь экран и быть в центре. Я приложил изображение, и как это выглядит, когда я запускаю корону.

Я попробовал это и получил то, что прикрепил:

local background = display.newImageRect( "bg.png", 
display.contentCenterX, display.contentCenterY)

Заранее спасибо за помощь!

фоновое изображение

как это выглядит на короне

04.09.2017

Ответы:


1

пример ваш config.lua как показано ниже

application = {
    content = {
        width = 640,
        height = 960, 
        scale = "letterBox",
        fps = 30,
    },
}

затем используйте, как показано ниже, чтобы отобразить изображение в полноэкранном режиме.

local background = display.newImageRect( "bg.png", 
640 , 960 )
// then center it like below
background.x = display.contentCenterX
background.y = display.contentCenterY
04.09.2017

2

Согласно документации вам необходимо передать width и высота, а не x и y. Попробуй это:

--take screen width and height, so image can take whole screen
local width = display.contentWidth
local height = display.contentHeight
local background = display.newImageRect( "bg.png", width, height)
--setting coordinates to center
background.x = display.contentCenterX
background.y = display.contentCenterY

Изменить: если вы используете режим масштабирования letterbox, вам следует настроить ширину и высоту.

width = display.contentWidth - 2 * display.screenOriginX
height = display.contentHeight - 2 * display.screenOriginY
04.09.2017
  • В зависимости от метода масштабирования ширина экрана не всегда будет равна display.contentWidth. Для режима letterbox я использую display.contentWidth - 2 * display.screenOriginX для ширины. То же самое относится и к высоте. 04.09.2017

  • 3

    Если вы хотите сохранить соотношение сторон изображения, попробуйте

    local _CX = display.contentCenterX
    local _CY = display.contentCenterY
    local imgW = 440 -- width of image 
    local imgH = 623-- height of image
    local imgR = imgH / imgW
    local screenW = display.contentWidth - 2 * display.screenOriginX 
    local screenH = display.contentHeight - 2 * display.screenOriginY 
    local screenR = screenH / screenW
    local factor = imgR > screenR and screenW / imgW or screenH / imgH
    
    local background = display.newImageRect( 'bg.jpg', imgW * factor, imgH * factor )
    background .x, background .y = _CX, _CY
    

    Я тестировал код в режиме letterbox.

    Другое решение с форума Corona Как сделать изображение полноэкранным?:

    если вы хотите заполнить экран изображением, лучше сделать изображение больше, чем любое потенциальное соотношение сторон экрана, а затем допустить некоторое отсечение на определенных экранах, когда изображение выходит за края.

    04.09.2017
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..