Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: HTML5 ::: HTML5 + JavaScript ::: Animação, Animações, Técnicas de Animação

Como criar um relógio digital usando o Canvas do HTML5 e as funções fillText() e requestAnimationFrame()

Quantidade de visualizações: 790 vezes
Nesta dica nós vamos avançar um pouco mais no nosso Curso de Criação de Jogos em HTML5. Para isso nós vamos tirar proveito das funções fillText() e requestAnimationFrame() para criar um relógio digital na superfície do Canvas. Este relógio atualiza o tempo todo, mostrando as horas em tempo real.

Comece analisando a imagem a seguir:



Agora vamos ao código. Veja a página HTML completa, incluindo o código JavaScript para a animação:

<!doctype html>
<html>
<head>
  <title>O objeto Canvas do JavaScript</title>
</head>
<body>
  
<Canvas id="canvas" width="500" height="200"></Canvas>
  
<script type="text/javascript">
  // obtemos uma referência ao elemento Canvas  
  var canvas = document.getElementById("canvas");
  // obtemos o contexto de desenho
  var contexto = canvas.getContext("2d");
  
  // função que exibe o relógio digital
  function exibir_relogio(){
    // obtemos a hora atual já formatada
    var agora = new Date();
    var horas = agora.toLocaleTimeString();
	
    // limpamos o canvas    
    contexto.clearRect(0, 0, canvas.width, canvas.height);
 
    // e desenhamos o relógio mais uma vez
    contexto.font = "60pt calibri";


Para obter as horas formatadas de acordo com as configurações regionais do nosso computador nós fazemos uso da função toLocaleTimeString() do objeto Date. Note o uso da função clearRect() para limpar o Canvas. Em seguida nós definimos a fonte e a cor a ser usada no texto usando as propriedades font e fillStyle. Finalmente nós usamos a função fillText() para escrever o texto representando a hora atualizada na superfície do Canvas.

Para finalizar, nós usamos a função requestAnimationFrame() para atualizar a janela de desenho constantemente, na taxa de 60 frames por segundo. Em outras dicas de HTML5 eu mostro como você pode controlar essa taxa de atualização.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de HTML5

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 23 usuários muito felizes estudando em nosso site.