An open API service indexing awesome lists of open source software.

https://github.com/yoctol/react-paperjs-experiment


https://github.com/yoctol/react-paperjs-experiment

Last synced: 6 days ago
JSON representation

Awesome Lists containing this project

README

          

# react-paperjs-experiment

[![npm](https://img.shields.io/npm/v/react-paperjs-experiment.svg?style=flat-square)](https://www.npmjs.com/package/react-paperjs-experiment)

Caution: This library only supports first time rendering at this moment, so any re-rendering behavior with react will not work.

## Installation

```sh
npm i --save react-paperjs-experiment
```
or
```sh
yarn add react-paperjs-experiment
```

## Usage

```jsx
const React = require('react');
const paper = require('paper-jsdom-canvas');

const { Group, PointText, Shape, Path, Raster, Svg } = require('react-paperjs-experiment');
const { renderToPNG } = require('react-paperjs-experiment/node');

const svg =
'';

const App = () =>






;

const canvas = paper.createCanvas(300, 300);

renderToPNG(, canvas, __dirname + '/paper.png');
```

See the basic example at [examples](./examples) folder.

## API

### renderToPNG(element, canvas, path, callback)

```jsx
const React = require('react');
const paper = require('paper-jsdom-canvas');
const { Group, Path } = require('react-paperjs-experiment');
const { renderToPNG } = require('react-paperjs-experiment/node');

const canvas = paper.createCanvas(300, 300);

renderToPNG(


,
canvas,
__dirname + '/paper.png',
() => { console.log('done'); }
)
```

### renderToBuffer(element, canvas, callback)

```jsx
const React = require('react');
const paper = require('paper-jsdom-canvas');
const { Group, Path } = require('react-paperjs-experiment');
const { renderToBuffer } = require('react-paperjs-experiment/node');

const canvas = paper.createCanvas(300, 300);

renderToPNG(


,
canvas,
buffer => { console.log(buffer); }
)
```

### Components
- Item
- Layer
- Group
- Raster
- Shape.Circle
- Shape.Rectangle
- Shape.Ellipse
- Path.Line
- Path.Circle
- Path.Rectangle
- Path.Ellipse
- Path.Arc
- Path.RegularPolygon
- Path.Star
- PointText
- Svg

[Paper.js official document](http://paperjs.org/reference/global/)