Jump to content
Super Oliks

VB.Net - Reporduzir caracteres - fonte grande

Recommended Posts

Super Oliks

Estou tentando fazer um programa que produza a tela esquematizada abaixo:

imagemjj.png

Idéias, são muito bem vindas!

Share this post


Link to post
Share on other sites
ribeiro55

WinForms ou Console ?


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
ribeiro55

WinForms acaba por ser mais difícil porque tens muito mais possibilidades:

Escrever em:

- Imagem?

- TextBox?

- Ficheiro?

- No form?


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
Super Oliks

mais possibilidades mais chances de acerto  😳

1 Button, 1 textbox, 1 richtext

No textbox digitaria a palavra, o Button geraria a palavra em caracteres grandes, e na richtext seria onde a palavra sairia pronta.

Share this post


Link to post
Share on other sites
Andrepereira9

Boas

Era para funcionar com todas as letras, ou só para a palavra SOL?


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
ribeiro55

O que deves fazer é mapear cada letra a uma matriz de "on-offs" para construir cada linha da richtext.

O conceito é simples, a concepção é manhosa para quem não tem muita experiência.

Por exemplo, "S" poderia traduzir-se em:


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
BELGA

Deixo-te ai uma "sugestão":

Public Function s() As String
        Return New String( _
        "  * * * * * * * *  " + "#" + _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  * * * * * * * *  " + "#" + _
        "                   *  " + "#" + _
        "                   *  " + "#" + _
        "  * * * * * * * *  " + "#")
    End Function

    Public Function o() As String
        Return New String( _
        "  * * * * * * * *  " + "#" + _
        "  *                *  " + "#" + _
        "  *                *  " + "#" + _
        "  *                *  " + "#" + _
        "  *                *  " + "#" + _
        "  *                *  " + "#" + _
        "  * * * * * * * *  " + "#")
    End Function


    Public Function l() As String
        Return New String( _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  *                   " + "#" + _
        "  * * * * * * * *  " + "#")
    End Function

Sim, basicamente fazes uma função para cada letra, é óbvio que podes fazer de outras maneiras, que até podem ser mais simples...

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        RichTextBox1.Clear()
        Dim text As New String("")

        For index As Integer = 0 To TextBox1.Text.Length - 1
            text &= CallByName(Me, TextBox1.Text(index), CallType.Method, Nothing).ToString()
        Next


        For iindex As Integer = 0 To 6
            For index As Integer = iindex To (TextBox1.Text.Length * 7) - 1 Step 7
                RichTextBox1.Text &= text.Split("#")(index)
            Next
            RichTextBox1.Text &= vbCrLf
        Next
    End Sub

Para processar as letras percorro a string que está na textbox1 e guardo a letra já convertida, depois faço um ciclo onde junto todas as linhas uma a uma de maneira a formar o texto.

Já agora deixo uma nota: usa um tipo de letra que tenha o tamanho das letras igual.

Share this post


Link to post
Share on other sites
jpaulino

Porque não utilizas simplesmente uma fonte com um tamanho grande? Acho que estás uma vez mais a querer inventar a roda.

Share this post


Link to post
Share on other sites
ribeiro55

Não propriamente.

Isto vê-se mais no underworld da pirataria.

Se abrires um famoso NFO vais notar que todos têm letras e bonecos fantásticos, baseados em ASCII Art.

Não podes simplesmente "aumentar a letra" para fazer um tipo de trabalho destes, que fique perfeitamente independente de plataforma, fonte ou tamanhos.


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
Super Oliks

Muito obrigado pelas dicas :P '

Estou tentando fazer de uma maneira diferente, se dê certo eu posto o código. Primeiro vou converte letras e depois imagens, pelas sugestões acho que já sei como fazer.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.