Need help with text2png?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

tkrkt
143 Stars 36 Forks MIT License 76 Commits 27 Opened issues

Description

text-to-png generator for Node.js

Services available

!
?

Need anything else?

Contributors list

NPM npm version Build Status

text2png: text-to-png generator for Node.js

text2png('Create png image\nfrom multi-line text!');

text2png

Quick start

text2png depends on node-canvas. See node-canvas wiki on installing node-canvas.

$ npm install text2png
var fs = require('fs');
var text2png = require('text2png');
fs.writeFileSync('out.png', text2png('Hello!', {color: 'blue'}));

Option

text2png(text, option)

|param|default| |---|---| |text|(required)| |option.font|'30px sans-serif'| |option.textAlign|'left'| |option.color (or option.textColor)|'black'| |option.backgroundColor (or option.bgColor)|'transparent'| |option.lineSpacing|0| |option.strokeWidth|0| |option.strokeColor|'white'| |option.padding|0| |option.padding(Left|Top|Right|Bottom)|0| |option.borderWidth|0| |option.border(Left|Top|Right|Bottom)Width|0| |option.borderColor|'black'| |option.localFontPath|| |option.localFontName|| |option.output|'buffer'|

option.color = '#000' | 'rgb(0, 0, 0)' | 'black' | ...

option.output = 'buffer' | 'stream' | 'dataURL' | 'canvas'

option.strokeWidth = 1 | 2 | ...
A padding may have to be set to avoid cutoff of stroke

'canvas'
returns node-canvas object.

If you want to use any custom fonts without installing, use

localFontPath
and
localFontName
property.
text2png('with custom fonts', {
  font: '50px Lobster',
  localFontPath: 'fonts/Lobstar-Regular.ttf',
  localFontName: 'Lobster'
});

Command line interface

$ npm install -g text2png
$ text2png --help
$ text2png -t "Hello!" -o "output.png"

Example

text2png('Example\nText', {
  font: '80px Futura',
  color: 'teal',
  backgroundColor: 'linen',
  lineSpacing: 10,
  padding: 20
});

ExampleText

Enjoy!

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.