Рубрика «PDF» - 6

Компания ABBYY создала хорошую программную оболочку для работы со словарями, однако не меньшим её вкладом в цифровую лексикографию стал побочный продукт разработки ABBYY Lingvo — язык словарной разметки DSL. Он давно уже вышел за границы Lingvo, стал самостоятельным стандартом и форматом для других словарных оболочек, в том числе одной из самых известных в своём роде — GoldenDict.

Но сама по себе компания ABBYY не достигла бы таких успехов без помощи многочисленной армии энтузиастов-лексикографов, маниакально год за годом оцифровывавших бумажные словари и конвертировавших словари цифровые — от миниатюрных специальных до огромных общего назначения.

Одна из самых известных и плодотворных групп давно уже работает на сайте forum.ru-board.com. Со временем там накопилась как обширнейшая коллекция словарей, так и основательнейшая база знаний и инструментов в помощь их создателям и редакторам. Было написано множество скриптов и программ, набор которых отражает историю и изменения популярности языков программирования, более или менее приспособленных для обработки текста. Тут и Perl с Python, и языки пакетных файлов для оболочек, и макросы MS Word и Excel, и компилируемые программы на языках общего назначения.

Однако до последнего времени один из языков почти не был представлен в данной сфере. Хотелось бы восполнить этот пробел и отдать должное стремительному росту мощности, функциональности и популярности языка JavaScript. Думается, он может оказать большую помощь современным программистам-лексикографам, особенно на границе сетевой и локальной лексикографии. Читать полностью »

Вот и подоспела обещанная заключительная статья в цикле о легальном контенте в сети. Сегодня мы посмотрим, где можно с комфортом почитать лицензионные книги и периодику, и чтобы это было финансово выгоднее, чем идти в ближайший книжный за бумажными экземплярами.

Охота на лицензионный контент: капкан для книги - 1

Следует заметить, что ситуация с этим рынком куда сложнее и неоднозначнее, нежели с рынком лицензионных музыки и фильмов. С одной стороны, библиотек с нелицензионным контентом сейчас просто пруд пруди, обновляются они крайне интенсивно и, казалось бы, магазины «официальных» e-book'ов просто не выдерживают с ними конкуренции. К тому же это не кино и не музыка, у текста нет битрейта и иных аспектов качества, в этом плане магазинам крыть нечем, текст он и есть текст. А ещё нельзя забывать, что очень внушительный процент всех пользователей нелицензионного контента используют его потому, что это зачастую проще, удобнее, и быстрее. Правообладатели то взвинчивают цены, то делают процесс покупки неудобным, то ещё что. С другой стороны – после ужесточения антипиратского закона нелегальные ресурсы оказываются под значительным ударом, ибо книжные издательства последнее десятилетие несут убытки не меньше тех же музлейблов, и полны решимости бороться за место под солнцем. Причём делать это они будут явно куда жёстче – киноленты приносят деньги с проката, музыка – с живых выступлений, а вот литература монетизируется только и исключительно продажами копий книг. Кроме того, можно быть уверенным, что, если начнётся повальная блокировка пиратских библиотек, то в сети где бы то ни было просто перестанут появляться нелегальные новинки книжного рынка – кому даже из идейных побуждений будет охота сканировать бумажную книжку или ломать защиту купленной электронной, если всё равно до людей она не дойдет?
Читать полностью »

205 шпаргалок для разработчика - 1

Гуляя по просторам интернета, наткнулся на потрясающие шпаргалки для разработчика.

Все шпаргалки любезно предоставлены сайтом refcardz.dzone.com. Материалы представлены бесплатно, но доступны после простой регистрации. Для тех, кому лень и не хочется тратить время на регистрацию, я подготовил архив, который можно скачать с Яндекс.Диска.
Читать полностью »

Доброго времени суток!

Экспорт Избранного c Мегамозг в PDF - 1

Думаю многих из вас когда-либо посещала мысль о возможности получения статей из избранного в формате PDF для использования в оффлайне (например, в читалке).
Такая же мысль посетила и меня чуть больше года назад.
Представляю вам новую версию программы закачки статей с Хабра, Гиктаймс и Мегамозга в формате PDF.

Новый проект называется HabraParse.
Проект состоит из библиотечки, которая парсит сайты, и скрипта, использующего лишь часть возможностей этой библиотеки. Скрипт написан на python3, для его работы потребуются модули docopt, requests и weasyprint (все их легко можно установить командой pip install name).
На текущий момент в скрипте имеются следующие возможности:

  • скачать статью по её ID;
  • скачать список URL избранного для заданного пользователя;
  • скачать статьи из избранного в папку в формате PDF или HTML (пока реализация HTML не на высоте, поэтому по умолчанию используется формат PDF, но он работает значительно дольше).

Читать полностью »

Доброго времени суток, читатели!

Экспорт Избранного на Хабре в PDF. Версия 2.0 - 1

Думаю, многих из вас когда-либо посещала мысль «вот бы сохранить статьи с Хабра». Такая же мысль посетила и меня чуть больше года назад.

Представляю вам новую версию программы закачки статей с Хабра, Гиктаймс и Мегамозг в формате PDF.

Новый проект называется HabraParse.

Проект состоит из библиотечки, которая парсит сайты, и скрипта, использующего лишь часть возможностей этой библиотеки. Скрипт написан на python3, для его работы потребуются модули docopt, requests и weasyprint (все их легко можно установить командой pip install name).

На текущий момент в скрипте имеются следующие возможности:

  • скачать статью по её ID;
  • скачать список URL избранного для заданного пользователя;
  • скачать статьи из избранного в папку в формате PDF или HTML (пока реализация HTML не на высоте, поэтому по умолчанию используется формат PDF, но он работает значительно дольше).

Использование опций --gt/--mm позволяет сохранять статьи с GeekTimes.ru и Megamozg.ru.

Краткое описание параметров скрипта

Usage:

  ./habraparse.py save_favs_list [--gt|--mm] <username> <out_file>
  ./habraparse.py save_favs [--gt|--mm] [-cn --save-html --limit=N] <username> <out_dir>
  ./habraparse.py save_post [--gt|--mm] [-c --save-html] <topic_id> <out_file>

По умолчанию все команды работают с проектом HabraHabr.ru.
При задании опций --gt/--mm скрипт будет работать с GeekTimes.ru/Megamozg.ru.

Команды:

  save_favs_list - сохранение в файл <out_file> списка URL избранного для пользователя <username>
  save_favs - сохранение в папку <out_dir> статей из избранного для пользователя <username>
  save_post - сохранение в файл <out_file> статьи с заданным ID

Пользуйтесь и наслаждайтесь. В случае выявления ошибок прошу кидать сообщения в личку или заводить баг на github-страничке проекта.
Если кому-то чего-то не хватает, то пишите фич-реквест в комментах, по мере сил постараюсь реализовать.

Читать полностью »

Не так давно передо мной встала задача: распечатка документа определенного формата с помощью мобильного устройства. На телефоне должны были вводиться определенные значения, отправляться на сервер (для того, чтобы потом можно было использовать эти данные на веб сайте) и печать документ с этими данными. С самого начала мой выбор пал на Google cloud print, так как он максимально прост в использовании и решении подобных задач. Но при использовании этого варианта есть несколько недостатков:

  • Очень медленная обработка запроса
  • Нужно где-то формировать PDF документ и возвращать ссылку на него
  • Постоянно нужно выбирать принтер (если у вас подключен только один принтер к Google cloud print, то все равно нужно выбирать между ним и сохранением на Google Drive)

Поэтому я решил написать свой скрипт для подобных операций.
Читать полностью »

С помощью библиотеки DOMPDF можно создавать PDF файлы из HTML кода. Нужно только сверстать некий HTML шаблон и передать его DOMPDF и уже на выходе получить сгенерированный PDF файл. Но не надо забывать и то, что эта библиотека не движок для обработки веб-страниц, а значит и шаблоны должны быть сверстаны с использованием самых базовых средств: HTML тегов и CSS стилей. Хотя разработчики заявляют, что их библиотека поддерживает стандарты CSS 2.1 и даже некоторые свойства CSS 3. С полным их перечнем можно ознакомиться здесь. Есть, кстати, один минус – она является довольно “прожорливой” к оперативной памяти. Поэтому возможно придется задуматься об аренде виртуального выделенного сервера. Но это зависит от содержания и объема планируемых PDF документов. С другой стороны она вам может помочь сэкономить много времени на разработку различных отчетов в формате PDF.Читать полностью »

С чего всё началось

Началось всё с лени. Лень бывает продуктивная и не очень, в моём случае, похоже — первое.

Недавно прикупил на «Литресе» книжку Нассима Талеба «Антихрупкость». Скачал, закинул на читалку, да так до неё и не добрался, то жена утащит своё почитать, то ребёнок… А тут в рассылке прилетела вот эта статья «Лучший подарок – книга. Делаем красивый переплет». Посмотрел, всё вроде красиво, только вот под рукой не оказалось машины с «Форточками», ну не пользуемся мы ими, а запускать эти WordPage-ы через прокладку типа Wine или в Qemu как-то некомильфо. Однако у меня имеется возможность распечатать книженцию и нормально обрезать (мини-типография на первом этаже дома, в котором я живу) в нужный формат. Сие значит, что следует использовать возможности подручных средств.
Читать полностью »

Много лет назад я участвовал в бреветах: велосипедных марафонах, где поодиночке и неспеша (но с ограничением по времени) нужно проехать от 200 до 1200 километров. Медитативное занятие, когда есть время насладиться природой, напеть все песни, рассмотреть легенду и карту маршрута… Которые удручают: часто это обычная таблица из экселя с беспорядочным оформлением, а карта факультативна. Петербуржский клуб «Балтийская звезда» продвинутее многих: участники его бреветов всегда получали карту — правда, тёмно-серую, с тёмно-серым маршрутом и КП на чёрных выносках. Не очень удобно. А поскольку я увлёкся OpenStreetMap, я почувствовал, что в силах улучшить дизайн легенд. И приступил ко второй попытке (первую, шестилетней давности, стыдно вспоминать).

Как создать легенду
Читать полностью »

в 8:24, , рубрики: itext, java, PDF, метки: , ,

image

Доброе время суток!

Недавно столкнулся с задачей: научиться вытаскивать текст из PDF запоминая его позицию на странице. И, конечно же, в несложной поначалу задаче вылезли подводные камни. Как же в итоге получилось это решить? Ответ под катом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js