Tôi cần sự giúp đỡ của bạn. Tôi giải thích trường hợp của mình: Tôi đang sử dụng thư viện fabric.js để đặt hình dạng, văn bản, v.v. trong ứng dụng của tôi. Kích thước canvas của tôi có 1000x1000 pixel (khoảng 26,45x26,45 cm). Tôi chỉ có một tập lệnh tải lên hình ảnh để tải hình ảnh lên với chất lượng cao, như 300 dpi.Phương pháp hay nhất để xuất canvas với hình ảnh chất lượng cao là gì?
Về cơ bản những gì tôi làm là như sau: - vẽ canvas (tải lên hình ảnh, đặt văn bản, v.v ...); - thay đổi kích cỡ canvas nhân với hệ số tỷ lệ để có thể ở cuối để có hình ảnh với 300dpi; - lưu canvas ở định dạng PNG; - sử dụng php/ajax và Imagick, đặt canvas với chất lượng 300 dpi, lưu ở định dạng jpg.
Vấn đề là: khi tôi lưu canvas, chất lượng của hình ảnh được tải lên sẽ là nghị định, vì tôi thay đổi kích cỡ canvas là 72 dpi (tại thời điểm tôi lưu ở PNG).
Tôi nghĩ giải pháp có thể là: khi tải lên hình ảnh, lưu vị trí vào mảng có vị trí và kích thước x và y vào cuối toàn bộ quá trình, thay thế hình ảnh bằng JPG. Nếu đây là cách tốt nhất, bạn có thể tạo nó bằng thư viện Imagick hoặc bằng PHP?
Tôi muốn biết ý kiến của bạn về điều đó.
Cảm ơn bạn.
Một cách tiếp cận khác là tại đây http://stackoverflow.com/questions/28778396/how-to-export-draw-canvas-fabricjs-tojson-in-php-using-imagick-in-high-qua – AZinkey
@ K3N : Tôi đã làm theo đề nghị của bạn, nhưng tôi đang mắc kẹt trên một vấn đề, các văn bản được đặt là rất nhỏ. Xin vui lòng xem http://jsfiddle.net/Q3TMA/1042/ – Abhinav
@Abhinav kích thước phông chữ phải được thu nhỏ lên trước trước khi rút ra. Bạn có thể sử dụng tỷ lệ() cho điều này hoặc thử trực tiếp với chiều cao phông chữ. Sau này không phải lúc nào cũng tuyến tính do cách tạo phông chữ, nhưng bạn sẽ có thể đến gần. – K3N