ホームCross-platformTencent/libpag
// archived 2026-04-27
Tencent

libpag

Mobile#Animation#Rendering#Cross-platform#Graphics#SDK
GitHub で見る →
5,664

// 概要

libpag は、モバイル、デスクトップ、Web を含む複数のプラットフォームで複雑なベクターおよびラスターアニメーションを表示するために設計された強力なレンダリングライブラリです。Adobe After Effects の全機能をサポートする効率的なバイナリファイル形式を採用しており、従来の JSON ベースのソリューションと比較して優れたパフォーマンスを提供します。開発者は柔軟なランタイム API を活用してアニメーションレイヤー、テキスト、画像を動的に変更し、非常にインタラクティブな体験を作成できます。

// 技術解説

libpag は、複雑な Adobe After Effects のアニメーションとモバイルや Web アプリケーションの間のギャップを埋めるために設計された、PAG (Portable Animated Graphics) ファイル形式を扱うための高性能なクロスプラットフォームレンダリングライブラリです。ベクトルデータとラスターデータの両方をサポートする非常に効率的なバイナリ形式を利用することで、JSON のような従来のアニメーション形式で頻繁に発生するパフォーマンスやサイズの制限を解決します。このプロジェクトは、ランタイム編集 API を通じて開発者の柔軟性を優先しており、デザイナー向けの厳格なパフォーマンス監視機能を維持しながら、動的なコンテンツの置き換えや合成を可能にします。

// 主要ハイライト

01
JSON ベースのアニメーション代替手段と比較して、デコード速度が 10 倍速く、サイズが 50% 小さい非常に効率的なバイナリ形式を提供します。
02
ベクトルとラスターの書き出し技術を単一のファイルに統合することで、Adobe After Effects の機能を完全にサポートします。
03
PAGViewer に組み込まれたパフォーマンス監視パネルにより、開発者の介入なしでデザイナーがアニメーションを最適化できるよう支援します。
04
レイヤー構造の変更、コンポジションの結合、テキストや画像の動的な置き換えを可能にする柔軟なランタイム API を提供します。
05
iOS、Android、OpenHarmony、macOS、Windows、Linux、および Web を含む幅広いプラットフォームをサポートします。

// ユースケース

01
iOS、Android、Web、デスクトッププラットフォーム間での複雑な Adobe After Effects アニメーションのレンダリング
02
非常に効率的なバイナリ PAG 形式を使用したアニメーションのパフォーマンスとファイルサイズの最適化
03
パーソナライズされたユーザー体験のために、ランタイムでテキストや画像などのアニメーションコンテンツを動的に編集

// クイックスタート

libpag を使い始めるには、公式の releases ページからプリコンパイル済みのライブラリをダウンロードするか、iOS の場合は CocoaPods、Android の場合は Maven、OpenHarmony の場合は OHPM などのパッケージマネージャーを使用して統合します。Web プロジェクトの場合は、提供されている PAGInit スクリプトを使用してライブラリを初期化し、PAG ファイルを直接 canvas 要素に読み込むことができます。開発者は、特定のターゲットプラットフォーム向けの公式サンプルリポジトリを参照することで、実装の詳細をさらに調査できます。