pdfHTML: доступность не работает должным образом с несколькими таблицами, которые имели заголовок преобразование html в pdf

java #pdf #accessibility #pdfhtml

#java #PDF #Специальные возможности #pdfhtml

Вопрос:

Я новичок в iText, и у нас есть требование преобразовать существующие PDF-файлы в доступность. Итак, нам нужно преобразовать html в pdf с помощью java. В HTML-документах есть несколько таблиц с заголовками в структурах div. Я использовал следующий пример ссылки (https://kb.itextpdf.com/home/it7kb/examples/pdfhtml-accessible-pdf-creation ) для преобразования html в pdf. Что касается содержимого в таблице, оно отлично читается в формате pdf. Но порядок не работает нормально. Вот пример html, на который я ссылаюсь. Если вы прочитаете загрузку в Acrobat reader, он сначала прочитает заголовок, а затем содержимое с ним. Может ли кто-нибудь помочь в решении проблемы?

Ниже приведен пример html, который содержит несколько таблиц с использованием структуры div:

 <html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
* {
  box-sizing: border-box;
}

/* Create three equal columns that floats next to each other */
.column {
  float: left;
  width: 33.33%;
  padding: 10px;
  height: 300px; /* Should be removed. Only for demonstration */
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}
</style>
</head>
<body>

<h2>Firtst table </h2>

<div class="row">
  <div class="column" style="background-color:#aaa;">
    <h2>Column 1</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#bbb;">
    <h2>Column 2</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#ccc;">
    <h2>Column 3</h2>
    <p>Some text..</p>
  </div>
</div>

<h2>Second  table </h2>

<div class="row">
  <div class="column" style="background-color:#aaa;">
    <h2>2nd table Column 1</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#bbb;">
    <h2>2nd table Column 2</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#ccc;">
    <h2>2nd table Column 3</h2>
    <p>Some text..</p>
  </div>
</div>

</body>
</html>**
 

Приведенный выше код содержит несколько таблиц, с которыми доступность не работает.

Комментарии:

1. В вашем HTML-коде нет таблиц. У вас есть элементы div, содержащие заголовки и абзацы, выполненные в виде таблиц с использованием CSS. Я не пользователь iText, но при любом обычном преобразовании PDF это не создает таблицу. Вы должны просмотреть теги PDF, чтобы увидеть, какая структура создается в процессе преобразования.

2. Тем не менее, если ваша таблица используется в основном для макета (т. Е. Не Для табличных данных), то вас могут заинтересовать концепции линеаризации таблицы макета: webaim.org/techniques/tables/#linearization