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

Месяц с Onyx Boox Note Pro - 1

Хотя устройства с E-ink, позволяющие делать рукописные заметки и рисунки, существуют довольно давно, приемлемая задержка между касанием пера и появлением следа от него была достигнута сравнительно недавно (из известных это Sony DPT-S1/RP1 и reMarkable). Поскольку у меня, начиная с 1990-х, было немало различных устройств — как с перьевым вводом (Palm, Newton MP2000, HP TC1100, Raon Everun, Asus EA800, Boogie Board, так и просто читалок на E-ink (Kindle Paperwhite, PocketBook 740, Good e-Reader 6.8), то есть представление о плюсах и минусах различных решений и сложился некий личный образ «идеального» устройства.

В моём представлении у него должны быть E-Ink дисплей с подсветкой, магниторезонансный дигитайзер с распознаванием силы нажатий (обычно называемый «wacom»), неощутимая при рисовании задержка, 10" (или более) E-Ink экран, достаточный выбор сторонних приложений.
Читать полностью »

Security Week 41: больше уязвимостей в SIM-картах, дешифрование PDF - 1На прошлой неделе получила развитие история про атаки на уязвимый софт в SIM-картах. Обнаруженная ранее активно эксплуатируемая атака SimJacker оказалась не единственной. Исследователи из компании Ginno Security сообщили о похожей проблеме в компоненте Wireless Internet Browser (новость, пост в блоге компании). Хотя уязвимость в WIB сложнее в эксплуатации, чем проблема в S@T Browser, метод похож: присылаем подготовленную SMS, которая без ведома владельца позволяет совершить звонок, отправить сообщение или получить IMEI телефона.

Первый репорт об уязвимости в S@T Browser вообще выглядел довольно странно: о проблеме сообщает единственная компания, потенциальный ущерб оценить сложно, а оценка количества подверженных устройств выглядит преувеличенной: сотни миллионов. Поэтому в исследовании Ginno Security важна даже не сама уязвимость, а подтверждение актуальности проблемы из второго источника. Впрочем, еще один эксперт по безопасности мобильной связи, Карстен Нол, считает, что атаки такого плана слишком сложны для массовой эксплуатации: проще клонировать SIM-карту методами социальной инженерии или воспользоваться уязвимостями протокола SS7, по которому взаимодействуют между собой операторы.
Читать полностью »

Разбираем возможности конвертирования HTML в PDF браузером Google Chrome - 1

Недавно в одном стартапе я решал задачу генерации билетов в формате PDF. На тот момент уже был готов сайт с устоявшимся стеком технологий, поэтому я искал подход, который бы не потребовал использования дополнительных инструментов. В итоге я предложил сперва создавать билеты в формате HTML, а затем конвертировать в PDF с помощью браузера Chrome. Как оказалось, данным способом можно генерировать не только билеты, богато декорированные CSS, но и самые разные отчеты с графиками на JavaScript. В этой статье я расскажу о том, как для этих целей запустить Chrome, дам несколько советов по настройке CSS, а так же обсужу недостатки данного решения.

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

Давненько у нас не было по-настоящему больших ридеров! После ONYX BOOX MAX 2 мы в основном рассказывали об электронных книгах с диагональю экрана до 6 дюймов: для чтения литературы перед сном, конечно, ничего лучше не придумали, но если речь заходит о работе с крупноформатными документами, захочется располагать большими мощностями (и дисплеем). 13 дюймов, пожалуй, будет многовато (проще уж ноутбук на колени поставить), да и заметки на ходу с таким агрегатом не очень удобно добавлять. Здесь 10 дюймов — вполне себе золотая середина, и было бы странно не увидеть девайс с такими параметрами в линейке производителя ONYX BOOX. Он есть, и название у него обнадёживающее: Note Pro.

Обзор ONYX BOOX Note Pro: топовый ридер для работы с PDF - 1
Читать полностью »

Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, берутся из состояния React-приложения. База React-приложения создана с помощью create-react-app, серверная часть проекта основана на Node.js, при её разработке использован фреймворк Express.

Создание динамических PDF-файлов с использованием React и Node.js - 1

Автор этого материала отмечает, что он подготовил видео, в котором демонстрируется разработка проекта. Если вы решите и посмотреть видео, и прочитать статью, то рекомендуется поступить так. Сначала бегло просмотрите статью, потом включите видео и воссоздайте у себя рассматриваемую там систему. А после этого просто прочитайте статью.
Читать полностью »

Для приготовления преобразования из HTML в PDF нам понадобится сам postgres и его расширение pg_html2pdf. (Я дал ссылки на свой форк postgres, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальный репозиторий. Можно также воспользоваться готовым образом.)
Читать полностью »

Для приготовления фильтра из HTML в PDF нам понадобится сам nginx и его плагин html2pdf. (Я дал ссылки на свой форк nginx, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальный репозиторий. Можно также воспользоваться готовым образом.)
Читать полностью »

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

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

Терпение и труд весь текст извлекут - 1

Источник изображения: Википедия

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

Несколько способов подделки PDF с цифровой подписью - 1

Рис. 1. Процедура инкрементального сохранения, на которой основаны цифровые подписи PDF. По результатам тестирования, это самый эффективный способ подделки документов

Теоретически, цифровые подписи PDF надёжно удостоверяют автора документа. Но на практике обработку PDF обычно осуществляет проприетарный софт, который не совсем корректно выполняет проверку. Специалисты Рурского университета в Бохуме (Германия) описали несколько вариантов подделки PDF-документов с цифровой подписью, которые срабатывают в большинстве программ просмотра PDF и сервисов онлайновой проверки.

Защита от всех атак обеспечивается только в единственной программе, да и та работает под Linux.
Читать полностью »

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

Вот некоторые варианты для самого обычного человека:

  • Ручками перебрать все файлы по одному. Уже после десятого документа к вам придёт мысль о том, что вы делаете что-то не так.
  • Попробовать найти в интернете специальную библиотеку (расширение) для работы с doc файлами на языке программирования, которым вы владеете. Потратить часок другой на понимание как работать с этой библиотекой. Также вам ещё предстоит столкнуться с тем, что принципы работы с doc и docx слегка отличаются.
  • Попытаться автоматизировано пересохранить все документы в другой формат, с которым будет удобнее работать.

Как раз о последнем варианте и пойдёт речь.

И на помощь к нам спешит vbs скрипт. vbs скрипт можно вызвать из командной строки, что можно сделать в любом языке программирования.
Читать полностью »


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