# Tüm PDF DOM Nesnelerine C# ile Nasıl Erişilir
C#'de PDF DOM nesnelerine erişmek için, IronPDF'in, PDF belgelerindeki metin, resim ve yol nesnelerine programlı erişim sağlayan `ObjectModel` özelliğini kullanın. Bu, elementleri doğrudan okumanız, değiştirmeniz, çevirmeniz, ölçeklendirmeniz ve kaldırmanız için imkan tanır.
*as-heading:2(Hızlı Başlangıç: IronPDF ile PDF DOM Öğelerine Eriş ve Güncelle)*
IronPDF'nin DOM erişim özelliklerini kullanarak PDF belgelerini manipüle etmeye başlayın. Bu kılavuz, PDF DOM'una nasıl erişileceğini, bir sayfa nasıl seçilir ve metin nesneleri nasıl değiştirileceğini gösterir. PDF'inizi yükleyin, istedğiniz sayfaya erişin ve birkaç satır kodla içeriği güncelleyin.
```cs
:title=Access and modify PDF DOM objects in one line!
var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel;
```
<div class="hsg-featured-snippet">
<h3>Asgari İş Akışı (5 adım)</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="trial-license-after-download" href="https://nuget.org/packages/IronPdf">PDF DOM Nesnelerine Erişmek İçin C# Kütüphanesini İndirin</a></li>
<li>Hedeflenen PDF belgesini içe aktarın veya işleyin</li>
<li>PDF'nin <code>Pages</code> koleksiyonuna erişin ve istenen sayfayı seçin</li>
<li><strong>ObjectModel</strong> özelliğini kullanarak DOM nesnelerine göz atın ve etkileşimde bulunun</li>
<li>Düzenlenen PDF belgesini kaydedin veya dışa aktarın</li>
</ol>
</div>
## PDF'lerde DOM Nesnelerine Nasıl Erişirim?
`ObjectModel`, `PdfPage` nesnesinden erişilir. Öncelikle, hedef PDF'yi içe aktarın ve onun `Pages` özelliğine erişin. Buradan, `ObjectModel` özelliğine erişmek için herhangi bir sayfayı seçin. Bu, HTML DOM öğeleri ile çalışmaya benzer şekilde PDF içeriği ile programlı olarak etkileşimi sağlar.
PDF DOM nesneleri ile çalışırken, PDF belgesinin altında yatan yapıya erişirsiniz. Bu, PDF'nizin görsel temsilini oluşturan metin unsurlarını, resimleri, vektör grafikleri (`paths`) ve diğer içerikleri içerir. IronPDF, C# uygulamalarıyla entegre olan nesne yönelimli bir PDF manipülasyonu yaklaşımı sunar.
```csharp
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;
```
<div class="content-img-align-center">
<div class="center-image-wrapper">
<img src="/static-assets/pdf/how-to/access-pdf-dom-object/debug.webp" alt="IronPDF hata ayıklayıcısı, BoundingBox koordinatları ve dönüşüm özellikleri ile TextObjects koleksiyonunu gösteriyor" class="img-responsive add-shadow" />
</div>
</div>
`ObjectModel` özelliği `ImageObject`, `PathObject` ve `TextObject` içerir. Her nesne, sayfa dizini, sınırlayıcı kutusu, `Scale` ve `Translation` hakkında bilgi içerir. Bu bilgi değiştirilebilir. [rendering options](https://ironpdf.com/how-to/rendering-options/) için, bu nesnelerin nasıl görüntüleneceğini özelleştirebilirsiniz. Özel [kenar boşlukları](https://ironpdf.com/how-to/custom-margins/) ile çalışırken, nesne konumlandırmayı anlamak önemlidir.
**`<ImageObject>`:**
- `Height`: Resmin yüksekliği
- `Width`: Resmin genişliği
- `ExportBytesAsJpg`: Resmi JPG bayt dizisi olarak dışa aktarma yöntemi
**`<PathObject>`:**
- `FillColor`: Yolun dolgu rengi
- `StrokeColor`: Yolun kenar çizgi rengi
- `Points`: Yolu tanımlayan nokta koleksiyonu
**`<TextObject>`:**
- `Color`: Metnin rengi
- `Contents`: Gerçek `Text` içeriği
Her nesne türü, içeriğinin tipine uygun olarak yöntemler ve özellikler içerir. Metin ve resimleri [çıkarmanız](https://ironpdf.com/how-to/extract-text-and-images/) veya belirli içeriği değiştirmeniz gerektiğinde, bu nesneler ayrıntılı denetim sağlar. Bu, form alanlarını programlı olarak değiştirmeniz gereken [PDF formları](https://ironpdf.com/how-to/create-forms/) ile çalışırken yararlıdır.
### Glif Bilgilerini ve Sınırlayıcı Kutuları Nasıl Elde Edebilirim?
Özel yazı tipleriyle belirli glifleri belirtirken, sınırlayıcı kutu ve glif bilgilerini almak önemlidir. Mevcut PDF'lerde [metin ve bit eşlemler çizerken](https://ironpdf.com/how-to/draw-text-and-bitmap/) IronPDF, piksel mükemmelliğinde konumlandırma için bu bilgileri sağlar.
`ObjectModel`'a `PdfPage` nesnesinden erişin. Daha sonra `TextObjects` koleksiyonuna erişin. `GetGlyphInfo` yöntemini çağırarak glif ve sınırlayıcı kutu bilgilerini alın.
```cs
using IronPdf;
using System.Linq;
PdfDocument pdf = PdfDocument.FromFile("invoice.pdf");
var glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo();
```
<div class="content-img-align-center">
<div class="center-image-wrapper">
<img src="/static-assets/pdf/how-to/access-pdf-dom-object/glyphinformation.webp" alt="PDF glif nesne özelliklerini, koordinatları, sınırları ve metin içeriği ayrıntılarını gösteren hata ayıklayıcı" class="img-responsive add-shadow" />
</div>
</div>
Glif bilgileri, konumlandırma verilerini, yazı tipi metriklerini ve karmaşık PDF manipülasyonları için karaktere özgü ayrıntıları içerir. Bu, karmaşık tipografi ve düzen gereksinimlerini ele alan PDF işleme uygulamaları oluşturmaya olanak tanır. Özel [yazı tipleri](https://ironpdf.com/how-to/manage-fonts/) ile çalışırken, bu glif düzeyinde erişim sistemler arasında doğru işleme sağlanır.
<hr />
## PDF Nesnelerini Nasıl Çevirebilirim?
Metin veya resim gibi öğeleri yeniden konumlandırarak PDF düzenini ayarlayın. Nesneleri `Translate` özelliklerini değiştirerek taşıyın. Bu işlevsellik, IronPDF'nin [PDF dönüştürme yeteneklerinin](https://ironpdf.com/how-to/transform-pdf-pages/) bir parçasıdır.
Aşağıdaki örnek, HTML'yi CSS Flexbox kullanarak metni ortalamak için kullanır. İlk `TextObject`'e erişir ve `Translate` özelliğine yeni bir `PointF` atayarak çevirir. Bu metni 200 puan sağa ve 150 puan yukarı kaydırır. Daha fazla örnek için [PDF nesnelerini çevirme örnekleri sayfasını](https://ironpdf.com/examples/translate-pdf-objects/) ziyaret edin.
### Nesneleri Çevirmek İçin Hangi Kodu Kullanırım?
```csharp
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");
```
### Çeviri Sonucu Nasıl Görünür?
Çıktı, 'Ortalanmış' metnini, orijinal konumundan 200 puan sağa ve 150 puan yukarı kaydırılmış olarak gösterir.
<div class="content-img-align-center">
<div class="center-image-wrapper">
<img src="/static-assets/pdf/how-to/access-pdf-dom-object/translate.webp" alt="PDF çeviri karşılaştırması öncesinde ve sonrasında, metin konumlandırmanın ve formatlamanın korunduğunu gösterir" class="img-responsive add-shadow" />
</div>
</div>
Çeviri işlemleri, konum dışında yalnızca nesnenin orijinal özelliklerini (yazı tipi, boyut ve renk gibi) değiştirmeden korur. Bu, görsel görünümü etkilemeden düzen ayarlamaları için idealdir. Bu özellik, dinamik olarak oluşturulan içeriği yeniden konumlandırırken [başlık ve altbilgilerle](https://ironpdf.com/how-to/headers-and-footers/) çalışır.
<hr />
## PDF Nesnelerini Nasıl Ölçeklendiririm?
PDF nesnelerini `Scale` özelliğini kullanarak yeniden boyutlandırın. Bu özellik bir çarpan olarak işlev görür. 1'den büyük değerler boyutu artırır, 0 ile 1 arasındaki değerler ise boyutu azaltır. Ölçeklendirme, dinamik düzenler ve içeriği sayfa boyutlarına uyarlamak için önemlidir. Daha fazla örnek için [PDF nesnelerini ölçeklendirme kılavuzunu](https://ironpdf.com/examples/scale-pdf-objects/) inceleyin.
Örnek, bir resmi içeren HTML'yi işler. İlk `ImageObject`'e erişir ve her iki eksen için de 0,7 olan yeni `PointF`'i `Scale` atayarak %70 oranında ölçeklendirir.
### PDF Nesnelerini Ölçeklendirme Kodu Nedir?
```csharp
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");
```
Eşit olmayan ölçeklendirme için X ve Y eksenlerine bağımsız olarak farklı ölçekleme faktörleri uygulayın. Bu, içeriği belirli boyutlara uyarlamak için kullanışlıdır. [Özel kağıt boyutları](https://ironpdf.com/how-to/custom-paper-size/) ile çalışırken, ölçeklendirme içeriğin sayfa sınırları içinde kalmasını sağlar.
### Pratikte Ölçeklendirme Nasıl Görünür?
Çıktı, resmin orijinal boyutunun %70'ine ölçeklenmiş olarak gösterir.
<div class="content-img-align-center">
<div class="center-image-wrapper">
<img src="/static-assets/pdf/how-to/access-pdf-dom-object/scale.webp" alt="PDF ölçekleme demosu: IRON logosu büyük boyuttan (sol) küçük boyuta (sağ) okla gösterilen dönüşüm" class="img-responsive add-shadow" />
</div>
</div>
<hr />
## PDF Nesnelerini Nasıl Kaldırırım?
Nesneleri `ImageObjects` veya `TextObjects` gibi PDF DOM koleksiyonuna erişerek kaldırın. Silinecek nesnenin indeksini geçirerek koleksiyonda `RemoveAt` çağırın. Bu, içeriği sansürlemek veya belgeleri basitleştirmek için kullanışlıdır. Daha fazla bilgi için [PDF nesnelerini kaldırma örneği](https://ironpdf.com/examples/remove-pdf-objects/) inceleyin.
Kod, BeforeScale.pdf yükler ve ilk sayfadan ilk resmi kaldırır.
### Nesneleri Kaldırmak İçin Hangi Kod Kullanılmalıdır?
```csharp
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");
```
### Birden Fazla Nesne Kaldırdığımda Ne Olur?
Kalan nesnelerin dizinleri, kaldırıldıktan sonra kayar. Birden fazla nesne kaldırılırken, doğru dizinleri korumak için bunları ters sırayla kaldırın. Bu teknik, [gizli belgelerden metin sansürlediğinizde](https://ironpdf.com/how-to/redact-text/) yardımcı olur.
## Birden Fazla DOM İşlemini Nasıl Kombine Ederim?
IronPDF'nin DOM erişimi, karmaşık belge işleme iş akışlarını mümkün kılar. Karmaşık dönüşümler için işlemleri birleştirin:
### Birleştirilmiş İşlemler Ne Zaman Kullanılmalıdır?
```csharp
using IronPdf;
using System.Linq;
// Example of combining multiple DOM operations
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");
```
### Birleştirilmiş İşlemler İçin Yaygın Kullanım Durumları Nelerdir?
Birleştirilmiş DOM işlemleri şu amaçlar için uygundur:
1. **Toplu Belge İşleme:** Dökümanları işleyerek formatlama standartlarını sağlayın veya hassas içeriği kaldırın
2. **Dinamik Rapor Oluşturma:** Gerçek zamanlı verilerle şablon PDF'leri değiştirerek mizanpajı kontrol edin
3. **İçerik Göçü:** PDF'lerden içeriği çekip yeni mizanpajlarda yeniden düzenleyin
4. **Erişilebilirlik İyileştirmeleri:** Belgeleri metin boyutunu, kontrastını veya boşlukları değiştirerek geliştirin
Bu teknikler, karmaşık değişiklikleri ele alan güçlü PDF işleme uygulamaları sağlar. Belge özelliklerini yönetmek için [metadata yönetimi kılavuzuna](https://ironpdf.com/how-to/metadata/) bakın.
## DOM Erişimi Diğer PDF Manipülasyon Yöntemleri ile Nasıl Karşılaştırılır?
PDF DOM ile çalışmak, geleneksel yöntemlere göre avantajlar sağlar:
```csharp
using IronPdf;
using System.Linq;
// Example: Selective content modification based on criteria
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");
```
Bu ayrıntılı denetim, [yalnızca HTML'den PDF'ye dönüşüm](https://ironpdf.com/how-to/html-to-pdf-responsive-css/) ile mümkün değildir, bu da DOM erişimini sofistike PDF işleme için gerekli kılar.
Başka neler yapabileceğinizi görmek için hazır mısınız? Eğitim sayfasını buradan inceleyin: [PDF'leri Düzenle](https://ironpdf.com/tutorials/csharp-edit-pdf-complete-tutorial/)
C#'de PDF DOM nesnelerine erişmek için, IronPDF'in, PDF belgelerindeki metin, resim ve yol nesnelerine programlı erişim sağlayan ObjectModel özelliğini kullanın. Bu, elementleri doğrudan okumanız, değiştirmeniz, çevirmeniz, ölçeklendirmeniz ve kaldırmanız için imkan tanır.
Hızlı Başlangıç: IronPDF ile PDF DOM Öğelerine Eriş ve Güncelle
IronPDF'nin DOM erişim özelliklerini kullanarak PDF belgelerini manipüle etmeye başlayın. Bu kılavuz, PDF DOM'una nasıl erişileceğini, bir sayfa nasıl seçilir ve metin nesneleri nasıl değiştirileceğini gösterir. PDF'inizi yükleyin, istedğiniz sayfaya erişin ve birkaç satır kodla içeriği güncelleyin.
1Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf
Install-Package IronPdf
2Bu kod parçacığını kopyalayın ve çalıştırın.
var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel;
var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel;
Dim objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel
Dim objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf("https://example.com").Pages.First().ObjectModel
3Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronPDF kullanmaya başlayın
PDF'nin Pages koleksiyonuna erişin ve istenen sayfayı seçin
ObjectModel özelliğini kullanarak DOM nesnelerine göz atın ve etkileşimde bulunun
Düzenlenen PDF belgesini kaydedin veya dışa aktarın
PDF'lerde DOM Nesnelerine Nasıl Erişirim?
ObjectModel, PdfPage nesnesinden erişilir. Öncelikle, hedef PDF'yi içe aktarın ve onun Pages özelliğine erişin. Buradan, ObjectModel özelliğine erişmek için herhangi bir sayfayı seçin. Bu, HTML DOM öğeleri ile çalışmaya benzer şekilde PDF içeriği ile programlı olarak etkileşimi sağlar.
PDF DOM nesneleri ile çalışırken, PDF belgesinin altında yatan yapıya erişirsiniz. Bu, PDF'nizin görsel temsilini oluşturan metin unsurlarını, resimleri, vektör grafikleri (paths) ve diğer içerikleri içerir. IronPDF, C# uygulamalarıyla entegre olan nesne yönelimli bir PDF manipülasyonu yaklaşımı sunar.
using IronPdf;using System.Linq;// Instantiate RendererChromePdfRenderer renderer = new ChromePdfRenderer();// Create a PDF from a URLPdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");// Access DOM Objectsvar objects = pdf.Pages.First().ObjectModel;
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;
ImportsIronPdfImportsSystem.Linq' Instantiate RendererPrivate renderer As New ChromePdfRenderer()' Create a PDF from a URLPrivate pdf AsPdfDocument = renderer.RenderUrlAsPdf("https://ironpdf.com/")' Access DOM ObjectsPrivate objects = pdf.Pages.First().ObjectModel
Imports IronPdf
Imports System.Linq
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' Create a PDF from a URL
Private pdf As PdfDocument = renderer.RenderUrlAsPdf("https://ironpdf.com/")
' Access DOM Objects
Private objects = pdf.Pages.First().ObjectModel
ObjectModel özelliği ImageObject, PathObject ve TextObject içerir. Her nesne, sayfa dizini, sınırlayıcı kutusu, Scale ve Translation hakkında bilgi içerir. Bu bilgi değiştirilebilir. rendering options için, bu nesnelerin nasıl görüntüleneceğini özelleştirebilirsiniz. Özel kenar boşlukları ile çalışırken, nesne konumlandırmayı anlamak önemlidir.
<ImageObject>:
Height: Resmin yüksekliği
Width: Resmin genişliği
ExportBytesAsJpg: Resmi JPG bayt dizisi olarak dışa aktarma yöntemi
<PathObject>:
FillColor: Yolun dolgu rengi
StrokeColor: Yolun kenar çizgi rengi
Points: Yolu tanımlayan nokta koleksiyonu
<TextObject>:
Color: Metnin rengi
Contents: Gerçek Text içeriği
Her nesne türü, içeriğinin tipine uygun olarak yöntemler ve özellikler içerir. Metin ve resimleri çıkarmanız veya belirli içeriği değiştirmeniz gerektiğinde, bu nesneler ayrıntılı denetim sağlar. Bu, form alanlarını programlı olarak değiştirmeniz gereken PDF formları ile çalışırken yararlıdır.
Glif Bilgilerini ve Sınırlayıcı Kutuları Nasıl Elde Edebilirim?
Özel yazı tipleriyle belirli glifleri belirtirken, sınırlayıcı kutu ve glif bilgilerini almak önemlidir. Mevcut PDF'lerde metin ve bit eşlemler çizerken IronPDF, piksel mükemmelliğinde konumlandırma için bu bilgileri sağlar.
ObjectModel'a PdfPage nesnesinden erişin. Daha sonra TextObjects koleksiyonuna erişin. GetGlyphInfo yöntemini çağırarak glif ve sınırlayıcı kutu bilgilerini alın.
using IronPdf;using System.Linq;PdfDocument pdf = PdfDocument.FromFile("invoice.pdf");var glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo();
using IronPdf;
using System.Linq;
PdfDocument pdf = PdfDocument.FromFile("invoice.pdf");
var glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo();
ImportsIronPdfImportsSystem.LinqDim pdf AsPdfDocument = PdfDocument.FromFile("invoice.pdf")Dim glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo()
Imports IronPdf
Imports System.Linq
Dim pdf As PdfDocument = PdfDocument.FromFile("invoice.pdf")
Dim glyph = pdf.Pages.First().ObjectModel.TextObjects.First().GetGlyphInfo()
Glif bilgileri, konumlandırma verilerini, yazı tipi metriklerini ve karmaşık PDF manipülasyonları için karaktere özgü ayrıntıları içerir. Bu, karmaşık tipografi ve düzen gereksinimlerini ele alan PDF işleme uygulamaları oluşturmaya olanak tanır. Özel yazı tipleri ile çalışırken, bu glif düzeyinde erişim sistemler arasında doğru işleme sağlanır.
PDF Nesnelerini Nasıl Çevirebilirim?
Metin veya resim gibi öğeleri yeniden konumlandırarak PDF düzenini ayarlayın. Nesneleri Translate özelliklerini değiştirerek taşıyın. Bu işlevsellik, IronPDF'nin PDF dönüştürme yeteneklerinin bir parçasıdır.
Aşağıdaki örnek, HTML'yi CSS Flexbox kullanarak metni ortalamak için kullanır. İlk TextObject'e erişir ve Translate özelliğine yeni bir PointF atayarak çevirir. Bu metni 200 puan sağa ve 150 puan yukarı kaydırır. Daha fazla örnek için PDF nesnelerini çevirme örnekleri sayfasını ziyaret edin.
Nesneleri Çevirmek İçin Hangi Kodu Kullanırım?
using IronPdf;using System.Drawing;using System.Linq;// Setup the Renderervar 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 PDFPdfDocument pdf = renderer.RenderHtmlAsPdf(html);// Save the original PDF to see the "before" statepdf.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" statepdf.SaveAs("AfterTranslate.pdf");
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");
ImportsIronPdfImportsSystem.DrawingImportsSystem.Linq' Setup the RendererDim renderer As New ChromePdfRenderer()' We use CSS Flexbox to perfectly center the text vertically and horizontally.Dim html AsString = "<div style='display: flex; justify-content: center; align-items: center; font-size: 48px;'> Centered</div>"' Render the HTML to a PDFDim pdf AsPdfDocument = renderer.RenderHtmlAsPdf(html)' Save the original PDF to see the "before" statepdf.SaveAs("BeforeTranslate.pdf")' Access the first text object on the first page' In this simple HTML, this will be our "Centered" text block.Dim 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" statepdf.SaveAs("AfterTranslate.pdf")
Imports IronPdf
Imports System.Drawing
Imports System.Linq
' Setup the Renderer
Dim renderer As New ChromePdfRenderer()
' We use CSS Flexbox to perfectly center the text vertically and horizontally.
Dim html As String = "
<div style='display: flex; justify-content: center; align-items: center; font-size: 48px;'>
Centered
</div>"
' Render the HTML to a PDF
Dim pdf As PdfDocument = 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.
Dim 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")
Çeviri Sonucu Nasıl Görünür?
Çıktı, 'Ortalanmış' metnini, orijinal konumundan 200 puan sağa ve 150 puan yukarı kaydırılmış olarak gösterir.
Çeviri işlemleri, konum dışında yalnızca nesnenin orijinal özelliklerini (yazı tipi, boyut ve renk gibi) değiştirmeden korur. Bu, görsel görünümü etkilemeden düzen ayarlamaları için idealdir. Bu özellik, dinamik olarak oluşturulan içeriği yeniden konumlandırırken başlık ve altbilgilerle çalışır.
PDF Nesnelerini Nasıl Ölçeklendiririm?
PDF nesnelerini Scale özelliğini kullanarak yeniden boyutlandırın. Bu özellik bir çarpan olarak işlev görür. 1'den büyük değerler boyutu artırır, 0 ile 1 arasındaki değerler ise boyutu azaltır. Ölçeklendirme, dinamik düzenler ve içeriği sayfa boyutlarına uyarlamak için önemlidir. Daha fazla örnek için PDF nesnelerini ölçeklendirme kılavuzunu inceleyin.
Örnek, bir resmi içeren HTML'yi işler. İlk ImageObject'e erişir ve her iki eksen için de 0,7 olan yeni PointF'i Scale atayarak %70 oranında ölçeklendirir.
PDF Nesnelerini Ölçeklendirme Kodu Nedir?
using IronPdf;using System.Linq;// Setup the Renderervar 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 PDFPdfDocument pdf = renderer.RenderHtmlAsPdf(html);// Save the PDF before scaling for comparisonpdf.SaveAs("BeforeScale.pdf");// Access the first image object on the first pagevar 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 resultpdf.SaveAs("AfterScale.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");
ImportsIronPdfImportsSystem.LinqImportsSystem.Drawing' Setup the RendererDim renderer As New ChromePdfRenderer()' The image is placed in a div to give it some space on the page.Dim html AsString = "<img src='https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTi8LuOR6_A98euPLs-JRwoLU7Nc31nVP15rw&s'>"' Render the HTML to a PDFDim pdf AsPdfDocument = renderer.RenderHtmlAsPdf(html)' Save the PDF before scaling for comparisonpdf.SaveAs("BeforeScale.pdf")' Access the first image object on the first pageDim 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 PointF(0.7F, 0.7F)' Save the modified PDF to see the resultpdf.SaveAs("AfterScale.pdf")
Imports IronPdf
Imports System.Linq
Imports System.Drawing
' Setup the Renderer
Dim renderer As New ChromePdfRenderer()
' The image is placed in a div to give it some space on the page.
Dim html As String = "<img src='https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTi8LuOR6_A98euPLs-JRwoLU7Nc31nVP15rw&s'>"
' Render the HTML to a PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Save the PDF before scaling for comparison
pdf.SaveAs("BeforeScale.pdf")
' Access the first image object on the first page
Dim 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 PointF(0.7F, 0.7F)
' Save the modified PDF to see the result
pdf.SaveAs("AfterScale.pdf")
Eşit olmayan ölçeklendirme için X ve Y eksenlerine bağımsız olarak farklı ölçekleme faktörleri uygulayın. Bu, içeriği belirli boyutlara uyarlamak için kullanışlıdır. Özel kağıt boyutları ile çalışırken, ölçeklendirme içeriğin sayfa sınırları içinde kalmasını sağlar.
Pratikte Ölçeklendirme Nasıl Görünür?
Çıktı, resmin orijinal boyutunun %70'ine ölçeklenmiş olarak gösterir.
Bu türden favori kütüphanem IronPDF'dir. PDF dosyalarının hızlı ve verimli bir şekilde işlenmesine olanak tanır. Ayrıca, PDF/A formatına dışa aktarma ve dijital imzalama gibi birçok değerli özelliğe sahiptir.
IronOCR, manuel işleme maliyetinden yıllık 40.000 USD tasarruf etmemizi sağlıyor, üretkenliği artırıyor ve yüksek etkili görevler için kaynakları serbest bırakıyor. Kesinlikle tavsiye ederim.
Nesneleri ImageObjects veya TextObjects gibi PDF DOM koleksiyonuna erişerek kaldırın. Silinecek nesnenin indeksini geçirerek koleksiyonda RemoveAt çağırın. Bu, içeriği sansürlemek veya belgeleri basitleştirmek için kullanışlıdır. Daha fazla bilgi için PDF nesnelerini kaldırma örneği inceleyin.
Kod, BeforeScale.pdf yükler ve ilk sayfadan ilk resmi kaldırır.
Nesneleri Kaldırmak İçin Hangi Kod Kullanılmalıdır?
using IronPdf;using System.Linq;// Load the PDF file we created in the Scale examplePdfDocument pdf = PdfDocument.FromFile("BeforeScale.pdf");// Access DOM Objectsvar objects = pdf.Pages.First().ObjectModel;// Remove first imageobjects.ImageObjects.RemoveAt(0);// Save the modified PDFpdf.SaveAs("removedFirstImage.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");
ImportsIronPdfImportsSystem.Linq' Load the PDF file we created in the Scale exampleDim pdf AsPdfDocument = PdfDocument.FromFile("BeforeScale.pdf")' Access DOM ObjectsDim objects = pdf.Pages.First().ObjectModel' Remove first imageobjects.ImageObjects.RemoveAt(0)' Save the modified PDFpdf.SaveAs("removedFirstImage.pdf")
Imports IronPdf
Imports System.Linq
' Load the PDF file we created in the Scale example
Dim pdf As PdfDocument = PdfDocument.FromFile("BeforeScale.pdf")
' Access DOM Objects
Dim objects = pdf.Pages.First().ObjectModel
' Remove first image
objects.ImageObjects.RemoveAt(0)
' Save the modified PDF
pdf.SaveAs("removedFirstImage.pdf")
Birden Fazla Nesne Kaldırdığımda Ne Olur?
Kalan nesnelerin dizinleri, kaldırıldıktan sonra kayar. Birden fazla nesne kaldırılırken, doğru dizinleri korumak için bunları ters sırayla kaldırın. Bu teknik, gizli belgelerden metin sansürlediğinizde yardımcı olur.
Birden Fazla DOM İşlemini Nasıl Kombine Ederim?
IronPDF'nin DOM erişimi, karmaşık belge işleme iş akışlarını mümkün kılar. Karmaşık dönüşümler için işlemleri birleştirin:
Birleştirilmiş İşlemler Ne Zaman Kullanılmalıdır?
using IronPdf;using System.Linq;// Example of combining multiple DOM operationsPdfDocument pdf = PdfDocument.FromFile("complex-document.pdf");// Iterate through all pagesforeach (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");
using IronPdf;
using System.Linq;
// Example of combining multiple DOM operations
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");
ImportsIronPdfImportsSystem.Linq' Example of combining multiple DOM operationsDim pdf AsPdfDocument = PdfDocument.FromFile("complex-document.pdf")' Iterate through all pagesFor Each page In pdf.Pages Dim objects = page.ObjectModel ' Process text objects For Each textObj In objects.TextObjects ' Change color of specific text If textObj.Contents.Contains("Important") Then textObj.FillColor = IronSoftware.Drawing.Color.Red End If Next ' Scale down all images by 50% For Each imgObj In objects.ImageObjects imgObj.Scale = New System.Drawing.PointF(0.5F, 0.5F) NextNextpdf.SaveAs("processed-document.pdf")
Imports IronPdf
Imports System.Linq
' Example of combining multiple DOM operations
Dim pdf As PdfDocument = PdfDocument.FromFile("complex-document.pdf")
' Iterate through all pages
For Each page In pdf.Pages
Dim objects = page.ObjectModel
' Process text objects
For Each textObj In objects.TextObjects
' Change color of specific text
If textObj.Contents.Contains("Important") Then
textObj.FillColor = IronSoftware.Drawing.Color.Red
End If
Next
' Scale down all images by 50%
For Each imgObj In objects.ImageObjects
imgObj.Scale = New System.Drawing.PointF(0.5F, 0.5F)
Next
Next
pdf.SaveAs("processed-document.pdf")
Birleştirilmiş İşlemler İçin Yaygın Kullanım Durumları Nelerdir?
Birleştirilmiş DOM işlemleri şu amaçlar için uygundur:
Toplu Belge İşleme: Dökümanları işleyerek formatlama standartlarını sağlayın veya hassas içeriği kaldırın
Dinamik Rapor Oluşturma: Gerçek zamanlı verilerle şablon PDF'leri değiştirerek mizanpajı kontrol edin
İçerik Göçü: PDF'lerden içeriği çekip yeni mizanpajlarda yeniden düzenleyin
Erişilebilirlik İyileştirmeleri: Belgeleri metin boyutunu, kontrastını veya boşlukları değiştirerek geliştirin
Bu teknikler, karmaşık değişiklikleri ele alan güçlü PDF işleme uygulamaları sağlar. Belge özelliklerini yönetmek için metadata yönetimi kılavuzuna bakın.
DOM Erişimi Diğer PDF Manipülasyon Yöntemleri ile Nasıl Karşılaştırılır?
PDF DOM ile çalışmak, geleneksel yöntemlere göre avantajlar sağlar:
using IronPdf;using System.Linq;// Example: Selective content modification based on criteriaPdfDocument 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");
using IronPdf;
using System.Linq;
// Example: Selective content modification based on criteria
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");
ImportsIronPdfImportsSystem.Linq' Example: Selective content modification based on criteriaDim report AsPdfDocument = PdfDocument.FromFile("quarterly-report.pdf")For Each page In report.Pages Dim textObjects = page.ObjectModel.TextObjects ' Highlight negative values in financial reports For Each text In textObjects If text.Contents.StartsWith("-$") OrElse text.Contents.Contains("Loss") Then text.FillColor = IronSoftware.Drawing.Color.Red End If NextNextreport.SaveAs("highlighted-report.pdf")
Imports IronPdf
Imports System.Linq
' Example: Selective content modification based on criteria
Dim report As PdfDocument = PdfDocument.FromFile("quarterly-report.pdf")
For Each page In report.Pages
Dim textObjects = page.ObjectModel.TextObjects
' Highlight negative values in financial reports
For Each text In textObjects
If text.Contents.StartsWith("-$") OrElse text.Contents.Contains("Loss") Then
text.FillColor = IronSoftware.Drawing.Color.Red
End If
Next
Next
report.SaveAs("highlighted-report.pdf")
Bu ayrıntılı denetim, yalnızca HTML'den PDF'ye dönüşüm ile mümkün değildir, bu da DOM erişimini sofistike PDF işleme için gerekli kılar.
Başka neler yapabileceğinizi görmek için hazır mısınız? Eğitim sayfasını buradan inceleyin: PDF'leri Düzenle
Sıkça Sorulan Sorular
PDF manipülasyonunda ObjectModel özelliği ne için kullanılır?
IronPDF'ün ObjectModel özelliği, PDF belgeleri içindeki metin, görüntü ve yol nesnelerine programatik erişim sağlar. Geliştiricilerin PDF DOM'daki ögeleri HTML DOM ögeleri ile çalışmaya benzer şekilde okumasına, değiştirmesine, çevirmesine, ölçeklemesine ve kaldırmasına olanak tanır.
C#'da PDF DOM nesnelerine nasıl erişebilirim?
IronPDF kullanarak PDF DOM nesnelerine erişmek için önce hedef PDF belgenizi içe aktarın, ardından Sayfalar özelliğine erişin. Oradan herhangi bir sayfayı seçin ve ObjectModel özelliğini kullanın. Örneğin: var objs = IronPdf.ChromePdfRenderer.RenderUrlAsPdf('https://example.com').Pages.First().ObjectModel;
PDF DOM aracılığıyla hangi nesne türlerine erişebilirim?
IronPDF'ün ObjectModel'i üç ana nesne türünü içerir: ImageObject (Yükseklik, Genişlik ve ExportBytesAsJpg gibi özelliklerle), PathObject (Doldurma Rengi, Kontur Rengi ve Noktalarla) ve TextObject (Renk ve İçerikler özellikleriyle). Her biri belirli içerik türlerine yönelik yöntemler sunar.
Bir PDF belgesi içindeki metin içeriğini programlı olarak değiştirebilir miyim?
Evet, IronPDF, TextObject'ün Contents özelliği aracılığıyla metin içeriğini değiştirmenizi sağlar. ObjectModel aracılığıyla metin nesnelerine erişebilir, içeriklerini güncelleyebilir ve değiştirilmiş PDF belgesini yalnızca birkaç satır kodla kaydedebilirsiniz.
PDF belgelerinden görüntüleri nasıl dışa aktarabilirim?
IronPDF'ün ImageObject'i, JPG bayt dizileri olarak görüntüleri dışa aktarmanıza olanak tanıyan ExportBytesAsJpg metodunu sağlar. Görseli ObjectModel özelliği aracılığıyla erişin ve bu yöntemi kullanarak görüntü verisini programlı olarak çıkarın.
Her DOM nesnesinin konumuyla ilgili hangi bilgiler mevcut?
IronPDF'ün ObjectModel'inde her nesne, sayfa dizini, çerçeve koordinatları, ölçek ve çeviri gibi bilgileri içerir. Bu konumlandırma verileri, PDF içindeki elemanları yeniden konumlandırmak veya dönüştürmek için okunabilir ve değiştirilebilir.
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, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.