IRONSOFTWAREHOME

C#ですべてのPDF DOMオブジェクトにアクセスする方法

Curtis Chau
Curtis Chau
Updated: 2026年6月4日

C#でPDF DOMオブジェクトにアクセスするには、IronPDFのObjectModelプロパティを使用してください。これによりPDFドキュメント内のテキスト、画像、およびパスオブジェクトへのプログラムによるアクセスが可能となり、要素を直接読み込み、変更、翻訳、スケーリング、および削除することができます。

クイックスタート: IronPDF を使用した PDF DOM 要素へのアクセスと更新

IronPDFのDOMアクセス機能を使ってPDFドキュメントを操作しましょう。 このガイドでは、PDF DOMにアクセスし、ページを選択し、テキストオブジェクトを変更する方法を示します。 PDFを読み込み、目的のページにアクセスし、数行のコードでコンテンツを更新します。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2このコード スニペットをコピーして実行します。

    var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel;
    C#
  3. 3実際の環境でテストするためにデプロイする

    今日プロジェクトで IronPDF を使い始めましょう無料トライアル
    arrow pointer

PDFのDOMオブジェクトにアクセスするには?

PdfPageオブジェクトからアクセスできます。 まず、対象のPDFをインポートし、そのPagesプロパティにアクセスします。 そこから、任意のページを選択してObjectModelプロパティにアクセスしてください。 これは、HTMLのDOM要素を扱うのと同様に、プログラム的にPDFコンテンツと対話することを可能にします。

PDF DOM オブジェクトを扱うとき、PDF 文書の基本構造にアクセスします。 これには、テキスト要素、画像、ベクターグラフィックス(paths)、およびPDFの視覚表現を構成するその他のコンテンツが含まれます。 IronPDFはC#アプリケーションと統合するPDF操作へのオブジェクト指向のアプローチを提供します。

using IronPdf;
using System.Linq;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Create a PDF from a URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Access DOM Objects
var objects = pdf.Pages.First().ObjectModel;
TextObjectsコレクションとBoundingBox座標と変換プロパティを表示するIronPDFデバッガ

TextObjectが含まれています。 各オブジェクトには、そのページインデックス、バウンディングボックス、Translationに関する情報が含まれています。 この情報は変更可能です。 レンダリングオプションでは、これらのオブジェクトの表示方法をカスタマイズできます。 カスタムマージンを使用する場合、オブジェクトの位置を理解することが重要です。

<ImageObject>:

  • Height: 画像の高さ
  • Width: 画像の幅
  • ExportBytesAsJpg: 画像をJPGバイト配列としてエクスポートする方法

<PathObject>:

  • FillColor: パスの塗りつぶし色
  • StrokeColor: パスのストローク色
  • Points: パスを定義するポイントのコレクション

<TextObject>:

  • Color: テキストの色
  • Contents: 実際のTextコンテンツ

各オブジェクトタイプは、コンテンツタイプに合わせたメソッドとプロパティを提供します。 テキストや画像を抽出したり、特定のコンテンツを変更する必要がある場合、これらのオブジェクトはきめ細かなコントロールを提供します。 PDF フォームで、プログラム的にフォームフィールドを操作する必要がある場合に役立ちます。

グリフ情報とバウンディングボックスを取得するにはどうすればよいですか?

カスタムフォントで正確なグリフを指定する場合、バウンディングボックスとグリフ情報の取得が不可欠です。 IronPDFは既存のPDFにテキストやビットマップを描画する際、ピクセルパーフェクトな位置決めのためにこの情報を提供します。

PdfPageオブジェクトを使用します。 その後、TextObjectsコレクションにアクセスします。 GetGlyphInfoメソッドを呼び出して、グリフとバウンディングボックスの情報を取得します。

using IronPdf;
using System.Linq;

PdfDocument pdf = PdfDocument.FromFile("invoice.pdf");

var glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo();
座標、境界、テキスト内容の詳細を含むPDFグリフオブジェクトプロパティを表示するデバッガ

グリフ情報には、位置データ、フォントメトリクス、高度なPDF操作のための文字固有の詳細が含まれます。 これにより、複雑な組版やレイアウト要件を扱うPDF処理アプリケーションの作成が可能になります。 カスタムフォントを使用する場合、このグリフレベルのアクセスにより、システム間で正確なレンダリングが保証されます。


PDFオブジェクトを翻訳するにはどうすればよいですか?

テキストや画像などの要素を再配置することで、PDFのレイアウトを調整します。 オブジェクトを移動するには、そのTranslateプロパティを変更します。 この機能はIronPDFのPDF変換機能の一部です。

以下の例では、CSS Flexboxを使用してHTMLをレンダリングし、テキストを中央に配置しています。 最初のTranslateプロパティに割り当てることでそれを変換します。 これにより、テキストは右に200ポイント、上に150ポイント移動します。その他の例については、translate PDF objects example pageをご覧ください。

オブジェクトを翻訳するにはどのコードを使用すればよいですか?

using IronPdf;
using System.Drawing;
using System.Linq;

// Setup the Renderer
var renderer = new ChromePdfRenderer();

// We use CSS Flexbox to perfectly center the text vertically and horizontally.
var html = @"
<div style='display: flex; justify-content: center; align-items: center; font-size: 48px;'>
    Centered
</div>";

// Render the HTML to a PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

// Save the original PDF to see the "before" state
pdf.SaveAs("BeforeTranslate.pdf");

// Access the first text object on the first page
// In this simple HTML, this will be our "Centered" text block.
var textObject = pdf.Pages.First().ObjectModel.TextObjects.First();

// Apply the translation
// This moves the object 200 points to the right and 150 points up from its original position.
textObject.Translate = new PointF(200, 150);

// Save the modified PDF to see the "after" state
pdf.SaveAs("AfterTranslate.pdf");

翻訳結果はどのようになりますか?

出力では、"Centered"が元の位置から右に200ポイント、上に150ポイントシフトしています。

テキストの位置と書式が保持されたPDF翻訳前後の比較

翻訳作業では、フォント、サイズ、色などのオブジェクトの元のプロパティを維持し、位置のみを変更します。 これは、見た目に影響を与えないレイアウト調整に最適です。 この機能は、動的に生成されたコンテンツを再配置するときに、ヘッダーとフッターで動作します。


PDFオブジェクトを拡大縮小するには?

PDFオブジェクトをリサイズするには、Scaleプロパティを使用します。 このプロパティは乗数として機能します。 1より大きい値はサイズが大きくなり、0から1の間の値は小さくなります。 動的なレイアウトや、ページの寸法に合わせてコンテンツを調整するには、スケーリングが不可欠です。 その他の例については、スケールPDFオブジェクトガイドを参照してください。

この例では、画像を含むHTMLをレンダリングしています。 最初のScaleに割り当てることで70%にスケールします。

PDFオブジェクトをスケーリングするコードは何ですか?

using IronPdf;
using System.Linq;

// Setup the Renderer
var renderer = new ChromePdfRenderer();

// The image is placed in a div to give it some space on the page.
string html = @"<img src='https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTi8LuOR6_A98euPLs-JRwoLU7Nc31nVP15rw&s'>";

// Render the HTML to a PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

// Save the PDF before scaling for comparison
pdf.SaveAs("BeforeScale.pdf");

// Access the first image object on the first page
var image = pdf.Pages.First().ObjectModel.ImageObjects.First();

// We scale the image to 70% of its original size on both the X and Y axes.
image.Scale = new System.Drawing.PointF(0.7f, 0.7f);

// Save the modified PDF to see the result
pdf.SaveAs("AfterScale.pdf");

X軸とY軸にそれぞれ異なるスケーリング係数を適用して、不均一なスケーリングを行います。 これは、コンテンツを特定の次元に当てはめるのに便利です。 カスタム用紙サイズで作業する場合、拡大縮小することで、コンテンツがページの境界内に収まるようにします。

スケーリングは実際にはどのようなものですか?

出力は元のサイズの70%にスケーリングされた画像を示しています。

PDFの拡大縮小デモ:IRONのロゴを大きなサイズ(左)から小さなサイズ(右)に拡大縮小したもの。

私のお気に入りのこの種のライブラリはIronPDFです。PDFファイルの迅速で効率的な操作が可能です。また、PDF/A形式へのエクスポートやPDF文書へのデジタル署名といった多くの貴重な機能も備えています。

Milan Jovanovic

Microsoft MVP

ケーススタディを見る

IronOCRのおかげで私たちは年間$40,000を手作業の処理から節約し、生産性を向上させ、高影響のタスクにリソースを充てることができます。非常にお勧めします。

Brent Matzelle

最高技術責任者, OPYN

ケーススタディを見る

IronSuiteは私たちの業務において重要な役割を果たしています。これらは、フロアプランの作成や在庫管理の改善を含め、ビジネス全体の効率を向上させるツールです。

David Jones

リードソフトウェアエンジニア、Agorus Build

ケーススタディを見る

どのように PDF オブジェクトを削除できますか?

PDF DOMコレクション、たとえばTextObjectsにアクセスしてオブジェクトを削除します。 コレクションに対してRemoveAtを呼び出し、削除するオブジェクトのインデックスを渡します。 これは、コンテンツの再編集や文書の簡素化に役立ちます。 詳しくはPDFオブジェクトの削除例をご覧ください。

コードはBeforeScale.pdfを読み込み、最初のページから最初の画像を削除します。

オブジェクトを削除するにはどのコードを使用すればよいですか?

using IronPdf;
using System.Linq;

// Load the PDF file we created in the Scale example
PdfDocument pdf = PdfDocument.FromFile("BeforeScale.pdf");

// Access DOM Objects
var objects = pdf.Pages.First().ObjectModel;

// Remove first image
objects.ImageObjects.RemoveAt(0);

// Save the modified PDF
pdf.SaveAs("removedFirstImage.pdf");

複数のオブジェクトを削除するとどうなりますか?

残りのオブジェクトのインデックスは、削除後にシフトします。 複数のオブジェクトを削除する場合は、正しいインデックスを維持するために、逆順に削除してください。 このテクニックは、機密文書からテキストを削除するときに役立ちます。

複数の DOM 操作を組み合わせるにはどうすればよいですか?

IronPDFのDOMアクセスは高度な文書処理ワークフローを可能にします。 複雑な変換のための操作を組み合わせる:

どのような場合に複合語を使うべきですか?

// Example of combining multiple DOM operations
using IronPdf;
using System.Linq;

PdfDocument pdf = PdfDocument.FromFile("complex-document.pdf");

// Iterate through all pages
foreach (var page in pdf.Pages)
{
    var objects = page.ObjectModel;

    // Process text objects
    foreach (var textObj in objects.TextObjects)
    {
        // Change color of specific text
        if (textObj.Contents.Contains("Important"))
        {
            textObj.FillColor = IronSoftware.Drawing.Color.Red;
        }
    }

    // Scale down all images by 50%
    foreach (var imgObj in objects.ImageObjects)
    {
        imgObj.Scale = new System.Drawing.PointF(0.5f, 0.5f);
    }
}

pdf.SaveAs("processed-document.pdf");
C#

複合操作の一般的なユースケースは何ですか?

DOM 操作の組み合わせは、次のような場合に有効です:

  1. バッチ文書処理: 文書のフォーマットを標準化したり、機密内容を削除する
  2. 動的レポート生成: レイアウトを制御しながら、リアルタイムデータでテンプレートPDFを修正する
  3. コンテンツ移行: PDFからコンテンツを抽出し、新しいレイアウトに再編成する
  4. アクセシビリティの向上: テキストサイズ、コントラスト、または間隔を変更して文書を強化する

これらの技術は、複雑な変更を扱う強力なPDF処理アプリケーションを可能にします。 ドキュメントのプロパティの管理については、メタデータ管理ガイドを参照してください。

DOMアクセスは他のPDF操作方法と比較してどうですか?

PDF DOMを使用することで、従来のアプローチにはない利点が得られます:

// Example: Selective content modification based on criteria
using IronPdf;
using System.Linq;

PdfDocument report = PdfDocument.FromFile("quarterly-report.pdf");

foreach (var page in report.Pages)
{
    var textObjects = page.ObjectModel.TextObjects;

    // Highlight negative values in financial reports
    foreach (var text in textObjects)
    {
        if (text.Contents.StartsWith("-$") || text.Contents.Contains("Loss"))
        {
            text.FillColor = IronSoftware.Drawing.Color.Red;
        }
    }
}

report.SaveAs("highlighted-report.pdf");
C#

HTMLからPDFへの変換だけでは、このようなきめ細かな制御は不可能であり、高度なPDF処理にはDOMアクセスが不可欠です。

次に何ができるのかを見てみましょうか? チュートリアルのページはこちらをご覧ください:PDFを編集する.

よくある質問

PDF 操作で ObjectModel プロパティは何に使用されますか?

IronPDFのObjectModelプロパティはPDFドキュメント内のテキスト、画像、パスオブジェクトへのプログラムアクセスを提供します。これにより開発者はHTMLのDOM要素を扱うのと同様に、PDF DOMから直接要素を読み込んだり、変更したり、変換したり、拡大縮小したり、削除したりすることができます。

C# で PDF DOM オブジ ェ ク ト にア ク セ スす る 方法は?

IronPDFを使ってPDF DOMオブジェクトにアクセスするには、まず対象のPDFドキュメントをインポートし、そのPagesプロパティにアクセスします。そこから任意のページを選択し、ObjectModelプロパティを使用します。例: var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel;

PDF DOM からアクセスできるオブジェクトの種類は?

IronPDFのObjectModelには3つの主なオブジェクトタイプがあります:ImageObject(Height、Width、ExportBytesAsJpgなどのプロパティを持つ)、PathObject(FillColor、StrokeColor、Pointsを持つ)、TextObject(ColorとContentsプロパティを持つ)です。それぞれ、特定のコンテンツタイプに合わせたメソッドを提供します。

PDF文書内のテキストコンテンツをプログラムで変更できますか?

はい、IronPDFではTextObjectのContentsプロパティを通してテキストの内容を変更することができます。ObjectModelを介してテキストオブジェクトにアクセスし、その内容を更新し、数行のコードで変更したPDFドキュメントを保存することができます。

PDF文書から画像をエクスポートする方法を教えてください。

IronPDFのImageObjectはExportBytesAsJpgメソッドを提供し、画像をJPGバイト配列としてエクスポートすることができます。ObjectModelプロパティを通して画像にアクセスし、このメソッドを使ってプログラムで画像データを取り出してください。

各 DOM オブジェクトの位置について、どのような情報が得られますか?

IronPDFのObjectModelの各オブジェクトはページインデックス、バウンディングボックスの座標、スケール、移動に関する情報を含んでいます。この位置決めデータはPDF内の要素の位置を変えたり、変形させたりするために読み込んだり、変更したりすることができます。

What is the method to scale PDF objects using IronPDF?

PDF objects can be scaled using the `Scale` property in IronPDF's `ObjectModel`, allowing you to adjust the dimensions of elements such as images or text by specifying scale factors.

How can I translate PDF objects in IronPDF?

Translate PDF objects in IronPDF by adjusting their `Translate` property. This repositioning enables layout adjustments without altering the visual style of the objects.

How do I distinguish CAD features in a PDF without layers using IronPDF?

IronPDF allows you to differentiate CAD features without layers by analyzing the `PathObject` attributes such as `StrokeWidth`, `LineCap`, and `DashPattern`.

What are some common use cases for combined PDF DOM operations using IronPDF?

Combined PDF DOM operations are useful for batch document processing, dynamic report generation, content migration, and improving document accessibility, allowing complex modifications using IronPDF.

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

準備はできましたか?

Nuget Downloads 20,990,528バージョン:2026.9リリースされたばかり

無料をゲット

30日間の試用キーをすぐに取得。

bullet_checkedクレジットカードやアカウントの作成は不要です。
bullet_test製品版でのテスト
透かしなし
bullet_calendar30日間
完全機能の製品
bullet_support試用期間中の
24/5テクニカルサポート
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

OR
bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から