2013-03-23 11 views
5

Aplikacja pozwala użytkownikowi zapisać projekty i opublikować je, aby inni użytkownicy mogli je później wyświetlić.Zmiana rozmiaru płótna za pomocą tkaniny js

Oryginalne płótno zapisane z proporcjami szerokości = 700 i wysokości = 600. Ale podczas wyświetlania płótna, chcę zmienić rozmiar płótna, aby dopasować go do wymiarów (350,300). połowa oryginału. Ale jeśli bezpośrednio zastosuję te wymiary i szerokość obciążenia setWidth() i setHeight(), to ładują się z oryginalnymi proporcjami.

Chcę tylko wyświetlić płótno o nowych wymiarach.

+8

Jest to najbardziej zdecydowanie nie jest duplikatem, ponieważ wiąże się to fabric.js –

+0

Nawet tak było, rozwiązanie było bardziej ogólne. Rozwiązanie nie zawierało nic konkretnego dla fabricJS. Więc nie będę się spierać. – Rohan210

Odpowiedz

-2

Poprzednio odpowiedział here.

Nie jestem pewien, co już stara, ale

var canvas = document.getElementsByTagName('canvas')[0]; 
canvas.width = 800; 
canvas.height = 600; 

powinny działać prawidłowo.

+0

Whoa !!! To się udało. Dzięki za tonę – Rohan210

+5

To nie zadziała na tkaninie.Canvas –

38

Jeśli używasz biblioteki fabric.js, to za mało.

Biorąc pod uwagę, że „płótno” jest obiektem instancji fabric.js, należy to zrobić, aby uniknąć artefaktów Distorsion:

canvas.setWidth(<desired width>); 
canvas.setHeight(<desired height>); 
canvas.calcOffset(); 
+0

To powinna być zaakceptowana odpowiedź –

Powiązane problemy