Почему текст на арабском языке, прочитанный из PDF, перемешивается, хотя в List<String> он выглядит в порядке при проверJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему текст на арабском языке, прочитанный из PDF, перемешивается, хотя в List<String> он выглядит в порядке при провер

Сообщение Anonymous »

Я читаю PDF-файл на арабском языке через библиотеку PDFBox построчно. При проверке консоли отладки я вижу, что все строки в порядке, но когда все содержимое списка просматривается в одной строке, кажется, что текст перемешивается, а не в порядке. Также библиотека считывает из PDF некоторые дополнительные символы, которые не видны глазами и вызывают проблемы с точностью чтения PDF. Как видно на изображении Image2, когда мы просматриваем элементы по индексу, они кажутся читаемыми правильно, но при просмотре в виде одной строки они перетасовываются. Может ли кто-нибудь объяснить это ненормальное поведение?
Изображение в формате PDF
[img]https://i. sstatic.net/TMUTEabJ.png[/img]

Консоль отладки
[img]https: //i.sstatic.net/AJrTQ6M8.png[/img]

Я пробовал использовать разные методы, например, пытаться удалить лишние символы, менять порядок строк, чтобы увидеть, зеркально ли отображен текст. но ничего не получилось.
public List extractPageText(int pageNumber, PDDocument document) {
List currentPageLines = new ArrayList();
PDFTextStripper stripper1 = null;
String[] pageLines = null;
try {
PDFTextStripperByArea stripper2 = new PDFTextStripperByArea();
Rectangle2D rect = new java.awt.geom.Rectangle2D.Float(10, 10, 580, 690);
stripper2.addRegion("region", rect);
stripper2.extractRegions(document.getPage(pageNumber));
String textForRegion = stripper2.getTextForRegion("region");
pageLines = textForRegion.split("\n");
} catch (IOException e) {
e.printStackTrace();
}
for (String currentPageline : pageLines) {
currentPageLines.add(currentPageline.trim());
}
return currentPageLines;
}


Подробнее здесь: https://stackoverflow.com/questions/791 ... e-in-order
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • PDFBOX: почему текст на арабском языке, прочитанный из PDF, перемешивается, хотя в List<String> он выглядит в порядке пр
    Anonymous » » в форуме JAVA
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Назначьте ввод Map> выходу Map>
    Anonymous » » в форуме JAVA
    0 Ответы
    123 Просмотры
    Последнее сообщение Anonymous
  • Является ли `[] (std :: list и list) {return std :: move (list);} (list)` гарантированно оставить `list` yelm?
    Anonymous » » в форуме C++
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • Itext Html в PDF Текст на арабском языке не работает
    Anonymous » » в форуме C#
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Itext Html в PDF Текст на арабском языке не работает
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»