Testando no Chrome, Edge, IE-11.
Talvez eu esteja sendo exigente, mas parece que alterar o tamanho de algo diferente de 600x400 afeta severamente a funcionalidade. Admito que a principal razão pela qual quero fazer isso é porque espero usar essa biblioteca não apenas como um bloco de assinatura (está sendo usado dessa maneira), mas também como um anotador de imagem.
Parece que isso funcionaria bem se não estivesse sendo seriamente descartado toda vez que você alterasse o tamanho desse tamanho aparentemente padrão.
Atualmente executando a v1.5 de signature_pad.js e signature_pad.min.js.
+1 acabou de experimentar este pacote e está tendo problemas com o dimensionamento. Idealmente, quero que ele abranja toda a largura em dispositivos móveis e seja menor em desktops. @szimek alguma ideia?
Quais são exatamente esses problemas com o dimensionamento?
Tome este exemplo. Quando você desenha a posição está incorreta http://jsfiddle.net/4qjwr06h/1/
Ok, eu provavelmente estou sendo estúpido. Se eu quiser que seja responsivo, não deveria estar fazendo width: 100%
com <canvas>
, pois não está alterando a largura real da tela, mas esticando-a. Deve usar larguras fixas em vez disso.
Você pode verificar o método resizeCanvas
no aplicativo de demonstração. Se você adicionar essas 2 linhas à sua demonstração, funcionará bem:
canvas.height = canvas.offsetHeight;
canvas.width = canvas.offsetWidth;
Meu código também leva em conta devicePixelRatio
, mas para ser honesto, não tenho certeza se está 100% correto.
Acho que deu certo, obrigado pessoal
Viva Jesus
De: Szymon Nowak [mailto:[email protected]]
Enviado: quarta-feira, 7 de outubro de 2015 10:14
Para: szimek/signature_pad [email protected]
Cc: crazzeto [email protected]
Assunto: Re: [signature_pad] Largura e Altura (#118)
Você pode verificar https://github.com/szimek/signature_pad/blob/master/example/js/app.js#L10 -L18 método resizeCanvas no aplicativo de demonstração. Se você adicionar essas 2 linhas à sua demonstração, funcionará bem:
canvas.height = canvas.offsetHeight;
canvas.width = canvas.offsetWidth;
Meu código também leva em conta telas de retina, mas para ser honesto, não tenho certeza se está 100% correto.
—
Responda a este e-mail diretamente ou visualize-o no GitHub https://github.com/szimek/signature_pad/issues/118#issuecomment -146207233 .
Posso sugerir colocar essas linhas
canvas.height = canvas.offsetHeight;
canvas.width = canvas.offsetWidth;
nos documentos/README? Levei algum tempo para descobrir isso, e acho que isso também pode ser verdade para outros inexperientes com <canvas>
.
@Boldewyn Obrigado pela sugestão. Há um PR que deveria tornar isso não mais necessário. Até o final do ano, eu o mesclarei e atualizarei o aplicativo de demonstração ou adicionarei essas informações ao README.
Comentários muito úteis
Você pode verificar o método
resizeCanvas
no aplicativo de demonstração. Se você adicionar essas 2 linhas à sua demonstração, funcionará bem:Meu código também leva em conta
devicePixelRatio
, mas para ser honesto, não tenho certeza se está 100% correto.