Создаём электронные книги в формате djvu и pdf

пример конвертирования в серый pdf для чтения convert -alpha off -colorspace gray -colors 10 -resize 800 лист* scan_grey.pdf Оригинал статьи: http://bacher09.org/2011/10/creating-ebook-in-djvu-or-pdf/


Есть отсканированные документы и из них надо собрать djvu или pdf книгу. Для того чтобы их превратить в pdf документ можно воспользоваться ImageMagick (илиGraphicsMagick).
Простой пример создания pdf документа:
$ convert *.jpg book.pdf
В GrapicsMagick эта команда может выглядеть так:
$ gm convert *.jpg book.pdf
Вместо *.jpg можно использовать другой формат или список файлов. Список файлов удобнее использовать для того, чтобы задать порядок следования страниц в файле.
Например:
$ convert file1.jpg file2.png file3.gif book.pdf
или
$ convert $( ls | egrep '(png|gif|pnm|pbm|pgm|jpg|jpeg)$' | sort -n) book.pdf

В этом примере sort -n используется для изменения порядка следования страниц.
Файл который получается может оказаться слишком большим. Чтобы уменьшить его можно воспользоваться алгоритмами сжатия которые поддерживают pdf документы.
Список алгоритмов сжатия приведён ниже в таблице:
Алгоритмы сжатия pdf
Compressionimage '/Filter [ ... ]' setting
-compress none'/ASCII85Decode'
-compress zip'/FlateDecode'
-compress jpeg'/DCTDecode'
-compress lzw'/LZWDecode'
-alpha off -monochrome -compress fax'/CCITTFaxDecode'
+compress
-compress rle
'/RunLengthDecode'
Zip — это алгоритм сжатия без потерь. Есть смысл его использовать только если исходное изображение в формате tiff,pbm,pnm,pgm или аналогичном. Наибольшего результата сжатия можно добиться используя алгоритм сжатия с потерями jpeg. При сжатии с потерями для указания качества в процентах используется опция -quality. Например:
$ convert -compress jpeg -quality 60 *.jpg book.pdf
Также можно использовать опцию -monochrome для создания чёрно-белых документов, что уменьшит размер выходного файла. Алгоритм сжатия fax можно использовать только с чёрно-белыми изображениями. Также чтобы уменьшить размер файла можно изменить разрешение c помощью опции -resize.
Теперь попробуем создать djvu файл. Для этого сначала надо преобразовать изображения в формат ppm,pgm или pbm. Pnm — используется для цветных изображений, pgm — чёрно-белые с градациями серого, а pbm чёрно-белый без градаций серого (есть только чёрный и белый). Формат pnm может представлять файлы в форматах ppm,pgm и pbm. Естественно, если использовать изображения в формате pbm то выходной djvu файл будет меньше. Сначала конвертируем все изображения в формат pnm. Для этого можно воспользоваться ImageMagick или утилитой anytopnm. Конвертировать одно изображение можно так:
$ convert image.jpg image.ppm
или
$ anytopnm image.jpg > image.ppm
Все файлы можно конвертировать таким образом:
$ for name in $(ls | egrep 'png|jpg|gif') ; do convert $name $(echo $name | sed -r 's/(.*)\.[^\.]+/\1/').ppm ; done
После того, как изображения конвертированы в ppm те, которые не содержат цветов можно конвертировать в pgm c помощью ppmtopgm.
$ ppmtopgm file1.ppm > file1.pgm
Это тоже можно сделать в цикле.
Теперь pgm изображения можно преобразовать в pbm с помощью pgmtopbm.
Например:
$ pgmtopbm -threshold -value 0.6 file1.pgm > file1.pbm
Опция -threshold задаёт алгоритм преобразования, а -value число переход от белого к чёрному.
Чем выше -value тем чернее будет изображение.
После этого все файлы ppm, pgm, pbm переименовываем в pnm, так как там будет проще сними работать.
Далее превращаем каждое изображение в формат djvu. Для этого используем с44.
$ c44 -slice 82 file.pnm file.djvu 
Или всё сразу:
$ for name in $(ls | grep 'pnm') ; do c44 $name -slice 82 $(echo $name | sed -r 's/(.*)\.[^\.]+/\1/').djvu ; done
Опция -slice влияет на выходной размер файла, детальнее опции утилиты с44 смотрите на сайте разработчика.
Теперь осталось только объединить все djvu файлы в один.
$ djvm book.djvu page1.djvu page2.djvu page3.djvu pageN.djvu
Всё теперь требуемая книга в формате djvu готова.

Google contact, calendar 4 nokia s60

Даунгрейдил до июля основной телефон до Nokia 6110 (платформа s60).

Многочисленные контакты из аккаунта Google синхронизирую
http://www.google.ru/mobile/sync/ с помощью Mail for Exchange
http://store.ovi.com/content/5919
Ограничения контактов s60 на количество полей заставит упорядочить
записи, но в целом решение понравилось.

Заметки
1. Обновил s60 до актуальной (Nokia PC Suite 7)
2. Сделал бекапы с аккаунта Google.
3. Использовал авторизацию приложений для Google.
4. Тестировал: избыточные для s60 контакты Google не деградируют.

Решение проблемы с отсутствием режима модема iOS 5.1.1

После обновления до iOS 5.1.1 iPhone 4s потерял настройки wifi роутера (режим модема / Personal Hotspot).

Решение нашел в статье:

How to troubleshoot a missing Personal Hotspot setting in iOS 5
http://reviews.cnet.com/8301-19512_7-20128093-233/how-to-troubleshoot-a-missing-personal-hotspot-setting-in-ios-5/

Сводится к сбросу сетевых настроек (мой случай):

"Open Settings > General
Scroll to the bottom of the list and tap Reset Network Settings and confirm.",

а если не помогло:

"Open Settings > General > About > Name
Choose a name with no spaces or other characters.
Reset your iPhone by holding the Sleep/Wake button and the Home button
until the Apple logo appears."

Ubuntu change display resolution settings using xrandr / Ubuntu изменить разрешение для мониторов без PnP

Перечень доступных режимов экрана:
$ xrandr

Требуемый режим (сверьте с документированными для вашего монитора)
$ cvt 1920 1080


$ xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576
1080 1083 1088 1120 -hsync +vsync
$ xrandr --addmode VGA1 1920x1080_60.00
$ xrandr --output VGA1 --mode 1920x1080_60.00

статья: http://www.ubuntugeek.com/how-change-display-resolution-settings-using-xrandr.html

VirtualBox Graphics Adapter Driver for Guest OS Windows XP

Для работы на любых доступных разрешениях гостевой Windows XP на хосте
Ubuntu Linux необходимо установить дополнения гостевой ОС.
Для этого запускаем гостевую систему, в консоли VirtualBox в
появившемся главном меню "Устройства" --> "Установить дополнения
гостевой ОС..."
(хост клавиша + D).
В гостевой запускается инсталлятор драйверов.
Direct3d устанавливайте в безопасном режиме. upd. для установки дополнений из консоли ubuntu sudo apt-get install virtualbox-guest-additions virtualbox-guest-dkms virtualbox-guest-x11 virtualbox-guest-utils

Прием цифрового эфира в Рубцовске

Для поднятия темы потребовался тюнер  beholder h8 (pci-е 1x, tv/dvb-t/fm), антенна с дециметровым блоком и нужный метраж коаксиала.
Beholder имеет самый удачный софт под win32 из всех вендоров, которых доводилось встречать, поэтому выбирать не пришлось. Настройка ПО заключалась в новых драйверах с сайта производителя и установки кодеков klite full. Кроме этого, выбрал кодеки для декодирования звука и видео для потоков dvb-t.
Для поиска каналов сканировал весь доступный в регионе диапазон. Транспондеры, которые были найдены, имеют хорошее качество сигнала, а вот с каналами все скудно: Россия в потоке mpeg2, все остальные в h.264. ОРТ закрыт, НТВ, Урга и Россия. На этом все.
Спутник явно надолго задерживается для качественного tv.