Используя библиотеку doctr, я распознаю текст в PDF-файле. Из всего текста я выбираю ключевые слова и координаты этих слов. Я получаю координаты в следующем формате:
Код: Выделить всё
list_with_coordinates = [(0.09370404411764705, 0.0439453125), (0.5925912552521009, 0.1796875), (0.5925912552521009, 0.2041015625)]
Далее я преобразую эти координаты, чтобы получить реальные точки (чтобы нанести точки на систему координат). Я делаю это с помощью библиотеки Fitz.
Код: Выделить всё
import fitz
from pymupdf import Point
doc = fitz.open("file_name.pdf")
page = doc[0]
list_with_points = []
for i in list_with_coordinates:
list_with_points.append(fitz.Point([i[0] * page.rect.width, i[1] * page.rect.height]))
Далее я рисую линии от точки к точке.
Код: Выделить всё
for i in range(len(list_with_points) - 1):
page.draw_line(list_with_points[i], list_with_points[i+1])
И тут у меня вопрос: нулевая точка системы координат (0, 0) для библиотеки Фитца находится в левом верхнем углу. И для большинства документов это правило работает (то есть я соединяю нужные мне слова линиями). Однако бывают случаи, когда в некоторых документах нулевая точка системы координат (0, 0) начинается с правого верхнего угла. И нигде не нашел информации об этом.
Скажите пожалуйста, почему так происходит и как это исправить?
Подробнее здесь:
https://stackoverflow.com/questions/786 ... library-so