text-to-picture
Easily convert characters to a picture with aligned text.
Pure javascript, no native or external dependencies.
A text input "LS" could look like this:
Quickstart
It's simple.
npm i --save "text-to-picture@npm:@automattic/text-to-picture@latest"
With async/await.
const textToPicture = require('text-to-picture')
const result = await textToPicture.convert({
text: 'LS'
})
const str = await result.getBase64()
console.log(str) // data:image/png;base64,iVBORw0KGgoA...
// useful for http servers
const buf = await result.getBuffer()
// http response object
response.send(buf) // <Buffer 89 50 4e 47 ...>
With promises.
const textToPicture = require('text-to-picture')
textToPicture.convert({
text: 'LS'
}).then(result => {
return result.getBase64()
}).then(str => {
console.log(str) // data:image/png;base64,iVBORw0KGgoA...
}).catch(err => handle(err))
API
TextToPicture.convert(options: Object)
options:
-
text: String
- The text to write. Required. -
source: String|Object
- String to a local file or Object:-
width: Number
- Width of new image. default: 256 -
height: Number
- Height of new image. default: 256 -
background: Number
- Background in hex. example: 0xFF0000FF, default: black, transparent for pngs
-
-
size: String
- Text size. Can be one of8, 16, 32, 64, 128
. default:64
-
color: String
- Color. Can be'black
or'white'
. default:'black'
-
ext: String
- File type.'jpeg'
,'png'
or'bmp'
. default:'png'
, -
quality: String
- Image quality between0
and100
. default:60
-
customFont: String
- Path to .fnt font.
returns: Object
-
getBase64(): Promise
- Get base64 data uri -
getBuffer(): Promise
- Get a node buffer (useful for http server) -
write(path: String): Promise
- Write file to given path (with filename & extension) -
image: Jimp
- the image Jimp object for special customisation.
TextToPicture.Jimp
The Jimp class.