PDF XML Meta Verilerini ve Yer İmlerini Anlamak: Teknik Kılavuz

İşlenen Temel Konular
📍 Destinasyonlar
PDF belgeleri içindeki belirli konumları tanımlayan hassas konum işaretçileri. Bunlar, yer işaretleri ve köprüler için doğru gezinmeyi mümkün kılarken, belge ana hatları hiyerarşik içindekiler tablosu işlevselliği sağlar.
📄 XML Meta Verileri
Standartlaştırılmış XMP formatlarını kullanarak kapsamlı belge meta verileri sağlayan, temel belge özelliklerinin ötesine geçerek zengin tanımlayıcı bilgiler içeren yapılandırılmış XML akışları.
📎 Dosya Ekleri
Harici kaynakları doğrudan PDF belgeleri içinde paketleyen, e-posta eklerine benzer müstakil belge paketleri oluşturan eksiksiz dosya yerleştirme özelliği.
📝 Ek Açıklamalar
Temel içeriği değiştirmeden PDF sayfalarına metin, grafik ve tıklanabilir işlevsellik ekleyen etkileşimli yer paylaşımı öğeleri. Sorunsuz belge gezintisi için köprüler ve gelişmiş okuyucu etkileşimi için çeşitli işaretleme araçları içerir.
Yer İmleri ve Hedefler

Belgelerde gezinme, teknik olarak Yer İşareti olarak bilinen hiyerarşik yer imi yapılarına dayanır. belge taslağı. Ağaç şeklinde düzenlenmiş bu sistem, okuyucuların belgenin belirli bölümlerine hızlı bir şekilde atlamasını sağlayan tıklanabilir girişler (genellikle bölüm başlıkları, bölüm başlıkları ve alt bölüm adları) sunar. Her yer imi girişi, ekran metnini, bağlantının tam olarak nereye gitmesi gerektiğini belirten hedef bilgileriyle birleştirir.
Hedefleri Anlamak
PDF hedefleri bir belge içinde kesin konum işaretçileri görevi görür ve hangi sayfanın görüntüleneceğini, görünümün o sayfada nereye konumlandırılacağını ve hangi yakınlaştırma düzeyinin uygulanacağını belirtir. Hedefleri iki şekilde oluşturabilirsiniz: bunları doğrudan satır içinde tanımlayın (bunu daha net olması açısından örneklerimizde kullanacağız) veya belge çapında bir adlandırma sistemi aracılığıyla adlarına göre referans verin. Çoğu PDF okuyucu, ana belge içeriğinin yanında bir gezinme panelinde yer imleri sunar.
Her hedef, ulaşmak istediğiniz görüntüleme davranışına göre belirli öğelerin değiştiği bir dizi yapısı kullanır. Mevcut ana hedef modelleri şunlardır:
Hedef Türleri Tablosu
Not: “sayfa” bir sayfa nesnesine dolaylı bir referansı temsil eder. Varsayılan olarak bu hedefler sayfanın kırpma kutusu sınırlarıyla çalışır ve herhangi bir kırpma kutusu tanımlanmadığında medya kutusuna geri döner.
| Array | Description |
|---|---|
| [page /Fit] | Scales the page to fit completely within the viewer window, adjusting both width and height proportionally. |
| [page /FitH top] | Positions the specified top coordinate at the window’s top edge while scaling horizontally to fit the full page width. |
| [page /FitV left] | Aligns the specified left coordinate with the window’s left edge while scaling vertically to fit the full page height. |
| [page /XYZ left top zoom] | Positions the coordinates (left, top) at the window’s upper-left corner and applies the specified zoom factor. Null values preserve current settings for those parameters. |
| [page /FitR left bottom right top] | Zooms and positions the view to display the rectangular area defined by the left, bottom, right, and top coordinates. |
| [page /FitB] | Similar to /Fit, but scales based on the actual content boundaries instead of the defined crop box area. |
| [page /FitBH top] | Functions like /FitH but uses the content bounding box instead of the crop box for horizontal scaling calculations. |
| [page /FitBV left] | Operates like /FitV but calculates vertical scaling based on the content bounding box rather than the crop box boundaries. |
Belge Anahat Yapısı
Belge ana hatları, PDF görüntüleyiciler için etkileşimli bir içindekiler tablosu işlevi gören hiyerarşik bir gezinme yapısı oluşturur. Bu ağaç benzeri organizasyon, net bir yapısal genel bakış sunarak kullanıcıların karmaşık belgeler arasında hızlı bir şekilde gezinmesine yardımcı olur. Sistem iki temel nesne türüne dayanır:
- Taslak sözlüğü – Ana hat hiyerarşisinin kökü
- Anahat öğesi sözlükleri – Ana hattaki bireysel girişler
Anahat Sözlük Yapısı Tablosu
| Key | Value Type | Value |
|---|---|---|
| /Type | name | If present, must be /Outlines. |
| /First | indirect reference to dictionary | References the initial top-level outline entry in the document hierarchy. This field is mandatory when outline entries exist. |
| /Last | indirect reference to dictionary | References the final top-level outline entry in the document hierarchy. This field is mandatory when outline entries exist. |
| /Count | integer | Specifies how many outline entries are currently expanded across the entire outline tree. Can be omitted when no entries are in an open state. |
Anahat Öğesinin Uygulanması
Her anahat öğesi, görünen başlığını, hedef hedefini ve hiyerarşideki diğer öğelerle ilişkilerini belirten bir sözlükten oluşur.
Basit bir belge taslağının PDF sözdiziminde nasıl yapılandırıldığını inceleyelim:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
8 0 obj <</Type/Outlines/Count 4/First 9 0 R/Last 9 0 R>> endobj 9 0 obj <</Title(Chapter 1: Experiment A)/Count 3/Parent 8 0 R/First 12 0 R/Last 18 0 R>> endobj 12 0 obj <</Title(1: Introduction)/Count 0/Parent 9 0 R/Next 15 0 R>> endobj 15 0 obj <</Title(2: Methodology)/Count 0/Parent 9 0 R/Prev 12 0 R/Next 18 0 R>> endobj 18 0 obj <</Title(3: Result verification)/Count 0/Parent 9 0 R/Prev 15 0 R/>> endobj |
Anahat Öğesi Sözlüğü Yapı Tablosu
* gerekli girişi belirtir
| Key | Value Type | Value |
|---|---|---|
| /Title* | text string | Text to be displayed for this entry. |
| /Parent* | indirect reference to dictionary | References this item’s parent within the outline hierarchy, which can be either another outline item or the root outline dictionary. |
| /Prev | indirect reference to dictionary | References the preceding sibling item at the same hierarchical level, when applicable. |
| /Next | indirect reference to dictionary | References the following sibling item at the same hierarchical level, when applicable. |
| /First | indirect reference to dictionary | References the initial child item under this entry, when child items exist. |
| /Last | indirect reference to dictionary | References the final child item under this entry, when child items exist. |
| /Count | integer | When the entry is expanded, indicates the count of visible descendant entries. When collapsed, stores a negative value representing the total number of hidden descendants that would become visible upon expansion. |
| /Dest | name, string or array | The destination. Arrays are destinations, names are references to entries in the /Dests entry in the document catalog, strings are references to entries in the /Dests entry in the document’s name dictionary. |
XML Meta Verileri

Modern PDF belgeleri, geleneksel belge özelliklerinden çok daha ayrıntılı ve yapılandırılmış bilgiler sunan karmaşık XML tabanlı meta veri akışlarını içerebilir. Bu gelişmiş meta veri sistemi, aranabilirliği, organizasyonu ve otomatik işleme yeteneklerini geliştiren standartlaştırılmış, makine tarafından okunabilir belge açıklamaları sağlamak için Adobe'nin XMP (Genişletilebilir Meta Veri Platformu) spesifikasyonunu kullanır.
XMP Meta Veri Yapısı
XMP meta verileri, belge özelliklerini standart bir biçimde düzenlemek ve tanımlamak için RDF (Kaynak Açıklama Çerçevesi) sözdizimini kullanan bir XML belgesi olarak paketlenir. Bu meta veri içeriği, PDF işlemcileri için uygun tür tanımlamasını içeren özel bir akış nesnesinin içine yerleştirilmiştir:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
6 0 obj <</Length 1235/Type/Metadata/Subtype/XML>>stream <?xpacket begin="锘xBF" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.2-c001 63.139439, 2010/09/27-13:37:26" ><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" ><rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xmp="http://ns.adobe.com/xap/1.0/" ><pdf:Producer>losLab PDF Library</pdf:Producer> <dc:creator>losLab.com</dc:creator> <dc:title>Delphi PDF SDKs</dc:title> <xmp:CreateDate>2025-06-29T10:46:27+08:00</xmp:CreateDate> <xmp:ModifyDate>2025-06-29T10:58:57+08:00</xmp:ModifyDate> <xmp:MetadataDate>2025-06-29T10:46:27+08:00</xmp:MetadataDate> <dc:description>Delphi Development Library for PDF creation & editing</dc:description> <xmp:CreatorTool>HotPDF Component</xmp:CreatorTool> <dc:subject>PDF Developer Library for RAD Studio></dc:subject> <pdf:Keywords>Delphi, PDF SDK, PDF Component</pdf:Keywords> </rdf:Description>Robust Delphi PDF development library</rdf:RDF> </x:xmpmeta> <?xpacket end="w"?> endstream endobj |
Standart Meta Veri Şemaları
XMP çerçevesi, her biri belirli bilgi kategorilerine hizmet eden iyi yapılandırılmış şema ad alanları aracılığıyla meta verileri düzenler:
📋 Dublin Core (dc :)
Temel bibliyografik bilgiler
- dc:title – Belge başlığı
- dc:creator – Belge yazar(lar)ı
- dc:konu – Belge konusu/anahtar kelimeler
- dc:description – Belge açıklaması
- dc:format – MIME türü
🏷️ XMP Temel (xmp :)
Çekirdek XMP özellikleri
- xmp:CreateDate – Oluşturulma tarihi
- xmp:ModifyDate – Değişiklik tarihi
- xmp:CreatorTool – Uygulama oluşturma
- xmp:MetadataDate – Meta veri değiştirme tarihi
📄 PDF Şeması (pdf :)
PDF'ye özgü özellikler
- pdf:Yapımcı – PDF yapımcısı
- pdf:Anahtar Kelimeler – Belge anahtar kelimeleri
- pdf:PDFVersion – PDF sürümü
Belge Kataloğu ile Entegrasyon
XML meta veri akışına belge kataloğundan başvurulur:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 |
1 0 obj < < Type Catalog Pages 2 0 R Metadata 10 0 R Outlines 1 0 R>> endobj |
🎯 XML Meta Verileri için En İyi Uygulamalar
- Maksimum uyumluluk için her zaman hem belge bilgileri sözlüğünü hem de XMP meta verilerini ekleyin
- Meta veri değerlerinin her iki konum arasında tutarlı olduğundan emin olun
- Uluslararası karakterler için uygun XML kodlamasını (UTF-8) kullanın
- Oluşturma ve değiştirme tarihlerini ISO 8601 formatında ekleyin
- Ayrıştırma hatalarını önlemek için XML yapısını doğrulayın
Dosya Ekleri

PDF dosya ekleri, harici dosyaları doğrudan bir PDF belgesine gömmek ve gerekli tüm kaynakları içeren bağımsız paketler oluşturmak için kullanışlı bir yöntem sağlar. Bu ekler, ihtiyaçlarınıza bağlı olarak belgenin tamamıyla ilişkilendirilebilir veya belirli sayfalara bağlanabilir. Çoğu modern PDF görüntüleyici, bu gömülü dosyaları özel bir ekler panelinde sunarak kullanıcıların dahil edilen içeriğe erişmesini, görüntülemesini veya kaydetmesini kolaylaştırır. Bu özellik, ek kaynaklar içeren sunumlar veya eşlik eden veri dosyalarıyla birlikte raporlar gibi kapsamlı belge paketleri oluşturmak için özellikle değerlidir.
Gömülü Dosya Yapısı
Gömülü bir dosya özünde, gerçek dosya verilerini içeren bir akış nesnesinden ve bunu belirten bir akış sözlüğü girişinden oluşur. /Type /EmbeddedFile. Bu basit yaklaşım, her tür dosyanın bir PDF içinde saklanmasına olanak tanır. Temel gömülü dosya yapısı şu şekilde görünür:
|
1 2 3 4 5 6 |
8 0 obj < < Type EmbeddedFile Length 35>> stream This is a text file attachment... endstream endobj |
PDF, gömülü dosyalara referans vermek için her biri farklı kullanım örnekleri sunan iki farklı yaklaşımı destekler: global olarak erişilebilen belge düzeyindeki ekler ve belirli sayfalarda etkileşimli öğeler olarak görünen sayfa düzeyindeki ekler.
Belge Düzeyinde Ekler
Belge genelindeki ekler için bir
aracılığıyla erişilen ad sözlüğüne /EmbeddedFiles girişi
Belge kataloğundaki /Names girişi. Bu yaklaşım, kullanıcının o anda hangi sayfayı görüntülediğine bakılmaksızın, ekin PDF'nin tamamında küresel olarak kullanılabilir olmasını sağlar:
|
1 2 3 4 5 6 |
9 0 obj < < Names << EmbeddedFiles << Names [ (attachment.txt) << EF << F 8 0 R>> /F (attachment.txt) /Type /Filespec >> ] >> >> /Pages 1 0 R /Type /Catalog >> endobj |
Kod Yapısı Açıklaması
- /İsimler – Belgenin ad sözlüğünü içerir
- /EmbeddedFiles – Özellikle gömülü dosya adlarını işler
- (ek.txt) – Kullanıcılara görünen dosya adı
- /EF – Gerçek dosya referansını içeren gömülü dosya sözlüğü
- /F 8 0 R – Gömülü dosya akışı nesnesine referans
- /Tür /Dosyabelirtimi – Bunu bir dosya belirtimi sözlüğü olarak tanımlar
Sayfa Düzeyinde Ekler
Sayfaya özgü ekler, dosya eki açıklamalarının kullanılmasıyla farklı bir yaklaşım gerektirir. Bunlar ekleniyor
Hedef sayfanın sözlüğündeki /Annots dizisi, kullanıcıların doğrudan sayfada etkileşim kurabileceği görünür bir ek simgesi oluşturur:
|
1 2 3 4 5 6 7 8 |
9 0 obj < < Type Page (Other dictionary entries as usual) Annots [ << FS << EF << F 8 0 R>> /F (attachment.txt) /Type /Filespec >> /Subtype /FileAttachment /Contents (attachment.txt) /Rect [ 18 796.88976378 45 823.88976378 ] >> ] >> endobj |
Sayfa Eki Özellikleri
- /FS – Dosya belirtimi sözlüğü (yukarıdaki /EF ile aynı)
- /Alt tür /DosyaEki – Bu ek açıklamayı dosya eki olarak tanımlar
- /İçindekiler – Ek simgesinin üzerine gelindiğinde görünen ipucu metni
- /Rect – Sayfadaki ek simgesinin konumunu ve boyutunu tanımlayan dikdörtgen
Ek Kullanım Durumları
📊 Veri Dosyaları
Raporların ve analizlerin yanına elektronik tablolar, veritabanları veya ham veri dosyaları ekleyin
🎨 Kaynak Dosyaları
Orijinal tasarım dosyalarını, CAD çizimlerini veya düzenlenebilir şablonları ekleyin
📹 Medya Kaynakları
Video sunumları, ses kayıtları veya etkileşimli içerik ekleyin
📋 Destekleyici Belgeler
İlgili PDF'leri, sözleşmeleri veya referans materyallerini paketleyin
Ek Açıklamalar

PDF ek açıklamaları, orijinal sayfa içeriğini değiştirmeden belgelere etkileşimli öğeler ve görsel işaretleme eklemenin güçlü bir yolunu sağlar. Bu yer paylaşımı öğeleri, kullanıcıların metni vurgulamasına, yorum eklemesine veya tıklanabilir bağlantılar oluşturmasına olanak tanıyarak okuma deneyimini geliştirir. En kullanışlı açıklama türleri arasında, bir belgenin farklı bölümleri arasında veya dış kaynaklar arasında kesintisiz gezinmeyi sağlayan köprüler yer alır.
Ek Açıklama Yapısı
Farklı ek açıklama türleri çeşitli amaçlara hizmet ederken, hepsi ihtiyaç halinde eklenen türe özgü özelliklerle tutarlı bir temel yapıyı takip eder. PDF sayfaları, her sayfanın sözlüğündeki /Annots girişi tarafından başvurulan bir dizide düzenlenen birden fazla ek açıklama içerebilir. Her ek açıklama, belirli özelliklere sahip kendi sözlük nesnesi olarak uygulanır.
Ek Açıklama Sözlüğü Yapı Tablosu
* gerekli girişi belirtir
| Key | Value Type | Value |
|---|---|---|
| /Type | name | When specified, this value must be set to /Annot to properly identify the dictionary type. |
| /Subtype* | name | Specifies the specific annotation category (e.g., Link, Text, Highlight). |
| /Rect* | rectangle | Defines the annotation’s position and dimensions using standard PDF coordinate units. |
| /Contents | text string | Contains the annotation’s text content or provides an alternative descriptive label for accessibility purposes. |
Temel açıklama sözlüğü örneği:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 |
12 0 obj < < Type Annot Subtype Link Rect [100 200 300 250] Border [0 0 1] C [0.0 0.0 1.0] Dest [5 0 R XYZ null null null]>> endobj |
Yaygın Ek Açıklama Türleri
🔗 Bağlantı Açıklamaları
Belgedeki veya harici kaynaklardaki hedeflere giden tıklanabilir alanlar oluşturun.
- /Alt tür /Bağlantı – Bir bağlantı açıklaması olarak tanımlar
- /Hedef – Hedef dizisi veya adlandırılmış hedef
- /A – Daha karmaşık davranışlar için eylem sözlüğü
📝 Metin Açıklamaları
Tıklandığında görünen açılır notları ve yorumları görüntüleyin.
- /Alt tür /Metin – Metin açıklaması olarak tanımlar
- /İçindekiler – Ek açıklamanın metin içeriği
- /Aç – Ek açıklamanın başlangıçta açık olup olmadığı
🖍️ İşaretleme Ek Açıklamaları
Metin içeriğini vurgulayın, altını çizin veya üstünü çizin.
- /Alt tür /Vurgu – Metin vurgulama
- /Alttür /Alt Çizgi – Metnin altını çizme
- /Alt tür /StrikeOut – Üstü çizili metin
Gelişmiş Bağlantı Eylemleri
Bağlantı ek açıklamaları, basit gezinmenin ötesinde çeşitli eylemleri gerçekleştirebilir:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 |
13 0 obj < < Type Annot Subtype Link Rect [50 50 200 100] A << Type Action S URI URI (https: www.example.com)>> >> endobj |
Eylem Türleri
- /S /Git – Belge içindeki bir hedefe gidin
- /S /Git – Başka bir belgedeki bir hedefe gidin
- /S /URI – Bir web URL'si açın
- /S /Başlat – Harici bir uygulamayı başlatın
- /S /JavaScript – JavaScript kodunu çalıştır
Ek Açıklama Görünümü
Ek açıklamalara yönelik özel görsel stil, görünüm akışları aracılığıyla elde edilir ve ek açıklamaların kullanıcılara nasıl görüntüleneceği üzerinde hassas kontrol sağlar:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
14 0 obj < < Type Annot Subtype Square Rect [100 100 200 150] C [1.0 0.0 0.0] BS << W 2 S S>> /AP < < N 15 0 R>> >> endobj 15 0 obj < < Type XObject Subtype Form BBox [0 0 100 50] Length 85>> stream q 1.0 0.0 0.0 RG 2 w 10 10 80 30 re S Q endstream endobj |
Pratik Uygulama Yönergeleri
Belge Yapısı Entegrasyonu
Başarılı uygulama, bu öğelerin daha geniş PDF belge mimarisi içinde birlikte nasıl çalıştığını anlamayı gerektirir:
Urvanov Sözdizimi Vurgulayıcı v2.9.1|
1 2 3 4 |
1 0 obj < < Type Catalog Pages 2 0 R Outlines 3 0 R Names << EmbeddedFiles 4 0 R>> /Metadata 5 0 R >> endobj |
✅ Uygulama Kontrol Listesi
- Belge Katalog Kurulumu – Ana hatlara, adlara ve meta verilere uygun referansların olduğundan emin olun
- Nesne Numaralandırma – Tutarlı nesne numaralandırmasını ve çapraz referansları koruyun
- Akış Kodlaması – Akışlar için uygun filtreleri ve kodlamayı uygulayın
- Doğrulama – PDF yapısını doğrulama araçlarıyla doğrulayın
- Uyumluluk Testi – Farklı PDF görüntüleyiciler ve sürümler arasında test edin
Yaygın Sorunlar ve Çözümler
❌ Yer İmleri Görüntülenmiyor
Çözüm: Belge kataloğunun bir içerdiğini doğrulayın /Outlines girişi ve anahat hiyerarşisinin doğru ebeveyn-çocuk ilişkileriyle düzgün şekilde yapılandırıldığı.
❌ Meta Veri Tanınmıyor
Çözüm: XML meta veri akışının doğru şekilde biçimlendirildiğinden, doğru ad alanlarını kullandığından ve belge kataloğunda şu şekilde referans verildiğinden emin olun: /Type /Metadata ve /Subtype /XML.
❌ Eklere Erişilemez
Çözüm: Gömülü dosyalara belge düzeyindeki adlar sözlüğünde veya sayfa düzeyindeki ek açıklamalar sözlüğünde düzgün şekilde başvurulduğunu ve dosya belirtimi sözlüklerinin doğru şekilde yapılandırıldığını kontrol edin.
Sonuç
PDF meta verileri ve yer imi uygulamasında uzmanlaşmak, üstün kullanıcı deneyimi ve işlevsellik sunan profesyonel düzeyde belgeler geliştirmek için çok önemlidir. Bu güçlü özellikler şunları sağlar:
- Gelişmiş Gezinme – İyi yapılandırılmış yer imleri ve hedefler aracılığıyla
- Zengin Meta Veri – Daha iyi belge yönetimi ve aranabilirlik sağlama
- Dosya Entegrasyonu – İlgili kaynakların belgeler içinde paketlenmesi
- Etkileşimli Öğeler – Ek açıklamalarla ilgi çekici kullanıcı deneyimleri oluşturma
Bu özellikleri doğru bir şekilde uygulayarak, basit metin ve grafiklerin ötesine geçerek hem insan okuyuculara hem de otomatik sistemlere etkili bir şekilde hizmet eden kapsamlı, etkileşimli kaynaklara dönüşen PDF belgeleri oluşturabilirsiniz.
🚀 Sonraki Adımlar
- Bu yapıları PDF oluşturma iş akışınızda uygulamaya çalışın
- Farklı ek açıklama türlerini ve yer imi hiyerarşilerini deneyin
- Uygulamalarınızı birden fazla PDF görüntüleyicide test edin
- Bu temelleri temel alan gelişmiş PDF özelliklerini keşfedin