Corona SDK 프로젝트 기본적인 텍스트, 이미지 생성

 

지지난주부터 시작하던 일이 끝이 안 보이는거 같습니다. 계속 마라톤 하듯이 온거 같은데..

까탈스런 날씨덕에 감기가 떠나지 않고.... 쉬어야 하는데.. 하면서도... 생각해보면 언제 쉬었을까요? @.@

 

요즘 유머게시판에 돌고 있는 월화수목금토일 체감시간이 정말로.....

워어어어어어얼화아수우모옥금퇼 인거 같습니다. ㅋㅋㅋㅋ

 

지금 쓰고 있는 글이 어렵지 않아서 머리 아플 일이 없어서 다행인거 같습니다.

 

그럼 글 시작 ~

 

 

1. 코드 작성해보기

 

지난번에 작성한 프로젝트 폴더에서 코드를 작성합니다.

 

메인 파일인 main.lua 를 편집기로 열어줍니다.

 

-----------------------------------------------------------------------------------------
--
-- main.lua
--
-----------------------------------------------------------------------------------------

-- Your code here

 

 

2. 텍스트

 

Text를 만드는 방법입니다.

 

Corona에서 문법은 display 화면을 중심으로 해서 new객체로 생성을 해줍니다.

 

display 에 새로운 텍스트(newText)를 생성하는 방법은 아래와 같습니다.

 

local text = display.newText( "Hello World!", 50, 50, nil, 24 )

 

안에 들어가는 인자들은 차례대로 아래 설명해놓았습니다.

 

newText('표시할 내용', x 좌표, y 좌표, 글꼴, 크기)

 

실제 코드를 적용한 다음, 실행을 해보도록 하겠습니다.

 

local text = display.newText( "Hello World!", 50, 50, nil, 24 )

 

별도의 컴파일이 필요없이 에뮬레이터 창에서 File 메뉴를 선택하고 Relaunch를 누르면 바로 적용이 됩니다. ^ㅇ^

 

 

코드를 실행하면 아래와 같이 글씨가 써졌습니다.

 

 

 

이번엔 글자에 색을 넣어볼 차례입니다.

먼저 아래 설명을 보면 RGB 코드로 색을 넣어줍니다.

 

setTextColor( 빨강, 초록, 파랑 )

 

저는 파랑의 색코드인 (0, 0, 255) 로 하려다가 검은 바탕에 파란색이 눈에 잘 안 띄어서 약간 밝게 조절하였습니다.

 

local text = display.newText( "Hello World!", 50, 50, nil, 24 )
text:setTextColor( 128, 128, 255 )

 

다시 에뮬레이터에서 확인해보면 아래와 같이 약간 밝은 파랑색으로 보여집니다.

 

 

 

3. 이미지

 

이번에는 그림을 넣어보도록 하겠습니다.

텍스트와 비슷하게 작성을 합니다.

 

사전에 프로젝트 폴더에 icecream.png 파일을 하나 넣어두었습니다.

 

아래 이미지를 생성할 때, 그림 경로를 포함한 이미지 명을 넣어둡니다.

프로젝트랑 같은 위치에 놓아서 경로는 따로 지정하지 않았습니다.

 

local img = display.newImage( "icecream.png" )

 

한줄만 작성을 하고 에뮬레이터에서 갱신을 하였습니다.

 

 

 

텍스트엔 좌표가 있었는데, 이미지에는 좌표가 없네요..

코드에서 넣어주도록 합니다.

 

img.x = x 좌표
img.y = y 좌표

 

몇번 테스트를 하다보니 제가 원하는 지점에 나타나지 않았습니다.

그 이유가 뭘까하고 잠시 생각해보니... 보통 이미지의 왼쪽 위를 기준으로 좌표를 정하는데..

Corona SDk 에서는 이미지 중심을 기준으로 좌표를 정하는 것이었습니다.

 

그래서 x 좌표를 0 으로 설정했을 때, 이미지가 왼쪽 화면을 넘어갔던 것이었습니다.

 

 

사용했던 이미지가 140 x 150 사이즈였던 것을 생각해서 각각의 크기를 반으로 나누면 왼쪽 위 좌표가 됩니다.

 

이미지 x 좌표에 + 50을 하고, y 좌표에는 + 100을 정해줬습니다.

 

local img = display.newImage( "icecream.png" )
img.x = (140 / 2) + 50
img.y = (150 / 2) + 100

 

위와 같이 직접 사이즈를 입력해줘도 되고 아래와 같이 contentWidth 또는 contentHeight를 입력해서 이미지 크기를 자동으로 인식 후, 계산하도록 하면 됩니다.

 

local img = display.newImage( "icecream.png" )
img.x = (img.contentWidth / 2) + 50
img.y = (img.contentHeight  / 2) + 100

 

모든 코드를 적용하면 아래처럼 실행이 됩니다.

 

 

4. 작성한 코드 내용

 

설명은 긴데, 실제 코드 내용은 몇줄 안됩니다.

 

-----------------------------------------------------------------------------------------
--
-- main.lua
--
-----------------------------------------------------------------------------------------

-- Your code here

local text = display.newText( "Hello World!", 50, 50, nil, 24 )
text:setTextColor( 128, 128, 255 )

local img = display.newImage( "icecream.png" )
img.x = (img.contentWidth / 2) + 50
img.y = (img.contentHeight  / 2) + 100

 

 

~(@_ @ )~

 

내용은 간단하지만, 일반적인 C, Java 문법과는 달라서 적응이 필요할 듯 합니다.

요즘엔 할 시간이 없어서 그동안 정리했던 것만 적고 있는데 곧 바닥이 날거 같습니다... 크헠..