COS nedir?
COS (Carousel Object Syntax), PDF ve FDF dosyalarında kullanılan, kapsamlı şekilde belgelenmiş bir sözdizimidir: ISO 32000-2:2020. Bir PDF dosyasının iç yapısını incelediğinizde karşınıza çıkan şey COS'tur.
"Carousel", bu sözdizimi ilk tanıtıldığında Acrobat 1.0 için kullanılan kod adıdır.
Sekiz COS nesne türü
COS küçük bir sözdizimidir ve bir PDF içindeki hemen her şey sekiz temel nesne türünden biridir. Bunları tanıyabildiğinizde, bir PDF'in içi gürültü gibi görünmeyi bırakır:
- Mantıksal değerler ve sayılar, düz biçimde yazılır.
- Dizgeler, normal parantezler içinde ya da köşeli ayraçlarda onaltılık biçimde yazılır.
- İsimler, \ /Type veya \ /Page gibi, başında eğik çizgi ile yazılır.
- Diziler, köşeli parantezler içinde; sözlükler ise çift köşeli ayraçlar içinde yazılır.
- Akışlar, bir sözlük ve ardından gelen ham ya da sıkıştırılmış bayt bloğundan oluşur.
- Null (boş) nesne.
Sayfa içeriği, yazı tipleri, görüntüler ve meta verileri bu parçaların tümünden oluşturulur. Bir akış, sıkıştırılmış sayfa tanımlarını ve gömülü görüntüleri içerdiği için dosyadaki verinin büyük kısmını barındırır.
Nesnelerin yeniden bulunması
Nesneler numaralandırılır ve dosyanın sonundaki bir çapraz başvuru tablosu her birinin bayt ofsetini kaydeder. Okuyucu sondan başlar, son bilgileri (trailer) okur, çapraz başvuru tablosunu bulur ve sonra ihtiyaç duyduğu nesneye doğrudan atlar. Bu nedenle bir PDF, baştan sona ayrıştırılmadan açılabilir. Daha sonraki sürümler bu tabloyu sıkıştırılmış bir nesne akışı olarak saklayabilir ve bir artımlı güncelleme ilk tabloyu yeniden yazmak yerine ikinci bir tablo ekler.