Pular para o conteúdo

dxDrawText

Cliente Desenho na tela

Desenha um texto.

bool dxDrawText ( string texto, number esquerda, number topo [, number direita = esquerda, number base = topo, number cor = tocolor(255,255,255,255), number escala = 1 [, number escalaY = escala ], mixed fonte = "default", string alinhamentoX = "left", string alinhamentoY = "top", bool cortar = false, bool quebrarLinha = false, bool postGUI = false, bool coresNoTexto = false, bool posicaoSubpixel = false, number rotacao = 0, number centroRotacaoX, number centroRotacaoY, number espacamentoLinhas = 0 ] )
NomeTipoPadrãoDescrição
textostring—O texto. Um \n quebra a linha.
esquerda, toponumber—Canto superior esquerdo da caixa de texto, em pixels.
direita, basenumberiguais a esquerda e topoCanto inferior direito da caixa, usado pelo alinhamento, por cortar e por quebrarLinha.
cornumberbranco opacoCor do texto.
escalanumber1Multiplica o tamanho da fonte.
escalaYnumberigual a escalaSe um segundo número vier depois de escala, escala passa a ser a escala horizontal e este a vertical.
fontemixed"default"Nome de uma fonte embutida ou um elemento devolvido por dxCreateFont.
alinhamentoXstring"left""left", "center" ou "right", dentro da caixa.
alinhamentoYstring"top""top", "center" ou "bottom", dentro da caixa.
cortarboolfalseCorta o que ficar fora da caixa.
quebrarLinhaboolfalseQuebra as linhas entre as palavras para caberem entre esquerda e direita.
postGUIboolfalsetrue desenha depois da GUI, por cima dela.
coresNoTextoboolfalseInterpreta códigos #RRGGBB dentro do texto. Texto com cores ignora cortar e quebrarLinha.
posicaoSubpixelboolfalseMantém posições fracionárias em vez de alinhar o texto a pixels inteiros.
rotacaonumber0Rotação em graus.
centroRotacaoX, centroRotacaoYnumbercentro da caixaPonto em torno do qual o texto gira, em pixels da tela.
espacamentoLinhasnumber0Só para texto com cores: a distância entre as linhas, em pixels. 0 usa a altura da fonte.

true se o texto foi desenhado. Devolve false, com um aviso no console de debug, se algum argumento estiver errado (um alinhamento desconhecido, ou um elemento que não é fonte) ou se a fonte não puder ser carregada. Um nome de fonte embutida desconhecido apenas cai para "default".

Para centralizar, a caixa precisa ter tamanho: com direita e base iguais a esquerda e topo, os alinhamentos "center" e "right"/"bottom" não têm espaço para trabalhar.

local telaW, telaH = getScreenSize()
-- centralizado na tela inteira
dxDrawText("PARADO", 0, 0, telaW, telaH, tocolor(255, 255, 255, 255), 2, "default-bold", "center", "center")

Cores dentro do texto

Com coresNoTexto ativo, um #RRGGBB no meio da string troca a cor dali em diante. O alfa continua sendo o da cor base, e os códigos não são desenhados:

Texto da direita para a esquerda

O árabe e demais escritas da direita para a esquerda são formatadas e reordenadas antes do desenho, então são lidas na direção certa, com as letras unidas na forma correta — sem precisar inverter nada na mão.

dxDrawText("#ffffffVida: #ff4040" .. math.floor(getElementHealth(localPlayer)),
20, 20, 0, 0, tocolor(255, 255, 255, 255), 1, "default", "left", "top",
false, false, false, true)
  • dxCreateFont — Carrega uma fonte de um arquivo do resource para usar no lugar das fontes embutidas.