Skip to content

SkijaSkia の Java バインディング

JVM 上の高性能なハードウェアアクセラレーション対応 2D グラフィックス。

非公式ドキュメント

このドキュメントはコミュニティによって管理されており、Skia または Skija プロジェクトの公式出版物ではありません。 間違いを見つけた場合や提案がある場合は、Eatgrapes/Skija-Docs で報告してください。

ドキュメント一覧

基本

  • Getting Started: Skija の仕組みの概要と始め方。
  • Installation: Windows、macOS、Linux 用のプロジェクト依存関係のセットアップ。
  • Rendering Basics: Surface、Canvas、そして最初の「Hello World」。
  • Colors and Alpha: 透明度、プリマルチプライ、色空間の処理。
  • Color API: High-precision representation, formats, and spaces.
  • Animation: 動きの作成、ゲームループ、Lottie/GIF アニメーションの再生。
  • Resource Management: Skija におけるネイティブメモリと Managed ライフサイクルの処理方法。

API 詳細

  • Surface: 描画先の作成(ラスター、GPU、ラップ)。
  • Canvas: 変換、クリッピング、描画プリミティブ。
  • Images & Bitmaps: ピクセルデータの読み込み、描画、操作。
  • ImageInfo: ピクセル寸法とエンコーディング。
  • ImageFilter: ピクセルレベルの効果(ぼかし、影)。
  • IHasImageInfo: ImageInfoを持つオブジェクトのインターフェース。
  • Data: 効率的なネイティブメモリ管理。
  • Matrix: 3x3 および 4x4 行列変換。
  • Codec (Animations): 低レベル画像デコードと GIF/WebP アニメーション。
  • Paint & Effects: スタイル、ブラー、シャドウ、カラーフィルター。
  • Shadows: 2D ドロップシャドウと 3D エレベーションベースのシャドウ。
  • Paths: 複雑な幾何学的形状の作成と結合。
  • PathBuilder: パスを構築するための流暢な API。
  • Region: 整数ベースの領域操作とヒットテスト。
  • Picture: パフォーマンス向上のための描画コマンドの記録と再生。

タイポグラフィとテキスト

  • Typeface: フォントファイルの読み込みとプロパティ。
  • Font: フォントサイズ、メトリクス、およびレンダリング属性。
  • Typography & Fonts: フォントとメトリクスの基礎。
  • Text Animation & Clipping: テキストをマスク、波状テキスト、バリアブルフォントとして使用する。
  • TextBlob & Builder: 最適化された再利用可能なグリフラン。
  • TextLine: 1行のテキストレイアウトとヒットテスト。
  • Paragraph (Rich Text): 複雑なマルチスタイルテキストレイアウトと行の折り返し。
  • BreakIterator: 単語、行、文の境界を特定する。

高度なグラフィックス

  • GPU Rendering: OpenGL、Metal、Vulkan、Direct3D を使用したハードウェアアクセラレーション。
  • DirectContext: GPU 状態とコマンド送信の管理。
  • Shaper: テキストシェーピングとグリフ配置 (HarfBuzz)。
  • SkSL (RuntimeEffect): 究極の柔軟性のためのカスタム GPU シェーダーの記述。
  • PDF Generation: ベクターベースの PDF ドキュメントの作成。

拡張機能

  • SVG: SVG アイコンとイラストの読み込みとレンダリング。
  • Lottie: Skottie を使用した高性能なベクターアニメーションの再生。