13-я КОМНАТА: Навеяно темой номера
13-я КОМНАТА: Навеяно темой номера
Совсем недавно, исследуя рынок средств перекодирования PDF в HTML, я встретил любопытную программу (увы, уже не помню названия), создающую почти идентичную внешне HTML-копию почти любого PDF-документа (нашу верстку, конечно, повторить ей не удалось, но это случай особый). Ни одно другое средство не могло заполнить колонку текстом так, чтобы он точно занял отведенное ему место, особенно при нетипичном расположении графических элементов, а здесь осталась разве что невыровненная правая граница. Просмотр полученного кода выявил секрет: каждая строчка текста с помощью скрипта ставилась в позицию с определенными пиксельными координатами, равно как и графические элементы. Даже наложенный на изображение текст при таком подходе вполне реализуется с помощью сборки всей «нижележащей» графики в одно изображение, подставляемое в качестве фона HTML-страницы. Объем получившегося кода превысил типовой примерно раза в три, но что такое 200-300 Кбайт для мегабитного канала? У вас еще нет такого дома? Не сомневайтесь, скоро появится.
Следующим шагом, похоже, будет позиционирование каждого отдельного символа, что позволит соблюсти кернинг, трекинг и прочие полиграфические тонкости, и останется последний неподвластный веб-серверу элемент - начертание собственно символа. Но и его можно преобразовать в графику, растровую или векторную, и тогда…
Стоп, а ведь где-то я уже это видел. Конечно же, вот оно - принтеры. Начав со шрифтов, жестко определенных механизмом или прошивкой (не напоминает ли DOS+Lynx?), пройдя этап шрифтов загружаемых (Windows+IE?), революция «мелкопечатного» дела завершилась растрированием на стороне сервера (компьютера, выполняющего печать) и передачей клиенту (принтеру) чистой графики.
Кто читал журнал с конца, уже понял: эта колонка навеяна темой номера, в которой я, к сожалению, не увидел того, что хотел, а именно - глобального взгляда на веб-технологии. Эволюция сложных систем в основном идет по пути централизации, если не встречает ограничений по ресурсам (память, каналы связи, процессор). И, соответственно, переходит от массы сложных и разрозненных технологий к одной простой, хоть и ресурсоемкой. Интернет - не исключение. Закон Мура позволяет предположить, что ограничения со временем будут сняты, так как предел достаточности у любых систем, взаимодействующих с несовершенным в плане обработки информации человеком, установлен самой природой. Всевозможные скриптовые технологии на стороне клиента (Java) и специализированные плейеры (Flash), призванные обойти ограничения трафика, блекнут перед возможностью прямой передачи 30 кадров изображения в секунду, был бы канал. Анимированный GIF из десятка кадров, заоптимизированный до предела, чтобы вписаться в разрешенные 100 Кбайт (или секунду загрузки), безусловно проиграет прямой трансляции произвольного изображения в окно того же размера. Возможно, на первом этапе потребуется сжатие-разжатие при передаче (пока ресурсы процессора имеют больший запас по сравнению с ресурсами канала связи), но это не навсегда. Вас еще пугает объем фильмов на DVD? А кто-то уже не может терпеть качество тех же фильмов в DivX. И лет через десять, возможно, вы сможете увидеть на своем экране ровно то, что хотел изобразить веб-мастер, не задумываясь, какой из браузеров более точно отобразит его идею. Да и сам браузер может исчезнуть как класс. Или как чуждое для русского языка слово.