Извлечение таблиц ToUnicode из PDF - PullRequest
1 голос
/ 07 октября 2011

Кто-нибудь может предложить простой в реализации способ извлечения таблиц ToUnicode из PDF? Я могу извлечь шрифты, используя pdfextract из mupdf, теперь я ищу способ извлечь таблицы ToUnicode для этих шрифтов.

1 Ответ

2 голосов
/ 07 октября 2011

Вы можете изменить pdfextract для извлечения CMap ToUnicode (не таблиц, CMaps).

Вы можете посмотреть код в savefont и добавить что-то вроде:

obj = fz_dict_gets(dict, "ToUnicode");
if (obj)
{
    stream = obj;
}

Если есть ToUnicode (там не должно быть), вы можете вывести поток аналогично тому, как поток шрифта записывается в файл.

obj = fz_dict_gets(dict, "ToUnicode");
if (obj)
{
    stream = obj;
        buf = fz_new_buffer(0);

        error = pdf_load_stream(&buf, xref, fz_to_num(stream), fz_to_gen(stream));
        if (error)
        die(error);
            /* Do something with the data */
    }

buf-> data (размером buf-> len) будет содержать CMap, который вы можете записать в файл, или любой другой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...