Repolode
paperjs

paperjs/paper.js

Paper.jsは、ブラウザやNode.jsのHTML5 Canvas上でパスを描画・操作するJavaScriptベクターグラフィックス用スクリプトライブラリです。

スター
15,190
フォーク
1,261
未解決の Issue
27
最終コミット
昨日

これは何?

Paper.jsは、ベクターグラフィックス用スクリプトツールScriptographerをJavaScriptに移植したライブラリです。パス、図形、テキスト、グループ、シンボルからなるシーングラフを提供し、HTML5 Canvas要素上でそれらをプログラムから作成・変形できます。

ライブラリはNPMで、ブラウザやバンドラー向けに`paper`として配布されています。PaperScriptのサポートを省いたコアビルドもあります。関連パッケージの`paper-jsdom`と`paper-jsdom-canvas`を使うと、Node.jsでヘッドレス実行できます。jsdom経由でSVGをインポート・エクスポートでき、node-canvas経由でCanvasに描画できます。node-canvasの実行にはCairoとPangoが必要です。

このプロジェクトはGulpとpnpmでビルドし、テストにはVitestとPlaywrightを使用します。developブランチの開発版ビルドは、専用ブランチで公開されています。

主な機能

  • 01Canvas上でパス、図形、テキスト、グループ、シンボルを扱うシーングラフ。
  • 02ブール演算や変形などのパス編集操作。
  • 03ブラウザ向けフルビルドでのPaperScriptサポート。
  • 04jsdomを介したNode.jsでのSVGのインポートとエクスポート。
  • 05node-canvasを介したNode.jsでのCanvas描画。

ユースケース

  • ブラウザでインタラクティブなベクター画像やアニメーションを作成する。
  • Node.jsのサーバースクリプトでSVG画像を生成または処理する。
  • Canvasベースのエディターや図表ツールを作成する。

クイックスタート

  1. 1

    プロジェクトフォルダーでNPMからPaper.jsをインストールします

    npm install paper
  2. 2

    バンドラーで読み込み、canvas要素に対してpaper.setup()を呼び出します

使う前に知っておきたいこと

  • プロジェクトのメタデータからライセンスを確認できません。使用する前にリポジトリのライセンスを確認してください。
  • Node.jsでcanvasをレンダリングするには(paper-jsdom-canvas)、事前にネイティブのCairoとPangoライブラリをインストールする必要があります。

トピック

よくある質問

paper.js とは?
Paper.jsは、ブラウザやNode.jsのHTML5 Canvas上でパスを描画・操作するJavaScriptベクターグラフィックス用スクリプトライブラリです。 Paper.jsは、ベクターグラフィックス用スクリプトツールScriptographerをJavaScriptに移植したライブラリです。パス、図形、テキスト、グループ、シンボルからなるシーングラフを提供し、HTML5 Canvas要素上でそれらをプログラムから作成・変形できます。
paper.js は無料で使えますか?ライセンスは?
paper.js は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
paper.js は今もメンテナンスされていますか?
活発にメンテナンス中。paper.js の最終コミットは 2026年11月6日 です。
paper.js は何に使えますか?
ブラウザでインタラクティブなベクター画像やアニメーションを作成する。 Node.jsのサーバースクリプトでSVG画像を生成または処理する。 Canvasベースのエディターや図表ツールを作成する。
paper.js のインストール方法は?
プロジェクトフォルダーでNPMからPaper.jsをインストールします: npm install paper バンドラーで読み込み、canvas要素に対してpaper.setup()を呼び出します
paper.js はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/paperjs/paper.js

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト