2017-09-01 25 views
0

如何可以生成具有串的圖像:如何根據nodejs中的文本/字符串渲染/生成圖像?

  • 的尺寸以像素
  • 圖像中的字母的浮雕效果
  • 字體
  • 彩色
  • 和其他不重要的東西,我想我可以弄清楚,一旦我實現了上述的喜歡:
    • 旋轉的文字
    • 陰影

基本用戶發送關於他想要如何他的形象是一個請求。

但是當我收到請求我應該如何利用nodejs來渲染一個PNG或一個base64的網址發回給用戶。有沒有任何圖書館或方法來實現這一點。

我做了一些以往的研究,它似乎並不像有一個框架,有助於呈現文本與像浮雕字體和文本樣式

回答

0

你可以試試節點canvas執行:https://github.com/Automattic/node-canvas

基本上,你可以「畫」任何你想要的東西,如果你使用的是瀏覽器js canvas,但有些東西可能是d ifferent

+0

這對我有效。在你回答之前,我想清楚了。但無論如何感謝 –

0

更新 - 這將覆蓋更新映像的屬性,不拉來自圖像的文本並更新 - 您可能需要一個圖像分析庫

使用銳庫來根據需要操縱圖像。 https://github.com/lovell/sharp http://sharp.dimens.io/en/stable/

即重新調整一個簡單的例子(文檔將展示如何讓你想要的這個以外的變化):

const request = require('request').defaults({ encoding: null }); 

request.get(imgUrl, params, function (err, res, body) { 
     sharp(body) 
     .resize(params.width, params.height) 
     .toFormat('jpeg') 
     .toBuffer() 
     .then((outputBuffer) => { 
      // outputBuffer contains JPEG image data no wider than params.width and no higher 
      // than params.height while maintaining quality of image. 
      let output = "data:" + res.headers["content-type"] + ";base64," + new Buffer(outputBuffer).toString('base64'); 
      return output; 
     }); 

輸出這裏將成爲以base64圖像

+0

我不想操縱圖像,我想從包含文本屬性的對象(大小,樣式,顏色)生成帶有字體(如果可能,還包括樣式)的文本圖像,文字)。 –

+0

通過渲染我的意思是生成 –

相關問題