mcpField
S
syncfusion-javascript-pdf

syncfusion-javascript-pdf

github.com/syncfusionドキュメント2101 回インストール1 週間前に更新
リポジトリ

syncfusion-javascript-pdf について

Syncfusion JavaScript PDF ライブラリで PDF を作成、読み取り、編集するスキルです。JavaScript と関連フレームワークの開発者向けに、文書操作のほか、対話機能や抽出、セキュリティ処理を扱います。

主な機能

  1. 01テキスト、画像、表を含む PDF の作成
  2. 02PDF 内容の編集と抽出
  3. 03フォーム、注釈、リンクの追加
  4. 04文書の結合、分割、透かし追加
  5. 05PDF の暗号化と電子署名

活用シーン

  1. 01請求書やレポートの生成
  2. 02PDF フォームへの入力とフラット化
  3. 03PDF からのテキストや画像の抽出
  4. 04複数 PDF ファイルの結合

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/syncfusion/document-sdk-skills --skill syncfusion-javascript-pdf

インストール後、Claude Code で/syncfusion-javascript-pdfを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
references/
annotations.md
bookmarks.md
content-redaction.md
digital-signatures.md
document-settings.md
encryption.md
form-fields.md
getting-started.md
hyperlinks.md
image-extraction.md
images.md
layers.md
lists.md
merge-documents.md
pdf-pages.md
shapes.md
split-documents.md
tables.md
templates.md
text-extraction.md
text-rendering.md
watermarks.md

詳細

PDF ドキュメントの処理

Syncfusion JavaScript PDF ライブラリを使用して、PDF ドキュメントをプログラムで作成、読み取り、操作するための包括的なスキルです。このライブラリは、TypeScript、JavaScript、Angular、React、Vue、ASP.NET Core、ASP.NET MVC アプリケーションとシームレスに統合できます。

このスキルを使用する場面

次のようなニーズがある場合に、このスキルを使用してください。

  • PDF ドキュメントを作成する:テキスト、画像、図形、表、リスト、その他のグラフィカル要素を使って、一から作成します
  • 既存の PDF を操作する:コンテンツの追加、プロパティの変更、データの抽出を行います
  • インタラクティブ機能を追加する:フォーム、注釈、ブックマーク、ハイパーリンクなどを追加します
  • PDF を保護する:パスワード保護、RC4/AES 暗号化、権限、デジタル署名を設定します
  • PDF ドキュメントを結合または分割する:ドキュメント管理ワークフローに対応します
  • コンテンツを抽出する:既存の PDF から、テキスト(検索および境界情報を含む)や画像を抽出します
  • 透かしを追加する:ブランド表示やセキュリティ対策として、テキストまたは画像形式の透かしを追加します
  • ドキュメント情報を管理する:タイトル、作成者、件名、キーワード、日付などを管理します
  • PDF レイヤーを扱う:複雑なドキュメント構造に対応します
  • テンプレートを実装する:一貫性のあるドキュメント生成を実現します

プラットフォームのサポート: TypeScript、JavaScript、Angular、React、Vue、ASP.NET Core、ASP.NET MVC

ライブラリの概要

Syncfusion JavaScript PDF ライブラリ(@syncfusion/ej2-pdf)は、次の機能を備えた強力で高性能なクラスライブラリです。

  • Adobe Acrobat を使わずに PDF ドキュメントを一から作成
  • 既存の PDF ファイルを読み込み、編集、保存
  • パスワードで保護された PDF ドキュメントを開く
  • テキスト、画像、図形、グラフィカル要素を追加
  • インタラクティブなコンポーネント(ブックマーク、注釈、フォームフィールド)
  • ドキュメント操作(結合、分割、フラット化)
  • コンテンツの抽出(テキスト、画像)
  • セキュリティ機能(デジタル署名、LTV、検証、暗号化、墨消し)

主なクラス:

  • PdfDocument - メインのドキュメントオブジェクト
  • PdfPage - 個々のページ
  • PdfGraphics - コンテンツを描画する領域
  • PdfGrid - 表の生成とレイアウト
  • PdfFont、PdfBitmap、PdfBrush - コンテンツ要素

ドキュメントとナビゲーションガイド

はじめに

📄 参照: references/getting-started.md

次のニーズがある場合は、このリファレンスを使用してください。

  • @syncfusion/ej2-pdf パッケージをインストールする
  • TypeScript、JavaScript、Angular、React、Vue、ASP.NET 用にライブラリを設定する
  • 依存関係と要件を確認する
  • 最初の PDF ドキュメントを作成する
  • 基本的な保存およびエクスポート操作を学ぶ
ドキュメントの作成と設定

📄 参照: references/document-settings.md

次の用途でこのリファレンスを使用してください。

  • PdfDocument インスタンスを作成する
  • ページ設定(サイズ、向き、余白、回転)を構成する
  • ドキュメントのプロパティ(タイトル、作成者、件名、キーワード、作成日/変更日)を設定する
  • 差分更新を有効にする
  • 注釈とフォームフィールドをフラット化する

📄 参照: references/pdf-pages.md

次の用途でこのリファレンスを使用してください。

  • ドキュメントにページを追加する
  • ページの操作とナビゲーションを行う
  • 異なる設定を持つページセクションを作成する
  • ページコレクションを管理する
コンテンツ要素

📄 参照: references/text-rendering.md

テキストを追加する際は、このリファレンスを使用してください。

  • drawString() メソッドを使用したテキストの描画
  • フォントの種類(Standard、TrueType、CJK フォント)
  • フォントのスタイル、サイズ、書式設定
  • テキストのレイアウトと折り返し
  • グラフィックス状態の管理(保存/復元)
  • テキストの配置と境界

📄 参照: references/images.md

画像操作には、このリファレンスを使用してください。

  • JPEG および PNG 画像の追加
  • PdfBitmap クラスの使用
  • 画像の配置とサイズ設定
  • 既存のドキュメントへの画像の挿入
  • Base64 および Uint8Array 画像形式
  • クリッピングとグラフィックス変換

📄 参照: references/shapes.md

図形を描画する際は、このリファレンスを使用してください。

  • 長方形、円、楕円、線
  • 複雑なパスと曲線
  • スタイル設定のためのペンとブラシ
  • 塗りつぶしと線の描画
  • グラフィックス変換(平行移動、回転、拡大縮小)

📄 参照: references/tables.md

表の作成と書式設定には、このリファレンスを使用してください。

  • データソースまたは手動の行/列定義から PdfGrid を使用した表の作成
  • 表とセルのスタイル設定、カスタム枠線、パディング、組み込みテーマ(PdfGridBuiltinStyle)
  • 行と列のカスタマイズ、テキストの配置、書式設定
  • ページネーション、ヘッダー行の繰り返し(repeatHeader)、行の分割防止(fitElement)
  • PdfGridLayoutResult を使用した複数の表の動的な配置
  • セルの結合(rowSpan、columnSpan)、セル画像、背景画像、ハイパーリンク
  • 入れ子のグリッド、枠線のない表、データソースの更新、水平方向のはみ出しモード

📄 参照: references/lists.md

リストを作成する際は、このリファレンスを使用してください。

  • 順序付きリストと順序なしリスト
  • 入れ子のリスト構造
  • カスタムリストマーカーと画像マーカー(PdfImageMarker)
  • リストの書式設定オプションとページネーション

📄 参照: references/templates.md

再利用可能なコンテンツには、このリファレンスを使用してください。

  • ページテンプレートの作成
  • 動的コンテンツのスタンプ
  • テンプレートの配置とレイアウト
  • ページ間でのコンテンツの再利用
インタラクティブ機能

📄 参照: references/annotations.md

注釈には、このリファレンスを使用してください。

  • 注釈の種類(ポップアップ、フリーテキスト、線、図形、インク、テキストマークアップ)
  • 雲形の枠線スタイルのカスタマイズ(borderEffect、PdfBorderEffectStyle)
  • 注釈の追加、設定、変更
  • 注釈のプロパティと外観
  • 注釈のフラット化による静的コンテンツへの変換

📄 参照: references/bookmarks.md

ナビゲーションには、このリファレンスを使用してください。

  • ドキュメントのブックマークの作成
  • 入れ子になったブックマーク階層
  • ブックマークのナビゲーションとリンク
  • 既存のブックマークの変更

📄 参照: references/form-fields.md

インタラクティブフォームには、このリファレンスを使用してください。

  • フォームフィールドの種類(テキスト、チェックボックス、ラジオボタン、ドロップダウン、ボタン)
  • フォームフィールドの追加と設定
  • フィールドの検証とプロパティ
  • フォームデータのプログラムによる入力
  • フォームデータのインポート/エクスポート
  • フォームのフラット化によるインタラクティブ機能の削除

📄 参照: references/hyperlinks.md

リンク設定には、このリファレンスを使用してください。

  • Web ハイパーリンクの追加
  • ドキュメント内のナビゲーションリンク
  • リンク注釈と外観
  • ナビゲーションアクション
ドキュメント操作

📄 参照: references/merge-documents.md

マージについては、こちらを参照してください:

  • 複数の PDF ファイルの結合
  • 他のドキュメントからのページのインポート
  • マージ時のブックマークの保持
  • マージのワークフロー

📄 参照: references/split-documents.md

分割については、こちらを参照してください:

  • ページ範囲を指定した PDF の分割
  • 特定のページの抽出
  • ページから個別のドキュメントを作成

📄 参照: references/watermarks.md

透かしについては、こちらを参照してください:

  • テキストの透かし
  • 画像の透かし
  • 透かしの位置とレイアウト
  • 不透明度と回転の設定

📄 参照: references/layers.md

レイヤー管理については、こちらを参照してください:

  • PDF レイヤー(Optional Content Groups)の作成
  • レイヤーの表示制御
  • レイヤーへのコンテンツの追加
  • レイヤーの削除またはフラット化
データ抽出

📄 参照: references/text-extraction.md

テキストの抽出については、こちらを参照してください:

  • 同期および非同期のテキスト抽出(extractTextSync、extractText)
  • ページ範囲を指定したテキスト抽出
  • レイアウトベースおよび境界ベースの抽出(extractTextLinesSync、extractTextLines)
  • テキストと境界矩形の検索(findTextSync、findText)
  • 複数ページにわたる照合座標付きの複数テキスト値の検索

📄 参照: references/image-extraction.md

画像の抽出については、こちらを参照してください:

  • PDF ドキュメントからの画像の抽出
  • 画像データの形式
  • 抽出した画像の保存
  • 必須パッケージ:@syncfusion/ej2-pdf-data-extract
セキュリティと保護

📄 参照: references/digital-signatures.md

デジタル署名については、こちらを参照してください:

  • デジタル署名の追加(標準署名と外部署名)
  • 証明書ベースの署名
  • 署名の外観のカスタマイズ
  • 埋め込み OCSP/CRL 失効情報を使用した長期検証(LTV)
  • デジタル署名の検証(単一フィールドおよびドキュメント全体)
  • タイムスタンプサーバーと証明書の信頼チェーン

📄 参照: references/encryption.md

暗号化とドキュメントのセキュリティについては、こちらを参照してください:

  • RC4(40-bit、128-bit)および AES(128-bit、256-bit Rev 5 および Rev 6)によるドキュメントの暗号化
  • ユーザーパスワード(開くためのパスワード)と所有者パスワード(権限設定用)
  • ドキュメントの権限制限(PdfPermissionFlag)とビット演算による権限チェック
  • 保護されたドキュメントの復号とパスワードの変更
  • パスワード保護の検出とパスワードの種類の特定

📄 参照: references/content-redaction.md

コンテンツの削除については、こちらを参照してください:

  • 機密テキストの墨消し
  • 図形の墨消し
  • 墨消し注釈
  • コンテンツの完全な削除

クイックスタートの例

import { PdfDocument, PdfPage, PdfGraphics, PdfFont, PdfFontFamily, PdfFontStyle, PdfBrush } from '@syncfusion/ej2-pdf';

// Create a new PDF document
let document: PdfDocument = new PdfDocument();

// Add a page
let page: PdfPage = document.addPage();

// Get graphics from the page
let graphics: PdfGraphics = page.graphics;

// Set font
let font: PdfFont = document.embedFont(PdfFontFamily.helvetica, 20, PdfFontStyle.regular);

// Create a brush
let brush = new PdfBrush({r: 0, g: 0, b: 0});

// Draw text
graphics.drawString('Hello World!', font, {x: 20, y: 20, width: 200, height: 50}, brush);

// Save the document
document.save('output.pdf');

// Clean up
document.destroy();

一般的なワークフロー

請求書またはレポートの作成
  1. カスタムページ設定でドキュメントを作成
  2. 会社のロゴ(画像)を追加
  3. 書式を設定したヘッダーテキストを追加
  4. 罫線付きの表を作成(図形+テキスト)
  5. 合計とフッターを追加
  6. 保存してダウンロード

こちらから開始: references/getting-started.md、次に references/text-rendering.md と references/images.md

PDF フォームへの入力とフラット化
  1. フォームフィールドを含む既存の PDF ドキュメントを読み込む
  2. プログラムでフォームフィールドに入力する
  3. フォームをフラット化して編集不可にする
  4. 変更したドキュメントを保存する

こちらから開始: references/form-fields.md

PDF からのデータ抽出
  1. 既存の PDF ドキュメントを読み込む
  2. 特定のページからテキストを抽出する
  3. 必要に応じて画像を抽出する
  4. 抽出したデータを解析して処理する

こちらから開始: references/text-extraction.md と references/image-extraction.md

複数の PDF を結合する
  1. メイン文書を作成します
  2. 元の文書からページをインポートします
  3. 必要に応じて、セクションのブックマークを追加します
  4. 結合した文書を保存します

こちらから始めましょう: references/merge-documents.md

デジタル署名を追加する
  1. 文書を読み込むか、新規作成します
  2. 証明書を使用してデジタル署名を設定します
  3. 署名の外観と位置を設定します
  4. 署名済み文書を保存します

こちらから始めましょう: references/digital-signatures.md

プラットフォーム固有の考慮事項

TypeScript/JavaScript
  • @syncfusion/ej2-pdf から直接インポートします
  • ブラウザーまたは Node.js 環境で動作します
  • ファイルはブラウザーのダウンロード機能または Node.js fs を使って保存します
Angular/React/Vue
  • コンポーネントベースの統合
  • コンポーネントのライフサイクル内でファイルのダウンロードを処理します
  • 文書生成の状態を管理します
  • Syncfusion PDF の操作はフレームワークのサービス、フック、またはコンポーネントメソッド内で行い、生成された出力をフレームワークのダウンロードまたはアップロードのフローにバインドします。
ASP.NET Core/MVC
  • サーバー側で PDF を生成します
  • PDF をファイル結果として返します
  • メモリストリームを処理します

TypeScript、JavaScript、Angular、React、Vue、ASP.NET Core、ASP.NET MVC のプラットフォーム固有のセットアップ手順とパッケージの例については、references/getting-started.md を参照してください。

主なプロパティとメソッド

PdfDocument
  • addPage(settings?) - 新しいページを追加します
  • getPage(index) - 既存のページにアクセスします
  • save(filename) - 文書を保存します
  • destroy() - リソースをクリーンアップします
  • embedFont() - 使用するフォントを読み込みます
PdfGraphics
  • drawString(text, font, bounds, brush) - テキストを描画します
  • drawImage(image, bounds) - 画像を描画します
  • drawRectangle(pen, bounds) - 矩形を描画します
  • save() - グラフィックスの状態を保存します
  • restore(state) - グラフィックスの状態を復元します
PdfPage
  • graphics - 描画サーフェスを取得します
  • size - ページの寸法を取得します
  • rotation - 回転を取得または設定します

API の詳細については、該当するリファレンスファイルを参照してください。

一般的なユースケース

  1. レポートの自動生成 - テーブル(PdfGrid)、リスト、グラフ、書式設定済みテキストを含む、ブランドに合わせたレポートを作成します
  2. 請求書の作成 - PdfGrid の明細、合計金額、会社のロゴを含む、プロフェッショナルな請求書を生成します
  3. 証明書の生成 - テンプレートとカスタムテキストを使用して証明書を作成します
  4. フォームへの入力 - 一括処理用に PDF フォームへプログラムで入力します
  5. 文書の組み立て - 複数の PDF を結合して、1 つの文書にまとめます
  6. データの抽出と検索 - 境界情報とともにテキストを抽出または検索し、処理用に PDF から画像を抽出します
  7. デジタル署名と検証 - LTV を使用してデジタル署名を適用し、署名の信頼チェーンを検証します
  8. 文書の暗号化とアクセス制御 - AES 256 ビット暗号化、パスワード、アクセス許可で文書を保護します
  9. 透かしの追加 - 文書にブランドまたはセキュリティ用の透かしを追加します
  10. 墨消し - 共有前に機密情報を完全に削除します
  11. アーカイブの作成 - 長期保存とコンプライアンスのワークフローに適した形式へ文書を変換します

トラブルシューティングのヒント

  • フォントが見つからない:使用前に document.embedFont() でフォントが埋め込まれていることを確認してください
  • 画像が表示されない:画像形式(JPEG/PNG)とデータ(base64/Uint8Array)を確認してください
  • ファイルサイズが大きい:増分更新を使用するか、操作を分割してください
  • メモリの問題:保存後に document.destroy() を呼び出してください
  • 抽出機能が動作しない:@syncfusion/ej2-pdf-data-extract パッケージをインストールしてください

関連リソース

  • パッケージ:@syncfusion/ej2-pdf
  • アドオン:@syncfusion/ej2-pdf-data-extract(抽出機能用)
  • 依存関係:@syncfusion/ej2-compression、@syncfusion/ej2-base

コメント