簡體   English   中英

如何使用 node.js 從 rgb 值的 Uint8Array 數組生成 png 或 jpg 圖像?

[英]How to generate a png or jpg image from a Uint8Array array of rgb values with node.js?

我正在為我的空間模擬器創建程序行星紋理,我最終得到的輸出是一個 Uint8Array 的 RGB 值,例如[255, 255, 255, 100, 200, 50]

使用three.js,您可以使用THREE.DataTexture類將這些值轉換為紋理,但是如果您想要高分辨率紋理,在運行時生成它們會相當慢,因此我想使用 node.js 生成紋理,以便我可以像使用任何其他紋理一樣使用它們。

任何人都可以闡明我如何實現上述目標? 理想情況下,我希望輸出為 jpg 或 png 圖像。

jpeg-jsnode.js JavaScript JPEG 編碼器和解碼器。 這允許您通過jpeg.encode()Buffer對象創建 JPG 文件。 您可以像這樣創建Buffer實例:

const data = new Uint16Array(6);

arr[0] = 255;
arr[1] = 255;
arr[2] = 255;
arr[3] = 100;
arr[4] = 200;
arr[5] = 50;

const buffer = Buffer.from( data );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM