Yo! Que saudade daqui, eu sei que “fechei oficialmente” o blog, mas é que eu não podia deixar de escrever o que tenho passado os últimos mêses. Vou direto ao ponto.
TextAnim é uma classe para animação de texto dinâmico em Flash – ActionScript 3. É baseada em eventos, não possui tween, apenas quebra o texto em blocos (letras, palavras ou linhas) fazendo com que cada bloco seja um Sprite, depois disso ela dispara esses blocos na sequência e intervalo definidos. Você só precisa passar um TextField com a fonte embedada e dizer qual efeito (function) quer aplicar. Veja um rápido exemplo: [Download do exemplo com código]
Criando uma instância de TextAnim:
1 2 3
import flupie.textanim.*;
var myTextAnim:TextAnim = new TextAnim(myTextField);
Nesse trexo de código, eu apenas crio uma instância passando um TextField no construtor, é precisso garantir que o embed da fonte esteja aplicado. Depois disso você pode especificar algumas propriedades, como por exemplo:
Aqui definimos que a TextAnim irá disparar os blocks num intervalo de 40ms, chamando a função myEffectFunction, que receberá um block como parâmetro, do tipo TextAnimBlock:
Aqui é onde tudo acontece, no método que será o efeito é necessário receber o block, isso representa cada pedaço do texto, sendo do tipo TextAnimBlock, um TextAnimBlock é bastante importante porque tem algumas propriedades para conseguirmos fazer os efeitos. A TextAnim não se importa com o efeito em si, isso fica por sua conta, é possível criar qualquer coisa.
Todo block (TextAnimBlock) tem as propriedades posX e posY que guardam a real posição (x, y) do block de texto, independente do alinhamento, tamanho e espaçamento de letras, com isso é possível jogar os blocos de texto pra qualquer lugar e depois tweenar de volta. Como a TextAnim não movimenta os blocos, ou seja, não tem engine de tween embutida, você pode usar qualquer uma, dependendo do que você quiser fazer.
Tem sido muito útil pra gente e espero que ajude, se tiver qualquer dúvida pode pegar a documentação (em inglês) e também o gerador de código, chamado TextAnim Maker.
Para conseguir escrever este post eu precisei passar um tempo lendo os posts antigos, pra saber como eu escrevia, passou tanto tempo que eu não sei mais o que queria com o blog, acho que é o de sempre, mas isso não vem ao caso.
A verdade é que venho por meio deste oficializar o fechamento do blog por consequência da FormUp também, o código era mantido só por mim, e desde o lançamento eu nunca mais mexi. A parte legal dessa história foi poder ajudar o pessoal a montar seus formulários em Flash por aê, todos e-mails, comentários, fóruns etc, é realmente prazeroso participar de um treco desses.
Uia! Acabei de me dar conta, no mês de maio agora fez exatamente 2 anos que publiquei este blog. Eu tenho planos *secretos* de voltar a escrever, com foco em coisas mais decorrentes/genéricas, continuo trabalhando com coisas em Flash e outras diversões com códigos e animações talvez encontre alguma motivação.
Já deve ter feito 1 ano ou mais que saí da Mkt Virtual. Trabalhei lá por 2 anos e pouco (até perguntei pra Xanda pra ter certeza), foi lá que comecei a perceber que formulários em flash eram uma zona. Achei realmente que poderia ajudar a dar um jeito nisso, e comecei a escrever a classe em AS2 na época, depois daquilo eu nunca mais me senti tão produtivo eu acho. Passei madrugadas junto com Rodrigo Moyle tentando achar melhor solução pra cada coisa, foi maior tempo bom aquele.
Mas o tempo passou e hoje eu já não acredito mais em formulários em Flash, na verdade desde aquele tempo já tinhamos discussões enormes, no fundo não fazia muito sentido, sendo bem extremista, hoje, se você precisa de um *formulário* em seu site em Flash, alguma coisa começou errada. Não estou falando em um formzinho com três campos de texto, ou um form de contato coisa rápida… Estou falando de um Sr. Formulário como eu mesmo acabei fazendo muitos e muitos por aí. Hoje é bem claro pra mim que, formulários com combo, upload, lists, options, checks e blablabla são um erro no Flash.
Não existe um jeito razoável de se produzir elementos de um form em Flash garantindo perfomace e usabilidade independente do layout. A grande verdade é que elementos padrão de formulário em HTML não existem atoa, você no muito dá uma formatada com CSS, poem uma validação bonita em Javascript, mas é aquilo, feito pra isso, funciona, tem uma série de recursos do browser que tornam um form em HTML mais saudável, de qualquer outro jeito é forçar a barra. O Player do Flash simplismente não foi feito pra isso, não importa se é Flex ou Catalyst está longe de ser algo prático e funcional, tanto para quem desenvolve quanto para o usuário (dá pra falar muito mal do flash nesse sentido, melhor parar por aqui). Mas ainda sim pequenos forms são aceitáveis em Flash.
De lá pra cá (já faz mas de 1 ano também) estou trabalhando na Gringo, onde deixei de fato essa história de forms em Flash de lado. Cheguei a escrever a versão em AS3 da FormUp, mas no meio do caminho eu percebia a necessidade de implentar features que me deprimiam, deixei de lado e passei a fazer coisas que o Flash se propoem a fazer desde o começo, coisas que o Flash *sabe* fazer, coisas visuais simples, efeitos, sons, vídeos e etc… A bricadeira fica muito mais natural e menos sacrificante. Reiventar a roda cansa.
É a forma de agradecer à todos que, de alguma forma, fizeram parte disso: Rodrigo Moyle, Thatiana Alipio, Danilo Costa, Lisandra Barros, Gabriel Caires, Maurício Matias e Ludmilla Rossi. E a toda galera que baixou, testou, usou e continua usando até hoje a FormUp. Essa é a alegria!
Eu realmente estava precisando fazer esse desabafo, vou seguindo tranquilo agora! =)
Depois de um bom tempo sumido de posts, (mas respondendo a todos os e-mails e comentários), voltei. Tive um “começo” de ano (já é quase abril) bem tranquilo, ou quase, mas eu tava aqui pensando respondendo algumas dúvidas conversando com o pessoal que anda usando a classe para formulário em flash eu resolvi oficializar a lista de sites que usam a classe em algum lugar, já que muitos me perguntam aí vai a lista que tenho:
Estou muito feliz pela quatidade de pessoas usando classe, é extremamente motivador, parei de portar para AS3, eu realmente fiquei sem tempo nos últimos mêses, mas quero pegar para finalizar.
Eu resolvi achar um tempo para compartilhar (conheci uma cara um dia, que me disse: “Na vida a gente só arruma tempo para aquilo que a gente ama”) a verdade, é que eu fico deslumbrado com o mundo OPEN, é realmente muito bom, um sujeito monta uma coisa que pode ser útil e imediatamente e compartilha com todos e é assim que a coisa vai. Conheço e uso diariamente uma porrada de códigos, classes, frameworks blablabla… tudo de graça, e isso aumenta muito minha produtividade.
Conversando com o Fofo e com Moyle (galera do trabalho) agora a noite, eu fiquei refletindo que ganhamos muito tempo usando uma porção de ferramentas que não pagamos 1 dolar por elas, nada. Sem contar que quando você publica algo o treco evolui naturalmente conforme o feedback de outros programadores etc.
Deixo aberto aqui pra toda galera que baixou, testou e publicou projeto com a classe, mandem sugestões, qualquer que seja, deixa seu comentário. Não vejo a hora de lançar uma nova versão, se tiverem algo, mandem!
Faz tempo, alias não sou velho, mas me senti como era bem no começo onde vi as primeiras linhas de Clipper 5 fazendo as coisas acontecerem… @say 1,1 e eu me divertia. Mas nesse final de semana parece que aquela alegria voltou, não sei exatamente porque, mas Programar em RoR é uma das coisas mais divertidas que já fiz com computador. Não que eu esteja comparando Ruby a Clippper (!) mas sim, a minha alegria de programar somente. Por hora não vou falar mal de Java, faço isso em relação conjugal diariamente, acredite.
Passei boa parte dos últimos tempos mergulhado em AS e PHP, por conta dos jobs do dia-a-dia, alias PHP é sem dúvidas meu primeiro amor, ele resolve meus problemas, e trabalhar com CakePHP então, é outro planeta. O Flash é um universo tão fascinante que vou poupar meus comentários, a ideia de difundir conhecimento sempre me cativou, a FormUp é prova disso, e também uma série de outras coisas que ainda pretendo publicar.
Mas por fim agradeço a Yukihiro Matsumoto, David Heinemeier e Fábio Akita, vamos ouvir falar muito nesses caras ainda. Vou voltar pra minha diversão e até a próxima divina expiração.