Exciting news!Announcing our $4.6M Series Seed. Learn more
Socket
LoveBlogFAQ
Install
Log in

canvas-multiline-text

Package Overview
Dependencies
1
Maintainers
1
Versions
4
Issues
File Explorer

Advanced tools

canvas-multiline-text

Draws a text in a rectangle on a canvas, on multiple lines

    1.0.3latest

Version published
Maintainers
1
Yearly downloads
8,639
increased by32.81%

Weekly downloads

Readme

Source

canvas-multiline-text

Draws a text in a rectangle on a canvas, on multiple lines.

It was conceived to be used on Node.js with Automattic's implementation of Canvas node-canvas, but it should work in browsers too.

Initialy developed for ISBOBackend.

Usage

This module exports a single function that draws a text on a canvas' 2d context, breaking it in multiple lines if necessary.

The function also returns the used font size for drawing text.

drawMultilineText(text, context, options)

Example

const canvas = new Canvas(500, 300) const drawMultilineText = require('canvas-multiline-text') const fontSizeUsed = drawMultilineText( canvas.getContext('2d'), "Please could you stop the noise, I'm trying to get some rest from all the unborn chicken voices in my head. What's that? What's that?", { rect: { x: 10, y: 10, width: canvas.width - 20, height: canvas.height - 20 }, font: 'Merriweather', verbose: true, lineHeight: 1.4, minFontSize: 15, maxFontSize: 120 ) console.log('Text drawn with font size: ', fontSizeUsed)

Options

The whole options parameter is optional.

  • font - Used font name or font family. Default is sans-serif.
  • minFontSize - Min font size for text. Default is 30.
  • maxFontSize - Max font size for text. Default is 100.
  • rect - Area for text. Default is { x: 0, y: 0, width: ctx.canvas.width, height: ctx.canvas.height }.
  • stroke - If true, strokeText() wil be used instead of fillText(). Default is false.
  • lineHeight - Multiplicator for line height. Default is 1.1.
  • verbose - If true, greenlock-express will log (see below) the server bootstrap.
  • logFunction - Custom function for logging, with signature logFunction(message). Default is console.log.

Dependencies

This module require some kind of Canvas object, so in Node.js you'll need to have node-canvas installed, even if it's not in this module's dependencies list.

Keywords

Socket

Product

Subscribe to our newsletter

Get open source security insights delivered straight into your inbox. Be the first to learn about new features and product updates.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc