Как преобразовать PDF в JPG, не меняя его разрешение / размер, используя python? - PullRequest
0 голосов
/ 06 февраля 2020

Я использую Google OCR API, чтобы прочитать документ для себя. Для этого я получаю PDF от пользователя, а затем конвертирую его в jpg, чтобы отправить его в Google - да, я знаю, что могу отправить PDF в Google, но он состоит из большего количества денег, чтобы использовать Google Storage Bucket - и затем он возвращает мне текст, содержащий координаты вершин каждого слова. Проблема в том, что, по-видимому, преобразование из PDF в JPG меняет разрешение, поскольку координаты вершин, возвращаемые Google, не совпадают с координатами в PDF.

Google возвращает что-то подобное после прочтения jpg (что был PDF):

"description": "AMAZON",
          "boundingPoly": {
            "vertices": [
              {
                "x": 630,
                "y": 121
              },
              {
                "x": 716,
                "y": 122
              },
              {
                "x": 716,
                "y": 157
              },
              {
                "x": 630,
                "y": 156
              }
            ]
          }

Сценарий, который я использую для выделения PDF, содержится по ссылке: https://gist.github.com/agentcooper/4c55133f5d95866acdee5017cd318558

Метод, который я создал для выделения это что:

def pdfHighLight():

    pdfInput = PdfFileReader(open("./pdf/doc.pdf", "rb"))
    pdfOutput = PdfFileWriter()

    page1 = pdfInput.getPage(0)

    highlight = createHighlight(630, 121, 716, 156, {
        "author": "",
        "contents": "Bla-bla-bla"
    })

    addHighlightToPage(highlight, page1, pdfOutput)

    pdfOutput.addPage(page1)

    outputStream = open("./pdf/output.pdf", "wb")
    pdfOutput.write(outputStream)
...