Difference between revisions of "utf8 (한국어)"

(Created page with "{{newin|0.9.2|092|type=module}} 이 라이브러리는 UTF-8로 인코딩된 문자열을 처리하기 위한 기본 지원을 제공합니다. <code>require("utf8")</co...")
 
m (Fixed parent.)
Line 45: Line 45:
  
 
== 참조 ==
 
== 참조 ==
* [[parent::love]]
+
* [[parent::love (한국어)|love]]
* [[love.textinput]]
+
* [[love.textinput (한국어)|love.textinput]]
  
 
[[Category:Libraries]]
 
[[Category:Libraries]]
Line 52: Line 52:
 
{{#set:LOVE Version=0.9.2}}
 
{{#set:LOVE Version=0.9.2}}
 
{{#set:Keyword=String}}
 
{{#set:Keyword=String}}
 +
 
== 다른 언어 ==
 
== 다른 언어 ==
 
{{i18n|utf8}}
 
{{i18n|utf8}}

Revision as of 22:56, 24 August 2022

Available since LÖVE 0.9.2
This module is not supported in earlier versions.


이 라이브러리는 UTF-8로 인코딩된 문자열을 처리하기 위한 기본 지원을 제공합니다.

require("utf8")에 의해 반환된 테이블 내부의 모든 기능을 제공합니다. 이 라이브러리는 UTF-8 인코딩을 처리하는 것 외에는 유니코드에 대한 지원을 제공하지 않습니다. 문자 분류와 같이 문자의 의미가 필요한 작업은 범위를 벗어납니다.

자세한 사용법은 참고 매뉴얼을 참고하세요.

O.png utf8.char 함수는 0.9.2에서 제대로 작동하지 않습니다. 그러나 0.10.0이후로는 문제가 되지 않습니다.  



예시

사용자가 작성한 텍스트를 인쇄하고 UTF-8 모듈을 사용하여 지웁니다.

local utf8 = require("utf8")

function love.load()
    text = "Type away! -- "

    -- enable key repeat so backspace can be held down to trigger love.keypressed multiple times.
    love.keyboard.setKeyRepeat(true)
end

function love.textinput(t)
    text = text .. t
end

function love.keypressed(key)
    if key == "backspace" then
        -- get the byte offset to the last UTF-8 character in the string.
        local byteoffset = utf8.offset(text, -1)

        if byteoffset then
            -- remove the last UTF-8 character.
            -- string.sub operates on bytes rather than UTF-8 characters, so we couldn't do string.sub(text, 1, -2).
            text = string.sub(text, 1, byteoffset - 1)
        end
    end
end

function love.draw()
    love.graphics.printf(text, 0, 0, love.graphics.getWidth())
end

참조



다른 언어