Bỏ qua để đến nội dung
getnextpdf.com

Điều gì làm một tệp PDF có thể tiếp cận — và vì sao điều đó quan trọng

Spec: ISO 14289-1Spec: ISO 14289-2Spec: ISO 32000-2Spec: WCAG 2.2

Một tệp PDF có thể tiếp cận là tệp mà một người không thể nhìn thấy trang giấy vẫn có thể đọc, theo đúng thứ tự bạn dự định, với mọi hình ảnh được mô tả và mọi tiêu đề được xướng lên là một tiêu đề. Trang này giải thích cách một tệp PDF mang theo ý nghĩa đó — nội dung đã gắn thẻ, một cây cấu trúc, thứ tự đọc, văn bản thay thế — và vì sao việc làm cho đúng là đáng giá.

Một tệp PDF, theo mặc định, là một tập hợp các dấu vẽ tại các tọa độ. Nó nói đặt glyph này ở đâyvẽ hình ảnh kia ở đó. Tự thân nó không nói đây là một tiêu đề, hàng này thuộc về cột kia, hay bức tranh này cho thấy một hợp đồng đã ký. Một người đọc nhìn được lấp đầy những khoảng trống đó tức thì từ bố cục. Một trình đọc màn hình thì không thể. Nó chỉ có những gì tệp thực sự nêu ra.

Vậy nên một tệp PDF chưa gắn thẻ có thể trông hoàn hảo mà đọc lên thành vô nghĩa: một trang hai cột được xướng thẳng ngang qua, một bảng dữ liệu bị san phẳng thành một dòng số chẳng liên quan, một biểu đồ đơn giản là câm lặng. Thông tin nằm trên trang. Nó chỉ là không thể với tới được. Đối với hàng triệu người, đó là sự khác biệt giữa một tài liệu họ có thể dùng và một tài liệu họ không thể — và, ngày càng nhiều, sự khác biệt giữa một dịch vụ công tuân thủ và một rủi ro pháp lý.

  • Một tagged PDF mang theo một lớp ý nghĩa song song trên các dấu vẽ trực quan: dòng glyph này là một tiêu đề, khối kia là một danh sách, vùng này là một bảng.
  • Những thẻ đó treo trên một cây cấu trúc — một bố cục logic của tài liệu, tách biệt khỏi vị trí mọi thứ nằm trên trang (Spec: ISO 32000-2, §14.7).
  • Cây cố định thứ tự đọc, nên nội dung được trình bày theo trình tự bạn dự định, không phải theo thứ tự các glyph tình cờ được vẽ ra.
  • Nội dung phi văn bản mang theo một tương đương văn bản: một mô tả /Alt cho một hình ảnh, văn bản thay thế cho một dòng glyph mà một trình đọc nếu không sẽ đọc sai (Spec: ISO 32000-2, §14.8).
  • PDF/UA (ISO 14289) là tiêu chuẩn nói khi nào tất cả những điều này có mặt và đúng đắn. Đó là điều mà “PDF có thể tiếp cận” có nghĩa với tư cách một tuyên bố kỹ thuật, không phải một tuyên bố tiếp thị (Spec: ISO 14289-1).

Hãy hình dung một tệp PDF có thể tiếp cận như hai lớp đi cùng nhau. Lớp nội dung là những gì bạn thấy: các glyph, đường nét, hình ảnh, đặt tại các tọa độ. Lớp cấu trúc là ý nghĩa của nó: một cây các phần tử — tài liệu, tiêu đề, đoạn văn, danh sách, bảng, hình minh họa — đặt tên cho từng mẩu nội dung và sắp xếp chúng theo thứ tự.

Hai lớp được khâu lại với nhau bằng marked content. Mỗi dòng nội dung có nghĩa trên trang được bọc lại và gán một định danh; phần tử cấu trúc tương ứng trỏ ngược về định danh đó. Liên kết ấy chính là thứ cho phép công nghệ hỗ trợ đi dọc cây logic và, tại mỗi nút, tìm được chính xác những byte trên trang mà nó mô tả. Làm đúng liên kết và một tiêu đề được xướng lên là một tiêu đề; làm sai và cấu trúc là một điều bịa đặt không khớp với những gì hiển thị.

Thứ tự đọc nằm trong cây, không phải trong bố cục

Phần tiêu đề “Thứ tự đọc nằm trong cây, không phải trong bố cục”

Đây là ý tưởng khiến người ta bất ngờ. Thứ tự mà một trình đọc màn hình dùng là thứ tự của cây cấu trúc, và điều đó độc lập với vị trí nội dung rơi xuống trên trang (Spec: ISO 32000-2, §14.7). Bạn có thể vẽ một thanh bên cuối cùng và một chú thích chân trang đầu tiên; miễn là cây xâu chuỗi chúng theo trình tự đã dự định, tài liệu vẫn đọc đúng. Ngược lại, một trang được bố trí đẹp đẽ với một cây bị xáo trộn sẽ đọc lên một cách đẹp đẽ mà sai. Bố cục là cho đôi mắt. Cây là cho tất cả những người còn lại.

Một tương đương văn bản cho mọi thứ không phải là văn bản

Phần tiêu đề “Một tương đương văn bản cho mọi thứ không phải là văn bản”

Một bức ảnh, một logo, một biểu đồ, một đường kẻ trang trí — không cái nào trong số đó là chữ, nên không cái nào tự xướng lên điều gì theo mặc định. Tagged PDF khép khoảng trống đó lại bằng các mô tả thay thế: văn bản /Alt của một hình ảnh mô tả những gì nó truyền tải, và /ActualText cung cấp một văn bản thay thế sạch sẽ cho một dòng glyph mà nếu không sẽ bị đọc sai, chẳng hạn một ligature hoặc một chữ cái đầu dòng được cách điệu (Spec: ISO 32000-2, §14.8). Các dấu vẽ thuần túy trang trí được gắn thẻ là artifact để chúng bị bỏ qua thay vì bị đọc thành tạp âm. Nguyên tắc rất đơn giản: nếu nó mang ý nghĩa, nó có một tương đương văn bản; nếu không, nó được đánh dấu để gạt sang một bên.

Một trình đọc màn hình thực sự tiêu thụ tệp như thế nào

Phần tiêu đề “Một trình đọc màn hình thực sự tiêu thụ tệp như thế nào”

Khi công nghệ hỗ trợ mở một tagged PDF, nó không đọc trang. Nó đọc cây, và dùng các liên kết marked-content để hiển thị văn bản của từng phần tử theo thứ tự.

  1. OpenThe reader finds the structure tree root in the document catalog, the entry point to the logical document.
  2. Walk the treeIt traverses the logical hierarchy — document, headings, paragraphs, lists, tables — in structure order.
  3. Map the roleEach structure type maps to a familiar role, so a heading is announced as a heading and a list as a list.
  4. Read the contentFor each element it reads the linked page text, or the alternate description when the content is an image.
  5. Skip the noiseAnything tagged as a decorative artifact is passed over, never spoken.
How a screen reader consumes a tagged PDF: it opens the document, finds the structure tree root, walks the logical tree in order, maps each element to a familiar role, reads the element's text or its alternate description, and skips anything tagged as decorative. The reading sequence comes from the tree, not from where content sits on the page.

Vì trình tự chính là trình tự của cây, một báo cáo hai cột được gắn thẻ đúng sẽ đọc xuống hết cột này rồi đến cột kia, một bảng đọc theo từng ô cùng với các tiêu đề của nó, và một hình minh họa xướng lên mô tả của nó thay vì rơi vào im lặng. Trình đọc không bao giờ phải đoán ý định của tác giả, bởi vì ý định đã được ghi lại trong tệp.

Tất cả những điều này trở thành một tuyên bố có thể kiểm tra dưới PDF/UA. PDF/UA-1, được xuất bản dưới dạng ISO 14289-1, nêu các yêu cầu cấp tệp cho một tệp PDF có thể tiếp cận trên nền mô hình tagged-PDF (Spec: ISO 14289-1, §7). PDF/UA-2, ISO 14289-2, mang những yêu cầu đó lên nền PDF 2.0 và tinh chỉnh cách nội dung thực ánh xạ vào mô hình cấu trúc (Spec: ISO 14289-2, §8). PDF/UA chi phối cấu trúc của tệp; Web Content Accessibility Guidelines rộng hơn mô tả kết quả mà một tài liệu được đo lường theo đó, và một tuyên bố tuân thủ nêu rõ mức nó thực sự đạt được (Spec: WCAG 2.2, §5). Hai cái phối hợp với nhau: PDF/UA nói rằng bộ máy có mặt và đúng đắn, còn WCAG khuôn định điều gì là tốt đối với một con người.

Các thẻ không hiển thị, nên cách trung thực duy nhất để kiểm tra chúng là nhìn vào cấu trúc mà một công cụ báo cáo. Một trang có thể tiếp cận tối thiểu có một cây thực sự: một gốc tài liệu, một tiêu đề, một đoạn văn, và một hình minh họa mang theo một mô tả thay vì sự im lặng.

StructTreeRoot
└─ Document
├─ H1 "Quarterly Report"
├─ P "Revenue rose across every region this quarter."
└─ Figure /Alt "Bar chart: revenue by region, all four up"

Một trình đọc đi dọc cây này sẽ xướng một tiêu đề cấp một, đọc đoạn văn, rồi đọc mô tả của hình minh họa — theo thứ tự đó, bất kể từng phần tử được vẽ ở đâu. Gỡ cây đi và cùng trang ấy trở thành ba dòng glyph rời rạc và một hình chữ nhật im lặng. Các điểm ảnh là giống hệt. Trải nghiệm thì không.

Niềm tin thường gặp là một tệp PDF “có thể tiếp cận vì văn bản có thể chọn được”. Văn bản chọn được nghĩa là các glyph là ký tự thực chứ không phải một bức ảnh quét — cần thiết, nhưng còn xa mới đủ. Văn bản chọn được mà không có cây cấu trúc thì vẫn không có tiêu đề, không có thứ tự đọc, không có quan hệ bảng, và không có mô tả hình ảnh. Trợ năng là về cấu trúc và ý nghĩa, không đơn thuần là sự hiện diện của các ký tự trích xuất được. Một tệp có thể qua được phép sao chép và dán mà thất bại hoàn toàn trước một trình đọc màn hình.

Một cái bẫy thứ hai là coi “đã gắn thẻ” như một phù hiệu có/không. Một tệp có thể đã gắn thẻ mà vẫn sai: các thẻ gán nhãn sai nội dung, một cây có thứ tự không khớp với ý định, các hình ảnh với văn bản /Alt rỗng hoặc vô dụng. Đã gắn thẻ là phần mở đầu của cuộc trò chuyện, không phải phần kết của nó.

Trang này giải thích các khái niệm và các tiêu chuẩn định nghĩa chúng. Nó không phải là một chứng nhận tuân thủ, và không công cụ nào có thể tự mình cấp một chứng nhận như vậy.

PDF/UA structural accessibility — edition availability
EditionAvailability
Core

Core ghi tagged PDF: nó phát ra một cây cấu trúc, đánh dấu nội dung trang trí là artifact, và mang theo văn bản thay thế mà bạn cung cấp.

Pro

Bổ sung ánh xạ cấu trúc phong phú hơn cho các bố cục phức tạp — bảng nhiều cấp, danh sách, và hình minh họa — để cây khớp tốt hơn với thứ tự đọc dự định.

Enterprise

Bổ sung một kiểm tra và báo cáo tuân thủ ở cấp cấu trúc. Nó vẫn là một kiểm tra cấu trúc, không phải một chứng nhận — sự xác định cuối cùng thuộc về một công cụ xác thực và một người review.

Có hai ranh giới đáng nói thẳng. Thứ nhất, engine có thể tạo ra cấu trúc đúng, nhưng nó không thể phán xét chất lượng biên tập: nó sẽ trung thành mang theo một mô tả /Alt ghi là “image”, và đó là việc của tác giả, không phải của engine. Trợ năng là một sự cộng tác giữa một công cụ ghi lại ý nghĩa và một con người cung cấp ý nghĩa đó. Thứ hai, một lượt kiểm tra tự động — bao gồm cả một công cụ xác thực như veraPDF — xác nhận bộ máy có mặt và đúng định dạng. Nó không xác nhận rằng một người dùng trình đọc màn hình thực sự có thể hiểu kết quả. Việc duyệt ký cuối cùng là của con người. Xem xác thực PDF/A và PDF/UA để biết bước kiểm tra tự động đó nằm ở đâu trong bức tranh.

  • Tagged PDF — một tệp PDF mang theo một lớp thẻ cấu trúc song song trên nội dung trực quan của nó, để công nghệ hỗ trợ có thể với tới ý nghĩa của tài liệu, không chỉ các dấu vẽ.
  • Cây cấu trúc — bố cục logic của một tài liệu (gốc, tiêu đề, đoạn văn, danh sách, bảng, hình minh họa), được ghi lại độc lập với bố cục trang và dùng để xác định thứ tự đọc.
  • Thứ tự đọc — trình tự mà nội dung được trình bày tới một trình đọc, lấy từ cây cấu trúc chứ không phải từ vị trí các glyph được vẽ.
  • Văn bản thay thế — một tương đương văn bản cho nội dung phi văn bản: một mô tả /Alt cho một hình ảnh, hoặc văn bản thay thế /ActualText cho một dòng glyph mà nếu không sẽ bị đọc sai.
  • Artifact — nội dung được gắn thẻ là trang trí (một đường kẻ, một nền, một watermark) để một trình đọc bỏ qua nó thay vì xướng nó lên.
  • PDF/UA — PDF/Universal Accessibility, ISO 14289. Tiêu chuẩn định nghĩa khi nào một tagged PDF thực sự có thể tiếp cận. PDF/UA-1 là ISO 14289-1; PDF/UA-2 là ISO 14289-2, trên nền PDF 2.0.