CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2002 ГОД

PDF: история с продолжением

Андрей ГОНЧАРОВ ag@ukr.net

(Окончание, начало см. в МК № 16, 19, 31 (187, 190, 202)).
Нынешние приоритеты многих компаний-разработчиков можно объединить под общей вывеской «веб-интеграция», в перспективе которой особенно четко проступают контуры прогрессивного PDF-формата. Что сие значит? В первую очередь, речь идет о средствах ведения онлайнового бизнеса — защиту информации внутри двоичного файла, интерактивные формы, лицензирование файлов PDF, а также всевозможные «примочки», удостоверяющие сохранность данных. Сегодня мы завершаем рассмотрение средств PDF, направленных на защиту PDF-данных, сертификацию и дополнения документов формами и интернет-гиперссылками.

Дополнительные возможности PDF-формата

Пример: пусть требуется онлайновая публикация электронной формы, например анкеты. Данные из ее полей должны сохраняться в БД (базе данных) удаленного сервера — клиент заполняет анкету, данные отсылаются странице, способной рассмотреть, обработать и/или сохранить данные в нужном формате. Внутренним механизмом взаимодействия полей формы Adobe Systems, Inc. (http://www.adobe.com) решила сделать JavaScript. Все, что нужно сделать, чтобы ваш PDF стал интерактивным, — отредактировать его в Adobe Acrobat, используя соответствующие инструменты, среди которых есть и средства для создания и редактирования форм.

Вход в Уголок Маньяка

Под термином «форма» сетевики понимают совокупность HTML-документа с анкетой и динамического серверного приложения/сценария, обрабатывающего переданные ему данные. Как правило, сценарий находится в виде файла на сервере и написан на языке Server-Side сценариев. Это может быть как VBScript (в случае с ASP — Active Server Pages от Microsoft), так и PHP (Hypertext Preprocessor, который существует в реализации для всех платформ кроме MacOS).

Сценарий может принимать данные в неявном виде при наличии действия типа Submit, либо в виде URL-базированной передачи данных:

В приведенном примере сценарий myscript.php принимает три значения для переменных var1, var2 и var3. Так, для передачи сценарию этих значений можно описать событие OnClick для любого ЭУ страницы-анкеты, но можно использовать Submit-компонент, что более разумно исходя из соображений безопасности, удобства пользователя и т.д. Уточним, для Submit-компонента событие не описывается, PDF-Action типа Submit уже означает отправку данных.

В состав формы может входить любое количество текстовых полей, кнопок/радио-кнопок, флажков и других элементов управления, включая пользовательские, которые помещаются на страницу как ЭУ Object с параметрами param name=myproperty1 value=myvalue1 (см. описание HTML).

Для пользовательских ЭУ необходимо указание адреса дистрибутива. Чаще речь идет про .cab, в состав которого входит ActiveX-компонент. Распространение таких ЭУ сопряжено с доверительными отношениями клиент-сервер, так что не всегда имеет смысл использовать посторонние объекты на страницах. PDF-документ может содержать только основные ЭУ — кнопки, текстовые поля и т.п.

Передача данных из полей формы идет по встроенному событию Click кнопки типа Submit. Это может быть любая кнопка с назначенным для нее действием Submit Form, по аналогии с HTML-кнопкой <input type=submit>. В HTML для таких Submit-объектов событие Click не расписывается, в PDF же Action = Submit Form достаточно распространено.

Выход из Уголка Маньяка

Цифровые подписи в PDF

Вы можете лицензировать ваш PDF-файл, так что другие пользователи вашей информации будут уверены, что вводимые в анкеты данные действительно будут отправлены вам, а не мошеннику, подписывающемуся вашим именем. Для этого необходимо иметь как минимум сертификат. Если такового у вас нет, Acrobat позволяет создать новый профиль (меню File > Sign and Save > New profile) (Рис. 1).

После создания профиля тот появляется в списке доступных диалога Sign and Save. При использовании профиля вы всегда можете просмотреть о нем информацию — вам дается полный контроль над процессом сертифицирования продукта (Рис. 2).

Сертифицированный файл можно проверить на соответствие подписи. Это вполне реальное желание заказчика (пользователя, покупателя, заполнителя анкеты). Для этого достаточно выбрать инструмент Digital Signature, райт-кликнуть на области подписи, вызвать Свойства и нажать кнопку Validate. В этом же диалоге вы получите результат исследования файла (Рис. 3).

Рис. 1   Рис. 2   Рис. 3

Сертифицированный документ, обозначенный цифровой подписью, внушает доверие у получателя. Такие документы — норма в сфере электронного бизнеса, где по электронной почте отправляются не только, например, макеты верстки, но и бизнес-планы, деловые предложения, отчеты и копии документов, ранее отправлявшиеся по обычной почте в виде ксерокопий (Рис. 4).

Простые формы и ссылки

Созданный Дистиллером PDF несложно оснастить интернет-гиперссылками, так что документ становится интерактивным источником информации — пользователь может проследовать по ссылке, связанной по смыслу с излагаемым материалом. Гиперссылка добавляется инструментом Link Tool. Простой в использовании визард сделает всю работу в визуальном режиме. Чтобы ссылка вела к веб-ресурсу, необходимо в списке Action выбрать World Wide Web Link, после чего указать полный путь к ресурсу (кнопка Edit URL). Поля Appearance влияют лишь на отображение обозначенной ссылкой области (Рис. 5).

Рис. 4   Рис. 5

Добавляя форму в документ, пользователь может редактировать ее поля следующим образом:

указать тип поля, его имя и комментарии;

определить внешний вид;

указывать опции, действия и пр. (Рис. 6).

Наиболее часто употребляемыми свойствами полей формы можно считать тип поля, его имя и значение. Можно также указать шрифт, которым будет отображено поле (для некоторых полей это несущественно), однако следует учитывать сложности с отображением нелатинского текста в PDF (Рис. 7).

На рисунке показан текстовый контейнер с введенной кириллицей: во время редактирования формы кириллица отображается без проблем, однако при уходе фокуса текст принимает вид нечитабельного текста. В Acrobat 4 вообще следует избегать кириллицы.

Для полей типа Text флажок Read Only означает доступность текстового поля только для чтения, Required — соответственно, обязательность заполнения поля формы.

Как и их аналог в HTML, PDF-формы требуют отправки данных странице, которая обеспечит должную обработку данных. Самый простой способ — добавить кнопку и назначить ей действие типа Submit. Это значит, что данные всех полей формы автоматически будут переданы такой странице. Если данные содержат HTML-спецсимволы, во избежание некоторых проблем лучше перед отправкой информации через канал связи перекодировать спецсимволы по стандарту UTF (аналог функции PHP htmlspecialchars). После получения «искаженных» данных их необходимо перекодировать обратно. Функция кодировки спецзнаков для пересылки в PHP v.4 носит имя urlEncode, для восстановления информации используется urlDecode. В PDF-документе нет необходимости перекодировать входящие данные по UTF, однако отправка данных на удаленный сервер по протоколу HTTP предусматривает кодирование — для этого в формах PDF-документа существует флажок URL Encoded. Если же выставлена опция FDF (Forms Data Format), проблема исчезает, т.к. FDF-формы безболезненно передают незакодированную HTML-строку как аргумент страницы-приемника (на Рис. 8 это выделенный адрес страницы formacceptor.php).

Рис. 6   Рис. 7   Рис. 8

Чаще всего, однако, данные передаются скриптам, обрабатывающим их в виде HTML, — в таких случаях следует устанавливать флажок HTML Form. Если форма содержит поля, заполнение которых необязательно, можно установить флажок Include Empty Fields. В списке Exclude можно исключить поля формы (Рис. 9).

Отображение документа при открытии

Документ PDF может открываться в разных режимах: без панели инструментов, без меню, в полноэкранном режиме, с отцентровкой на экране. Все это регулируется в диалоге Open Info (меню File > Open Info)(Рис. 10).

Рис. 9   Рис. 10

На ум приходит мысль: может ли документ быть фальшивым, нельзя ли удалить цифровую подпись, а затем внедрить подложную? Да, можно, если не защитить файл от записи или изменения (опция доступна в диалоге Save As...). Запретить можно открытие файла, изменение, а также копирование выделение/текста, что вкупе с возможностью внедрения «водяных знаков» играет ключевую роль в корпоративном и коммерческом документообороте. Система шифрования типа Открытый/Личный ключ предотвращает фальсификацию в целом. 128-разрядный ключ (алгоритм RSA) является достаточно устойчивым ко взлому, так что формат PDF можно отнести к разряду относительно безопасного формата для малого и среднего бизнеса. Известен, однако, факт использования Portable Document Format специальными службами, а также крупными корпорациями-разработчиками ПО :-).

Полный текст публикации «PDF: история с продолжением» доступен также в Интернете по адресу http://www.vb.kiev.ua/articles.

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov