Comentário: Desenhar elips na tela é um requisito muito comum, mas a maioria dos navegadores ainda não implementou esse método, então eles geralmente usam o método ARC ou ARCTO para combinar a deformação em escala para desenhar elips. Amigos interessados podem aprender sobre isso, esperando que isso possa ajudá -lo.
Desenhar elips em tela é um requisito muito comum. O novo rascunho do HTML Canvas 2D ContextW3C adicionou um método Ellipse para desenhar elips, mas a maioria dos navegadores ainda não implementou esse método, por isso é necessário usar o método ARC ou ARCTO combinado com a deformação da escala para desenhar elips.
Código de exemplo:
<lVAs> </canvas>
<Cript>
var ctx = documentQuerySelector ('Canvas') getContext ('2D');
ctxLineWidth = "10";
CTXSCALE (1,2);
ctxarc (150.150,100,0, mathpi*2, falso);
ctxstroke ();
</script>
Está um pouco errado, porque as linhas são desiguais de espessura e o curso também é afetado pela escala.
Para corrigir esse problema, precisamos de um pouco de truque.
Código de exemplo:
[código]
<lVAs> </canvas>
<Cript>
var ctx = documentQuerySelector ('Canvas') getContext ('2D');
ctxLineWidth = "10";
ctxSave ();
CTXSCALE (1,2);
ctxarc (150.150,100,0, mathpi*2, falso);
ctxRestore ();
ctxstroke ();
</script>
[/código]
Agora até, perfeito.
O truque é salvar o estado da tela primeiro, depois escalar e chamar o comando PATH, depois restaurar o estado da tela e depois retirá -lo.
O ponto -chave é salvar primeiro e depois zoom, restaurar primeiro e depois derrame.