FLASH PDF - отобразить PDF-документ на сайте в swf

Нередко на сайтах можно встретить красивые PDF-листалки на флэш. Можно ли сделать просмотр PDF файла у себя на сайте? Наверняка! Но чем?

http://lvolume.net

http://emagcreator.com/

www.ispring.ru

http://ajaxdocumentviewer.com/servicesregular.asp

http://luxedition.ru/flippingbook_pdf_publisher - довольно удобный конвертер, есть демо-версия с ограничением в 10 страниц

www.devaldi.com/?page_id=260 (http://flexpaper.devaldi.com/)

www.swftools.org - целый набор утилит для генерации флэшек из всего, чего только можно

PDF2SWF – Конвертер PDF файлов в SWF. Создаёт по одному кадру для отдельной страницы документа PDF. Распознаёт форматированный текст, таблицы, графики, формулы. Основан на xpdf - парсере PDF, который создал Derek B. Noonburg.
SWFCombine – Инструмент для создания комбинированных SWF
SWFStrings – Извлекает из SWF текст
SWFDump – Получает информацию об SWF файле, - об используемых в нем изображениях/шрифтах/аудио, проверяет на наличие перекрестных ссылок и bounding boxes.
JPEG2SWF - Конвертирует JPEG изображения в SWF слайд-шоу, с поддержкой сжатия h.263
PNG2SWF – Аналогично с PNG файлами
GIF2SWF – Аналогично с GIF, поддерживается обработка анимированных GIF.
WAV2SWF – Преобразует аудио файлы WAV в SWF, при помощи L.A.M.E. MP3 библиотеки.
AVI2SWF – Конвертер AVI файлов в SWF с поддержкой Flash MX H.263. Примеры использования можно найти на сайте
Font2SWF – Конвертер файлов шрифтов (TTF, Type1) в SWF.
SWFBBox – Инструмент для работы с SWF bounding boxes - просмотр, редактирование.
SWFC - SWF-компилятор - создаёт SWF из простых файлов скриптов. Поддержка ActionScript 2.0 и ActionScript 3.0.
SWFExtract – декомпилятор SWF - можно получить видеофрагменты, аудио, картинки из флэшки.
AS3Compile автономный ActionScript 3.0 компилятор. Совместим с Flex.

Обсуждения и поиски
http://www.drupal.ru/node/33163
http://www.maultalk.com/topic88666.html
http://silin.su/#AS3/gadgets/book/bin - листалка “своя и не крутая”(с)
http://www.phpclasses.org/package/5260-PHP-Convert-PDF-files-to-JPEG-images-using-ImageMagick.html

Опубликовано Декабрь 11, 2011 | автор: levik  |  Без комментариев »

Почему не работает Ajax в Internet Explorer (IE 7, IE 6)

Несколько раз “на пустом месте” странная ситуация возникала - ajax в принципе работает, но в IE7 - не работает. :) Отправка уходит.. ошибка не возникает (вроде как). Да.. использовалось всё это дело с JQuery - т.е. не работали запросы .ajax | .get | .post

Ситуация оказалась проста до безобразия - от сервера приходил “неправильный” (для IE) заголовок ответа.

Для cp1251 “charset=cp1251″  следует настроить отдачу заголовка “windows-1251?

header('Content-Type: text/html; charset=windows-1251', true);

Для utf8 ситуация аналогичная - вместо utf8 - “utf-8″

И, конечно же, не должно быть кэширования ответа

Опубликовано Декабрь 5, 2011 | автор: levik  |  Без комментариев »

Вычисление расстояния между двумя цветами

Задача: найти на изображении элементы, похожие на заданные.

Вроде всё просто - смотрим на изображение.. видим фигуру, и говорим “вот она”. Однако, как объяснить компьютеру, что этот цвет должен быть примерно похож на заданный? По сути - задача сводится к тому, чтобы найти цветовое расстояние между 2-мя точками.. Цвет точки можно представить в виде RGB-кода.. т.е. по сути, ищем расстояние в пространстве RGB  R1G1B1 и R2G2B2. Но есть “одно НО”…

Формула Цветового Отличия (англ. Color Difference Formula), она же Формула Цветового Различия, Цветоразность, или Цветовое Расстояние (расстояние между цветами, используется в колориметрии) — это математическое представление, которое позволяет вычислить различие между двумя цветами.

Как правило, способы вычисления расстояния между цветами сводятся к вычислению расстояния в евклидовом пространстве. Однако, не любое цветовое пространство является евклидовым со строгой математической точки зрения.

Т.е. если RGB представить в виде куба и искать декартово расстояние между двумя точками по 3-м координатам R,G и B “в чистом виде”, то можно “нарваться” на странные совпадения, т.к. иногда при небольшом расстоянии цвета выглядят совершенно по-разному.

Для этого существует цветовое пространство XYZ, полученное в результате исследований: что именно видит глаз человека… При этом вводится точка белого цвета (d50).

После этого появилась ещё одна система LAB - в ней изменение цвета происходит линейно (если линейно изменять RGB - о плавности речи быть не может.. при этом возможны скачки).

Однако, для определения положения заранее известной фигуры, размещённой на произвольном рисунке (в jpg цвета искажаются, так что даже если прозрачность наложенного слоя отсутствует, не исключено, что полного совпадения цвета не будет) по заранее известным точкам (выбираем несколько контрастных точек на рисунке-маркере - знаем их координаты друг относительно друга и цвета) с довольно большой точностью (в конкретной задаче ни одного ошибочного расчёта) можно воспользоваться самой простой метрикой.. a1 и a2 - 2 точки в RGB-пространстве.|R1-R2| + |G1-G2| + |B1-B2|

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

http://www.easyrgb.com/index.php?X=MATH&H=07#text7

http://proteus2001.narod.ru/my/color/color.html

Опубликовано Декабрь 3, 2011 | автор: levik  |  Без комментариев »

Excel - памятка.

Отобрать уникальные записи (исключить повторяющиеся) в Excel очень просто
Данные - фильтр - расширенный фильтр, ставим галочку “Только уникальные записи”

Как в Excel заменить формулу полученным значением
Копируем нужную ячейку (или диапазон), далее меню Правка - Расширенная вставка выбираем вставить Значения

Опубликовано Ноябрь 29, 2011 | автор: levik  |  Без комментариев »

Хостинг и VDS/VPS - заметки, мнения, рекомендации

Каждому, кто хоть как-то связан с веб-разработкой рано или поздно приходится сталкиваться с вопросом выбора хостинга. Для начала можно использовать бесплатный хостинг для хранения картинок. Однако, со временем такой вариант соответствует задачам всё меньше и меньше.

Как выбирать хостинг

Читать мнения-отзывы на специальных ресурсах - hostobzor.ru Часто услуги хостинга предлагаются на форумах смежной тематики (СЕО/moneymaking и т.д.). Там же можно найти и отзывы с рекомендациями.

http://webhostingworld.net/cheap_linux_hosting_details.php - дешёвый хостинг (1$) -1 домен, остальное безлимит

Администрируемый VPS/VDS с техподдержкой 24/7 по телефону

Для одного из проектов стояло обязательное условие VPS с администрированием. Т.е. не просто техническая поддержка  представителем хостинговой компании, но и при необходимости настройка и конфигурирование сервера. Самое интересное, что как таковая услуга VPS с администрированием практически не предоставляется (позиция компании - сервер ваш, вы его и админьте, в принципе понятна), а там где предоставляется - оплата почасовая и общение с тикет системой, с оплатой за “без очереди”..

Дешёвые VPS/VDS

Технологии развиваются, “железо дешевеет”. И если раньше дешёвый VDS для начинающих требовал солидной экономии ресурсов (в совокупности с экономией денег), то сейчас за те же деньги можно приобрести вполне пригодный для экспериментов VPS. Помимо распиаренных fastvps, firstvds хотелось бы отметить

http://xlhost.ru/vds.html - много хороших отзывов (у них же недорогой хостинг)
http://tinyvds.ru/vds/
http://www.wlw.su/?page=vds
http://nqhost.com/unmetered-xen-vps.html - сервера с большими объёмами
http://www.ipipe.ru/vps.html
http://www.globoxhost.com/vds-servers.html - windows VDS за 10$
http://firstvds.ru/?aid=20078&from=26115 - иногда у firstVDS бывают скидки “закажи сейчас”

http://hostme.us/plans-vps.html - x5x (и их же хостинг и скидки:
http://mirabit.ru/plans-hosting.html
http://www.dndialog.com/index.php?s=&showtopic=6135&view=findpost&p=25035

Лицензии на панели управления сервером IspManager и DirectAdmin

http://www.isplicense.ru/
http://paylicense.com/software

Опубликовано Ноябрь 28, 2011 | автор: levik  |  Комментарии (2) »

Полезняшки на JQuery

Полезные плюшки на JQuery

Jeditable - редактирование данных “в тексте” - поле создается при щелчке или другом событии
http://www.appelsiini.net/projects/jeditable

RelCopy - копирование элементов (дополнительный телефон в форме, добавить товар в заказ)
http://www.andresvidal.com/labs/relcopy.html

Опубликовано Ноябрь 23, 2011 | автор: levik  |  Комментарий (1) »

jquery png fadeIn fadeOut и чёрная обводка картинок

Несмотря на “корректную” реализацию прозрачности png в IE версии выше 6, при использовании Jquery функций fadeIn, fadeOut (а также fadeTo.. и вообще любых операций с прозрачностью), вокруг  прозрачных PNG-изображений создаётся чёрный ореол (чёрная обводка PNG-изображения).

Дело в том, что в IE версий >6 прозрачность реализована также при помощи фильтров

Вариант решения

  • создать дополнительный элемент в качестве обёртки для полупрозрачного изображения и уже для него изменять прозрачность - fadeIn|fadeOut
  • Задать для элемента-родителя цвет фона
  • Если после первых двух пунктов у PNG при изменении прозрачности остаются чёрные артефакты - указать для родителя  zoom:1

И да.. ещё для IE вместо fadeIn fadeOut можно использовать show и hide без всяких эффектов

http://forum.jquery.com/topic/transparent-png-shows-black-edges-in-ie8
http://stackoverflow.com/questions/1156985/jquery-cycle-ie7-transparent-png-problem
http://stackoverflow.com/questions/6965845/black-border-around-transparent-png-in-ie8
http://blog.pengoworks.com/index.cfm/2009/2/17/Fading-a-24bit-transparent-PNG-in-IE7
http://www.optimalworks.net/blog/2008/web-development/ie-png-filter-problems/comment-page-1
http://realtech.burningbird.net/graphics/css/opacity-returns-ie8

Опубликовано Ноябрь 20, 2011 | автор: levik  |  Без комментариев »

Install php-fpm on Debian

root@php-fpm-nginx-server:~# echo “deb http://backports.debian.org/debian-backports lenny-backports main” >> /etc/apt/sources.list && aptitude update
root@php-fpm-nginx-server:~# aptitude install -t lenny-backports “nginx”

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

aptitude update
root@php-fpm-nginx-server:~# aptitude install php5-cli php5-common php5-suhosin
root@php-fpm-nginx-server:~# aptitude install php5-fpm php5-cgi

root@php-fpm-nginx-server:~# /etc/init.d/nginx restart
root@php-fpm-nginx-server:~# /etc/init.d/php5-fpm restart

Опубликовано Ноябрь 15, 2011 | автор: levik  |  Без комментариев »

Ошибка “insserv: Starting vzquota depends on single and therefore on system facility `$all’ which can not be true!” на OpenVZ VPS

При установке или удалении пакета на VPS OpenVZ (Debian 6) вылетала ошибка

“insserv: Starting vzquota depends on single and therefore on system facility `$all’ which can not be true!”

Варианты лечения:

1. Исправляем vzquota

vi /etc/init.d/vzquota

и под строкой “#!/bin/sh” добавляем:

### BEGIN INIT INFO
# Provides: vzquota
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start vzquota at the end of boot
# Description: This command is used to configure and see disk quota statistics for Containers.
### END INIT INFO

После этого повторяем предыдущую команду ( apt-get ). При перезагрузке файл удалялся/перезаписывается
скрипт vzquota добавляется системой виртуализации при создании VDS автоматически и возможно будет перезаписан при перезагрузке\переустановке сервера.

http://www.mail-archive.com/debian-bugs-rc@lists.debian.org/msg230965.html

2. Реконфигурим
dpkg-reconfigure sysv-rc
insserv: warning: script ‘S10vzquota’ missing LSB tags and overrides, insserv: warning: script ‘vzquota’ missing LSB tags and overrides, insserv: │
│ There is a loop between service vzquota and rmnologin if started, insserv: loop involving service rmnologin at depth 2, insserv: loop involving │
│ service vzquota at depth 1, insserv: loop involving service rsyslog at depth 1, insserv: There is a loop between service vzquota and rmnologin if │
│ started,

http://forum.vdsplanet.com/index.php?topic=324.msg1623#msg1623
http://phpsuxx.blogspot.com/2011/05/debian-6-openvz-insserv-starting.html

Опубликовано Ноябрь 12, 2011 | автор: levik  |  Без комментариев »

proftpd - шпаргалка по настройке

 proftpd - несложный в настройке FTP сервер

При установке на Ubuntu/Debian в режиме inetd выдаёт ошибку.. следует отредактировать файл /etc/proftpd/proftpd.conf и задать режим standalone.

Хитрости с пользователями - можно добавить псевдонимы и задать каждому свой пароль (часто используется для “публичных” FTP-каталогов)

UserPassword                    aliaswm SHA_PASSWORD1
UserPassword                    webmaster SHA_PASSWORD2

#алиас для пользователя
UserAlias                       aliaswm webmaster

# ограничиваем всех пользователей в домашнем каталоге
DefaultRoot                     ~
# а алиас наш - в подкаталоге
DefaultRoot                     ~/subfolder aliaswm

Курить маны тут:
http://www.proftpd.org/docs/faq/linked/faq-ch4.html#AEN383
http://www.proftpd.org/docs/directives/linked/by-context.html
http://www.proftpd.org/localsite/Userguide/other/userguide_full.html - большой док

Опубликовано Ноябрь 11, 2011 | автор: levik  |  Без комментариев »