Достъпни PDF файлове от край до край:
от създаването до отстраняването на проблеми
Достъпността на PDF не е един-единствен превключвател, който щракате в Acrobat накрая. Това е верига от решения, която започва в InDesign или Word, преминава през дървото от тагове, достига до съответствие с PDF/UA, проверява се в PAC и накрая се среща с четири екранни четеца, всеки от които чете един и същ файл малко по-различно. Това ръководство преминава по веригата в реда, в който инженерите реално работят с нея.
1. Създаване: изберете инструмента за източник, с който наистина можете да живеете
Единственото решение, което оформя всяка следваща стъпка, е средата за създаване. PDF, генериран от правилно структуриран документ в InDesign с приложено действие „Make Accessible“, носи 80 процента от метаданните си за достъпност, преди някой изобщо да отвори Acrobat. PDF, експортиран от документ в Word, в който заглавията са имитирани с по-удебелен и по-голям текст, не носи почти нищо и никакво последващо отстраняване на проблеми няма да го спаси напълно. Изборът на инструмент за създаване, с други думи, не е естетически. Той е структурен.
Три производствени пътя доминират институционалното издателство през 2026 г. Adobe InDesign с действието „Make Accessible“ е стандартът за наборни документи — годишни отчети, учебници, регулаторни документи — където оформлението е фиксирано и файлът напуска дизайнерския екип само веднъж. Microsoft Word със „Save as Accessible PDF“ е работният кон за офис документи — политики, договори, писма — където източникът се редактира непрекъснато, а PDF е изобразяване, а не крайна цел. LibreOffice с предаване към PDF Accessibility Checker е пътят с отворен код, използван от правителства и университети, които имат политически причини да избягват стековете на Microsoft и Adobe.
Дърветата от тагове, произведени от InDesign и Word, са структурно изведени от стиловете на абзаците. Дърветата от тагове, произведени от инструментите за отстраняване на проблеми, са наложени впоследствие. Първото подлежи на одит спрямо източника; второто подлежи на одит само спрямо самото себе си. Одиторите все по-често искат да видят източника, а не само PDF.
2. Дървото от тагове: какво всъщност съдържа всеки достъпен PDF
Под всеки достъпен PDF има успоредна логическа структура — дървото от тагове — която няма нищо общо с визуалното оформление. Видимият PDF е набор от инструкции за изчертаване, адресирани по координати. Дървото от тагове е отделен йерархичен документен обектен модел, който казва тази операция по изчертаване е първото заглавие, онази е третата точка от втория списък, тази картина е декоративна, а онази друга картина има алтернативен текст „Тримесечни приходи по сегмент, ФГ24“. Екранният четец чете дървото от тагове, а не изчертаването.
Шест категории тагове носят по-голямата част от смисъла в реалните документи: заглавия (H1 до H6) формират навигируемия план; абзаци (P) са пасажите от проза; списъци (L, LI, Lbl, LBody) са подредените или неподредените изброявания; таблици (Table, TR, TH, TD) са решетките с данни с изложени чрез атрибута Scope заглавия на колони и редове; фигури (Figure) носят алтернативния текст в атрибута си Alt или ActualText; и редът на четене, който е обхождането на дървото в дълбочина и диктува последователността, в която екранният четец изговаря документа. Страница, която изглежда правилно в две колони, може да се чете в грешен ред, ако дървото от тагове поставя дясната колона преди лявата.
Още два атрибута имат значение на всеки таг в правилно произведен файл. Езиковият атрибут (Lang) казва на екранния четец кой речник за произношение да използва — френски, цитиран в английски абзац, се нуждае от собствен атрибут Lang на таг Span, иначе ще се прочете с английски фонеми. А маркерът за артефакт различава декоративното от структурното съдържание; колонтитули, номера на страници и декоративни линии трябва да се маркират като артефакти, за да ги прескочи екранният четец.
Sect → H1 (заглавие на страницата) → P (подзаглавие) → H2 (заглавие на лявата колона) → P, P, L/LI × 3 → H2 (заглавие на дясната колона) → P, P → Figure с Alt → Table с TH(Scope=Col) и TH(Scope=Row). Редът на четене следва дървото. Колонтитулът на страницата е маркиран като Artifact.
Единичен плосък Sect с цялото съдържание като нетипизирани P тагове. Заглавията са P тагове с по-голям шрифт. Списъците са P тагове с глифи на точки в самата проза. Фигурите нямат Alt. Редът на четене редува колоните ред по ред, защото дървото от тагове отразява последователността на изчертаване колона по колона, а не логическата последователност.
Инструментът Reading Order на Acrobat показва номерирани наслагвания върху визуалната страница, които съответстват на обхождането на дървото от тагове. Инженерите, които проверяват само спрямо визуалното оформление, пропускат провалите в реда на четене, защото визуалното оформление може да е правилно, докато обхождането на дървото от тагове е разбъркано. Винаги проверявайте с отворен панел Tags и с екранен четец.
3. Съответствие с PDF/UA: какво всъщност изисква ISO 14289-1
PDF/UA е международният стандарт за достъпни PDF файлове, публикуван като ISO 14289-1 през 2014 г. и обновен през 2024 г. Докато WCAG е технологично неутрален и платформено неутрален, PDF/UA е специфичен за PDF — той е договорът между софтуера за създаване на документи, софтуера за консумиране на документи и помощната технология, който казва, че дървото от тагове, метаданните и структурата на този файл съответстват на проверим набор от условия, така че съответстващ четец да може да разчита на тях.
Стандартът се привежда в действие чрез Matterhorn Protocol, поддържан от PDF Association, който разлага PDF/UA на 31 номерирани условия за провал с варианти, проверими както от машина, така и от човек. Машинно проверимите провали включват отсъствието на заглавие на документа в метаданните, наличието на фигури без Alt или ActualText, списъци, структурирани извън тагове L/LI, и липсващи езикови атрибути на документа или на пасажи с превключен език. Проверимите от човек провали обхващат нещата, които софтуерът не може да провери сам по себе си — дали алтернативният текст на дадена Figure действително описва фигурата, дали редът на четене съответства на логическата последователност, дали заглавията са вложени логически, а не с прескачане на нива.
Обновлението от 2024 г. приведе PDF/UA в съответствие с критериите за успех по WCAG 2.2 и поясни третирането на цифровите подписи и формуляри — достъпните PDF формуляри трябва да излагат етикети на полета, подсказки на полета и ред на табулиране, а подписаните PDF файлове не трябва да блокират достъпа на екранния четец до подлежащото дърво от тагове след подписването.
„Съответствието с PDF/UA е под, а не таван. Един файл може да покрие всичките 31 условия на Matterhorn и пак да е лошо четивно изживяване, ако алтернативният текст е общ или редът на четене е технически валиден, но семантично грешен.“
4. Инструменти за отстраняване на проблеми: четири продукта, между които инженерите реално избират
Когато PDF пристигне без използваемо дърво от тагове — а повечето стари PDF файлове са такива — изборът на инженера се стеснява до четири среди за отстраняване на проблеми. Всяка има различна комбинация от силни страни в редактирането на дървото от тагове, OCR за сканирани оригинали, пакетна обработка и отчети за PDF/UA. Матрицата по-долу съпоставя възможностите спрямо инструмента.
| PAC 2024 | Adobe Acrobat Pro | Foxit PDF Editor | ABBYY FineReader 16 | |
|---|---|---|---|---|
| Пълен отчет за PDF/UA | Да (каноничен) | Частично (preflight) | Частично (собствен инструмент за проверка) | Ограничено |
| Редактиране на дървото от тагове в приложението | N/A (само за четене) | Да | Да | Да |
| OCR за сканирани PDF файлове | N/A | Да | Да | Да (най-добрият в класа) |
| Наслагване на реда на четене | Само за четене | Да (Touch Up Reading Order) | Да | Ограничено |
| Масово / скриптирано отстраняване на проблеми | N/A | Да (Actions) | Да (Actions) | Да (Hot Folder) |
| Изход, съобразен с Matterhorn | Да | Приблизителен | Приблизителен | Ограничено |
| Ценови клас | Безплатно | Абонамент | Безсрочен или абонамент | Безсрочен |
PAC е единственият широко доверяван инструмент за проверка на PDF/UA в областта, но не редактира. Повечето производствени екипи съчетават PAC с Acrobat Pro (по подразбиране) или Foxit (където правилата за лицензиране изискват алтернатива) и посягат към ABBYY само когато източникът е сканиран PDF само от изображения, който се нуждае от OCR, преди да може да се изгради каквото и да е дърво от тагове.
5. Как четирите екранни четеца обработват тагнат PDF
Правилно тагнатият PDF е само половината от веригата на производителя. Другата половина е екранният четец, а четирите четеца, които потребителите реално използват, третират един и същ файл по фино различни начини. Разликите имат значение, защото документ, който се чете чисто в JAWS, може да се спъне в NVDA, а файл, който работи във VoiceOver на macOS, може да се държи различно, когато същият файл се отвори от ChromeVox във вградения PDF четец на Chrome.
JAWS има най-дълбоката, най-старата поддръжка на PDF от всеки търговски екранен четец. Неговият PDF Mode изобразява тагнати PDF файлове през Acrobat или Acrobat Reader и излага дървото от тагове директно — списък със заглавия (Insert+F6), списък с формуляри (Insert+F5), навигация по клетки на таблици със стандартните клавиши за таблици на JAWS. Когато на PDF му липсват тагове, JAWS ще предложи да изведе структура, но изведеният резултат е ненадежден; инженерите не бива да валидират спрямо изведени от JAWS прочити.
NVDA също чете тагнати PDF файлове през Acrobat или Acrobat Reader, с навигация в режим на разглеждане, която отразява модела му за уеб страници — H за прескачане между заглавия, K за прескачане между връзки, T за прескачане между таблици. Поддръжката на PDF в NVDA се подобри значително от 2022 г. насам, но все още изостава от JAWS при сложни таблици и полета на формуляри. NVDA дава по-честна обратна връзка за документи с неправилно оформени тагове: там, където JAWS може да продължи напред, NVDA обикновено замлъква, което е полезно за диагностика.
VoiceOver на macOS чете PDF файлове през Preview и Safari с навигация чрез ротор (VO + U) по заглавия, връзки, таблици и полета на формуляри. VoiceOver е най-снизходителният от четирите — той ще възстанови ред на четене дори за лошо тагнати файлове — но снизходителността му може да прикрие реални провали. Документ, който се чете приемливо във VoiceOver, все пак трябва да се провери спрямо JAWS или NVDA, а не обратното.
ChromeVox на ChromeOS и по-широкото поведение на всеки екранен четец, взаимодействащ с вградения PDF четец на Chrome, попадат в различна категория. PDF четецът на Chrome растеризира и повторно извлича текст, вместо да изобразява оригиналното дърво от тагове, така че PDF с чисто дърво от тагове може да изгуби голяма част от структурата си, когато се отвори директно в Chrome. Заобиколното решение за критични за достъпността контексти е да се принуди файлът да се изтегли и да се отвори в Acrobat Reader или да се предостави HTML алтернатива.
| JAWS · Acrobat | NVDA · Acrobat | VoiceOver · Preview | ChromeVox · четец на Chrome | |
|---|---|---|---|---|
| Вярност на дървото от тагове | Висока | Средно висока | Средна | Ниска (повторно извлечено) |
| Навигация по заглавия | Да (Insert+F6) | Да (клавиш H) | Да (ротор) | Ограничено |
| Таблици с TH scope | Да | Да (подобрено от 2022 г.) | Да (ротор) | Често изравнено |
| Полета на формуляри | Да | Да | Да | Ограничено |
| Превключване на езика | Да (атрибут Lang) | Да | Да | Непоследователно |
| Замлъкване при неправилно оформени тагове | Продължава напред | Обикновено замлъква | Възстановява | Извлича повторно |
Ако имате време да тествате само спрямо две комбинации, изберете JAWS+Acrobat (институционалният стандарт в регулираните сектори) и NVDA+Acrobat (безплатната база с отворен код). Заедно те покриват приблизително същата територия като преглед с четири четеца за всичко с изключение на специфичните за ChromeVox гранични случаи.
6. Работният процес от край до край, в реда, в който реално го изпълнявате
Като свържем веригата: един достъпен PDF преминава през шест конкретни стъпки. Те са последователни — пропускането на която и да е от тях произвежда файл, който ще се провали в някоя от по-късните стъпки или в ръцете на потребителя.
Създайте в инструмент, който познава таговете, с преобразувани стилове на абзаци
Или InDesign със стилове на абзаци, преобразувани в Export Tags, или Word с приложени вградени Styles (без имитирани заглавия), или LibreOffice с приложени стилове Heading и List. Дървото от тагове се генерира от тези преобразувания на стилове.
Експортирайте с активирано действие за достъпност
InDesign: File → Export → PDF, изберете Tagged PDF и изпълнете действието Make Accessible. Word: File → Save as Adobe PDF или Save as PDF с опцията Document structure tags for accessibility. LibreOffice: File → Export as PDF, отметнете Tagged PDF и Use reference XObjects.
Проверете дървото от тагове в Acrobat или Foxit
Отворете панела Tags, обходете дървото, потвърдете, че заглавията са вложени логически, списъците са L/LI/Lbl/LBody, таблиците имат TH със Scope, фигурите имат Alt или ActualText, а декоративните елементи са маркирани като Artifact. Изпълнете Tools → Accessibility → Reading Order, за да проверите реда на четене числово.
Изпълнете PAC за каноничния отчет за PDF/UA
PAC произвежда машинно проверимата част от отчета по Matterhorn Protocol. Разрешете всеки червен флаг. Имайте предвид, че зеленият флаг на PAC покрива само 31-те машинно проверими условия; проверимите от човек условия (например дали алтернативният текст е смислен) все още изискват човек.
Тествайте с поне два екранни четеца
JAWS+Acrobat и NVDA+Acrobat като минимум, плюс VoiceOver, ако аудиторията ви включва потребители на macOS. Навигирайте по заглавия, по таблици, по полета на формуляри. Потвърдете, че превключванията на езика се четат с правилния глас. Потвърдете, че редът на четене съответства на логическата последователност.
Пуснете и поставете източника под контрол на версиите
Доставяемият продукт е PDF, но артефактът, който се поддържа, е изходният документ с неговото преобразуване на стиловете на абзаците. Съхранявайте и двете. Когато документът се нуждае от обновяване, експортирайте и проверете отново от източника — не редактирайте директно дървото от тагове на пуснатия PDF, освен ако източникът не е невъзстановим.
Заключение: производството на достъпен PDF е верига, а не отметка
Екипите, които третират достъпността на PDF като проблем за отстраняване на проблеми на последно минаване, в крайна сметка плащат сметката два пъти — веднъж за отстраняване на проблемите във файл, произведен без структурно намерение, и отново всеки път, когато този файл се обновява. Екипите, които я третират като проблем на създаването, изграждат дървото от тагове в източника, регенерират го чисто при всяка ревизия и използват PAC и екранен четец като проверка, а не като поправка. Разликата в цената между двете нагласи е голяма; разликата в достъпността е още по-голяма.
Веригата, документирана по-горе, е умишлено независима от инструментите във всяка брънка. Независимо дали източникът е InDesign или LibreOffice, редакторът е Acrobat или Foxit, инструментът за проверка е PAC, а екранният четец е JAWS или NVDA, структурната логика е същата: стиловете на абзаците се преобразуват в тагове, таговете съответстват на PDF/UA, PDF/UA се проверява от PAC, а екранните четци четат резултата. Инструментите се променят; веригата — не.
За екипите по обществени поръчки и съответствие оперативното следствие е, че декларациите за достъпност на PDF трябва да препращат към производствената верига — инструмента за създаване, действието за експорт, инструмента за проверка — а не само към резултат от инструмента за проверка на Acrobat. За инженерните екипи следствието е, че дървото от тагове е източникът на истината, а дървото от тагове се изгражда в източника на всеки PDF, който потребителят някога вижда. За практическо производствено ръководство, което допълва това ръководство, вижте стъпка по стъпка наръчника за достъпност на PDF.
„Достъпният PDF е този, чието дърво от тагове е създадено в източника, а не този, чието дърво от тагове е закърпено.“