PDF (Portable Document Format) — hujjatning matn, shrift, grafik, rasm va sahifa joylashuvini platformadan mustaqil saqlash uchun yaratilgan fayl formati. PDF ko‘rinishni aniq takrorlash, bosib chiqarish, elektron imzo va arxivda keng ishlatiladi. U oddiy rasm yoki matn fayli emas; ichki obyektlar, streamlar, cross-reference va sahifa daraxtidan tuzilgan murakkab konteynerdir.
Ichki tuzilma
PDF fayl header, body obyektlari, cross-reference ma’lumoti va trailer’dan iborat. Obyekt number, generation va value bilan aniqlanadi. Dictionary boshqa obyektga reference berishi, stream compressed content yoki rasmni saqlashi mumkin. Page tree sahifalarni iyerarxik tashkil qiladi.
Content stream grafik operatorlar orqali text glyph, chiziq, rang va transformatsiyani sahifaga chizadi. Ko‘rinadigan bir gap faylda tabiiy o‘qish tartibida saqlanishi shart emas. Har harf alohida koordinatada chizilishi mumkin. Shu sabab plain text extraction layout va font encodingni talqin qiladi.
Matn va shrift
PDF fontni to‘liq yoki subset ko‘rinishda embed qilishi mumkin. Glyph code Unicode code pointga teng bo‘lmasligi mumkin; ToUnicode xaritasi copy, search va accessibility uchun moslik beradi. Xarita yo‘q yoki noto‘g‘ri bo‘lsa matn ko‘rinadi, ammo nusxalanganda g‘alati belgilar chiqadi.
Scan PDF sahifa rasmlaridan iborat bo‘lib, text layer yo‘q. OCR ko‘rinmas matn qatlamini qo‘shib qidirish imkonini beradi. Original image saqlanadi, text coordinate unga mos bo‘ladi. OCR xatosi ko‘rinishdan bilinmasligi mumkin, shuning uchun search yoki data extraction natijasi tekshiriladi.
Interaktiv imkoniyatlar
PDF annotation, link, bookmark, form field, attachment, multimedia va JavaScript saqlashi mumkin. Viewer barcha imkoniyatni bir xil qo‘llamaydi. AcroForm va XFA form modellari farqli; XFA ko‘plab zamonaviy viewerda cheklangan. Flatten form appearance’ni sahifaga chizadi, lekin semantic field va keyingi tahrir imkonini yo‘qotishi mumkin.
Digital signature ma’lum byte range hashini imzolab, hujjat keyin o‘zgarganini tekshiradi. Ko‘rinadigan imzo rasmi kriptografik imzo emas. Certificate trust, revocation va timestamp alohida tekshiriladi. Incremental update eski baytlarni saqlab, yangi obyekt qo‘shadi; signature qaysi revisionni qamragani muhim.
Arxiv va accessibility
PDF/A uzoq muddatli arxiv uchun tashqi dependency, font embedding, rang va metadata bo‘yicha cheklovlar beradi. Uning bir nechta conformance darajasi bor. “PDF/A valid” hujjat mazmuni to‘g‘ri yoki OCR xatosiz degani emas. Validator format talabini tekshiradi.
Tagged PDF heading, paragraph, list, table va reading orderni structure tree’da saqlaydi. Alt text va til metadata’si screen reader uchun zarur. Faqat vizual tartib accessibility bermaydi. PDF/UA accessible hujjat talablarini standartlashtiradi. Avtomatik tagging murakkab jadvalda human review talab qiladi.
Optimallashtirish
Image resolution, compression va font subset fayl hajmiga katta ta’sir qiladi. Matn uchun rasmga aylantirish search va accessibilityni yomonlashtiradi. Linearized PDF boshidan kerakli obyektlarni joylashtirib web’da birinchi sahifani fayl to‘liq tushmasdan ko‘rsatishga yordam beradi.
Incremental tahrir eski, o‘chirilgandek ko‘ringan obyektni faylda qoldirishi mumkin. Sensitive redaction qora to‘rtburchak chizish emas; asl text va metadata haqiqatan olib tashlanib, yangi sanitizatsiya qilingan fayl yaratiladi. Hidden layer, attachment, comment va revision ham tekshiriladi.
Xavfsizlik
PDF parser murakkab bo‘lgani uchun zararli fayl viewer zaifligidan foydalanishi mumkin. Upload sandboxda render qilinadi, page, object, recursion va decompression limitlari qo‘llanadi. Embedded file, launch action, JavaScript va external reference kerak bo‘lmasa o‘chiriladi.
Password encryption nusxa olishni cheklashi mumkin, ammo owner password nazorati har viewerda bir xil kuchli emas. Haqiqiy maxfiylik uchun kuchli encryption, kalit boshqaruvi va access control kerak. PDF’ni web response’da inline ko‘rsatish siyosati untrusted content uchun alohida origin yoki attachmentni ko‘zda tutadi.
Bog‘liq tushunchalar
Portable Document Format, PDF/A, PDF/UA, Digital signature, Optical Character Recognition, Document structure, Embedded font