2014-02-12 4 views
2

죄송합니다. libgdx에 조금 미숙합니다 (정말 좋아합니다.). 조금 초보적인 질문 일 수도 있습니다.BitmapFont는 문자열을 경계로 가져 옵니까?

내 RPG 게임용 대화 상자 클래스를 구현하고 있습니다. 기본적으로 나는 사람들이 말하고있을 때 파이널 판타지 게임에서 보는 것처럼 캐릭터로 캐릭터를 표시하도록하고 있습니다. BitmapFontCache 클래스를 사용하여 단어 줄 바꿈을 사용하면 정말 잘 작동합니다. 다음 단계는 "페이징"을 구현하는 것입니다. 즉, 표시 할 대화 클래스에 문자열을 전달하고 문자열의 각 부분이 대화의 각 페이지에 들어갈 수 있는지를 결정합니다. 내 자신의 단어 줄 바꿈을 계산하지 않고이 문제에 약간의 문제가 있습니다.

내 대화 상자의 제약 조건 (사각형을 말합니다)을 전달하고 해당 제약 조건에 맞는 문자열 부분을 되 찾을 수있는 함수가 있습니까? (단어 줄 바꿈 + 끝 줄 등을 고려). 문자를 통해 문자를 반복하고 getWrappedBounds를 사용하면 (그리고 제한 조건을 초과하면 중지 할 수 있습니다.) 문자열 부분을 가져올 때 단어 줄 바꿈을 고려해야 할 필요가 있습니다.

아이디어가 있으십니까?

답변

1

나는 두 가지 대답을 가지고 당신이 -

첫째,이 기능을 사용하면 무엇을 찾고 있는지 않는 생각에 : addWrappedText (java.lang.CharSequence str을, 플로트 X, 플로트 y를 떠 wrapWidth) (javadoc).

두 번째로, 직접 GUI를 구성하는 대신 내장 된 GUI 구성 요소를 사용하는 방법을 살펴볼 수 있습니다. libgdx와 함께 제공되는 라이브러리 인 scene2d ui을 살펴보고 유연한 GUI를 빠르게 조합 할 수 있습니다. 설정하는 데 조금 시간이 걸리지 만 나중에 스킨과 9 패치와 같은 것을 무료로 얻을 수 있기 때문에 많은 옵션을 제공합니다. 따라서이 옵션을 살펴 보는 것이 좋습니다.

+0

안녕하세요 John이 답장을 보내 주셔서 감사합니다. 캐릭터를 캐릭터별로 추가 한 후 경계가 초과하는지 확인 하시겠습니까? 나 자신을 감싸는 단어에 대한 설명이 필요하지 않겠습니까? (말의 중간에 있고 한계를 초과한다고 말하면 그 단어가 다음 페이지로 넘어 가기를 원합니다). – Arbel

관련 문제