有沒有人有這些node.js庫中的任何一個或兩者的經驗?好奇聽到每個人的成功或困難。node-o3-canvas與node-canvas?
1
A
回答
3
LearnBoost是社區中最豐富的節點模塊開發人員之一,因此我在node-o3-canvas上使用了節點畫布。
我使用node-canvas將圖像切片成服務器上的切片並將它們發送回客戶端。一切工作就像你所期望的一樣。下面是這種代碼的例子中,你可能會這樣寫:
helper = function(x, y, canvas) {
return function(err, str) {
if (!tiles[x]) {
tiles[x] = [];
}
tiles[x][y] = {
data: str
, buffer: canvas.toBuffer()
, covered: true
};
};
};
for (y = 0; y < tilesPerColumn; y += 1) {
for (x = 0; x < tilesPerRow; x += 1) {
//Create a new tile canvas each time so they don't run over each other
tCanvas = new Canvas(chunkSize, chunkSize);
tCtx = tCanvas.getContext('2d');
xOffSet = chunkSize * x;
yOffSet = chunkSize * y;
//Save a set of uncovered tiles to store in memory
tCtx.drawImage(img, xOffSet, yOffSet, chunkSize, chunkSize, 0, 0, chunkSize, chunkSize);
tCanvas.toDataURL(helper(x, y, tCanvas));
}
}
唯一的陷阱我所做的是:
- 如果您使用的是節點帆布異步方法,你必須要小心分配新的畫布/上下文實例,以便不中斷寫入/繪製。
- 出於某種原因,我無法在使用服務器端base64編碼圖像時使node-canvas的Image()對象正常工作。我的問題是,當src屬性被分配一個base64字符串時,onLoad事件不會觸發。我並沒有花費太多時間來處理這個問題,而是將圖像寫入臨時文件以解決問題。
相關問題
- 1. Symfony2與KnpGaufrette與S3與LiipImagine
- 2. 與A2X與ZIP
- 3. VHDL與選與「和」
- 4. OpenGL:isampler2DArray與sampler2DArray與sampler3DArray
- 5. QBoxLayout與QMainWindow與QWidget
- 6. PdfpTable與表(與SimpleTable?)
- 7. InsertionSort與InsertionSort與BinaryInsertionSort
- 8. ScalatraServlet與AkkaSupport與GZipSupport
- 9. JFileChooser與JDialog與FileDialog
- 10. SortedList與SortedDictionary與Sort()
- 11. H264與RTP與Facetime
- 12. DataServiceKey與DataKeyProperty與DataServiceEntity
- 13. MySQL與PostgreSQL與SSRS
- 14. CModel與CFormModel與CActiveRecord
- 15. UILocalNotification與EKReminder與EKAlarm
- 16. 與結構與golang
- 17. @RolesAllowed與@PreAuthorize與@Secured
- 18. BeanFieldGroup與FieldGroup與BeanItem?
- 19. NSData與NSString與åöä
- 20. MD與乳膠到HTML與MathJax與Pandoc
- 21. 休眠與Tomcat與休眠與JBoss
- 22. 宣言與原型與符號與定義與實現
- 23. 與fgets與標準::與fgets - 線由與fgets
- 24. ARKit與ARCore與Vuforia與D'Fusion Mobile與Layar SDK的對比
- 25. VBA與VSTO與Office.js與MS圖與MS流量對比
- 26. 與
- 27. 與
- 28. 與
- 29. 與
- 30. 與
這兩個來自知名作者。看起來'node-canvas'已經有了更多的提交,並且使得它更有可能在將來用更新版本的node.js – Raynos 2011-05-01 09:01:54