DjVu-конвертер

В настоящее время очень популярен электронный формат DjVu, предназначенный для хранения отсканированных документов (бланки, книги и т.п.). Очень часто формат DjVu позиционируют как альтернативу формату PDF. Прежде всего, защитники DjVu проводят сравнение между размером pdf и djvu файлов

Компания «Два Пилота» выпустила бесплатную программу-конвертер для создания DjVu-документов. DjVu Printer Pilot – это приложение на базе виртуального принтера для создания DjVu-файлов. После установке программы, в системе появится виртуальный принтер с именем «DjVu Printer Pilot». После чего остается любой документ, который необходимо конвертировать в DjVu, отправить на виртуальный принтер. После печати документа, появится главное окно программы, в котором можно будет сохранить полученный DjVu-документ или скомбинировать с ранее созданным.

Для создания файлов в DjVu-формате, наша компания использовала бесплатную библиотеку DjVuLibre.

Артём Голубниченко

Последствия округления

Лучше всего сразу начать с иллюстрации того, что было ДО неточного округления чисел с плавающей точкой и как это стало выглядеть ПОСЛЕ того, как ошибка была исправлена.

comparing

Проблема проявилась при конвертировании EMF в PDF (или при рисовании на HDC, полученном из PDF). Проблема была с функциями Polyline(To). На вход функции поступал массив точек, координаты которых не значительно отличались друг от друга. И далее для того, чтобы нарисовать набор линий в PDF, необходимо было преобразовать координаты из HDC в координаты для PDF. Для этой цели мы используем функцию LPtoDP. Но функция возвращает целые значения координат, поэтому, например, для двух координат из EMF (160, 74) и (159, 60) функция преобразует их в (1, 1) и (1, 2). В результате чего набор прямых приобретет вид, который представлен на скриншоте слева. Поэтому в данном случае мы перестали использовать эту функцию и получили правильный результат работы функций Polyline(To).

Артём Голубниченко

Улучшена конвертация EMF2PDF в PDF Creator Pilot.

Недавно в библиотеке PDF Creator Pilot был исправлен баг с заливкой полигонов. В присланном документе фигуры выводились с помощью функции Polygon. Но после вывода они закрашивались неверным цветом – черным. Как оказалось это было связано с тем, что для заливки использовалась кисть со стилем BS_PATTERN. А в свойствах этой кисти поле  lbColor, содержащее цвет кисти, игнорировалось, и цвет заливки нужно было брать из функции SetBkColor. После того, как проблема стала понятной, мы незамедлительно её исправили. В результате получили правильную конвертацию emf2pdf. Чтобы оценить результат исправления, ниже представлена сравнительная картинка (до и после исправления проблемы)

Before and after fixing the problem
Before and after fixing the problem

Так же ниже можно скачать оригинальные pdf и emf файлы:

PDF файл до исправления, PDF файл после исправлени, EMF файл.

Артём Голубниченко

Новая версия Exif Farm

В начале марта наша компания выпустили новую улучшенную версию популярного EXIF редактора – Exif Farm. К существующей линии наших EXIF программ теперь добавились ещё две: Exif Farm и Exif Farm Pro.

Exif Farm – это бесплатный EXIF просмотрщик и редактор, а Exif Farm Pro – это платная версия, в которой есть возможность пакетной обработки файлов. Это и есть основное отличие двух программ.

Exif Farm – это EXIF редактор, который интегрируется в операционную систему и может быть вызван из контекстного меню в проводнике Windows или из любого иного приложение, в котором осуществляется взаимодействие с проводником Windows. Именно в этом и заключается удобство и основная особенность программы. Как же часто, переходя по папкам с фотографиями, возникает желание быстро просмотреть EXIF, или IPTC, или XMP данные. Теперь это можно сделать без запуска специальной программы. Всего-навсего, кликните правой кнопкой мыши по файлу, выберите в контекстном меню пункт “Свойства”  и перейдите на вкладку Exif Farm. И перед Вашим взором предстанет полный список метаданных, представленных в фотографии. Этот список для удобства сгруппирован. Так же, сразу можно добавить или изменить необходимую EXIF информацию.

Среди достоинств, которые мы выделяем в новой версии программы, можно отнести следующее:

– единственная программа, которая встраивается в систему и расширяет её оболочку для возможности работы с EXIF данными;

– большое количество тегов для просмотра и редактирования, включая специфические теги производителей фотокамер;

– удобство, простота и быстрота использования программы;

– современный интерфейс;

– поддержка Windows Vista и Windows 7;

– экспорт и импорт метаданных в файлы XML.

Если Вы пользуетесь другим нашим EXIF редактором  – Exif Pilot (или одной из его версий) и захотите перейти на новую программу Exif Farm, то абсолютно не почувствуете никакой разницы. И функциональные возможности, и интерфейс для работы с метаданными остались теми же. Мы постарались сделать эти программы наиболее близкими друг к другу.

Если Вы профессиональный фотограф, или фотограф-любитель, или просто Вам нужна возможность просмотра и редактирование EXIF/IPTC/XMP данных, то тогда Вам следует попробовать наши новые программы Exif Farm и Exif Farm Pro.

Артём Голубниченко.

Новый конвертер PDF2Image Pilot от компании «Два Пилота»

Очень часто для решения задач электронного документооборота (и не только) возникает потребность преобразовать PDF документы в PNG формат или многостраничный TIFF. Поэтому наша компания выпустила новый конвертер PDF2Image Pilot – программу для конвертирования PDF файлов в высококачественные BMP, EMF, GIF, JPEG, PNG, или TIFF изображения (так же поддерживает многостраничный TIFF).

Этот конвертер основан на другом нашем продукте PDF Rasterization Pilot. PDF Rasterization Pilot является библиотекой для разработчтиков. Используя это компонент, разработчики могут добавить в свою программу возможность экспорта PDF в различные графические форматы, выводить PDF на контекст устройства (будь то экран монитора или принтер).

Именно библиотеку PDF Rasterization Pilot и использует новый конвертер для сохранения PDF в графические файлы и вывода содержимого PDF в окно предварительного просмотра. Мы постарались соединить в PDF2Image Pilot возможности нашей PDF Rasterization библиотеки и наш многолетний опыт в разработке удобных и простых интерфейсов. Будем надеяться, что PDF2Image конвертер, поможет Вам в решении различных задач. Будем с нетерпением ждать Ваших отзывов и предложений!

Артём Голубниченко

Новый PDF редактор

25 января наша компания выпустила программу PDF Maker Pilot –  новый визуальный редактор для создания электронных PDF форм и PDF документов с различными графическими объектами. Разработчики, Татьяна Орловская и Александр Григорьев, работали над проектом в течение года. Новая программа – это улучшенная версия ранней программы PDF Maker Pilot.

Новый PDF Maker отличается более дружественным интерфейсом и улучшенной функциональностью. Мы старались, чтобы во время работы с программой, пользователь получал нужные ему результат с минимальным приложением усилий. По ходу разработки, мы, прежде всего, стремились сделать полноценный редактор, учесть все недостатки предыдущей версии и сделать их достоинствами новой версии PDF Maker Pilot.

В ближайших планах – добавить взаимодействие с базой данных. База данных будет содержать текстовую и графическую информацию (например, цифровые подписи) пользователя. Планируется обеспечить возможность автозаполнения бланков данными из базы, многократное заполнение бланков.

Надеемся, что теперь создавать любые PDF документы с помощью PDF Maker Pilot будет просто и приятно. Желаю всем пользователям только положительных эмоций во время работы с нашей программой!

Посетите страничку программы PDF Maker Pilot.

Артем Голубниченко
Руководитель проекта Виртуальный Принтер

Недокументированные возможности вывода текста в EMF

До недавнего времени в нашей PDF библиотеке “PDF Creator Pilot” была нерешенная проблема с выводом вертикального текста в EMF файлах. В большей степени это было связано с тем, что EMF-record, выводящая этот текст была недокументированной. Впрочем, сейчас Microsoft выпустила полную документацию по формату EMF, но ещё раньше это появилась на ресурсе www.undocprint.org. Все это вместе и помогло разрешить проблему.

Проблема изначально заключалась в том, что текст по вертикали выводился не совсем корректно. Он очень сильно сжимался, и буквы накладывались друг на друга.  Поэтому изначально было подозрение, что граничный прямоугольник (rclBounds) для вывода текста рассчитывается неверно. Как в последствии оказалось,  в этом и заключалась проблема. Опишу немного технических деталей, которые выяснились при вскрытии проблемы.

Во-первых, из формата  EMF нами была получена необходимая информация по записи EMR_SMALLTEXTOUT (сам текст, rclBounds и т.д.).

Во-вторых, как выяснилось, размеры rclBounds рассчитывались верно. Но загвоздка заключалась в том, что он не был повернут на 90′. Почему на 90′? Потому что когда текст выводится по вертикали, то в структуре LOGFONT, отражающей настройки шрифта,  – это  фиксируется в полях lfEscapement и lfOrientation. И поэтому после того, как это было определено, необходимо ещё и rclBounds также повернуть на 90′. И тогда текст стал выводиться верно.

Резюмируя, скажу, что проблема была в том, что из EMF передается не повернутый на 90′ rclBounds. Поэтому для корректного вывода текста оставалось его только повернуть на нужный угол. Ниже попытаюсь показать это на рисунках (специально выделю rclBounds, чтобы было нагляднее).

Граничные прямоугольники
Граничные прямоугольники

Исправленную версию PDF библиотеки можно загрузить здесь.

Также наглядно можно посмотреть PDF документ до исправления и PDF документ после исправления, соответственно.

Артем Голубниченко
Руководитель проекта Виртуальный Принтер

Новости проекта PDF Creator

Привет всем!

Сегодня я расскажу о важных улучшениях в текущей версии библиотеки PDF Creator Pilot.

Одно из слабых мест библиотеки – повышенный расход памяти при работе с большими документами. Достаточно часто клиенты сталкивались с невозможностью сформировать документ, содержащий более 100 страниц, из-за нехватки памяти. В текущей версии удалось выявить “узкое” место в программе и значительно сократить расход памяти. Вкратце – если страница достаточно насыщена графикой, то она содержит значительное количество страничных операций. Хранение страничных операций в памяти и стало “узким” местом. Перенос этих данных во временный файл позволил решить проблему.

Другим существенным улучшением стала конвертация EMF файлов в PDF. Значительно улучшена обработка путей и регионов отсечения. Сложность здесь в том, что формат PDF предлагает для работы с путями гораздо более бедные средства, чем требуется GDI. Особенно заметно это проявляется в случае регионов отсечения – PDF не допускает никаких операций с регионами, кроме пересечения. Для полноценной же обработки EMF необходимо поддерживать все основные теоретико-множественные операции. Долгое время проблему не удавалось решить, однако в текущей версии все сложности позади, и целый класс EMF стал конвертироваться нормально.

Последняя новость будет полезна пользователям “нестандартных” версий библиотеки, а именно 64-х битной и статической (последняя – только для С++) Как выяснилось в билде для x64 не работала конвертация EMF, а статическая библиотека не работала из под VS2005. Эти ошибки были успешно исправлены.

Текущие билды здесь:

http://www.colorpilot.com/~builds/PDFCreatorPilot4_1_2492.zip

http://www.colorpilot.com/~builds/PDFCreatorPilot4_1_2492_x64.zip

http://www.colorpilot.com/~builds/PDFCreatorPilot4_1_2492_static.zip (18 Мб, содержит Debug и Release версии)

Главная задача перед ближайшим релизом:

– Улучшение работы с Tiff изображениями, добавление поддержки CMYK Tiff

Виталий Шибаев,

разработчик библиотеки PDF Creator Pilot

Voice Notes Pilot 2.00 – обновлена бесплатная программа для записи голосовых заметок.

Voice Notes Pilot 2.00 – программа для ведения голосовых заметок. Программа предоставляет для этого больше возможностей, чем обычный диктофон. Вы можете легко управлять своими заметками, сортировать их по темам, фильтровать, сохранять в файлы и отсылать по электронной почте.