From documentation
The content area should always be defined in respect to portrait orientation. If your app is designed for landscape orientation, you should still set the width and height according to portrait orientation. In the example above, a landscape-oriented app should still use width and heightparameters of 320 and 480 respectively, not 480 and 320.
“zoomEven” — scales the content area to fill the screen while preserving the same aspect ratio. Some content may “bleed” off the screen edges on devices with aspect ratios that differ from your content aspect ratio.
So I recommended replace width value with height value. Code below
application = { content = { width = 768, height = 1024 scale = "zoomEven", fps = 30, --[[ imageSuffix = { ["@2x"] = 2, ["@4x"] = 4, }, --]] }, }
You can still get (0,0) not in left top corner of screen with zoomEven mode. Maybe try
local aspectRatio = display.pixelHeight / display.pixelWidth application = { content = { width = aspectRatio \>= 1.5 and 800 or math.floor( 1200 / aspectRatio ), height = aspectRatio \<= 1.5 and 1200 or math.floor( 800 \* aspectRatio ), scale = "letterBox", fps = 30, imageSuffix = { ["@2x"] = 1.3, }, }, }
Read more from Tutorial: Modernizing the config.lua