Содержание

Part1-2001
1. Основы информатики
Информация
Человек и информация
Обработка информации
Кодирование информации
Единицы измерения
Форматы файлов
Системы счисления
2-ная система
8-ми и 16-ная системы
Перевод чисел
Примеры кодирования
Компьютер
История развития
Типы компьютеров
Архитектура ЭВМ
Компоненты ЭВМ
Программы и ЭВМ
Вирусы
Право и ЭВМ
2. Операционные системы и сети
Операционные системы
MS DOS
MS Windows
ОС Linux
Особенности Linux
KDE
Окно shell
Работа с файлами
Переадресация
Перемещение по файлам
Права доступа
Копирование
Каталоги: mkdir и rmdir
Просмотр файлов
Перемещение
Удаление файлов
Работа с дискетой
Архивация файлов
Права доступа
Краткий справочник
Konqueror
Программа mc
Работа в сети
WWW
URL
Браузеры
Поисковые машины
E-mail
ICQ
Ssh, ftp, scp...
3. Графика на ЭВМ
Графические форматы
Растровая графика
Векторная графика
Средства работы
Paint
Знакомство с редактором
Редактирование
XPaint
Основные инструменты
Рабочее окно XPaint
Дополнительные возможности
GIMP
Интерфейс программы
Панель инструментов
Окно изображения
Работа с файлами
Создание
Открытие
Сохранение
В формат JPEG
В формате GIF
Инструменты выделения
Прямоугольник и эллипс
Лассо
Волшебная Палочка
Перо
Умные Ножницы
Работа со слоями
Основные приемы
Функции меню
Маски
Анимация
Редактор GFig
Дополнительные возможности
Фильтры
Скрипт-Фу
Логотипы
XFig
Объекты XFig
Панели инструментов
Главная панель
Панель объектов
Панель редактирования
Панель параметров
Панели информации
Горячие клавиши.
Ввод графики в ЭВМ
Цифровая фототехника
Виды сканеров
Особенности сканирования
Графические планшеты
4. Обработка текста
Форматы текстовых файлов
Кодировки русского текста
Редакторы plain-текста
NotePad
KEdit
KWrite
Редактор McEdit
Emacs
Работа с файлами
Редактирование
Макросы
Дополнительные
MS Word
Создание
Колонтитулы
Колонки
Списки
Таблицы
Графика
Формулы
StarWriter
Форматирование
Орфография
Поиск и замена
Колонтитулы
Списки
Колонки
Таблицы
Графика
Формулы
Netscape Composer
Форматирование текста
Вставка гиперссылок
Вставка изображений
Таблицы
KLyX
Форматирование
Списки
Таблицы
Формулы
5. Основы языка HTML
Структура HTML-документа
Заголовок документа
Тело документа
Цвет в HTML
Разделение на абзацы
Разрыв строки
Горизонтальные линии
Форматирование текста
Логическое
Физическое
Тег <PRE>
Графика в HTML
Гиперссылки
URL-адреса
Внутренние ссылки
Ссылка на e-mail
Списки
нумерованные
маркированные
определений
вложенные
Таблицы
Атрибуты тега <TABLE>
Выравнивание данных
Объединение ячеек
Цвет в таблицах
Фреймы
Контейнер <FRAMESET>
Параметры кадров
Тег <FRAME>
Организация ссылок
Мультимедиа в HTML
Формы
Тег <FORM>
Теги форм
Тег <TEXTAREA>
Тег <SELECT>
Тег <INPUT>
Тип поля ввода
Советы
6. DHTML
Стили и таблицы стилей
Использование стилей
Задание значений
Справочник по CSS
Классы стилей
Каскадность стилей
Применение CSS
Язык JavaScript
Рекомендации


Part1-2001

Учебник по курсу "Информатика и информационные технологии"

Часть 1

Данный учебник охватывает часть тем, изучаемых в рамках курса "Информатика и информационные технологии" и соответствует учебным планам, утвержденным на 2001-2002 уч. год.

Добавлены новые темы, пересмотрены и исправлены старые материалы. Соответствует печатной версии.
Следующий раздел


1. Основы информатики

Глава 1 Основы информатики

Термином информатика обозначают совокупность дисциплин, изучающих свойства информации, а также способы представления, накопления, обработки и передачи информации с помощью технических средств. В англоязычных странах применяют термин computer science -- компьютерная наука.

Теоретическую основу информатики образует группа фундаментальных наук, которую в равной степени можно отнести как к математике, так и к кибернетике: теория информации, теория алгоритмов, математическая логика, теория формальных языков и грамматик, комбинаторный анализ и т. д. Кроме них информатика включает такие разделы, как архитектура ЭВМ, операционные системы, теория баз данных, технология программирования и многие другие.

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


Информация

Информационные процессы

Термин информация ведет свое происхождение от латинского слова informatio, означающего разъяснение, изложение, осведомленность. Информацию мы передаем друг другу в устной и письменной форме, а также в форме жестов и знаков. Любую нужную информацию мы осмысливаем, передаем другим и делаем определенные умозаключения на ее основе.

Информацию мы извлекаем из учебников и книг, газет и журналов, телепередач и кинофильмов. Записываем ее в тетрадях и конспектах. В производственной деятельности информация передается в виде текстов и чертежей, справок и отчетов, таблиц и других документов. Такого рода информация может предоставляться и с помощью ЭВМ.

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

Информация, в какой бы форме она ни предоставлялась, является некоторым отражением реального или вымышленного мира. Поэтому информация -- это отражение предметного мира с помощью знаков и сигналов.

Стоит отметить, что абсолютно точное определение информации дать невозможно, это такое же первичное понятие, как точка или плоскость в геометрии.

Получение информации -- это получение фактов, сведений и данных о свойствах, структуре или взаимодействии объектов и явлений окружающего нас мира. Предметное содержание информации позволяет уяснить ее основные свойства -- достоверность, полноту, ценность, актуальность, ясность и понятность.

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


Человек и информация

Информационная деятельность человека

Накопление человечеством опыта и знаний при освоении природы смешалось с освоением информации. Именно этот процесс и привел к образованию инфосферы. Такое понятие, как обработка информации, появилось совсем недавно, но обрабатывать информацию люди начали еще в древние времена.

Сначала из поколения в поколение информация передавалась устно. Это были сведения о профессиональных навыках, например, о приемах охоты, обработки охотничьих трофеев, способах земледелия и др. Но затем информацию стали фиксировать в виде графических образов окружающего мира. Первые наскальные рисунки, изображающие животных, растения и людей, появились примерно 20-30 тысяч лет назад.

Начатый поиск более современных способов фиксирования информации привел к появлению письменности. На чем только люди не писали! В Индии -- на пальмовых листьях, в Вавилоне -- на глиняных плитках, на Руси пользовались берестой. Как видим, письменность -- новый шаг человечества в области хранения и передачи информации. Однако первым революционным явлением в этой сфере стало изобретение печатного станка, благодаря которому появилась книга и, таким образом, стало возможно массовое тиражирование профессиональных знаний, зафиксированных на материальном носителе.

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

Но книга является неудобным, сложным, дорогим, а главное "медленным" носителем информации. Вся многогранность содержания раскрывается человеку при перелистывании, чтении и рассматривании книги. Она не может непосредственно влиять на производственный процесс. Сначала человеку необходимо найти нужную ему книгу, освоить накопленные в ней знания, которые позже смогут дать толчок дальнейшему развитию производства. Книга, как носитель информации, сегодня уже отстает от стремительного продвижения человечества по пути освоения природы.

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

Шли годы, рос объем информации, которой обменивалось общество. Для сбора, переработки и распространения информации создавались издательства и типографии -- родилась информационная промышленность. Газеты, журналы и другие издания, выпускаемые большими тиражами, зачастую кроме полезной информации обрушивали на человека огромное количество и ненужных, бесполезных сведений. Для обозначения таких лишних сведений придумали специальный термин -- информационный шум. Помимо печати появились и другие средства массовой информации -- радио и телевидение. И общество привыкло к тому, что когда говорят об информации, то речь идет о сведениях, полученных через радио, газеты и т. д.

Революционным изобретением XX века явилась электронная вычислительная машина (ЭВМ). Она является как носителем информации, так и средством доставки ее потребителю. В совокупности с линиями связи, такими, как проводная, радио, космическая и оптическая, ЭВМ делает доступной любую часть гигантского океана информации, которая без непосредственного воздействия на человека может влиять на работу производственного оборудования, например, на станки с программным управлением.


Обработка информации

Технические средства хранения информации

Основной принцип хранения информации можно сформулировать следующим образом: сохраненная информация всегда имеет форму "следа", оттиска на каком-нибудь носителе.

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

Использование в качестве носителей информации фотопленки, магнитной ленты и лазерного диска требует специальных устройств -- преобразователей информации. Так, для записи информации на фотопленку требуется фотоаппарат, а для считывания информации -- проектор. Магнитные запись и считывание информации осуществляются с помощью магнитофона.

Характерной чертой всех этих типов носителей является необходимость наличия специальных технических устройств как для записи, так и для считывания информации. Это означает возможность механизации и автоматизации процессов записи и чтения информации, делает их независимыми от присутствия человека.

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

Такие современные материалы, как фотопленка и магнитная лента, способны удовлетворить большинству требований, но они не лишены недостатков. Общеизвестно, что со временем фотоснимки темнеют, прослушивание грампластинок сопровождается потрескиванием, а магнитные записи начинают "шуметь" после многократного проигрывания. Сегодня самый распространенный способ хранения информации -- магнитная запись. Но и она может быть испорчена под воздействием температуры или магнита. Для хранения небольших порций информации используют гибкие магнитные диски (floppy disks), на смену которым приходят Zip дискеты. Для хранения больших объемов информации применяют "жесткие" диски (hard disks), иногда называемые винчестерами.

Со временем объем информации, с которой работал человек и которую ему надо передать другому человеку, возрастал. Это привело к созданию нового типа носителя -- лазерного диска.

Лазерный диск -- трехслойный диск, изготовленный из стекла или прочной пластмассы. В нем между двумя тонкими защитными слоями пластмассы (стекла) помещен тонкий слой металлической фольги из серебра или даже из золота. Запись информации на такой диск осуществляется лучом лазера. Но записать информацию на лазерный диск можно всего один раз.

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

Подробнее об устройствах, предназначенных для хранения информации на ЭВМ, рассказывается в разделе "Периферийные и внутренние устройства".


Кодирование информации

Кодирование информации -- это процесс формирования определенного представления информации.

В более узком смысле под термином "кодирование" часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки.

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

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

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


Единицы измерения

Единицы измерения информации

Решая различные задачи, человек вынужден использовать информацию об окружающем нас мире. И чем более полно и подробно человеком изучены те или иные явления, тем подчас проще найти ответ на поставленный вопрос. Так, например, знание законов физики позволяет создавать сложные приборы, а для того, чтобы перевести текст на иностранный язык, нужно знать грамматические правила и помнить много слов.

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

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

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

Если подбросить монету и проследить, какой стороной она упадет, то мы получим определенную информацию. Обе стороны монеты "равноправны", поэтому одинаково вероятно, что выпадет как одна, так и другая сторона. В таких случаях говорят, что событие несет информацию в 1 бит. Если положить в мешок два шарика разного цвета, то, вытащив вслепую один шар, мы также получим информацию о цвете шара в 1 бит.

Единица измерения информации называется бит (bit) -- сокращение от английских слов binary digit, что означает двоичная цифра.

В компьютерной технике бит соответствует физическому состоянию носителя информации: намагничено -- не намагничено, есть отверстие -- нет отверстия. При этом одно состояние принято обозначать цифрой 0, а другое -- цифрой 1. Выбор одного из двух возможных вариантов позволяет также различать логические истину и ложь. Последовательностью битов можно закодировать текст, изображение, звук или какую-либо другую информацию. Такой метод представления информации называется двоичным кодированием (binary encoding).

В информатике часто используется величина, называемая байтом (byte) и равная 8 битам. И если бит позволяет выбрать один вариант из двух возможных, то байт, соответственно, 1 из 256 (28). В большинстве современных ЭВМ при кодировании каждому символу соответствует своя последовательность из восьми нулей и единиц, т. е. байт. Соответствие байтов и символов задается с помощью таблицы, в которой для каждого кода указывается свой символ. Так, например, в широко распространенной кодировке Koi8-R буква "М" имеет код 11101101, буква "И" -- код 11101001, а пробел -- код 00100000.

Наряду с байтами для измерения количества информации используются более крупные единицы:

1 Кбайт (один килобайт) = 210 байт = 1024 байта;
1 Мбайт (один мегабайт) = 210 Кбайт = 1024 Кбайта;
1 Гбайт (один гигабайт) = 210 Мбайт = 1024 Мбайта.

Пример
Книга содержит 100 страниц; на каждой странице -- 35 строк, в каждой строке -- 50 символов. Рассчитаем объем информации, содержащийся в книге.

Страница содержит 35 x 50 = 1750 байт информации. Объем всей информации в книге (в разных единицах):
1750 x 100 = 175000 байт.
175000 / 1024 = 170,8984 Кбайт.
170,8984 / 1024 = 0,166893 Мбайт.

Задания

  1. Сколько Кб составляет сообщение, содержащее 12288 битов?
  2. Письмо занимает 2 страницы по 25 строк. В каждой строке записано по 40 символов. Каков объем информации в письме?


Форматы файлов

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

Понятие файла менялось с течением времени. Операционные системы первых больших ЭВМ представляли файл, как хранилище для базы данных и, поэтому файл являлся набором записей. Обычно все записи в файле были одного размера, часто по 80 символов каждая. При этом много времени уходило на поиск и запись данных в большой файл.

В конце 60-х годов наметилась тенденция к упрощению операционных систем, что позволило использовать их на менее мощных компьютерах. Это нашло свое отражение и в развитии операционной системы Unix. В Unix под файлом понималась последовательность байтов. Стало легче хранить данные на диске, так как не надо было запоминать размер записи.

Unix оказал очень большое влияние на другие операционные системы персональных компьютеров. Почти все они поддерживают идею Unix о том, что файл -- это просто последовательность байтов. Файлы, представляющие собой поток данных, стали использоваться при обмене информацией между компьютерными системами. Если используется более сложная структура файла (как в операционных системах OS/2 и Macintosh), она всегда может быть преобразована в поток байтов, передана и на другом конце канала связи воссоздана в исходном виде.

Итак, мы можем считать, что файл -- это поименованная последовательность байтов.

Файловая структура представляет собой систему хранения файлов на запоминающем устройстве, например, диске. Файлы организованы в каталоги (иногда называемые директориями или папками). Любой каталог может содержать произвольное число подкаталогов, в каждом из которых могут храниться файлы и другие каталоги.

Способ, которым данные организованы в байты, называется форматом файла.

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

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

Все файлы условно можно разделить на две части -- текстовые и двоичные.

Текстовые файлы -- наиболее распространенный тип данных во всем компьютерном мире. Для хранения каждого символа чаще всего отводится один байт, а кодирование текстовых файлов выполняют с помощью специальных таблиц, в которых каждому символу соответствует определенное число, не превышающее 255. Файл, для кодировки которого используется только 127 первых чисел, называется ASCII-файлом (сокращение от American Standard Code for Information Intercange -- американский стандартный код для обмена информацией), но в таком файле не могут быть представлены буквы, отличные от латиницы (в том числе и русские). Большинство национальных алфавитов можно закодировать с помощью восьмибитной таблицы. Для русского языка наиболее популярны на данный момент три кодировки: Koi8-R, Windows-1251 и, так называемая, альтернативная (alt) кодировка. Подробнее о кодировании русского текста рассказано в главе "Обработка документов".

Такие языки, как китайский, содержат значительно больше 256 символов, поэтому для кодирования каждого из них используют несколько байтов. Для экономии места зачастую применяется следующий прием: некоторые символы кодируются с помощью одного байта, в то время как для других используются два или более байтов. Одной из попыток обобщения такого подхода является стандарт Unicode, в котором для кодирования символов используется диапазон чисел от нуля до 65 536. Такой широкий диапазон позволяет представлять в численном виде символы языка людей из любого уголка планеты.

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

Двоичные файлы, в отличие от текстовых, не так просто просмотреть и в них, обычно, нет знакомых нам слов -- лишь множество непонятных символов. Эти файлы не предназначены непосредственно для чтения человеком. Примерами двоичных файлов являются исполняемые программы и файлы с графическими изображениями.


Системы счисления

Разнообразные системы счисления, которые существовали раньше и которые используются в наше время, можно разделить на непозиционные и позиционные. Знаки, используемые при записи чисел, называются цифрами.

В непозиционных системах счисления от положения цифры в записи числа не зависит величина, которую она обозначает. Примером непозиционной системы счисления является римская система, в которой в качестве цифр используются латинские буквы:

I | V | X | L | C | D | M
1 | 5 | 10 | 50 | 100 | 500 | 1000
Например, VI = 5 + 1 = 6, а IX = 10 -- 1 = 9.

В позиционных системах счисления величина, обозначаемая цифрой в записи числа, зависит от ее позиции. Количество используемых цифр называется основанием системы счисления. Место каждой цифры в числе называется позицией. Первая известная нам система, основанная на позиционном принципе -- шестидесятeричная вавилонская. Цифры в ней были двух видов, одним из которых обозначались единицы, другим -- десятки. Следы вавилонской системы сохранились до наших дней в способах измерения и записи величин углов и промежутков времени.

Однако наибольшую ценность для нас имеет индо-арабская десятичная система. Индийцы первыми использовали ноль для указания позиционной значимости величины в строке цифр. Эта система получила название десятичной, так как в ней десять цифр.

Для того чтобы лучше понять различие позиционной и непозиционной систем счисления, рассмотрим пример сравнения двух чисел. В позиционной системе счисления сравнение двух чисел происходит следующим образом: в рассматриваемых числах слева направо сравниваются цифры, стоящие в одинаковых позициях. Большая цифра соответствует большему значению числа. Например, для чисел 123 и 234, 1 меньше 2, поэтому число 234 больше, чем число 123. В непозиционной системе счисления это правило не действует. Примером этого может служить сравнение двух чисел IX и VI. Несмотря на то, что I меньше, чем V, число IX больше, чем число VI.

Далее мы будем рассматривать только позиционные системы счисления.

Основание системы счисления, в которой записано число, обычно обозначается нижним индексом. Например, 5557 -- число, записанное в семеричной системе счисления. Если число записано в десятичной системе, то основание, как правило, не указывается. Основание системы -- это тоже число, и его мы будем указывать в обычной десятичной системе. Вообще, число x может быть представлено в системе с основанием p, как x=an*pn+an-1*pn-1+ a1*p1+a0*p0, где an...a0 -- цифры в представлении данного числа. Так, например,

103510=1*103+0*102+3*101+5*100;
10102 = 1*23+0*22+1*21+0*20 = 10.

Наибольший интерес при работе на ЭВМ представляют системы счисления с основаниями 2, 8 и 16. Вообще говоря, этих систем счисления обычно хватает для полноценной работы как человека, так и вычислительной машины. Однако иногда в силу различных обстоятельств все-таки приходится обращаться к другим системам счисления, например к троичной, семеричной или системе счисления по основанию 32.

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

Почему же мы не пользуемся другими системами счисления? В основном потому, что в повседневной жизни мы привыкли пользоваться десятичной системой счисления, и нам не требуется никакая другая. В вычислительных же машинах используется двоичная система счисления, так как оперировать над числами, записанными в двоичном виде, довольно просто.

Часто в информатике используют шестнадцатеричную систему, так как запись чисел в ней значительно короче записи чисел в двоичной системе. Может возникнуть вопрос: почему бы не использовать для записи очень больших чисел систему счисления, например по основанию 50? Для такой системы счисления необходимы 10 обычных цифр плюс 40 знаков, которые соответствовали бы числам от 10 до 49 и вряд ли кому-нибудь понравится работать с этими сорока знаками. Поэтому в реальной жизни системы счисления по основанию, большему 16, практически не используются.


Дополнительный код и его применение

При выполнении арифметических действий результат может оказаться не только положительным, но и отрицательным числом. Как представить знак "-" в схемах машины, если в них фиксируется лишь два состояния -- 0 или 1? Договорились знак числа определять самым левым, старшим битом. Если число положительное, то знаковый разряд равен 0, а если отрицательное, то 1. Решение о выделении знакового разряда, конечно, сказалось на максимальных величинах представляемых чисел. Если для хранения числа отводится два байта (16 разрядов), то разместить там можно только числа от -32768 до +32767. Следует отметить, что даже если под хранение чисел отводить не два, а более байтов, то и тогда невозможно оперировать всем множеством целых чисел; всегда существует конечный диапазон представимых в ЭВМ чисел.

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

Число | Прямой код | Обратный код | Дополнительный код
-3 | 1011 | 1100 | 1101
-2 | 1010 | 1101 | 1110
-1 | 1001 | 1110 | 1111
0 | 0000
1 | 0001
2 | 0010
3 | 0011

Если двигаться вниз по столбцам приведенной таблицы, то в дополнительном коде каждое последующее число получается прибавлением единицы к предыдущему. Важно, что это свойство не нарушается и при переходе к неотрицательным числам, если не учитывать перенос за пределы четвертого разряда. Эта особенность дополнительного кода и явилась причиной его применения в миникомпьютерах и микрокомпьютерах, а также во многих больших ЭВМ.

Назад


2-ная система

Двоичная система счисления

Люди предпочитают десятичную систему, вероятно, потому, что с древних времен считали по пальцам. Но, не всегда и не везде люди пользовались десятичной системой счисления. В Китае, например, долгое время применялась пятеричная система счисления. В ЭВМ используют двоичную систему потому, что она имеет ряд преимуществ перед другими:

  • для ее реализации используются технические элементы с двумя возможными состояниями (есть ток -- нет тока, намагничен -- ненамагничен);
  • представление информации посредством только двух состояний надежно и помехоустойчиво;
  • возможно применение аппарата булевой алгебры для выполнения логических преобразований информации;
  • двоичная арифметика проще десятичной (двоичные таблицы сложения и умножения предельно просты).

В двоичной системе счисления всего две цифры, называемые двоичными (binary digits). Сокращение этого наименования привело к появлению термина бит, ставшего названием разряда двоичного числа. Веса разрядов в двоичной системе изменяются по степеням двойки. Поскольку вес каждого разряда умножается либо на 0, либо на 1, то в результате значение числа определяется как сумма соответствующих значений степеней двойки. Если какой-либо разряд двоичного числа равен 1, то он называется значащим разрядом. Запись числа в двоичном виде намного длиннее записи в десятичной системе счисления.

Арифметические действия, выполняемые в двоичной системе, подчиняются тем же правилам, что и в десятичной системе. Только в двоичной системе перенос единиц в старший разряд возникает чаще, чем в десятичной. Вот как выглядит таблица сложения в двоичной системе:

0 + 0 = 0 | 0 + 1 = 1
1 + 0 = 1 | 1 + 1 = 0 (перенос в старший разряд)

Таблица умножения для двоичных чисел еще проще:

0 * 0 = 0 0 * 1 = 0 1 * 0 = 0 1 * 1 = 1

Рассмотрим подробнее, как происходит процесс умножения двоичных чисел. Пусть надо умножить число 1101 на 101 (оба числа в двоичной системе счисления). Машина делает это следующим образом: она берет число 1101 и, если первый элемент второго множителя равен 1, то она заносит его в сумму. Затем сдвигает число 1101 влево на одну позицию, получая тем самым 11010, и если, второй элемент второго множителя равен единице, то тоже заносит его в сумму. Если элемент второго множителя равен нулю, то сумма не изменяется.

Двоичное деление основано на методе, знакомом вам по десятичному делению, т. е. сводится к выполнению операций умножения и вычитания. Выполнение основной процедуры -- выбор числа, кратного делителю и предназначенного для уменьшения делимого, здесь проще, так как таким числом могут быть только либо 0, либо сам делитель.

Следует отметить, что большинство калькуляторов, реализованных на ЭВМ (в том числе и KCalc) позволяют осуществлять работу в системах счисления с основаниями 2, 8, 16 и, конечно, 10.


8-ми и 16-ная системы

8-ная и 16-ная системы счисления

При наладке аппаратных средств ЭВМ или создании новой программы возникает необходимость "заглянуть внутрь" памяти машины, чтобы оценить ее текущее состояние. Но там все заполнено длинными последовательностями нулей и единиц двоичных чисел. Эти последовательности очень неудобны для восприятия человеком, привыкшим к более короткой записи десятичных чисел. Кроме того, естественные возможности человеческого мышления не позволяют оценить быстро и точно величину числа, представленного, например, комбинацией из 16 нулей и единиц.

Для облегчения восприятия двоичного числа решили разбивать его на группы разрядов, например, по три или четыре разряда. Эта идея оказалась очень удачной, так как последовательность из трех бит имеет 8 комбинаций, а последовательность из 4 бит -- 16. Числа 8 и 16 являются степенями двойки, поэтому легко находить соответствие с двоичными числами. Развивая эту идею, пришли к выводу, что группы разрядов можно закодировать, сократив при этом длину последовательности знаков. Для кодировки трех битов требуется восемь цифр, поэтому взяли цифры от 0 до 7 десятичной системы. Для кодировки же четырех битов необходимо шестнадцать знаков; для этого взяли 10 цифр десятичной системы и 6 букв латинского алфавита: A, B, C, D, E, F. Полученные системы, имеющие основания 8 и 16, назвали соответственно восьмеричной и шестнадцатеричной.

В восьмеричной (octal) системе счисления используются восемь различных цифр 0, 1, 2, 3, 4, 5, 6, 7. Основание системы -- 8. При записи отрицательных чисел перед последовательностью цифр ставят знак минус. Сложение, вычитание, умножение и деление чисел, представленных в восьмеричной системе, выполняются весьма просто подобно тому, как это делают в общеизвестной десятичной системе счисления. В различных языках программирования запись восьмеричных чисел начинается с 0, например, запись 011 означает число 9.

В шестнадцатеричной (hexadecimal) системе счисления применяется десять различных цифр и шесть первых букв латинского алфавита. При записи отрицательных чисел слева от последовательности цифр ставят знак минус. Для того чтобы при написании компьютерных программ отличить числа, записанные в шестнадцатеричной системе, от других, перед числом ставят 0x. То есть 0x11 и 11 -- это разные числа. В других случаях можно указать основание системы счисления нижним индексом.

Шестнадцатеричная система счисления широко используется при задании различных оттенков цвета при кодировании графической информации (модель RGB). Так, в редакторе гипертекста Netscape Composer можно задавать цвета для фона или текста как в десятичной, так и шестнадцатеричной системах счисления.


Перевод чисел

Перевод чисел из одной системы счисления в другую

Наиболее часто встречающиеся системы счисления -- это двоичная, шестнадцатеричная и десятичная. Как же связаны между собой представления числа в различных системах счисления? Рассмотрим различные способы перевода чисел из одной системы счисления в другую на конкретных примерах.

Пусть требуется перевести число 567 из десятичной в двоичную систему. Сначала определим максимальную степень двойки, такую, чтобы два в этой степени было меньше или равно исходному числу. В нашем случае это 9, т. к. 29=512, а 210=1024, что больше начального числа. Таким образом, мы получим число разрядов результата. Оно равно 9+1=10. Поэтому результат будет иметь вид 1ххххххххх, где вместо х могут стоять любые двоичные цифры. Найдем вторую цифру результата. Возведем двойку в степень 9 и вычтем из исходного числа: 567-29=55. Остаток сравним с числом 28=256. Так как 55 меньше 256, то девятый разряд будет нулем, т. е. результат примет вид 10хххххххх. Рассмотрим восьмой разряд. Так как 27=128>55, то и он будет нулевым.

Седьмой разряд также оказывается нулевым. Искомая двоичная запись числа принимает вид 1000хххххх. 25=32<55, поэтому шестой разряд равен 1 (результат 10001ххххх). Для остатка 55-32=23 справедливо неравенство 24=16<23, что означает равенство единице пятого разряда. Действуя аналогично, получаем в результате число 1000110111. Мы разложили данное число по степеням двойки:

567=1*29+0*28+0*27+0*26+1*25+1*24+0*23+1*22 +1*21+1*20

При другом способом перевода чисел используется операция деления в столбик. Рассмотрим то же самое число 567. Разделив его на 2, получим частное 283 и остаток 1. Проведем ту же самую операцию с числом 283. Получим частное 141, остаток 1. Опять делим полученное частное на 2, и так до тех пор, пока частное не станет меньше делителя. Теперь для того, чтобы получить число в двоичной системе счисления, достаточно записать последнее частное, то есть 1, и приписать к нему в обратном порядке все полученные в процессе деления остатки.

Результат, естественно, не изменился: 567 в двоичной системе счисления записывается как 1000110111.

Эти два способа применимы при переводе числа из десятичной системы в систему с любым основанием. Для закрепления навыков рассмотрим перевод числа 567 в систему счисления с основанием 16.

Сначала осуществим разложение данного числа по степеням основания. Искомое число будет состоять из трех цифр, т. к. 162=256 < 567 < 163=4096. Определим цифру старшего разряда. 2*162=512<567<3*162=768, следовательно искомое число имеет вид 2хх, где вместо х могут стоять любые шестнадцатеричные цифры. Остается распределить по следующим разрядам число 55 (567-512). 3*16=48<55<4*16=64, значит во втором разряде находится цифра 3. Последняя цифра равна 7 (55-48). Искомое шестнадцатеричное число равно 237.

Второй способ состоит в осуществлении последовательного деления в столбик, с единственным отличием в том, что делить надо не на 2, а на 16, и процесс деления заканчивается, когда частное становится строго меньше 16.

Конечно, не надо забывать и о том, что для записи числа в шестнадцатеричной системе счисления, необходимо заменить 10 на A, 11 на B и так далее.

Операция перевода в десятичную систему выглядит гораздо проще, так как любое десятичное число можно представить в виде x = a0*pn + a1*pn-1 + ... + an-1*p1 + an*p0, где a0 ... an -- это цифры данного числа в системе счисления с основанием p.

Пример
Переведем число 4A3F в десятичную систему. По определению, 4A3F= 4*163+A*162+3*16+F. Заменив A на 10, а F на 15, получим 4*163+10*162+3*16+15= 19007.

Пожалуй, проще всего осуществляется перевод чисел из двоичной системы в системы с основанием, равным степеням двойки (8 и 16), и наоборот. Для того чтобы целое двоичное число записать в системе счисления с основанием 2n, нужно

  • данное двоичное число разбить справа налево на группы по n-цифр в каждой;
  • если в последней левой группе окажется меньше n разрядов, то дополнить ее нулями до нужного числа разрядов;
  • рассмотреть каждую группу, как n-разрядное двоичное число, и заменить ее соответствующей цифрой в системе счисления с основанием 2n.

Двоично-шестнадцатеричная таблица

2-ная | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111
16-ная | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
2-ная | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111
16-ная | 8 | 9 | A | B | C | D | E | F

Двоично-восьмеричная таблица

2-ная | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111
8-ная | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7

Задания
1. | Переведите в десятичную систему счисления:
а) 100011102; б) 123458; в) AA02D34B16.
2. | Сравните два числа:
а) 10268 и 21616; в) 111112 и 111113.


Примеры кодирования

Примеры двоичного кодирования информации

Среди всего разнообразия информации, обрабатываемой на компьютере, значительную часть составляют числовая, текстовая, графическая и аудиоинформация. Познакомимся с некоторыми способами кодирования этих типов информации в ЭВМ.

Кодирование чисел

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

Множество целых чисел, представимых в памяти ЭВМ, ограничено. Диапазон значений зависит от размера области памяти, используемой для размещения чисел. В k-разрядной ячейке может храниться 2k различных значений целых чисел.

Чтобы получить внутреннее представление целого положительного числа N, хранящегося в k-разрядном машинном слове, необходимо:

1) перевести число N в двоичную систему счисления;
2) полученный результат дополнить слева незначащими нулями до k разрядов.

Пример
Получить внутреннее представление целого числа 1607 в 2-х байтовой ячейке.
Переведем число в двоичную систему: 160710 = 110010001112. Внутреннее представление этого числа в ячейке будет следующим: 0000 0110 0100 0111.

Для записи внутреннего представления целого отрицательного числа (-N) необходимо:

1) получить внутреннее представление положительного числа N;
2) обратный код этого числа заменой 0 на 1 и 1 на 0;
3) полученному числу прибавить 1.

Пример
Получим внутреннее представление целого отрицательного числа -1607. Воспользуемся результатом предыдущего примера и запишем внутреннее представление положительного числа 1607: 0000 0110 0100 0111. Инвертированием получим обратный код: 1111 1001 1011 1000. Добавим единицу: 1111 1001 1011 1001 -- это и есть внутреннее двоичное представление числа -1607.

Формат с плавающей точкой использует представление вещественного числа R в виде произведения мантиссы m на основание системы счисления n в некоторой целой степени p, которую называют порядком: R = m * n p.

Представление числа в форме с плавающей точкой неоднозначно. Например, справедливы следующие равенства:
12.345 = 0.0012345 x 104 = 1234.5 x 10-2 = 0.12345 x 102

Чаще всего в ЭВМ используют нормализованное представление числа в форме с плавающей точкой. Мантисса в таком представлении должна удовлетворять условию: 0.1p <= m < 1p. Иначе говоря, мантисса меньше 1 и первая значащая цифра -- не ноль (p -- основание системы счисления).

В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранятся), так для числа 12.345 в ячейке памяти, отведенной для хранения мантиссы, будет сохранено число 12345. Для однозначного восстановления исходного числа остается сохранить только его порядок, в данном примере -- это 2.

Кодирование текста

Множество символов, используемых при записи текста, называется алфавитом. Количество символов в алфавите называется его мощностью.

Для представления текстовой информации в компьютере чаще всего используется алфавит мощностью 256 символов. Один символ из такого алфавита несет 8 бит информации, т. к. 28 = 256. Но 8 бит составляют один байт, следовательно, двоичный код каждого символа занимает 1 байт памяти ЭВМ.

Все символы такого алфавита пронумерованы от 0 до 255, а каждому номеру соответствует 8-разрядный двоичный код от 00000000 до 11111111. Этот код является порядковым номером символа в двоичной системе счисления.

Для разных типов ЭВМ и операционных систем используются различные таблицы кодировки, отличающиеся порядком размещения символов алфавита в кодовой таблице. Международным стандартом на персональных компьютерах является уже упоминавшаяся таблица кодировки ASCII.

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

Стандартными в этой таблице являются только первые 128 символов, т. е. символы с номерами от нуля (двоичный код 00000000) до 127 (01111111). Сюда входят буквы латинского алфавита, цифры, знаки препинания, скобки и некоторые другие символы. Остальные 128 кодов, начиная со 128 (двоичный код 10000000) и кончая 255 (11111111), используются для кодировки букв национальных алфавитов, символов псевдографики и научных символов. О кодировании символов русского алфавита рассказывается в главе "Обработка документов".

Кодирование графической информации

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

Растровые изображения представляют собой однослойную сетку точек, называемых пикселами (pixel, от англ. picture element). Код пиксела содержит информации о его цвете.

Для черно-белого изображения (без полутонов) пиксел может принимать только два значения: белый и черный (светится -- не светится), а для его кодирования достаточно одного бита памяти: 1 -- белый, 0 -- черный.

Пиксел на цветном дисплее может иметь различную окраску, поэтому одного бита на пиксел недостаточно. Для кодирования 4-цветного изображения требуются два бита на пиксел, поскольку два бита могут принимать 4 различных состояния. Может использоваться, например, такой вариант кодировки цветов: 00 -- черный, 10 -- зеленый, 01 -- красный, 11 -- коричневый.

На RGB-мониторах все разнообразие цветов получается сочетанием базовых цветов -- красного (Red), зеленого (Green), синего (Blue), из которых можно получить 8 основных комбинаций:

R | G | B | цвет
0 | 0 | 0 | черный
0 | 0 | 1 | синий
0 | 1 | 0 | зеленый
0 | 1 | 1 | голубой

R | G | B | цвет
1 | 0 | 0 | красный
1 | 0 | 1 | розовый
1 | 1 | 0 | коричневый
1 | 1 | 1 | белый

Разумеется, если иметь возможность управлять интенсивностью (яркостью) свечения базовых цветов, то количество различных вариантов их сочетаний, порождающих разнообразные оттенки, увеличивается. Количество различных цветов -- К и количество битов для их кодировки -- N связаны между собой простой формулой: 2N = К.

В противоположность растровой графике векторное изображение многослойно. Каждый элемент векторного изображения -- линия, прямоугольник, окружность или фрагмент текста -- располагается в своем собственном слое, пикселы которого устанавливаются независимо от других слоев. Каждый элемент векторного изображения является объектом, который описывается с помощью специального языка (математических уравнения линий, дуг, окружностей и т. д.). Сложные объекты (ломаные линии, различные геометрические фигуры) представляются в виде совокупности элементарных графических объектов.

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

Кодирование звука

Из курса физики вам известно, что звук -- это колебания воздуха. Если преобразовать звук в электрический сигнал (например, с помощью микрофона), мы увидим плавно изменяющееся с течением времени напряжение. Для компьютерной обработки такой -- аналоговый -- сигнал нужно каким-то образом преобразовать в последовательность двоичных чисел.

Поступим следующим образом. Будем измерять напряжение через равные промежутки времени и записывать полученные значения в память компьютера. Этот процесс называется дискретизацией (или оцифровкой), а устройство, выполняющее его -- аналого-цифровым преобразователем (АЦП).

Для того чтобы воспроизвести закодированный таким образом звук, нужно выполнить обратное преобразование (для него служит цифро-аналоговый преобразователь -- ЦАП), а затем сгладить получившийся ступенчатый сигнал.

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

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

Человек издавна использует довольно компактный способ представления музыки -- нотную запись. В ней специальными символами указывается, какой высоты звук, на каком инструменте и как сыграть. Фактически, ее можно считать алгоритмом для музыканта, записанным на особом формальном языке. В 1983 г. ведущие производители компьютеров и музыкальных синтезаторов разработали стандарт, определивший такую систему кодов. Он получил название MIDI.

Конечно, такая система кодирования позволяет записать далеко не всякий звук, она годится только для инструментальной музыки. Но есть у нее и неоспоримые преимущества: чрезвычайно компактная запись, естественность для музыканта (практически любой MIDI-редактор позволяет работать с музыкой в виде обычных нот), легкость замены инструментов, изменения темпа и тональности мелодии.

Заметим, что существуют и другие, чисто компьютерные, форматы записи музыки. Среди них следует отметить формат MP3, позволяющий с очень большим качеством и степенью сжатия кодировать музыку. При этом вместо 18--20 музыкальных композиций на стандартный компакт-диск (CDROM) помещается около 200. Одна песня занимает примерно 3,5 Mb, что позволяет пользователям сети Интернет легко обмениваться музыкальными композициями.


Компьютер

Компьютер - универсальная информационная машина

Одно из основных назначений компьютера -- обработка и хранение информации. С появлением ЭВМ стало возможным оперировать немыслимыми ранее объемами информации. В электронную форму переводят библиотеки, содержащие научную и художественную литературы. Старые фото- и кино-архивы обретают новую жизнь в цифровой форме. Далее мы рассмотрим, как увеличивались возможности компьютера, какова его история, назначение его устройств и принципы управления.


История развития

История развития ЭВМ

Всякая новая техника создается, когда возникает большая общественная потребность в ней. К середине нашего века научно-технический прогресс привел к необходимости облегчить труд ученых и инженеров, ускорить выполнение громоздких расчетов и повысить их точность. Автоматизация вычислений, создание мощного, быстродействующего и точного электронного арифмометра -- вот о чем думали специалисты -- творцы первых ЭВМ. Никто в те далекие теперь годы и не помышлял о будущем информационном перевороте; решалась скромная, на первый взгляд чисто техническая задача. Да и возможности первых образцов вычислительных машин оказались небольшими.

Еще в годы второй мировой войны в США была собрана из обычных электромагнитных реле, которых тогда были тысячи на любой телефонной станции, вычислительная машина "Марк-1". Считала она в привычной десятичной системе счисления -- телефонные реле имели как раз десять позиций своих контактов. Работала машина неторопливо -- пока реле отщелкают свое, можно было вручную все посчитать. Поэтому вскоре после войны появились машины на электронных лампах: в США -- ENIAC, а в СССР -- МЭСМ (малая электронно-счетная машина), которую создал коллектив под руководством С.А. Лебедева. Ламповые ЭВМ уже оказались в состоянии выполнять сотни и тысячи арифметических или логических операций за одну секунду. Они могли обеспечить высокую точность вычислений. Человек уже не мог соперничать с такой машиной.

Жизнь первого поколения ЭВМ оказалась короткой -- около десяти лет. Электронные лампы грелись, потребляли много электроэнергии, были громоздки (так, например, машина ENIAC весила 30 тонн, имела 18 тысяч электронных ламп и потребляла 150 киловатт). И что еще хуже -- часто выходили из строя. Над компьютерщиками продолжали посмеиваться: чтобы сложить, скажем, два числа, требовалось написать программу из многих машинных команд. Например, такую: "Ввести в машину первое слагаемое; ввести второе; переслать из памяти первое слагаемое в арифметическое устройство (arithmetic unit); переслать в арифметическое устройство второе слагаемое и вычислить сумму; переслать результат в память; вывести это число из памяти машины и напечатать его". Каждую команду и оба слагаемых "набивали" на перфокарты и только потом вводили колоду перфокарт в компьютер и ждали, когда протарахтит печатающее устройство (printing device) и на выползающей из него бумажной ленте будет виден результат -- искомая сумма.

В конце пятидесятых -- начале шестидесятых годов на смену электронной лампе пришел компактный и экономичный прибор -- транзистор (transistor). Компьютеры сразу стали производительнее и компактнее, уменьшилось потребление электроэнергии. ЭВМ второго поколения "научились" программировать сами для себя. Появились системы автоматизации программирования, состоящие из алгоритмических языков (algorithmic language) и трансляторов (translator) для них. Теперь пользователь изучал язык ЭВМ, приближенный к языку научных, инженерных или экономических расчетов. Например, Фортран или Алгол-60.

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

Прошло всего 7--8 лет, и это поколение буквально вытолкнули машины следующего, третьего поколения. Перевод вычислительной техники на интегральные микросхемы серьезно удешевил ее, поднял возможности и позволил начать новый этап ее практического применения. Компьютеры вторглись -- уже не штучно, а в массовом порядке -- практически во все сферы науки, экономики, управления.

Развитие микроэлектроники позволило создать и освоить технологию интегральных схем с особо большой плотностью компоновки. На одном кристалле размером меньше ногтя стали размещать не десятки и сотни, а десятки тысяч транзисторов и других элементов. Большие интегральные схемы (very large scale integration) составили техническую основу, элементную базу ЭВМ четвертого поколения. Их производительность возросла фантастически -- до сотен миллионов операций в секунду.

Подлинный переворот в автоматике и управлении произвели появившиеся в семидесятые годы микропроцессоры и микро-ЭВМ -- сверхминиатюрные изделия вычислительной техники. Малый вес и габариты, ничтожное электропотребление -- все это позволило встраивать "монолитные" микро-ЭВМ и микропроцессорные наборы непосредственно в средства связи, машины, механизмы, приборы и другие технические устройства, чтобы наилучшим образом управлять их работой и контролировать ее.

ЭВМ третьего-четвертого поколения стали многоязычными и многопрограммными: они получили возможность вести диалог со многими пользователями одновременно и решать задачи, запрограммированные на разных языках.

Основное направление в развитии современных компьютеров (пятого и шестого поколения) -- разработка машины, более похожей на человека по способам ввода и хранения информации и методам решения задач. Различные области информатики занимаются изучением этих проблем -- задач искусственного интеллекта (artificial intelligence), экспертных систем (expert systems) и представления информации (information presentation).


Типы компьютеров

Типы и назначение компьютеров

Существование различных типов компьютеров определяется различием задач, для решения которых они предназначены. С течением времени появляются новые типы задач, что приводит к появлению новых типов компьютеров. Поэтому приведенное ниже деление очень условно.

Различают:

  • суперкомпьютеры;
  • специализированные компьютеры-серверы;
  • встроенные компьютеры-невидимки (микропроцессоры);
  • персональные компьютеры.

Для выполнения изначального назначения компьютеров -- вычислений -- на рубеже 60--70 годов были созданы специализированные ЭВМ, так называемые суперкомпьютеры.

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

Одной из ведущих компаний мира в производстве суперкомпьютеров является компания Cray Research. Ее основатель, человек-легенда Сеймур Крей, уже в середине 70-х годов построил компьютер Cray-1, который поражал мир своим быстродействием: десятки и даже сотни миллионов арифметических операций в секунду.

Как известно, скорость распространения любого сигнала не превышает скорости света в вакууме -- 300 тысяч километров в секунду, или 300 миллионов метров в секунду. Если компьютер выполняет 300 миллионов операций в секунду, то за время выполнения одной операции сигнал успевает пройти не более одного метра. Отсюда следует, что расстояние между частями суперкомпьютера, выполняющими одну операцию, не может превосходить нескольких десятков сантиметров. И действительно, суперкомпьютеры компании Cray были очень компактны и выглядели как "бублик" диаметром менее двух метров. Этот "бублик" занимался только вычислениями. Для общения с человеком и доставки данных для вычислений к "бублику" были подключены несколько достаточно производительных обычных компьютеров.

Компьютер, работающий в локальной или глобальной сети, может специализироваться на оказании информационных услуг другим компьютерам, на обслуживании других компьютеров. Такой компьютер называется сервером от английского слова serve (в переводе -- обслуживать, управлять). В локальной сети один из компьютеров может выполнять функции файлового сервера, т. е. использоваться для долговременного хранения файлов.

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

В классе серверов выделяется подкласс суперсерверов, необходимых в тех случаях, когда, с одной стороны, желательна централизация данных, а с другой стороны, к этим данным необходимо обеспечить доступ очень большому количеству потребителей.

Кроме привычных компьютеров с клавиатурами, мониторами, дисководами, сегодняшний мир вещей наполнен компьютерами-невидимками. Микропроцессор представляет собой компьютер в миниатюре. Кроме обрабатывающего блока, он содержит блок управления и даже память (внутренние ячейки памяти). Это значит, что микропроцессор способен автономно выполнять все необходимые действия с информацией. Многие компоненты современного персонального компьютера содержат внутри себя миниатюрный компьютер. Массовое распространение микропроцессоры получили и в производстве, там где управление может быть сведено к отдаче ограниченной последовательности команд.

Микропроцессоры незаменимы в современной технике. Например, управление современным двигателем -- обеспечение экономии расхода топлива, ограничение максимальной скорости движения, контроль исправности и т. д. -- немыслимо без использования микропроцессоров. Еще одной перспективной сферой их использования является бытовая техника -- применение микропроцессоров придает ей новые потребительские качества.

В 1975 году появился первый персональный компьютер. С самого начала их выпуска стало ясно, что невысокая цена и достаточные вычислительные возможности этого нового класса компьютеров будут способствовать их широкому распространению.

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

В последние годы появилась разновидность персонального компьютера -- так называемый домашний компьютер. По сути, он ничем не отличается от персонального, только используется для других целей: развлекательных и образовательных.

Идея сетевого компьютера, работающего только в сети и представляющего собой упрощенный вариант персонального компьютера, все больше занимает умы разработчиков. Такому компьютеру не нужно хранить программы, он в любой момент может получить их по сети.


Архитектура ЭВМ

Магистрально-модульный принцип построения компьютера

Под архитектурой компьютера понимается его логическая организация, структура, ресурсы, т. е. средства вычислительной системы, которые могут быть выделены процессу обработки данных на определенный интервал времени. Архитектура современных ПК основана на магистрально-модульном принципе.

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

Обмен информацией между отдельными устройствами ЭВМ производится по трем многоразрядным шинам, соединяющим все модули, -- шине данных, шине адресов и шине управления.

Подключение отдельных модулей компьютера к магистрали на физическом уровне осуществляется с помощью контроллеров, а на программном обеспечивается драйверами. Контроллер принимает сигнал от процессора и дешифрует его, чтобы соответствующее устройство смогло принять этот сигнал и отреагировать на него. За реакцию устройства процессор не отвечает -- что функция контроллера. Поэтому внешние устройства ЭВМ заменяемы, и набор таких модулей произволен.

Разрядность шины данных задается разрядностью процессора, т. е. количеством двоичных разрядов, которые процессор обрабатывает за один такт.

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

Выбор абонента по обмену данными производит процессор, который формирует код адреса данного устройства, а для ОЗУ -- код адреса ячейки памяти. Код адреса передается по адресной шине, причем сигналы передаются в одном направлении, от процессора к устройствам, т. е. эта шина является однонаправленной.

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

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

Чтобы устройства, входящие в состав компьютера, могли взаимодействовать с центральным процессором, в IBM-совместимых компьютерах предусмотрена система прерываний (Interrupts). Система прерываний позволяет компьютеру приостановить текущее действие и переключиться на другие в ответ на поступивший запрос, например, на нажатие клавиши на клавиатуре. Ведь с одной стороны, желательно, чтобы компьютер был занят возложенной на него работой, а с другой -- необходима его мгновенная реакция на любой требующий внимания запрос. Прерывания обеспечивают немедленную реакцию системы.


Компоненты ЭВМ

Периферийные и внутренние устройства

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

Разработка нового в области ПК всегда базируется на старых стандартах и принципах. Поэтому знание их является основополагающим фактором для (или против) выбора новой системы.

В состав ЭВМ входят следующие компоненты:

  • центральный процессор (CPU);
  • оперативная память (memory);
  • устройства хранения информации (storage devices);
  • устройства ввода (input devices);
  • устройства вывода (output devices);
  • устройства связи (communication devices).

Во всех вычислительных машинах до середины 50-х годов устройства обработки и управления представляли собой отдельные блоки, и только с появлением компьютеров, построенных на транзисторах, удалось объединить их в один блок, названный процессором.

Процессор -- это мозг ЭВМ. Он контролирует действия всех остальных устройств (devices) компьютера и координирует выполнение программ. Процессор имеет свою внутреннюю память, называемую регистрами, управляющее и арифметико-логическое устройства.

Процесс общения процессора с внешним миром через устройства ввода-вывода по сравнению с информационными процессами внутри него протекает в сотни и тысячи раз медленнее. Это связано с тем, что устройства ввода и вывода информации часто имеют механический принцип действия (принтеры, клавиатура, мышь) и работают медленно. Чтобы освободить процессор от простоя при ожидании окончания работы таких устройств, в компьютер вставляются специализированные микропроцессоры-контроллеры (от англ. controller -- управляющий). Получив от центрального процессора компьютера команду на вывод информации, контроллер самостоятельно управляет работой внешнего устройства. Окончив вывод информации, контроллер сообщает процессору о завершении выполнения команды и готовности к получению следующей.

Число таких контроллеров соответствует числу подключенных к процессору устройств ввода и вывода. Так, для управления работой клавиатуры и мыши используется свой отдельный контроллер. Известно, что даже хорошая машинистка не способна набирать на клавиатуре больше 300 знаков в минуту, или 5 знаков в секунду. Чтобы определить, какая из ста клавиш нажата, процессор, не поддержанный контроллером, должен был бы опрашивать клавиши со скоростью 500 раз в секунду. Конечно, по его меркам это не бог весть какая скорость. Но это значит, что часть своего времени процессор будет тратить не на обработку уже имеющейся информации, а на ожидание нажатий клавиш клавиатуры.

Таким образом, использование специальных контроллеров для управления устройствами ввода-вывода, усложняя устройство компьютера, одновременно разгружает его центральный процессор от непроизводительных трат времени и повышает общую производительность компьютера.

Существует два типа оперативной памяти -- память с произвольным доступом (RAM или random access memory) и память, доступная только на чтение (ROM или read only memory). Процессор ЭВМ может обмениваться данными с оперативной памятью с очень высокой скоростью, на несколько порядков превышающей скорость доступа к другим носителям информации, например дискам.

Оперативная память с произвольным доступом (RAM) служит для размещения программ, данных и промежуточных результатов вычислений в процессе работы компьютера. Данные могут выбираться из памяти в произвольном порядке, а не строго последовательно, как это имеет место, например, при работе с магнитной лентой. Память, доступная только на чтение (ROM) используется для постоянного размещения определенных программ (например, программы начальной загрузки ЭВМ). В процессе работы компьютера содержимое этой памяти не может быть изменено.

Оперативная память -- временная, т. е. данные в ней хранятся только до выключения ПК. Для долговременного хранения информации служат дискеты, винчестеры, компакт-диски и т. п. Конструктивно элементы памяти выполнены в виде модулей, так что при желании можно сравнительно просто заменить их или установить дополнительные и тем самым изменить объем общей оперативной памяти компьютера. Основными характеристиками элементов (микросхем) памяти являются: тип, емкость, разрядность и быстродействие.

В настоящее время отдельные микросхемы памяти не устанавливаются на материнскую плату. Они объединяются в специальных печатных платах, образуя вместе с некоторыми дополнительными элементами модули памяти (SIMM- и DIMM-модули).

Устройства хранения информации используются для хранения информации в электронной форме. Любая информация -- будь это текст, звук или графическое изображение, -- представляется в виде последовательности нулей и единиц. Ниже перечислены наиболее распространенные устройства хранения информации.

Винчестеры (hard discs)

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

Емкость диска современного персонального компьютера составляет десятки гигабайт. В одной ЭВМ может быть установлено несколько винчестеров.

Оптические диски (cdroms)

Лазерные диски, как их еще называют, имеют емкость около 600 мегабайт и обеспечивают только считывание записанной на них однажды информации в режиме произвольного доступа. Скорость считывания информации определяется устройством, в которое вставляется компакт-диск (cdrom drive).

Магнито-оптические диски

В отличие от оптических дисков магнито-оптические диски позволяют не только читать, но и записывать информацию.

Флоппи диски (floppy discs)

В основе этих устройств хранения лежит гибкий магнитный диск, помещенный в твердую оболочку. Для того чтобы прочитать информацию, хранящуюся на дискете, ее необходимо вставить в дисковод (floppy disc drive) компьютера. Емкость современных дискет всего 1.44 мегабайта. По способу доступа дискета подобна винчестеру.

Zip and Jaz Iomega discs

Это относительно новые носители информации, которые призваны заменить гибкие магнитные диски. Их можно рассматривать, как быстрые и большие по емкости (100 мегабайт -- Zip, 1 гигабайт -- Jaz) дискеты.

Магнитные ленты (magnetic tapes)

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

Устройства ввода передают информацию в ЭВМ от различных внешних источников. Информация может быть представлена в весьма различных формах: текст -- для клавиатуры (keyboard), звук -- для микрофона (microphone), изображение -- для сканера (scanner).

Клавиатура -- одно из самых распространенных на сегодня устройств ввода информации в компьютер. Она позволяет нажатием клавиш вводить символьную информацию.

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

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

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

Мышь не позволяет вводить числовую и буквенную информацию, но удобна для работы с графическими объектами, изображенными на экране.

Сканер -- устройство ввода графической информации. Его особенность -- способность считывать изображение непосредственно с листа бумаги.

Принцип действия сканера напоминает работу человеческого глаза. Освещенный специальным источником света, находящимся в самом сканере, лист бумаги с текстом или рисунком "осматривается" микроскопическим "электронным глазом". Диаметр участка изображения, воспринимаемого таким "глазом", составляет 1/20 миллиметра и соответствует диаметру человеческого волоса. Яркость считываемой в данный момент точки изображения кодируется двоичным числом и передается в компьютер. Для того чтобы осмотреть стандартный лист бумаги, "электронному глазу" приходится строку за строкой обходить его, передавая закодированную информацию об освещенности каждой точки изображения в компьютер.

Монитор -- устройство вывода на экран текстовой и графической информации. Мониторы бывают цветными и монохромными. Они могут работать в одном из двух режимов: текстовом или графическом.

В текстовом режиме экран монитора условно разбивается на отдельные участки -- знакоместа, чаще всего на 25 строк по 80 символов (знакомест). В каждое знакоместо может быть выведен один из 256 заранее определенных символов. В число этих символов входят большие и малые латинские буквы, цифры, определенные символы, а также псевдографические символы, используемые для вывода на экран таблиц и диаграмм, построения рамок вокруг участков экрана и так далее. В число символов, изображаемых на экране в текстовом режиме, могут входить и символы кириллицы.

На цветных мониторах каждому знакоместу может соответствовать свой цвет символа и фона, что позволяет выводить красивые цветные надписи на экран. На монохромных мониторах для выделения отдельных частей текста и участков экрана используется повышенная яркость символов, подчеркивание и инверсное изображение.

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

В графическом режиме экран состоит из точек, каждая из которых может быть темной или светлой на монохромных мониторах и одного или нескольких цветов -- на цветном. Количество точек на экране называется разрешающей способностью монитора в данном режиме. Следует заметить, что разрешающая способность не зависит напрямую от размеров экрана монитора.

Принтер -- устройство для вывода результатов работы компьютера на бумагу. Само название произошло от английского слова printer, означающего "печатник" (печатающий).

Первые принтеры создавали изображение из множества точек, получающихся под действием иголок, ударяющих через красящую ленту по бумаге и оставляющих на ней след. Иголки закреплены в печатающей головке и приводятся в движение электромагнитами. Сама же головка движется горизонтально, печатая строку за строкой. Количество иголок составляет 8 или 24 при одной и той же высоте печатающей головки. Во втором случае их делают тоньше, а получаемое изображение оказывается более "мелкозернистым".

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

Матричные принтеры создают сильный шум и требуют частой замены красящей ленты, поэтому в 80-х годах был предложен другой способ печати на бумаге -- струйный.

Принцип, лежащий в основе струйной печати с использованием жидких чернил, состоит в нанесении капелек чернил непосредственно на поверхность бумаги, пленки или ткани. Импульсная печатающая головка струйного принтера, подобно головке матричного принтера, состоит из вертикального ряда камер, способных нанести на бумагу одну или несколько вертикальных полосок. Число камер, входящих в состав головки, может достигать 48. Это позволяет получать очень качественное изображение.

Существуют как черно-белые, так и цветные струйные принтеры. Последние, кроме головки с черными чернилами, имеют еще печатную головку с чернилами трех цветов.

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

Устройства связи необходимы для организации взаимодействия отдельных компьютеров между собой, доступа к удаленным принтерам и подключения локальных сетей к общемировой сети Интернет. Примерами таких устройств являются сетевые карты (ethernet cards) и модемы (modems). Скорость передачи данных устройствами связи измеряется в битах в секунду (а также в кбит/с и мбит/с). Модем, используемый для подключения домашнего компьютера к сети Интернет, обычно обеспечивает пропускную способность до 56 кбит/c, а сетевая карта -- до 100 мбит/с.


Программы и ЭВМ

Программный принцип управления компьютером

В XIX веке английским математиком и инженером Чарльзом Бэббиджем был разработан проект вычислительной машины, которая предназначалась для автоматического проведения длинных цепочек вычислений. Конструкция его аналитической машины включала 50 тысяч деталей: зубчатых колес, рычагов и пружин, взаимодействовавших определенным образом. Совершенствуя и уточняя конструкцию машины, Бэббидж первым смог выделить необходимые для ее работы части:

  • устройство для хранения чисел, как исходных, так и получающихся в результате вычисления;
  • специальный вычислительный блок -- процессор;
  • устройство для ввода и вывода информации.

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

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

Главной особенностью конструкции этой машины является программный принцип работы.

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

1) программа вычислений вводится в память ЭВМ и хранится в ней наравне с исходными числами;
2) команды, составляющие программу, представлены в числовом коде по форме ничем не отличающемся от чисел.


Вирусы

Компьютерные вирусы

Как уже отмечалось, компьютер работает исключительно под управлением программ (программного обеспечения). Это делает его по-настоящему универсальным устройством, которое может выполнять роль музыкального центра, телевизора, пишущей машинки и т. д. Программы пишут программисты и у некоторых из них появляется желание придумать что-то эдакое. Иногда это -- невинные шалости, в других случаях они имеют явную зловещую направленность. До тех пор, пока человек, сидящий за компьютером, мог контролировать работу всех программ и знал, что и зачем он запустил, все было нормально. Но потом появились программы, которые, не спрашивая ничьего разрешения, запускались, копировались в разные места диска и "заражали" другие программы (заменяли часть полезного кода рабочей программы своим или изменяли его). С этого момента и нужно начинать разговор о "компьютерных вирусах".

Отдельно хочется подчеркнуть, что практически все вирусы функционируют в операционных системах семейства MS Windows и в MS DOS.

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

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

Заражается компьютер "снаружи", когда человек запускает на исполнение некую программу, которая либо заражена вирусом (т. е. при ее выполнении запускается и вирус), либо сама является вирусом.

Поведение вирусов разнообразно. Некоторые вирусы просто "осыпали" буквы с монитора или рисовали безобидные рисунки. Такие считаются наиболее безвредными. Другие могут переименовывать файлы на диске, стирать их. Эти, без сомнения, гораздо опаснее. А вирус "Win95.CIH" может испортить микросхему BIOS компьютера. Трудно сказать, что хуже -- потеря информации или выход из строя компьютера.

И, наконец, вирус размножается, то есть дописывает себя везде, где он имеет шанс выполниться.

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

Появились вирусы, использующие возможности внутреннего языка программ серии Microsoft Office. Они содержаться в файлах, подготовленных в редакторе Word или в электронных таблицах Excel. Для заражения компьютера достаточно открыть такой документ.

Так как все больше людей использует Интернет, то последний все чаще становится рассадником заразы. Теперь достаточно зайти на некий сайт и нажать на кнопку формы, чтобы заполучить какой-нибудь вирус.

В последнее время широко распространился вид почтовых вирусов, играющих на любопытстве людей. Например, вам приходит письмо с признанием в любви и приложенными фотографиями. Первое движение -- посмотреть содержимое письма. И как результат, -- все фотографии и музыка на вашей машине пропали, а вместо них -- злобный вирус "I Love You" (или подобный ему). Кроме того, он еще и пошлет себя всем, кто записан в вашей адресной книге.

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

Методы борьбы с вирусами и троянцами описаны во многих местах. К сожалению, единственный действенный метод -- не включать компьютер вовсе. Можно еще посоветовать ничего не устанавливать и ничего не запускать. Только тогда какой смысл иметь компьютер?

Поэтому широко используются антивирусы -- программы, призванные обнаруживать и удалять известные им "нехорошие программы". Наиболее представительными являются DrWeb, Antiviral Tolkit Pro (AVP), ADInf. При использовании таких программ главное -- постоянное обновление антивирусных баз.

И все-таки очень важно не запускать неизвестно что. Или установить антивирусный монитор (который отличается от антивирусного сканера, занимающегося тотальной проверкой файлов). Когда вы запускаете тот же DrWeb на проверку дисков -- это антивирусный сканер. А в комплекте с ним идет некий Spider -- вот это антивирусный монитор.

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

Основные признаки появления в системе вируса:

  • замедление работы некоторых программ;
  • увеличение размеров файлов (особенно выполняемых), хотя это достаточно сложно заметить (попробуйте Adinf);
  • появление не существовавших ранее "странных" файлов, особенно в каталоге Windows или корневом;
  • уменьшение объема доступной оперативной памяти;
  • внезапно возникающие разнообразные видео и звуковые эффекты;
  • заметное снижение скорости работы в Интернете (вирус или троянец могут передавать информацию по сети);
  • жалобы от друзей (или провайдера) о том, что к ним приходят всякие непонятные письма -- вирусы любят рассылать себя по почте.

В операционной системе Linux вирусы в были выявлены только в лабораторных условиях. Несмотря на то, что некоторые образцы Linix-вирусов действительно обладали всеми необходимыми способностями к размножению и автономной жизни, ни один из них так и не был зафиксирован в "диком" виде.

Использование ОС Linux защищает от вирусов гораздо лучше, чем любые антивирусные программы в MS Windows.


Право и ЭВМ

 Предыдущий раздел Уровень выше Следующий раздел

Правовая охрана программ и GPL

Говоря о создании и распространении программного обеспечения, следует отметить две основных стратегии, применяемых в этой области. Одна -- стратегия copyright, подразумевающая оплату при покупке каждой копии программного продукта и запрет на распространения этих копий. В законодательствах многих стран имеются законы, охраняющие авторское право на программные продукты и данные. Наиболее известен Digital Millennium Copyright Act (DMCA), принятый правительством США, хотя многие считают, что он уже стал орудием торможения развития компьютерной среды.

Но, программирование -- это такая же наука, как и химия, физика, математика. Все достижения в этих областях обнародованы. Не нужно открывать еще раз теорему Пифагора и изобретать заново колесо. Если человек живет в обществе, то все его открытия должны стать достоянием этого общества, ведь именно так происходит прогресс. То же можно сказать и о программном обеспечении. Развитие программного обеспечения невозможно, если мы не можем разделить свои достижения с другими специалистами, чтобы они продолжили наше дело, чтобы развивали и исходили уже из того, что развили другие. Эта точка зрения отражена в лицензии GPL, в соответствии с которой разрабатывалась и развивалась ОС Linux. Говоря о такой стратегии часто используют термин copyleft. Свободное программное обеспечение часто более надежно, чем несвободное.

В семидесятых годах 20 века программное обеспечение зачастую разрабатывалось свободными объединениями программистов и бесплатно передавалось другим нуждающимся в нем пользователям. Нередко этим занимались даже крупные фирмы. К 1983 году положение изменилось -- наступила эра персональных компьютеров, коммерческие программы и операционные системы (в частности, DOS от Microsoft) начали свое победное шествие по миру. Чуть позже идея коммерциализации проникла и в мир "больших" машин и "серьезного" программирования. Ричард Столлмен, один из основателей Unix, основал проект GNU (www.gnu.org), целью которого было вернуть прежние взаимоотношения производителей и потребителей программного обеспечения. GNU (расшифровывается как "GNU is not Unix") -- не Unix, потому что GNU не ограничивает свободу.

В манифесте GNU отличию свободных программ от бесплатных уделено очень много места -- по-русски же это можно сказать гораздо короче, поскольку эти понятия не обозначаются, как в английском, одним словом free. Получив в пользование или купив свободную программу, вы можете:

сколько угодно копировать, как угодно широко ее распространять;

изменять или совершенствовать ее исходный код (программа, распространяемая по "публичной лицензии" GNU, всегда поставляется вместе с исходным кодом разработчика -- этой самой строго охраняемой и никогда не раскрываемой частью коммерческих программ);

и, наконец, свободно распоряжаться измененной версией -- хоть раздавать ее даром, хоть запрашивать за нее миллиард.

Только на одну вещь пользователь такого программного обеспечения не имеет права ни в коем случае. Он не может при дальнейшем распространении скрыть исходный код программы, объявив себя его "владельцем", и остановить таким образом ее, программы, свободное совершенствование и развитие. Специально для таких программ проект GNU ввел в обиход понятие copyleft (в отличие от copyright, когда создатель продукта сохраняет на него практически все авторские и имущественные права при любых обстоятельствах -- даже если и распространяет его совершенно бесплатно).

Итак, свобода программного обеспечения состоит из

свободы читать (изучать) код;
свободы писать (модифицировать) код;
свободы распространять (публиковать, тиражировать) код.

Очевидно, что проблемы пиратства в случае со свободными программами просто не существует.


2. Операционные системы и сети

Глава 2 Операционные системы и сети

Одной из первых операционных систем персонального компьютера была MS DOS. Лишенная графического интерфейса, обладающая очень ограниченными возможностями, она практически завершила свое существование с появлением Windows. Сначала графическая оболочка для MS DOS, а затем полноценная система -- MS Windows на некоторое время практически полностью захватила нишу ОС для персонального компьютера.

Почти одновременно с Windows появилась и начала завоевывать своих приверженцев ОС Linux, перенявшая от ОС UNIX идеологию командной строки. С течением времени под давлением требований пользователей Linux обогатился графическим интерфейсом, не только не уступающим, но во многом превосходящим возможности оконной системы Windows. Сейчас все большее число пользователей персонального компьютера предпочитают эту бесплатную, гармонично развивающуюся ОС программному обеспечению от фирмы Microsoft.

Принципы работы с графическими оболочками MS Windows и Linux практически одинаковы: окна, щелчки мыши, контекстные меню... Далее мы ознакомимся с особенностями вышеперечисленных ОС и научимся понимать различия в их функционировании. Больше внимание будет уделяться работе в ОС Linux, так как она является основной ОС, используемой в учебном процессе нашего университета.


Операционные системы

Операционная система -- это программа, которая управляет аппаратными и программными средствами компьютера, предназначенными для выполнения задач пользователя.

ЭВМ предоставляет различные ресурсы для решения задачи, но чтобы сделать эти ресурсы легко доступными для человека и его программ, требуется операционная система. Она скрывает от пользователя сложные и ненужные подробности и предоставляет ему удобный интерфейс для работы. Операционная система осуществляет загрузку в оперативную память всех программ, передает им управление в начале их работы, выполняет различные действия по запросу выполняемых программ и освобождает занимаемую программами оперативную память при их завершении.

Кроме перечисленного выше операционные системы могут предоставлять и другие возможности, делающие ЭВМ еще более удобной для использования: одновременное выполнение множества различных программ (мультизадачность); средства защиты информации, хранящейся на дисках ЭВМ; работа нескольких пользователей на одной ЭВМ (многопользовательский режим); возможность подключения ЭВМ к сети, а также объединение вычислительных ресурсов нескольких машин и совместное их использование (кластеризация).

Кроме операционных систем для работы необходимы некоторые другие компоненты. Среди них базовая система ввода-вывода (BIOS), постоянно находящаяся в памяти компьютера. Эта система "встроена" в материнскую плату компьютера. Ее назначение состоит в выполнении элементарных действий, связанных с осуществлением операций ввода-вывода. BIOS содержит также тест функционирования компьютера, проверяющий работу памяти и устройств компьютера при включении электропитания. Кроме того, базовая система ввода-вывода содержит программу вызова загрузчика операционной системы.

Загрузчик операционной системы -- это специальная программа, предназначенная для инициирования процесса загрузки операционной системы.

В настоящее время трудно себе представить работу на компьютере без использования операционной системы. Обзор операционных систем мы начнем с MS DOS -- одной из первых ОС, завоевавших широкую популярность среди пользователей персональных ЭВМ. Затем рассмотрим версии Windows: от Windows 3.11 -- графической оболочки для MS DOS, до современных ОС Windows 9X и Windows 2000. Наиболее полно будет рассмотрена ОС Linux, которая является UNIX-подобной ОС для персональных компьютеров. Эта система уже более семи лет является базовой при обучении студентов и школьников информатике и информационным технологиям в Московском государственном индустриальном университете.


MS DOS

Операционная система MS DOS

MS DOS -- первая операционная система для персональных компьютеров, которая получила широкое распространение. Со временем она была практически вытеснена новыми, современными операционными системами, типа Windows и Linux, но в ряде случаев MS DOS остается удобной и единственно возможной для работы на ЭВМ (устаревшая техника, давно написанное программное обеспечение и т. п.)

Работа пользователей с операционной системой DOS осуществляется с помощью командной строки, ведь собственный графический интерфейс у нее отсутствует. Предпринималось множество попыток упростить общение с системой и самое удачное решение предложил Питер Нортон (Pеter Norton). У многих пользователей работа в операционной системе DOS ассоциируется именно с его программой -- Norton Commander. Оболочка NC скрывает от пользователя множество неудобств, возникающих при работе с файловой системой MS DOS, например, такие, как необходимость набирать команды из командной строки. Простота и удобство в использовании -- вот что делает оболочки типа NC популярными и в наше время (к ним можно отнести QDos, PathMinder, XTree, Dos Navigator, Volkov Commander и др.). Принципиально отличаются от них графические оболочки Windows 3.1 и Windows 3.11. В них применяется концепция так называемых "окон", которые можно открывать, перемещать по экрану и закрывать.

В MS DOS используется файловая система FAT. Одним из ее недостатков являются жесткие ограничения на имена файлов и каталогов. Имя может состоять не более чем из восьми символов. Расширение указывается после точки и состоит из не более чем трех символов. Присутствие расширения в имени файла не является обязательным, оно добавляется для удобства, так как расширение позволяет узнать, какая программа создала его и тип содержимого файла. DOS не делает различий между одноименными строчными и прописными буквами. Кроме букв и цифр имя и расширение файла могут состоять из следующих символов: -, _, $, #, &, @, !, %, (, ), {, }, ', ^ . Примеры имен файлов в MS DOS: doom.exe, referat.doc.

Так как MS DOS была создана довольно давно (известно, как стремительно развиваются и устаревают компьютеры и, как следствие, программы для них), она совершенно не соответствует требованиям, предъявляемым к современным операционным системам. Она не может напрямую использовать большие объемы памяти, устанавливаемые в современные ЭВМ. В файловой системе используются только короткие имена файлов (8 символов в имени и 3 в расширении), плохо поддерживаются разные устройства типа звуковых карт, видео-ускорителей и т. д.

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

Перечислим некоторые компоненты операционной системы MS DOS. Дисковые файлы IO.SYS и MSDOS.SYS (они могут называться и по-другому, например IBMBIO.COM и IBMDOS.COM для PC DOS) помещаются в оперативную память при загрузке и остаются в ней постоянно. Файл IO.SYS представляет собой дополнение к базовой системе ввода-вывода, а MSDOS.SYS реализует основные высокоуровневые услуги операционной системы.

Командный процессор DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND.COM на диске, с которого загружается операционная система. Некоторые команды пользователя, например type, dir или copy, командный процессор выполняет сам. Такие команды называются внутренними или встроенными. Для выполнения остальных (внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и, если находит ее, загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению команд (приглашение DOS).

Внешние команды DOS -- это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Эти программы выполняют действия обслуживающего характера, например форматирование дискет (format.com), проверку состояния дисков (scandisk.exe) и т. д.

Драйверы устройств -- это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых или нестандартное использование имеющихся устройств. Например, с помощью драйвера DOS ramdrive.sys возможна работа с "электронным диском", т. е. частью памяти компьютера, с которой можно работать так же, как с диском. Драйверы помещаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS. Такая схема облегчает добавление новых устройств и позволяет делать это, не затрагивая системные файлы DOS.


MS Windows

Microsoft Windows

На смену операционной системе MS DOS с ее графическими оболочками Windows 3.1 и Windows 3.11 пришли полноценные операционные системы семейства MS Windows (сначала Windows 95, затем Windows 98 и Windows 2000). Их запуск, в отличие от Windows 3.1 и Windows 3.11, производится автоматически после включения компьютера (в том случае, если установлена только одна эта система).

В MS Windows для хранения файлов используется модификация файловой системы FAT -- VFAT. В ней длина имен файлов и каталогов может достигать 256 символов. При указании имен прописные и заглавные буквы различаются.

В операционной системе Windows при работе с окнами и приложениями широко применяется манипулятор мышь. Обычно мышь используется для выделения фрагментов текста или графических объектов, установки и снятия флажков, выбора команд меню, кнопок панелей инструментов, манипулирования элементами управления в диалогах, "прокручивания" документов в окнах.

В Windows активно используется и правая кнопка мыши. Поместив кончик указателя над интересующим вас на экране объектом и сделав щелчок правой кнопкой мыши, вы можете раскрыть так называемое "контекстное меню", содержащее наиболее употребительные команды, применимые к данному объекту.

Ярлыки обеспечивают доступ к программе или документу из различных мест, не создавая при этом нескольких физических копий файла. На рабочий стол можно поместить не только пиктограммы (значки) приложений и отдельных документов, но и папок. Папки -- еще одно название каталогов (directories).

Существенным нововведением в Windows 95 стала Панель задач (Taskbar). Несмотря на небольшие функциональные возможности, она делает наглядным механизм многозадачности и намного ускоряет процесс переключения между приложениями по сравнению с предыдущими версиями Windows. Внешне панель задач представляет полосу, обычно располагающуюся в нижней части экрана, на которой размещены кнопки приложений и кнопка Пуск (Start). В правой ее части обычно присутствуют часы и небольшие пиктограммы программ, активных в данный момент.

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

При завершении работы нельзя просто выключить компьютер, не завершив работу системы по всем правилам, -- это может привести к потере некоторых несохраненных данных. Для правильного завершения работы необходимо сделать следующее.

  1. Сохранить данные во всех приложениях, с которыми вы работали.
  2. Завершить работу всех ранее запущенных DOS-приложений.
  3. Открыть меню кнопки Пуск и выбрать команду Завершение работы -- на экране появится диалоговое окно.
  4. Выбрать нужный вариант действий и нажать кнопку Да


Unix

История развития Linux и Unix-систем

Разработка системы UNIX была начата двумя инженерами, Д. Ритчи и К. Томпсоном, приглашенными фирмой Bell Telephone Laboratories, которая была заинтересована в разработке удобной ОС. В вычислительном центре Murray Hill (шт. Нью-Джерси), где работали эти инженеры, был установлен базовый комплект ЭВМ "Дженерал Электрик 645" с операционной системой Малтикс -- одной из первых многопользовательских интерактивных систем. В системе Малтикс пользователи были изолированы друг от друга несколькими уровнями защиты. Это предохраняло от непреднамеренной порчи дисковых файлов. Поскольку в фирме возникла необходимость совместного использования файлов бригадой программистов, Кен Томпсон приступил к разработке более удобной для этой цели операционной системы.

Система UNIX была написана не вся сразу, а развивалась в течение нескольких лет по мере того, как Томпсон сталкивался в своей работе со специфическими потребностями.

В 1969 г. К. Томпсон при поддержке группы соратников написал небольшую систему разделения времени общего назначения, оказавшуюся достаточно удобной, что привлекло энтузиастов-пользователей.

В 1973 г. Д. Ритчи и К. Томпсон переписали ядро системы UNIX на языке Си, отойдя от традиции создания таких программ на языке Ассемблера. Когда эти идеи были реализованы, Томпсон предложил дать название для этой системы -- UNIX, созвучное с названием Малтикс.

В 1974 г. UNIX была передана университетам для образовательных целей, а несколько лет спустя нашла и коммерческое применение. В течение всего этого периода система UNIX продолжала совершенствоваться в Bell Laboratories, получив признание в лабораториях, в широких программистких кругах, в центрах обработки информации, в деятельности телефонных компаний.

В настоящее время операционная система UNIX завоевала еще большую популярность благодаря созданию ее разновидности для персональных компьютеров -- Linux.

Linux -- свободно распространяемая версия UNIX, первоначально была разработана Линусом Торвальдсом (Linus Torvalds) в Университете Хельсинки (Финляндия). Linux создавался им как хобби, но очень быстро вырос в настоящую, работоспособную систему. Linux был создан с помощью многих UNIX-программистов и энтузиастов из Интернет, тех, кто имеет достаточно навыков и способностей развивать систему. В августе 2001 г. широко отмечался десятилетний юбилей этой современной ОС.

Linux может работать на компьютерах семейства Intel x86, Alpha, Sparc. Минимальными требованиями для него является i386 компьютер, что в современном мире является более чем скромным требованием.

Сегодня Linux -- это полноценная ОС семейства UNIX, способная работать с оконной системой XWindow, редактором Emacs, поддерживающая различные сетевые протоколы, включающая средства работы с электронной почтой и новостными конференциами. Практически все важнейшие программные пакеты были поставлены и на Linux, стало доступным и коммерческое программное обеспечение. Большинство вновь создаваемого периферийного оборудования сразу же становится доступным пользователям ОС Linux.

Задания

  1. Назовите основные отличия операционной системы UNIX от других известных вам ОС.
  2. Какие версии ОС UNIX для персональных ЭВМ вам известны?

Назад


ОС Linux

Операционная система Linux

Linux -- это операционная система для IBM-совместимых персональных компьютеров и рабочих станций. Это многопользовательская ОС с сетевой оконной графической системой X Window System. ОС Linux поддерживает стандарты открытых систем и протоколы сети Интернет и совместима с системами Unix, DOS, MS Windows. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей.

Разработал эту операционную систему в начале 90-х годов тогда еще студент университета Хельсинки (Финляндия), Линус Торвальд при участии пользователей сети Интернет, сотрудников исследовательских центров, различных фондов и университетов (в том числе и МГИУ).

Будучи традиционной операционной системой, Linux (произносится "линукс", с ударением на первом слоге) выполняет многие из функций, характерных для DOS и Windows. Однако следует отметить, что эта ОС отличается особой мощью и гибкостью. Система Linux разрабатывалась как ПК-версия операционной системы Unix, которая десятилетиями используется на мэйнфреймах и мини-ЭВМ и является основной ОС для рабочих станций. Linux предоставляет в распоряжение пользователя ПК скорость, эффективность и гибкость Unix, используя при этом все преимущества персональных машин. При работе с мышью активно используются все три кнопки, в частности средняя кнопка используется для вставки фрагментов текста.

С экономической точки зрения Linux обладает еще одним весьма существенным достоинством -- это бесплатная система. Linux распространяется по генеральной открытой лицензии GNU в рамках фонда свободного программного обеспечения (Free Software Foundation), что делает эту ОС доступной для всех желающих. Linux защищена авторским правом и не находится в общедоступном пользовании, однако открытая лицензия GNU это почти то же самое, что и передача в общедоступное пользование. Она составлена так, что Linux остается бесплатной и в то же время стандартизированной системой. Существует лишь один официальный вариант ядра Linux.

От Unix операционной системе Linux достались еще две замечательные особенности: она является многопользовательской и многозадачной системой. Многозадачность означает, что система может выполнять несколько задач одновременно. Многопользовательский режим означает, что в системе могут одновременно работать несколько пользователей, каждый из которых взаимодействует с ней через свой терминал. Еще одним из достоинств этой ОС является возможность ее установки совместно с Windows на один компьютер.

Linux способен любую персональную машину превратить в рабочую станцию. В наше время Linux является операционной системой для бизнеса, образования и индивидуального программирования. Университеты по всему миру применяют Linux в учебных курсах по программированию и проектированию операционных систем. Он стал незаменим в широких корпоративных сетях, а также для организации Интернет-узлов и Web-серверов.

Современный Linux предоставляет возможность использовать несколько разновидностей графического интерфейса: KDE (K Desktop Environment), GNOME (GNU Network Model Environment) и другие. В каждой из этих оболочек пользователю предоставляется возможность работы сразу с несколькими рабочими столами (в то время как в MS Windows всегда один рабочий стол, который приходится загромождать окнами).


Особенности Linux

Особенности ОС Linux

Говоря о системе Linux можно выделить ядро, shell, файловую структуру и утилиты. Ядро -- сердце системы. Оно содержит программы, которые непосредственно управляют аппаратными средствами компьютера. Shell- это текстовый интерфейс пользователя. Он принимает команды от пользователя и передает их ядру для исполнения. Shell можно настраивать в соответствии с конкретными потребностями пользователя. В нем есть даже свой язык программирования, который можно использовать для написания так называемых скриптов. Стандартные для системы Linux программы (команды) часто называют утилитами.

Файловая структура представляет собой дерево каталогов, в которых размещаются файлы. Максимальная длина имени файла в Linux 256 символов. Как правило, в имя файла не должны входить символы /, ?, *, а само имя не должно начинаться с точки.

Человека, имеющего право работать в системе, принято называть пользователем, а запускаемые им программы -- процессами. Для того чтобы стать пользователем, необходимо зарегистрироваться у системного администратора, который сообщит вам ваше входное имя (login), и поможет установить пароль (password). В некоторых крупных системах практикуется генерация паролей для повышения безопасности работы в системе.

Для того чтобы система могла узнать, кто именно пытается получить доступ к ней, пользователь вводит свое имя (login) при входе в систему. А для того, чтобы другой человек не мог воспользоваться чужим именем для входа, вводится секретная комбинация символов, называемая паролем (password). При вводе пароль не отображается на экране.

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

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

При работе в графической оболочке KDE, для завершения сеанса работы следует нажать на значок [image] на панели KDE ( [image] в KDE2) или в главном меню KDE (всплывающем при нажатии на кнопку с буквой К на панели приложений) выбрать строку Выйти.


KDE

Графическая среда KDE

С момента своего появления UNIX, а затем и Linux требовали от своих пользователей обширных знаний и навыков. В состав этих ОС входило разнообразное программное обеспечение, но отсутствие удобного графического интерфейса позволяло использовать их только профессионалам. На сегодняшний день ситуация кардинально изменилась -- для ОС Linux создан целый ряд программ, обеспечивающих удобный графический интерфейс с пользователем. Лидерство среди них делят KDE и GNOME. Обе оболочки предоставляют пользователям дружественную графическую среду, совмещающую функциональность и современный графический дизайн с преимуществами операционной системы Linux.

В своем дальнейшем изложении мы будем ориентироваться на KDE -- функционально полный интерфейс пользователя, предоставляющий в его распоряжение окна и меню, предназначенные для управления файлами и выполнения программ. KDE не пытается заменить стандартную командную оболочку, он является надстройкой, которая упрощает использование Linux.

KDE -- это независимый проект сотен разработчиков по всему миру, направленный на создание современной, настраиваемой и надежной рабочей среды для десктопов на основе компонентной и прозрачной сетевой архитектуры.

В феврале 2001 увидела свет версия KDE 2.1, мощная и удобная в использовании рабочая среда для Linux, интегрированная с Интернет. В числе основных особенностей новой версии KDE -- Konqueror, мощный и современный WWW-браузер, составляющий единое целое с дружественной средой рабочего стола, а также KDevelop, передовая среда программирования, включающая в себя все необходимое для разработки KDE.

Все компоненты и пакеты KDE могут быть получены бесплатно на условиях лицензий свободного программного обеспечения. Версия KDE 2.1 переведена на 33 языка, включая русский, и поставляется с библиотеками KDE, базовой средой рабочего стола (включая Konqueror), средствами разработки (включая KDevelop) и более чем 100 программами из различных ключевых пакетов KDE (администрирование, игры, графика, мультимедиа, сеть и утилиты).

Итак, KDE -- это

- удобный, продуманный и быстрый менеждер окон;
- стандартный интерфейс для большинства программных приложений -- больше не нужно гадать какая кнопка мыши сделает то, что вам требуется;
- надежный эмулятор терминала, который не занимает всю оперативную память даже при открытии нескольких терминальных окон;
- "cтильный" рабочий стол -- предмет зависти пользователей других операционных систем.

Вызов команд часто осуществляется с помощью меню или пиктограмм. Можно открыть окно терминала (консоль), часто называемое окном shell, которое предоставляет в распоряжение пользователя интерфейс командной строки.

Не следует думать, что работа с файлами и файловой системой Linux ведется только из командной строки. Пользователю предоставляется возможность выбора одного из имеющихся файловых менеджеров. Это может быть, например, мощнейший, со множеством функций Konqueror, появившийся в KDE2, или Midnight Commander, запускаемый в окне shell. Выбор средства всегда остается за пользователем, но знание команд позволяет пользователю эффективно использовать все возможности ОС.

Компоненты рабочего стола

Если до того вы уже работали с Windows, многое покажется вам знакомым. Рабочий стол KDE разделен на три основные части -- "поверхность" рабочего стола, панель приложений и линейку задач (в KDE2 последняя размещена на панели).

Когда вы запускаете KDE в первый раз, панель располагается в нижней части экрана. Панель -- удобное средство для запуска приложений и переключения между рабочими столами. На ней расположен ряд пиктограмм, используемых для запуска наиболее важных приложений, кнопка вызова главного меню, часы и некоторые другие кнопки. При подведении курсора мыши к значкам на панели приложений появляется всплывающая подсказка о назначении данного объекта. Слева и справа панели находятся кнопки с маленькими треугольниками, служащие для удаления панели приложений с текущего рабочего стола; другие рабочие столы при этом сохраняют прежний вид.

К кнопка является одним из наиболее важных объектов на рабочем столе KDE. Она выполняет функции диспетчера приложений.

Нажатие на эту кнопку приводит к появлению меню, из которого запускаются разнообразные программы. Запуск программы осуществляется щелчком левой кнопки мыши. Некоторые приложения имеют отдельную пиктограмму на панели приложений. Вы всегда сможете добавить или удалить эти пиктограммы с панели приложений.

На панели располагается группа кнопок переключения между рабочими (виртуальными) столами. Переход к другому столу можно осуществить щелчком мыши по соответствующей кнопке. Использование нескольких рабочих столов -- это одна из наиболее мощных характеристик всех графических интерфейсов Linux. Вместо нагромождения одного окна на другое, как при использовании Windows, вы можете открывать различные приложения на разных рабочих столах.

Использование окон

Работа с приложениями, вывод информации, получение списка файлов -- все эти задачи выполняются в окнах. Окно состоит из нескольких основных компонент. Рамка служит для изменения его размеров. Изменять размеры окна или открывать/закрывать его можно и с помощью кнопок. Заголовок окна обычно содержит название приложения. Можно одновременно держать открытыми несколько окон, но только одно из них в каждый момент времени будет активным.

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

Двойной щелчок по заголовку окна приводит к его максимизации. Справа от заголовка располагаются три кнопки, также предназначенные для минимизации, максимизации и закрытия окна. Минимизированные окна могут быть снова раскрыты щелчком по их заголовку на панели задач.

Для передвижения окна по поверхности стола поместите курсор на заголовок окна и, удерживая нажатой левую кнопку мыши, переместите окно в нужное место, после чего отпустите кнопку. Если вы хотите изменить размер окна, переместите курсор на границу окна, которую вы хотите передвинуть. При этом внешний вид курсора изменится. Удерживая левую кнопку мыши, передвигайте границу в нужном направлении. Можно использовать угол окна для изменения его размера сразу по двум направлениям.

Поиск файлов

Иногда приходится сталкиваться с ситуацией, когда трудно вспомнить, где находится или как называется тот или иной файл. Приложение KFind позволяет легко справиться с этой задачей. Для запуска данного приложения выберите пункт Поиск файлов (Find Files) в меню KDE.

Появившееся окно содержит три вкладки: Имя/путь, Диапазон дат и Дополнительно. Если вы помните имя файла (или хотя бы часть имени), то воспользуйтесь вкладкой Имя/путь и введите имя в поле Название. По умолчанию поиск производится в вашем домашнем каталоге, но вы можете выбрать любой начальный каталог. Используйте всю известную вам информацию о файле для его поиска. Чем больше вы знаете о файле, тем больше шансов его найти.

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

Контекстное меню

Нажатие на правую кнопку в любом месте рабочего стола приводит к появлению контекстного меню, позволяющему получить справочную информацию о KDE, настроить рабочий стол, упорядочить открытые окна и некоторые другие функции. Это меню можно использовать для завершения сеанса работы или временной блокировки экрана.


Окно shell

Командная строка и терминал

В ОС Linux имеется большой набор команд, которые можно использовать для выполнения таких задач, как управление файлами и их редактирование, связь с другими пользователями и т. д. Даже при наличии развитого графического интерфейса, такого как KDE, часто приходится пользоваться командной строкой.

Кроме инструментов и программам, которые входят в KDE, Linux содержит большое количество приложений. Имеется две возможности для их запуска: с помощью быстрой командной строки или терминала. Напомним, что Linux является операционной системой, чувствительной к регистру символов. Например, команды Netscape, NETSCAPE и nEtscape это три различные команды, точно также my_filE, my_file, и my_FILE -- это три различных файла.

Нажатие комбинации клавиш Alt-F2 вызывает появление маленького окна, в котором вы можете ввести команду, запускающую нужную программу. Учтите, что вы не сможете увидеть текст, выводимый программой после ее запуска из командной строки! Поэтому этот метод рекомендуется только для запуска программ, создающих отдельные окна для работы, или для запуска приложений, не требующих ввода или вывода информации. Для прочих случаев лучше использовать эмулятор терминала.

Эмулятор терминала

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

Чтобы получить окно термина в главном меню KDE выберите пункт Терминал из категории Системные. Как правило, на панели приложений находится пиктограмма для запуска окна терминала. Обычно это пиктограмма изображает монитор, к которому добавлено изображение пингвина (символа ОС Linux) или морской раковины (одно из значений англ. слова shell -- раковина).

После открытия командного окна в нем появляется приглашение shell (обычно это символ $). После того, как команда набрана и просмотрена на предмет ошибок, следует нажать клавишу Enter для передачи команды интерпретатору shell на выполнение. Результаты выполнения команды появляются в окне терминала, после чего опять появляется приглашение shell.

Shell -- это интерпретатор команд, осуществляющий функции интерфейса между пользователем и операционной системой. Команды, вводимые пользователем в командной строке (или в окне терминала), интерпретируются shell и посылаются как инструкции в операционную систему.

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

Linux -- многозадачная система, поэтому можно открыть сразу несколько окон терминала или выполнять сразу несколько заданий в фоновом режиме (не блокируя командное окно). Для запуска команды в фоновом режиме необходимо в конце команды ввести символ &.


Работа с файлами

Команды для работы с файлами

Как уже отмечалось, команды в ОС Linux принято передавать либо через командную строку, либо через командное окно (окно терминала). Команды в Linux имеют определенную структуру. Наиболее общий ее вид следующий:

command keys params

Здесь command означает имя команды, которую вы хотите выполнить, keys -- опции, также называемые флагами, а params -- параметры. Заметим, что флаги и параметры могут отсутствовать. Обычно команды, опции и параметры разделяются пробелами. Опции команд часто начинаются со знака "-", за которым следуют одна или несколько букв.

Пользователь набирает команду и затем инициирует ее выполнение нажатием клавиши Enter. Когда вы введете команду ОС Linux, shell сначала прочитает ее имя, а затем проверит, существует ли команда а таким именем. Если такой команды нет, shell выдаст сообщение об ошибке. До нажатия клавиши Enter команду можно редактировать, используя клавиши Backspace и Del (можно исправить ошибки ввода). Комбинация клавиш Ctrl+u позволяет стереть целую строку и ввести ее заново. Если вы по ошибке инициировали выполнение неверной команды, то нажатие комбинации клавиш Ctrl+c немедленно прервет выполнение команды.

В одной строке можно вводить несколько команд, в этом случае они разделяются символом ; (точка с запятой), например, последовательность команд, приведенная ниже, сначала выдаст дату, а затем календарь на текущий месяц.

date; cal

Пример
Рассмотрим команду ls (от англ. list). Когда она используется без параметров, то выводит список файлов и подкаталогов текущего каталога. Команда ls -l выведет список, содержащий дополнительную информацию о файлах. В качестве параметра данной команды обычно выступают имена файлов или директорий, так команда ls -l /Stud/g5312/ выведет информацию о директории, отведенной для студентов группы 5312 (как правило, для каждого студента группы при регистрации создается поддиректория с именем, совпадающим с пользовательским именем студента, поэтому эта команда позволит получить список входных имен студентов данной группы). Здесь ls -- команда, -l -- опция, а /home/Stud/g5312 -- параметр.

Наверное вы заметили, что не очень удобно было писать команду или имя файла целиком, при этом даже опытный пользователь может допустить ошибку. Чтобы избежать этого, используйте клавишу Tab (табуляция), которая автоматически продолжает команду. Давайте рассмотрим, как с ней работать, на примере команды ls -l /Stud/g5312/. Наберите начало команды ls -l /St и нажмите Tab, после чего на экране появится продолжение ls -l /Stud/. Дальнейшее продолжение невозможно, т. к. существует несколько вариантов (чтобы посмотреть все варианты, нажмите табуляцию два раза). При использовании клавиши Tab вы можете быть уверены, что не допустили ошибки при написании имени каталога или файла.


Переадресация

Переадресация ввода и вывода

В ОС Linux все файлы имеют одинаковую структуру -- последовательность байтов. Любой файл можно свободно копировать или добавлять к другому файлу, так как все файлы организованы одинаково. Эта организация данных распространяется и на операции ввода и вывода. Данные в операциях ввода и вывода организованы аналогично файлам и все внешние устройства тоже считаются файлами.

Данные, вводимые с клавиатуры, так же, как и данные, выводимые командой или программой, представляют из себя поток байтов. Входной поток данных для программы в ОС Linux называется ее стандартным входом, а выходной поток данных -- стандартным выводом.

В ОС Linux широко используется переадресация, которая позволяет, например, перенаправить стандартный вывод так, чтобы информация не отображалась на экране, а записывалась в файл. Для переадресации вывода используется знак > (больше), после которого указывается имя файла, в который направляется вывод, например,

ls >list_dir

Операция переадресации вывода всегда создает новый файл или перезаписывает существующий. Если же требуется дописать вывод к имеющейся в файле информации, то используется оператор >>. В этом случае данные добавляются в конец файла.

Можно переадресовать и стандартный вход, чтобы входная информация читалась из файла, а не с клавиатуры. Оператор переадресации стандартного входа имеет вид знака < (меньше). Операции переадресации стандартного входа и стандартного выхода можно объединять.


Перемещение по файлам

Перемещение по файловой системе

Файловую систему можно представить в виде дерева, только корень (root) этого дерева находится вверху, а ветви растут вниз. Листья этого дерева и есть файлы, а разветвления - каталоги (директории). На следующем рисунке для изображения файлов используются прямоугольники, а для директорий - овалы.

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

При входе в систему пользователь оказывается в своей домашней директории, в которой он может создавать файлы, удалять их и копировать. Имя, которое дается каталогу или файлу при его создании, не является полным. Полным именем является его путевое имя. В ОС Linux путевое имя состоит из имен всех каталогов, образующих путь к файлу от вершины дерева (/). Эти имена отделяются друг от друга символами "косая черта" (/, "слеш"). Путевые имена даются и файлам. Фактически имя, которым система обозначает файл, представляет собой комбинацию имени файла с именами каталогов, образующих путь от корневого каталога до каталога данного файла.

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

Команда cd (change directory) позволяет перемещаться по файловому дереву, изменяя текущий (рабочий) каталог. В качестве параметра ей можно указать как абсолютный, так и относительный путь каталога. С помощью команды cd DOS вы переместитесь в поддиректорию DOS (если она существует).

Каждый каталог (за исключением корневого) имеет родительский каталог. Две точки, используемые как аргумент команды, обозначают родительский каталог. Например, команда cd .. переместит вас в родительский каталог. Одна точка используется для обозначения текущего каталога.

Если в процессе путешествия по файловому дереву вы "заблудились", то команда cd (без указания параметра) переместит вас в вашу домашнюю директорию. Для перемещения в домашний каталог какого-либо пользователя, можно вместо задания его абсолютного пути использовать символ ~, после которого должно следовать входное имя этого пользователя, например,

cd ~sidorov

Для того чтобы определить, какой каталог является текущим, можно воспользоваться командой pwd.


Права доступа

Права доступа к файлам и каталогам

В ОС Linux для каждого файла и каталога задаются права доступа, определяющие, кто и какие операции может осуществлять над данным файлом. Эти права позволяют ограничить доступ к файлу трем категориям пользователей (владелец, группа, остальные).

Кроме этого, можно управлять типом прав доступа к данному файлу или каталогу. Для файла или каталога может быть установлено право на чтение, запись и выполнение (для каталога -- это право на вход в него). Наличие соответствующего права на чтение кодируется символом r (от англ. read), право на запись -- w (write), право на выполнение -- x (execute), отсутствие соответствующего права обозначают дефисом (-).

Эти три типа прав доступа для трех категорий пользователей образуют набор из девяти символов, однозначно задающий все права доступа к файлу (каталогу), например, rwxrwxr-x.

Обратите внимание, что для удаления файла необходимо обладать правом на запись в директорию, его содержащую.

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

Команда "ls -l" выдает подробную информацию о файле, включая права доступа к нему. С файлом, имеющим, например, код доступа rwxr-xr-x его хозин может производить любые операции (читать, изменять и выполнять), а все остальные -- только читать и выполнять.


Копирование

 Предыдущий раздел Уровень выше Следующий раздел

Копирование файлов

Копировать файлы можно с помощью команды cp (от англ. copy -- копировать). Для команды cp обязательны два аргумента: исходный файл и имя копии. При копировании из одного каталога в другой можно использовать как абсолютный, так и относительный пути в именах файлов. Напомним, что между командой и ее аргументами необходимы пробелы. Например,

cp today report/monday

При копировании целого дерева файлов из одного каталога в другой используйте ключик -r после имени команды. Скопированный каталог будет содержать все свои подкаталоги. Следующая команда создаст в каталоге oldletters копию каталога letters:

cp -r letters oldletters

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

cp: jasdfh: No such file or directory
Другой часто встречающейся ошибкой является попытка скопировать файл в ту часть файловой системы, в которую пользователь не имеет права на запись. В этом случая сообщение об ошибке будет содержать словосочетание Permission denied.

При копировании, перемещении и удалении файлов можно использовать шаблоны в именах файлов и директорий, составленные из символов * (для замены любой комбинации символов) и ? (для замены единственного символа). Например, для копирования всех файлов из текущей директории, которые заканчиваются на .gif в директорию Work, воспользуйтесь командой

cp *.gif Work


Каталоги: mkdir и rmdir

 Предыдущий раздел Уровень выше Следующий раздел

Создание и удаление каталогов

Новые директории создаются командой mkdir. Например, команда mkdir Work создаст директорию с именем Work.

В случае удачного создания директории на экране снова появится приглашение командной строки и ничего более. Все остальное является сообщением об ошибках. Внимательно читайте их и пытайтесь понять, что вы сделали неправильно. Поиск и исправление ошибок является очень важным аспектом при работе с компьютером. Самой распространенной ошибкой при создании директории является то, что вы пытаетесь создать директорию, которая уже существует. В этом случае сообщение об ошибке будет выглядеть примерно так:

mkdir: cannot make directory `Work': File exists

Для удаления каталогов используется команда rmdir. Удалять можно только пустые каталоги, т. е. не содержащие файлов и поддиректорий. При попытке удалить непустую директорию появляется сообщение

rmdir: `имя_удаляемого_каталога': Directory not empty
В случае успешного удаления никакой дополнительной информации не выводится.

При создании и удалений каталогов можно использовать как абсолютные, так и относительные пути к каталогам. Напомним, что при попытке создания и удаления каталогов, также как и файлов, проверяются права доступа -- нужно наличие ключика w в правах доступа. Если у вас недостаточно прав для записи в соответствующую директорию, то сообщение будет примерно таким:

mkdir: cannot create directory `/Texts: Permission denied


Просмотр файлов

Просмотр содержимого файлов

Для просмотра содержимого файлов используются команды more, less и cat. Все три команды в качестве параметра используют имя файла, предназначенного для просмотра, например,

cat data.txt

Команда cat (concatenate) -- сложная и универсальная команда. Простейшее применение этой команды -- вывод содержимого файла на экран. Использование этой команды оправдано, если содержимое файла занимает не больше одного экрана. В противном случае часть информации исчезнет из области видимости.

Для файлов, содержащих большое число строк, удобнее использовать команды more или less. Действия этих команд почти аналогичны: информация выводится на экран порциями, нажатие на клавишу Space (пробел) выводит следующую порцию текста (экран), нажатие на клавишу b выводит предыдущий экран, клавиша q прекращает выполнение команды.


Перемещение

 Предыдущий раздел Уровень выше Следующий раздел

Перемещение и переименование

С помощью команды mv (от англ. move) можно либо изменить имя файла или каталога, либо переместить файл или каталог в другое место. Используя эту команду для переименования в качестве второго аргумента нужно указать новое имя:

mv текущее_имя новое_имя
Например,
mv doc1.txt doc_old.txt
mv Work Old_Work

Команда mv может использоваться для перемещения файла в новый каталог. Для этого нужно в качестве второго аргумента указать имя каталога:

mv имя_файла имя_каталога

Пример

mv doc1.txt Old_Work
mv doc2.txt Old_Work/doc_old.txt
Вторая команда совмещает перемещение файла с переименованием: файл doc2.txt перемещается в директорию Old_Work и получает новое имя doc_old.txt


Удаление файлов

Для удаления файлов используется команда rm. При добавлении ключа -r эта команда удалит каталог (директорию) вместе со всем его содержимым. Например, следующая последовательность команд удаляет файл с именем file и директорию catalog вместе со всем его содержимым:

rm file
rm -r catalog

Но не забывайте, что удалять вы можете только свои файлы и директории, и даже это следует делать очень осторожно, потому что удаленный файл вернуть нельзя!

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


Работа с дискетой

Работа с дискетой MS DOS

Гибкий магнитный диск до сих пор остается распространенным средством для передачи небольших порций информации с компьютера на компьютер. В системе Linux имеется набор утилит mtools, которые обеспечивают доступ к дискетам, отформатированным для использования в MS DOS (или в MS Windows). Для работы с такими дискетами достаточно вставить ее в дисковод и воспользоваться одной из этих утилит.

Для копирования файлов используется команда mcopy, дискета MS DOS обозначается как a: (дисковод A).

Пример
Сначала файл mydata копируется на дискету MS DOS, а затем файл title копируется в текущий каталог (.) пользователя:

mcopy mydata a:
mcopy a:title .

При копировании групп файлов можно использовать шаблоны, состоящие из символов * и ?. Например, для копирования всех файлов из текущей директории, имеющих расширение doc, на дискету можно воспользоваться командой

mcopy *.doc a:

Перечислим другие команды из набора утилит mtools.

Команда | Назначение
mdel | Удаляет файл MS DOS
mmd | Создает каталог MS DOS
mrd | Удаляет каталог MS DOS
mren | Переименовывает файл MS DOS
mtype | Отображает содержимое файла MS DOS
mformat | Создает на дискете файловую систему MS DOS

Команда mdir позволит получить список файлов и каталогов, размещенных на дискете, а команда mcd -- перемещаться по каталогам дискеты. В следующем примере выдается перечень файлов, а затем пользователь перемещается в каталог tmp:

mdir a:
mcd a:tmp


Архивация файлов

 Предыдущий раздел Уровень выше Следующий раздел

Архивация и сжатие файлов

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

Большинство программ архивации при создании архива пытаются уменьшить его результирующий размер, применяя различные алгоритмы сжатия. Команда tar является самым распространенным инструментом для создания файловых архивов в ОС Linux. Формат команды

tar опции имя_архива файлы/каталоги
Здесь "опции" есть список опций, a "файлы/каталоги" -- список файлов или каталогов, добавляемых в архив или извлекаемых из него. При работе с каталогами tar рекурсивно, т. е. вместе со всеми поддиректориями, добавляет их в архив. Перечислим наиболее распространенные опции команды tar:
c
- создает новый архивный файл;
v
- выводит имя каждого архивируемого файла;
f
- задает имя архивного файла;
z
- осуществляет сжатие или распаковку сжатого архива;
x
- распаковывает архивный файл;
t
- показывает содержимое архива.
Например, команда
tar cvf backup.tar /etc
упакует все файлы, содержащиеся в /etc, в архив с именем backup.tar. При этом архив не будет сжат.

Если создают архивный файл, используя сжатие, то для отражения этого факта расширение файла заменяют на tgz. Команда создания такого архива имеет вид

tar cvfz имя.tgz файлы
А следующая команда создаст архив backup.tgz, который будет иметь значительно меньший размер по сравнению с архивом backup.tar.
tar cvfz backup.tgz /etc

Пример
Первая команда покажет содержимое архива backup.tgz, а вторая раскроет его, создав в текущем каталоге подкаталог etc:

tar tvfz backup.tgz
tar xvfz backup.tgz

Другой распространенной программой для сжатия и архивации является утилита zip. Она создает файл несколько большего размера, но широко используется в операционных системах MS DOS и Windows. Архив, созданный в одной операционной системе, без проблем будет раскрыт в другой. Таким образом, утилиту zip можно использовать для обмена информацией между различными ОС. Формат команды

zip -опции имя_архива файлы/каталоги

По умолчанию, если в списке файлов для архивации присутствуют каталоги, zip добавит в архив только сами каталоги, без их содержимого. Для рекурсивной архивации каталогов необходимо использовать опцию r. Например, команда

zip -r foo my_dir
создаст архив с именем foo.zip, в который поместит директорию my_dir вместе со всем ее содержимым.

Для распаковки архива служит команда

unzip имя_архива
Например, команда
unzip foo.zip
создаст в текущем каталоге подкаталог my_dir и поместит в него содержимое архива.

Для более подробного знакомства с утилитами архивации воспользуйтесь командами: man tar, man zip и man unzip.


Права доступа

 Предыдущий раздел Уровень выше Следующий раздел

Изменение прав доступа к файлам

Для изменения прав доступа к файлам и каталогам используется команда chmod (change mode). Изменять права можно только у тех файлов и директорий, владельцем которых вы являетесь. Любое из прав доступа можно добавить или отменить. Для добавления соответствующего права используется символ +, для отмены применяется знак -, например,

chmod +x-w prog
В данном примере для всех групп пользователей добавляется право на выполнение и отменяется право на запись.

Можно добавить или отменить право у отдельных категорий пользователей; категория владелец обозначается символом u (от user), группа -- символом g (group), прочие пользователи обозначаются символом o (other), для обозначения всех групп сразу используется символ a (all), предполагаемый по умолчанию.

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

chmod o+r-wx my_script
Право на выполнение показывает, что файл содержит команды и может непосредственно исполняться системой. Такое право часто устанавливается для файлов, содержащих команды shell.

Права доступа устанавливаются и для каталогов. Право на чтение означает возможность получения списка файлов, находящихся в данном каталоге, право на выполнение -- возможность перехода в данный каталог, право на запись дает возможность создавать и удалять файлы в данном каталоге.

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

Код доступа | --- | --x | -w- | -wx | r-- | r-x | rw- | rwx
Двоичная маска | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111
Восьмеричная цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7

Для создания двоичной маски права каждой категории пользователей кодируются трехзначным двоичным числом. Наличие соответствующего права обозначается цифрой 1, отсутствие -- цифрой 0. Далее каждое число переводится в восьмеричную систему счисления (см. таблицу). Получившиеся три восьмеричных цифры используются в качестве аргумента команды chmod.

Пример
Маска, соответствующая коду rwx, имеет вид 111=78, а для кода r-x (запрет на запись) -- 101=58. Заметьте, что каждый раз полученная маска состоит из трех цифр, каждая из которых это либо 0, либо 1.

Получившийся набор цифр и используется в качестве параметра команды chmod, например,

chmod 755 my_script

Задания

  1. Создайте директорию public_html. Попробуйте удалить директорию public_html у другого пользователя.
  2. Скопируйте файл /var/log/dmesg в свою корневую директорию. Просмотрите содержимое файла dmesg с помощью команд more и less, а затем с помощью команды cat. Сформулируйте отличия в работе данных команд.
  3. С помощью команды ls -la посмотрите, есть ли в вашей домашней директории файлы, начинающиеся с символов .saves или .nfs. Если да, то удалите их.
  4. Создайте три архива директории /usr/share/dict (dict.tar, dict.tgz, dict.zip), используя различные способы архивации, и сравните размеры получившихся файлов.


Краткий справочник

Краткий справочник по командам Linux

Процессы

Напомним, что указание после команды символа & приведет к фоновому выполнению команды.

Команда | Назначение
fg | Переводит задание из фонового режима (background) в приоритетный (foreground)
bg | Переводит команду из приоритетного (foreground) режима в фоновый (background)
Ctrl+z | Прерывает работающую в данный момент программу. Выполнение программы приостанавливается до тех пор, пока пользователь не возобновит ее выполнение
kill | Отменяет задание с указанным номером процесса
ps | Выдает список всех выполняемых процессов, включая фоновые задания

Команды для работы с файлами и каталогами

Командa | Назначение
ls | Выдает список имен файлов и каталогов
more | Отображает содержимое файла постранично
less | То же самое
mkdir | Создает каталог
rmdir | Удаляет пустой каталог
pwd | Сообщает путевое имя рабочего каталога
cd | Осушествляет переход в указанный каталог
cp | Копирует файлы и каталоги
mv | Перемещает (переименовывает) файлы и каталоги
rm | Удаляет файлы и каталоги
find | Ищет в каталогах файлы на основании заданных критериев поиска
chmod | Изменяет права доступа к файлам и каталогам
tar | Создает резервные копии файлов в архивном файле
zip | Осуществляет сжатие и распаковку сжатых файлов

Фильтры

Фильтры -- это команды, которые читают данные, выполняют над ними операции и посылают результаты на стандартный вывод. Для более подробного изучения команд воспользуйтесь утилитой man, выдающей справку о заданной команде.
Командa | Назначение
cat | Выводит файл на экран
wc | Подсчитывает число строк, слов и символов в файле и выдает эти значения
spell | Проверяет правильность написания всех слов в файле и выводит только слова с ошибками
sort | Сортирует строки, которые получает как входные данные
diff | Сравнивает два файла и выводит строки, которые отличаются
cmp | Производит побайтовое сравнение двух двоичных файлов
grep | Ищет в файлах образец и перечисляет все строки, в которых он есть
cut | Выделяет (вырезает) указанные поля или столбцы из файла

Другие полезные команды

Командa | Назначение
whoami | Выводит имя, под которым зарегистрирован пользователь
date | Выводит дату и время
cal | Выводит календарь на текущий месяц. Можно указать месяц и год (или только год)
who | Выводит список пользователей, работающих на машине
top | Выводит интерактивный список текущих процессов
xkill | Завершает выполнение процесса, на окно которого укажет курсор
df | Выдает отчет о доступном и использованном дисковом пространстве
du | Выдает отчет об использовании дискового пространства, занимаемого файлами или каталогами
mcopy | Копирует файлы при работе с файловой системой MS DOS


Konqueror

Konqueror - файловый менеджер и браузер

Konqueror совмещает в себе функции файлового менеджера и браузера, т. е. позволяет работать как с локальной файловой системой, так и просматривать различные документы в сети Интернет. Для его запуска следует найти кнопку с изображением домика на панели приложений KDE2 и щелкнуть по ней левой кнопкой мыши -- в этом случае при старте Konqueror будет выполнять функции файлового менеджера. Для запуска в режиме браузера служит отдельная кнопка с изображением земного шара. Можно запустить Konqueror через главное меню KDE или из командной строки, набрав konqueror для запуска в режиме файлового менеджера (для режима браузера добавьте URL требуемого ресурса).

Не волнуйтесь, если при старте Konqueror выглядит не совсем так, как на рисунке, внешний вид менеджера можно изменять, настраивая его в соответствии с пожеланиями пользователя.

В Linux все файлы и директории упорядочены в виде иерархической структуры, более всего напоминающей дерево, растущее вниз. На самом верхнем уровне находится директория, обозначаемая как "/" -- корневая директория. Можно переходить с одной "ветки" дерева на другую, добираясь до нужного места файловой системы. Местонахождение любого файла в файловом дереве можно описать, используя термин "путь", который представляет собой просто список директорий, через которые потребуется пройти, чтобы добраться до нужного места. Например, /home/test означает, что test есть поддиректория директории home, которая в свою очередь есть поддиректория корневого каталога (/). Путь до текущей директории показывается в поле Адрес. Стрелка вверх на панели инструментов позволяет переместиться на один уровень вверх по файловому дереву, а стрелка влево перемещает в предыдущее состояние.

Konqueror делает легкой и удобной любую работу с файлами и директориями, а именно: операции копирования, удаления, создания, смены прав доступа и т. д. Для просмотра содержимого файлов применяются соответствующие внешние программы, определяемые по расширению файла. Если с данным расширением умеют работать сразу несколько программ, то выбрать нужную можно из списка, который формируется в меню Страница.

Для любителей работать с командной строкой и окном shell добавлена возможность работы с эмулятором терминала. Для его запуска в меню Окно нужно выбрать пункт Показать эмулятор терминала.


Программа mc

Программа Midnight Commander (mc)

Программа MC (Midnight Commander) очень напоминает популярный у пользователей MS DOS и MS Windows файловый менеджер Norton Commander (и похожий на него Volkov Commander). Она запускается в окне shell командой mc. Основное назначение этой программы -- интерпретация команд (выполнение функций shell) и работа в качестве файлового менеджера (причем манипулирование файлами на удаленной машине не сложнее, чем на локальной).

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

Над ней находится командная строка, позволяющая вводить команды. Все, что вы набираете, появляется в командной строке, а при нажатии клавиши Enter, MC передаст эту строку на выполнение shell.

Самая верхняя строка -- строка меню. Она может быть не видна, но при нажатии клавиши F9 или при щелчке мыши эта строка отображается в верхней части экрана.

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

Выделение файла производится при помощи левой кнопки мыши, а правая кнопка осуществляет отметку файла (повторное нажатие снимает отметку).

Двойной щелчок мыши приведет к попытке выполнения файла, если это запускаемый файл (т. е. имеет право на выполнение). Если расширение файла связано с каким-либо приложением, то оно будет запущено.

Для перехода к предыдущей странице в списке файлов, следует щелкнуть на верхней границе панели, а для перехода к следующей -- на нижней границе.

Некоторые команды в MC требуют использования клавиш Ctrl и Alt. Далее используются следующие обозначения: C -- клавиша Ctrl, A -- клавиша Alt. Дефис применяется для обозначения комбинации клавиш, например C-f означает одновременно нажатие клавиш Ctrl и f.

Все комбинации клавиш в MC напоминают комбинации клавиш текстового редактора Emacs, речь о котором пойдет ниже.

В меню, рядом с названием команды, указаны комбинации клавиш, приводящие к выполнению данной команды. В таблице перечислены некоторые комбинации клавиш и их назначение.

Команда | Назначение
C-l | Обновляет экран MC
C-x c | Позволяет изменить права доступа к файлу (каталогу) или группе помеченных файлов (каталогов)
C-x i | Устанавливает неактивную панель в режим отображения информации о текущей панели
C-x ! | Выполняет внешнюю команду
A-? | Выполняет поиск файла
A-c | Осуществляет переход в другой каталог
C-o | Позволяет просмотреть результат выполнения последней программы путем отключения панелей; для возврата в приложение следует нажать C-o ещe раз

При работе с файлами могут встретится три различных типа диалоговых окон.

Окно error сообщает об условиях ошибки и содержит три опции. Опция Skip обычно используется для игнорирования операции и Abort -- для ее отмены. Также имеется опция Retry, которая может быть использована для повторного выполнения операции после устранения неполадки с другого терминала.

Окно replace появляется при попытке копирования или перемещения файла на место уже существующего. В окне отображаются даты создания и размеры обоих файлов. Если нажать кнопку Yes, то файл будет переписан, при нажатии на кнопку No файл будет игнорирован, кнопка alL используется для переписывания всех файлов без подтверждения, при использовании кнопки nonE будут игнорированы все файлы при попытке перезаписи и, наконец, кнопка Update используется для переписывания в случае, если исходный файл новее приписываемого, в противном случае файл игнорируется. Операция может быть полностью остановлена с помощью кнопки Abort.

Окно recursive delete появляется при попытке удаления каталога, содержащего файлы. Кнопка Yes используется для удаления каталога, No -- для игнорирования каталога и перехода к следующему, alL -- для удаления всех каталогов и nonE -- для игнорирования всех не пустых каталогов. Операция может быть прервана нажатием кнопки Abort. При нажатии на кнопку Yes или alL будет выдан запрос на подтверждение. Наберите "yes" в случае полной уверенности в том, что удаляемые файлы не нужны.

Ниже приведены некоторые команды управления панелями.

Команда | Назначение
Tab, C-i | Меняет текущую панель; бывшая неактивная панель становится активной, а бывшая активная становится неактивной
Insert, C-t | Отмечает файл; для снятия пометки следует отметить еще раз
+ (плюс) | Позволяет отметить группу файлов: появится диалоговое окно для ввода шаблона отметки (* используется для указания нуля или более символов и ? для одного символа)
\ | Используется для снятия пометки группы файлов, назначение обратно назначению клавиши "+"


Работа в сети

Компьютерные сети

С развитием компьютерной техники одновременно развивались и средства обмена информацией между несколькими компьютерами. В начале 70-х годов был разработан прообраз современной высокоскоростной технологии Ethernet. В то же время несколько университетов США стали обмениваться данными с помощью модемов, работающих на небольшой скорости. Эта технология положила начало системе телеконференций Usenet. Разнообразные подходы и идеи, используемые при построении сети, в то время еще не обеспечивали совместимости различных систем. Вскоре был разработана концепция объединения сетей различных компаний и организаций с помощью специально разработанных для этих целей шлюзов (gateways). Шлюзы используют общий протокол для обмена данными, получивший название Internet Protocol (IP).

Протокол IP стал использоваться в качестве стандарта и для локальных сетей. Все большая стандартизация и расширение предоставляемых возможностей способствовали тому, что количество компьютеров, имеющих доступ к этим услугам, неуклонно росло. Со временем пользователи стали воспринимать такое свободное объединение компьютеров как нечто единое -- Internet. Далее мы будем использовать русскую транскрипцию этого термина -- Интернет.

Так что же это такое Интернет? Это -- совокупность государственных, региональных, корпоративных и других компьютерных сетей, а также отдельных компьютеров, объединенных между собой разнообразными каналами передачи данных и унификацией применяемых технологий. На сегодняшний день сеть Интернет охватывает практически все страны мира, ее услугами пользуется уже более 50 миллионов человек, и их число продолжает неуклонно расти.

Интернет часто называют "Сетью сетей". По своей структуре это полностью децентрализованная сеть, состоящая из множества других сетей. В Интернет нет никакого единого центра управления или единого руководства. С самого начала в структуру будущей сети Интернет были заложены такие качества, как надежность передачи информации и высокая отказоустойчивость.

Три ключевых понятия составляют основу Интернет -- узловой компьютер, канал передачи данных и протокол TCP/IP.

Узловой компьютер, называемый также хостом, обеспечивает передачу информации в сеть от абонентов, подключенных к нему, и прием информации для своих абонентов. Вторая, не менее важная функция хоста -- регулирование и, при необходимости, перенаправление по другому пути потоков данных от других хостов. Обычно хост-компьютеры устанавливаются в организациях, предоставляющих доступ к сети.

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

И, наконец, протокол передачи данных TCP/IP (Transmission Control Protocol/Internet Protocol) -- стандартный сетевой протокол связи, используемый для соединения компьютерных систем через Интернет, обеспечивает надежную пересылку информации в масштабах всей сети. Программное обеспечение для работы с протоколом TCP/IP устанавливается на хост-компьютерах и машинах абонентов сети. В отличие от других протоколов передачи данных TCP/IP был разработан специально для работы в Интернет, поэтому в него изначально заложены такие необходимые качества, как гарантированная доставка информации без потерь до места назначения, изменение пути следования информации при отказе одного из сегментов сети, гибкость и расширяемость.

Давайте теперь от рассмотрения структуры сети перейдем к информационному сервису, который она предоставляет.

Электронная почта, или e-mail, является аналогом обычной бумажной почты. Электронный адрес позволяет совершенно однозначно идентифицировать пользователя этой услуги среди миллионов других пользователей сети. С помощью специальных программ для пересылки электронной почты, зная адрес другого человека, можно отправить ему текстовое сообщение, программы, изображения, словом, любую информацию, способную храниться в электронном виде на компьютере, и она будет доставлена через несколько минут даже на другой конец Земли. Точно так же любой другой человек, зная ваш электронный адрес, сможет отправить электронное послание вам.

Телеконференции, или как их еще называют, группы новостей, похожи на электронную почту. Различие состоит в том, что телеконференции -- это как бы огромный, непрерывно обновляющийся электронный журнал, разбитый на множество разделов по интересам, на которые можно подписаться и получать сообщения только из интересующих вас разделов, а неинтересные попросту игнорировать. Вы можете не только читать сообщения, поступающие в телеконференции, но и посылать туда свои вопросы, предложения и высказывать мнения, которые прочтут все люди, подписанные на эти разделы.

Ну и наконец World-Wide-Web (WWW). WWW -- это гипертекстовая среда, содержащая огромное количество различных документов, таких как информационно-справочные базы данных, правительственные документы, каталоги библиотек и многое, многое другое. Вы можете просматривать такие документы в реальном времени, переходя от одного документа к другому простым нажатием на кнопку мыши, наведенной на нужную вам ссылку. Основное достоинство WWW состоит в том, что документы могут иметь ссылки не только в пределах одной базы или компьютера, но могут ссылаться и на другие документы, хранящиеся на удаленном компьютере. В результате мы получаем как бы единое гипертекстовое пространство, по которому можно перемещаться в любом необходимом направлении в поисках нужной информации.


WWW

Технология World Wide Web (WWW)

World Wide Web ("Всемирная паутина") -- система доступа к данным, используемая в Интернет. Пользователь получает доступ к страницам (pages) информации, содержащим текст, графику и ссылки на другие страницы информации. Графические программы просмотра (graphical browser programs, браузеры) позволяют переходить на другую страницу, содержащую нужную вам информацию, при помощи щелчка мыши на ссылке.

Система WWW состоит из большого числа программ-серверов, выполняющихся на машинах сети Интернет. Совместно серверы WWW образуют распределенную базу данных сетевого гипертекста. Сервер наполняется информацией на какую-либо тему, включая образы фотографий и картин, музыки, шумов и речи. Далее пользователь через сеть Интернет с помощью одной из программ просмотра у себя на компьютере обращается к этому серверу по его адресу в сети. Пользователь видит текст, в котором, выделены некоторые участки текста -- "ссылки". Достаточно щелкнуть по такому участку мышкой и раскроется содержание нового документа. При этом ссылка может практически мгновенно (за несколько секунд) привести пользователя на сервер WWW, установленный на другом конце света.

Технология World Wide Web базируется на трех важных стандартах. Первый из них -- URL (Universal, или Uniform Resource Locator, универсальный адрес ресурса) -- предоставляет стандартный способ задания местоположения данных, доступных в глобальной компьютерной сети Интернет.

Второй -- протокол HTTP (Hyper Text Transfer Protocol, протокол передачи гипертекста) -- предоставляет доступ к информации и позволяет передавать гипертекстовые документы по сети.

Наконец, HTML (Hyper-Text Markup Language, язык разметки гипертекста) позволяет создавать текстовые документы, включающие ссылки на URL других данных. Зачастую эти ссылки указывают на другие документы HTML, которые, в свою очередь, доступны с помощью HTTP. В результате перед пользователем расстилается огромная паутина взаимосвязанной информации.

Следует отметить, что HTML не позволяет точно задавать внешний вид документа. Можно лишь предлагать свой вариант оформления. Различные программы просмотра могут интерпретировать ваши предложения по-своему. Авторы, ориентирующиеся на возможности только одной из программ просмотра, ограничивают круг возможной аудитории.


URL

 Предыдущий раздел Уровень выше Следующий раздел

Универсальный локатор ресурса (URL)

URL -- специальная форма адреса информации в сети Интернет, содержащая данные об имени сервера, на котором хранится документ, путь к каталогу файла и собственно имя файла. URL-адрес состоит из двух частей. Сначала указывается способ связи, при помощи которого будет осуществляться доступ к данным. От этого зависит, какая дополнительная информация потребуется. Затем помещается информация о том, где эти данные расположены. Разделяются эти части двоеточием, например:

http://имя_сервера/путь/файл
Рассмотрим наиболее распространенные способы доступа к данным в сети Интернет.

HTTP (протокол передачи гипертекста) был разработан специально для World Wide Web. При использовании этого протокола необходимо указать имя машины, а также сообщить дополнительную информацию, которую компьютер сможет использовать для поиска и создания необходимых данных. Эти дополнительные данные обычно представляют собой имя файла и информацию о каталоге. Отчасти из-за того, что первые разработки были созданы на системах Unix, для разделения имен каталогов и файла в URL используется прямая наклонная черта "/". Например, "http://www.ctc.msiu.ru".

FTP (File Transfer Protocol, протокол передачи файлов) -- давно используемый метод доступа, разработанный для передачи больших объемов информации по Интернет. Этот метод получил широкое распространение уже достаточно давно. Чтобы получить доступ к файлу или каталогу FTP, необходимо указать имя машины и имя файла или каталога этой машины. Например, "ftp://prep.ai.mit.edu".


Браузеры

Браузеры и их назначение

Получение Web-страниц из Интернета и их отображение -- достаточно сложная задача. Для этих целей используют специальные программы просмотра гипертекста. Такие программы называют браузерами (от английского слова browse -- просмотр). В русскоязычной литературе можно встретить и другое написание этого слова -- броузер.

Браузеры появились практически одновременно с концепцией World Wide Web и прошли большой путь развития. Сначала это были программы, которые могли отображать только текст, а современные браузеры работают и с графикой, и со звуком, и с видеоизображениями.

Среди множества разнообразных программ просмотра гипертекстовых документов наибольшее распространение получили Microsoft Internet Explorer (далее Explorer) и Netscape Navigator (далее Netscape). До сих пор продолжается начатая уже несколько лет назад маркетинговая война между производителями этих двух браузеров. Ни та, ни другая компания ничего не зарабатывает на распространении своих браузеров (Explorer»бесплатная программа, а Netscape условно-бесплатная программа). Тем не менее, та компания, которая завоюет рынок браузеров, может рассчитывать на соответствующий рост продаж программных продуктов для серверов.

Далее мы будем ориентироваться на браузер Netscape. Этот браузер доступен как для ОС Linux, так и для MS Windows и бесплатен для некоммерческого применения. Методы работы с браузером Explorer практически не отличаются от методов работы с Netscape, что позволит приверженцам данного программного продукта самостоятельно его освоить.

Для запуска браузера Netscape выберите в разделе Интернет главного меню KDE пункт Netscape Navigator или Netscape Communicator. Последнее приложение является интегрированным программным средством, включающим, кроме браузера Netscape Navigator, еще Netscape Composer -- средство создания Web-страниц, Netscape Messenger -- средство работы с электронной почтой, и другие дополнительные модули. Для запуска из командной строки наберите "netscape".

Пользователь вводит URL необходимого ему ресурса (конкретный адрес Web-страницы, адрес сервера или поисковой машины) в поле Адрес (Location) и нажимает на клавишу Enter. Браузер устанавливает соединение с требуемым ресурсом и отображает полученную информацию.

Справа от поля для ввода URL находится небольшой треугольник, при нажатии на который раскрывается список посещенных ранее страниц, из которого выбирается строка с нужным адресом. Благодаря этому пользователю не требуется заново вводить адрес ресурса. Браузер позволяет добавлять закладки на отдельные страницы, для чего следует выбрать кнопку Закладки (Bookmarks) слева от строки с адресом и в появившемся меню выбрать пункт Новая закладка (Add Bookmark).

Для сохранения найденной информации следует из меню Файлы (File) выбрать пункт Сохранить (Save As). При этом текущая страница будет сохранена, но без внедренной в нее графики.

Для сохранения страницы вместе с графической информацией следует сначала загрузить ее в редактор страниц (доступен только в Netscape Communicator через пункт Править страницу из меню Файл (File | Edit Page)) и уже в нем сохранить информацию.

Для сохранения отдельных рисунков следует подвести к ним указатель мыши и нажать на правую кнопку, после чего в появившемся контекстном меню следует выбрать пункт Сохранить картинку как (Save Image As) и указать, куда и под каким именем следует сохранить изображение.


Поисковые машины

Поиск информации в Интернет

В мире существует огромное количество WWW серверов самого разного назначения. Без специальных средств ориентировка в этом гигантском объеме информации просто невозможна. Решают эту проблему поисковые серверы, которые хранят миллионы ссылок на разные темы и производят поиск нужных документов по запросу пользователя.

Для того чтобы облегчить поиск документов были созданы каталоги WEB-серверов и поисковые машины. В большинстве случаев каталог представляет собой тематические подборки ссылок на Web-ресурсы (медицина, политика, программирование и т. д.). Поисковые же машины позволяют попасть на страничку, текст которой содержит заданный набор слов. Каждая поисковая машина обладает своими специфическими возможностями, достоинствами и недостатками. Следует отметить, что наполнение сети Интернет русскоязычной информацией, хотя и происходит быстрыми темпами, все еще значительно отстает от уровня англоязычной информацией. Английский язык продолжает оставаться основным языком общения пользователей Интернет.

Познакомимся с возможностями некоторых поисковых серверов.

AltaVista - http://www.av.com

Это одна из первых наиболее мощных поисковых машин. Она имеет встроенный переводчик страниц с английского языка на французский, немецкий, итальянский, испанский и т. д. и обратно. Правда, на русский язык она переводить не умеет. Схема использования стандартна: в строке для ввода пишутся ключевые слова, а затем нажимается кнопка Search (поиск). Далее выдается список ссылок на страницы с краткой аннотацией.

Yahoo! - http://www.yahoo.com

Это не только поисковая машина, но и крупнейший классификатор ресурсов сети. Здесь выделено несколько разделов верхнего уровня: исскуство, бизнес, компьютеры, образование, развлечения, правительство и другие. Каждый из разделов помимо ссылок содержит подразделы, которые в свою очередь тоже содержат подразделы и т. д.

Искать интересующую информацию можно как с помощью строки запроса аналогично AltaVista, так и перемещаясь по разделам, но в последнем случае необходимо точно знать, к какой именно категории относится предмет поиска.

Rambler - http://www.rambler.ru

Помимо известной поисковой системы, сервер "Rambler" включает классификационный каталог "Rambler Top 1000", состоящий из категорий, которые охватывают все основные тематические направления российских Web-серверов.

В разделах списки серверов оформлены в виде таблицы. На одном экране выводится 20 ссылок. По умолчанию сортировка идет по текущей посещаемости серверов в каждой категории. Для каждого ресурса приводится дополнительная информация о числе посещений и динамике популярности сервера.

Таким образом, сервер помогает получить верное представление о популярности отечественных Web-серверов. Российская часть Интернет представлена здесь достаточно полно.

Яndex - http://www.yandex.ru

Занимает одно из ведущих мест среди русскоязычных поисковых серверов. Активно и динамично развивается.

Стратегии, применяемые для поиска информации в Интернет, постоянно совершенствуются. Так Google (www.google.com), некоторое время назад считавшийся экспериментальной поисковой системой, сейчас пользуются пятнадцать миллионов человек ежемесячно. Секрет Google в удачном алгоритме отбора документов, отвечающих поисковому запросу. Предшественники Google пытались определить "ценность" документа только на основании анализа его текста: как часто и как близко к началу документа встречаются там слова из запроса, есть ли они в заголовке и т. д.

Создатели Google решили оценивать соответствие документа запросу с помощью специального числа, похожего по смыслу на индекс цитирования: чем больше ссылок на данный документ, тем это число, называемое PageRank, больше. Если же сервер не находит запрашиваемой комбинации в своем каталоге, то пользуется тематическим каталогом Yahoo. Результаты оказались столь хороши, что Google стал "народной" поисковой системой. Google постоянно совершенствует свой сервис: проиндексированы все документы в формате pdf, организован поиск картинок в Интернет (images.google.com).

Одним из недостатков Google можно считать отсутствие диалога с пользователем во время подбора документов. Этот недостаток стараются исправить конкуренты Google, классифицируя найденные документы. Так поисковая система Teoma (www.teoma.com) автоматически классифицирует найденные ссылки на документы. Результаты при выводе делятся на три части: собственно классификация, занимающая верхнюю часть окна, документы, лучше всего соответствующие запросу, размещаются слева, а справа выводятся документы, в которых много ссылок на страницы, стоящие слева.

Еще одним претендентом на роль заменителя Google является метапоисковая система Vivisimo (www.vivisimo.com), разработанная в университете Карнеги. Как и Google в прошлом, Vivisimo - экспериментальный некоммерческий проект. Основной особенностью этой системы является представление в виде дерева (иерархическая кластеризация) документов, найденных другими поисковыми системами, такими как Altavista и Fast (www.allthemes.com). В сущности Vivisimo даже не метапоисковая система, а приставка, способная кластеризовать любые данные. Алгоритм кластеризации Vivisimo присоединяется к любой поисковой системе. В окошке правее окна запросов можно вместо "Search the Web" выбрать например "Альтависту". Vivisimo перехватит ссылки, выданные "Альтавистой", отсортирует их и разместит их на ветках дерева в левой части своего окна.


E-mail

 Предыдущий раздел Уровень выше Следующий раздел

Электронная почта (E-mail)

Электронная почта представляет собой сервис, предназначенный для пересылки сообщений между пользователями Интернета и локальных сетей. Основная идея состоит в следующем: каждый пользователь имеет уникальный почтовый адрес, как правило образуемый из его регистрационного (входного) имени и имени сервера, где он зарегистрирован. Таким образом, сохраняется некоторая аналогия с бумажной почтой, где адрес состоит из двух частей: "Куда" и "Кому". "Куда" -- на сервер, "Кому" - пользователю. Имя пользователя и имя сервера разделяются символом "@" (называемым "коммерческое ат", а русскоязычные пользователи часто используют термин "собачка"). Никакие пробелы в адресе не допускаются. Адрес зарегистрированного в компьютерной сети МГИУ пользователя имеет вид: logname@mail.msiu.ru, где logname заменяется на входное имя пользователя.

Для работы с электронной почтой существует много различных программ. Далее рассматривается вопрос отправки и приема почты с помощью программы Netscape Messenger, входящей в состав браузера Netscape.

Настройка почты в Netscape

Для того чтобы Netscape смог работать с электронной почтой, нужно его настроить, сообщив ему некоторую необходимую информацию. Для этого выберите пункт Правка (Edit) в верхнем меню браузера Netscape, и в появившемся списке выберите пункт Настройка (Preferences)

Categories После этого на экране появится окно настроек. Оно состоит из двух главных частей: слева расположены категории настроек, а справа -- сами настройки, их содержимое.

Обратите внимание, категории бывают двух видов: есть собственно категории и подкатегории, т. е. категории, входящие в состав первых. У названия категорий первого уровня слева есть такой треугольничек: " [image] ". Если он направлен вправо (как на картинке), категория не раскрыта на подкатегории, а если он направлен вниз ;-- раскрыта. Для того чтобы перевести треугольник из одного состояния в другое, нажмите на него мышью. На рисунке категория Отображение (Appearance) раскрытa, а категории Навигатор (Navigator), Roaming User, Почта и Новости (Mail & Newsgroups), Редактор (Composer) и Продвинутый (Advanced) -- нет.

Для настройки почты в Netscape следует выполнить следующие действия.

  1. Раскрыть категорию Почта и Новости (Mail & Newsgroups).
  2. Выбрать подкатегорию Идентификация (Identify); эта подкатегория содержит информацию о пользователе; необходимо вписать свой почтовый адрес в поле Адрес e-mail (Email address). Если там уже указано ваше входное имя, то нужно будет дописать к нему символы @mail.msiu.ru. Содержимое остальных полей изменять не обязательно.
  3. Выбрать подкатегорию Почтовый сервер (Mail servers).
    Incoming Mail Servers
    В появившемся окне в верхнем поле следует проверить имя почтового сервера и, если оно отличается от mail, то выделить его и нажать кнопку Править... (Edit) справа. После этого появится окно, в котором надо будет вписать в поле Имя сервера (Server Name) название сервера mail, а в поле Ваше имя (User Name) -- свое входное имя. Для того чтобы пароль не запрашивался каждый раз при попытке получить почту, установите флажок Запомнить пароль (Remember password). После это надо нажать кнопку Готово (OK), чтобы опять появилось окно основных настроек.
  4. Продолжая работать с категорией Почтовый сервер, введите в поле Сервер для отправки почты: (Outgoing mail (SMTP) server) название mail.
После этого настройку почты можно считать законченной. Для выхода из окна настроек нажмите кнопку Готово.

Отправка почты

Для входа в режим работы с почтой нажмите либо кнопку с изображением письма, находящуюся в правом нижнем углу браузера Netscape, либо выберите пункт Почтовый ящик (Messenger) из меню Коммуникатор (Communicator).

Не забудьте установить правильную кодировку -- Cyrillic (KOI8-R). Для того чтобы написать письмо, нужно нажать на кнопку Написать (New Msg) вверху окна. Появится окно с формой для отправки почты. В нем в верхнем поле To вводится электронный адрес получателя.

Среднее поле Тема (Subject) предназначено для записи предмета письма, его темы или названия. Это нужно для того, чтобы получатель мог сразу понять, о чем письмо, либо быстро найти давно полученное письмо среди других.

Сам текст письма пишется в большом поле внизу. При написании письма можно использовать форматирование текста: выделение цветом, размером и начертанием шрифта и т. д. Для создания текста автоматически подключается программа Netscape Composer, позволяющая включать в письма все элементы, доступные в гипертекстовом документе: ссылки, таблицы, графику и т. д. Эта программа подробно рассматривается в разделе "Обработка текста на ЭВМ".

Для отправки написанного письма необходимо нажать кнопку Отослать (Send). Если письмо содержало элементы форматирования, то появится окно, в котором нужно будет также нажать Send.

Иногда требуется послать одно и то же письмо нескольким людям. Для этого в поле ввода электронного адреса ввести сразу несколько адресов, разделяя их запятой или нажимая клавишу Enter после каждого адреса.

Получение почты

Проверка того, пришла ли почта, осуществляется нажатием кнопки Получить (Get Msg). Если новых сообщений нет, в самом низу окна появится сообщение об этом (There are no new messages on the server). Если же имеются новые сообщения, то покажется окошко загрузки почты и в списке сообщений справа появится новое, отмеченное жирным шрифтом. Чтобы прочитать полученное сообщение, нажмите на него мышкой.

Накапливающиеся сообщения сортируются по разным полям: по предмету письма (Subject), имени адресата (Sender), дате отправки (Date) и приоритету (Priority). Щелчок левой кнопкой мыши по наименованию поля сортирует почту по данному признаку (в порядке возрастания), повторный щелчок изменяет порядок сортировки на обратный.

Ответ на послание

Для того чтобы ответить на пришедшее письмо, нужно нажать на кнопку Ответить (Reply). Появится окно посылки почты, в котором уже заполнены поля адреса и предмета письма, а также процитировано письмо, на которое вы пишете ответ. Цитату при желании можно удалить (полностью или частично).

Элементы почтового ящика

Почтовый ящик состоит из нескольких частей:

  1. Inbox -- пришедшие письма;
  2. Unsent Messages -- неотосланные письма;
  3. Drafts -- недописанные письма (черновики);
  4. Templates -- шаблоны;
  5. Sent -- отосланные письма;
  6. Trash -- удаленные письма (корзина).
Переключаться между этими элементами можно путем выбора их слева в окне или в раскрывающемся списке вверху. Письма можно переносить с помощью мыши из одной части почтового ящика в другую. Удалить письмо можно, если нажать на него мышью и выбрать кнопку Удалить (Delete), либо нажать комбинацию клавиш Alt+d.

Адресная книга

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

Для входа в адресную книгу выберите пункт Адресная книга (Address Book) из меню Коммуникатор (Communicator). Для добавления новой записи в появившемся окне выберите пункт Новая карточка (New Card) из меню Файлы (File), либо нажмите кнопку Новая карта (New Card). В появившейся форме на вкладке Name вводится следующая информация об адресате:

  • First Name -- имя адресата;
  • Last Name -- фамилия адресата;
  • Display Name -- полное имя адресата (автоматически добавляется к письму);
  • Email Address -- электронный адрес.
Поскольку адресную книгу можно использовать не только как список электронных адресов, но и как записную книгу, то в ней предусмотрены поля для хранения дополнительной информации об адресатах:
  • Nickname -- псевдоним;
  • Title -- заголовок или название;
  • Organization -- организация, которую представляет или к которой имеет отношение адресат;
  • Department -- отдел в этой организации;
  • Notes -- некоторые дополнительные заметки;
  • Prefers to receive HTML -- предпочитает получать не простой текст, а оформленный средствами HTML.
Ввод информации и добавление новой записи в адресную книгу осуществляется при нажатии Готово (OK).

Чтобы послать сообщение человеку, адрес которого хранится в адресной книге, нужно либо, выбрав его адрес, мышкой нажать кнопку Написать (New Msg), либо при открытом окне создания нового письма перетащить мышкой адрес из адресной книги в поле To окна создания письма, либо в окне создания нового письма нажать кнопку Адрес (Address), после чего появится окно с адресами, в котором, после выбора адресата, нажмите кнопку To.

Присоединение файлов (Attach)

Вместе с письмом можно пересылать различные файлы, например, картинки, архивы, музыкальные файлы, программы и т. д. Получается как бы уже не письмо, а посылка. Для того чтобы присоединить к письму файл, нужно нажать в окне создания письма кнопку Прицепить (Attach) и в появившемся списке выбрать Файл (File), если подключается файл общего вида, и Web-страница (Web Page), если подключается гипертекстовый документ. После этого появляется окно поиска файла, в котором и надо выбрать требуемый файл. Можно присоединять несколько разных файлов, нажимая на Прицепить требуемое число раз.

Переотправка почты (Forward)

Если полученной вами почтой хочется поделиться еще с кем-то, можно это письмо переслать по другому адресу. Для этого надо нажать в окне чтения почты кнопку Переслать (Forward) и вписать новый адрес.

Задания

  1. Настройте почтовую программу в Netscape.
  2. Пошлите электронное письмо самому себе. В поле Тема напишите "test", в главном поле -- поздравьте себя с первым письмом.
  3. Пошлите преподавателю письмо с указанием вашего e-mail адреса.
  4. Пошлите одному или нескольким своим друзьям почту, узнав у них входные имена.
  5. Проверьте, не пришло ли вам ваше сообщение.
  6. Ответьте на какое-либо из пришедших вам писем.
  7. Удалите наименее нужное из писем, хранящихся в разделе Sent.
  8. Запишите в адресную книгу адрес вашего преподавателя и адреса своих друзей.
  9. Отправьте письмо всем записанным в вашей адресной книге людям с уведомлением о том, что их адреса внесены в вашу адресную книгу.
  10. Нарисуйте простейший небольшой рисунок и пошлите его вместе с письмом вашему преподавателю.


ICQ

Появление в ноябре 1996 года сервиса ICQ (можно прочесть как I Seek You, то есть "Я ищу тебя", а русскоязычные пользователи ласково окрестили эту программу "аськой"), предоставило еще одну, поистине революционную, возможность общения пользователям Интернет. Название отражает самое важное отличие этой программы от большинства других программ общения в Интернете. ICQ на самом деле позволяет "видеть" всех ваших друзей и знакомых, как только они появляются в сети Интернет в режиме онлайн. ICQ предоставляет возможность, забыв о расстояниях, мгновенно связаться со своими знакомыми или деловыми партнерами в любое время. ICQ позволяет обмениваться сообщениями, посылать файлы и URL. С помощью удобной системы настроек можно установить требуемый уровень конфиденциальности -- от простейшего до самого "засекреченного", когда вы видите всех, а вас не видит никто.

В ОС Linux возможности этого сервиса предоставляют программы licq и kicq. Эти программы выполняются в фоновом режиме, используя минимум памяти и ресурсов сети. Вы можете заниматься чем угодно, потому что ICQ предупредит, когда поступит новое сообщение.

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

Отметим некоторые возможности программы ICQ.

Личный Контактный список
Каждый пользователь самостоятельно определяет, кто из его друзей или знакомых будет находиться в его Контактном списке.
Online-контроль
Система постоянно проверяет, кто из ICQ-пользователей в настоящий момент работает на компьютере, имеющем доступ к сети (режим online), и в каком режиме (состоянии).
Выбор состояния
Пользователь имеет возможность выбрать для себя желаемое состояние (в сети, отошел, недоступен, занят, не беспокоить, свободен для разговора, отключен, режим полной невидимости).
ChatDirect
Обеспечивает диалог (чат) с неограниченным количеством избранных ICQ-пользователей.
MessageDirect
Позволяет обмениваться сообщениями, а также передавать сообщение всем, кто в этот момент не доступен. Все сообщения, поступившие, когда пользователь был недоступен, сохраняются до тех пор, пока он не получит возможность их прочесть. Сохраняется полный диалог с каждым пользователем.
Запись диалога
Все входящие и исходящие сообщения, а также прочие события автоматически сохраняются. Диалоги с каждым могут быть восстановлены в связной форме, даже если в это время вы разговаривали с десятком различных ICQ-пользователей. На протяжении, а также в конце чата, пользователь может сохранить беседу в текстовом файле.
Конфиденциальность
Находясь в активном режиме, пользователь может "скрыться", позволяя видеть себя только некоторым, или даже сохранять полную анонимность.
Секретность
Система предоставляет возможность защитить доступ в ICQ личным паролем.
"Черный список"
Формирование списка людей, сообщения которых будут автоматически игнорироваться.
E-mail-совместимость
Система поддерживает все приложения электронной почты и позволяет быстро проверять содержание почтового ящика.
UIN-номер
Каждому присваивается персональный номер, который идентифицирует пользователя, и может быть указан в любых документах для установления мгновенных контактов.


Ssh, ftp, scp...

 Предыдущий раздел Уровень выше Следующий раздел

Базовые сетевые утилиты

Linux является сетевой операционной системой. Это означает, что пользователь может пересылать файлы и работать не только на своей локальной машине, но, пользуясь удаленным доступом, получать и посылать файлы, выполнять какие-то действия и на удаленной машине. Обширный набор сетевых утилит делает процесс работы на удаленном компьютере таким же удобным, как и на локальной ЭВМ.

В целях обеспечения безопасности при работе на удаленном компьютере стоит использовать утилиту ssh (secure shell). Конечно, пользователь должен быть зарегистрирован в той системе, где он собирается работать. В окне эмулятора терминала пользователь должен ввести команду

ssh user_login@host
где login -- регистрационное имя пользователя на машине host. Другой вариант таков:
ssh host -l user_login

Пример
Для инициализации сеанса работы пользователя test на машине apps требуется набрать команду ssh test@apps. Если пользователь зарегистрирован в системе, то ему будет предложено ввести пароль для входа и, если не было ошибки при вводе пароля, будет предоставлена консоль для работы. Дальнейшая работа ничем не отличается от работы на локальной машине.

Иногда возникает задача только передачи файла/файлов с одной машины на другую. В ОС Linux есть утилита scp (secure copy), которую рекомендуется использовать для защищенного копирования файлов на удаленный компьютер или с него. Синтаксис команды аналогичен синтаксису команды cp:

 scp откуда куда
единственное отличие в том, что для источника удаленного копирования указывается не только имя файла (файлов), но и имя пользователя и машины. Например, пользователь test при помощи команды scp test@apps:~/work/*.txt . скопирует с машины apps из своей поддиректории work все файлы с расширением txt в текущую директорию (обозначаемую точкой) на локальной машине. Для рекурсивного копирования (с поддиректориями) используется ключ -r.

Еще одна утилита -- ftp -- до сих пор остается одной из широко используемых программ доступа к ресурсам Интернет, хотя ее можно использовать и в локальной сети. Она позволяет пересылать очень большие файлы с одного узла на другой. При этом она работает как с текстовыми, так и двоичными файлами. В Интернете есть много узлов, которые предоставляют открытый доступ к своим ресурсам средствами ftp. Эти общедоступные узлы допускают анонимную регистрацию любого пользователя. Каждый пользователь может зарегистрироваться под именем anonymous или ftp, а в качестве пароля ввести свой адрес электронной почты (e-mail). После этого он сможет получать необходимую ему информацию.

Утилита ftp вызывается командой ftp. Если вы знаете имя узла, с которым хотите установить соединение, укажите его имя сразу за командой ftp. Например, для установления ftp-соединения с узлом sunsite.unc.edu, специализирующимся на ОС Linux, следует ввести команду ftp sunsite.unc.edu.

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

Пример
Команда ls выдаст список файлов, имеющихся в удаленной системе, а команда !ls -- список файлов локальной системы.

Отметим, что переход из одного каталога в другой в удаленной системе выполняется по команде cd, в то время как для локальной системы служит специальная ftp-команда lcd. Для завершения сеанса используется команда quit или bye. Команда get служит для приема файлов из удаленной системы, а команда put для пересылки файлов из локальной в удаленную систему.

Для одновременной передачи нескольких файлов используются команды mput и mget. При задании имен файлов можно использовать шаблон *. Программа каждый раз запрашивает разрешение на пересылку очередного файла (ведите y -- для разрешения или n -- для отмены). Если перед вводом такой команды выполнить команду promt, то вопросы задаваться не будут.


3. Графика на ЭВМ

Глава 3 Графика на компьютере

Эффективная работа с графикой подразумевает не только хорошее владение определенными графическими программами, средствами для создания и обработки изображений, но и требует конкретных знаний в области представления и хранения графической информации.

Если вы хотите создать рисунок, подготовить чертеж или, например, откорректировать фотографию, то наверняка столкнетесь с проблемой выбора правильного средства для достижения поставленной задачи и попытаетесь использовать имеющиеся возможности современных графических редакторов таким образом, чтобы достичь наиболее качественного результата.

Как кодируется и хранится в ЭВМ графическая иформация, что такое графический формат изображения и как он влиет на его качество и размер? На эти и многие другие вопросы вы найдете ответ в этом разделе учебного пособия.


Графические форматы

Особенности графических форматов

Как вы уже знаете, любая информация, хранящаяся в файле, -- это последовательность байт. Каждый байт может принимать значение от 0 до 255 (28-1). Способ записи информации с помощью последовательности байт и называют форматом файла. То есть, графический формат -- это способ записи графической информации.

Способ представления изображения оказывает влияние на возможности его редактирования, печати, на объем занимаемой памяти.

Векторный формат

Существуют два основных способа кодирования графической информации: векторный и растровый. При векторном, на котором мы сейчас не будем подробно останавливаться, рисунок представляется в виде комбинации простых геометрических фигур -- точек, отрезков прямых и кривых, окружностей, прямоугольников и т. п. При этом для полного описания рисунка необходимо знать вид и базовые координаты каждой фигуры, например, координаты двух концов отрезка, координаты центра и диаметр окружности и т. д. Этот способ кодирования идеально подходит для рисунков, которые легко представить в виде комбинации простейших фигур, например, для технических чертежей.

Растровый формат

Растровый формат, с которым мы познакомимся подробнее, характеризуется тем, что все изображение по вертикали и горизонтали разбивается на достаточно мелкие прямоугольники -- так называемые элементы изображения, или пикселы (от английского pixel -- picture element).

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

Размер (size) изображения, хранящегося в файле, задается в виде числа пикселов по горизонтали (width) и вертикали (height). Для примера, оптимальное разрешение 15-дюймового монитора, как правило, составляет 1024x768.

Глубина цвета

Кроме размера изображения, важной является информация о количестве цветов, закодированных в файле. Цвет каждого пиксела кодируется определенным числом бит (bit), то есть элементарных единиц информации, с которыми может иметь дело компьютер. Каждый бит может принимать два значения -- 1 или 0. В зависимости от того, сколько бит отведено для цвета каждого пиксела, возможно кодирование различного числа цветов. Нетрудно сообразить, что если для кодировки отвести лишь один бит, то каждый пиксел может быть либо белым (значение 1), либо черным (значение 0). Такое изображение называют монохромным (monochrome).

Далее, если для кодировки отвести четыре бита, то можно закодировать 24=16 различных цветов, отвечающих комбинациям бит от 0000 до 1111. Если отвести 8 бит -- то такой рисунок может содержать 28=256 различных цветов (от 00000000 до 11111111), 16 бит -- 216=65 536 различных цветов (так называемый High Color). И, наконец, если отвести 24 бита, то потенциально рисунок может содержать 224=16 777 216 различных цветов и оттенков -- вполне достаточно даже для самого взыскательного художника! В последнем случае кодировка называется 24-bit True Color. Следует обратить внимание на слово "потенциально": даже если в файле и отводится 24 бита на каждый пиксел, это еще не означает, что вы действительно сможете насладиться такой богатой палитрой -- ведь технические возможности мониторов ограничены.

RGB-модель

Способ разделения цвета на составляющие компоненты называется Цветовой моделью. В компьютерной графике применяются три цветовые модели: RGB, CMYK и HSB.

Наиболее распространенным способом кодирования цвета является модель RGB. При этом способе кодирования любой цвет представляется в виде комбинации трех цветов: красного (Red), зеленого (Green) и синего (Blue), взятых с разной интенсивностью. Интенсивность каждого из трех цветов -- это один байт (т. е. число в диапазоне от 0 до 255), который хорошо представляется двумя 16-ричными цифрами (числом от 00 до FF). Таким образом, цвет удобно записывать тремя парами 16-ричных цифр, как это принято, например, в HTML-документах.

Пример.
В языке гипертекстовой разметки документов HTML цвета можно задавать так: черный -- 000000, белый -- FFFFFF, желтый -- FFFF00 и т. д.; чтобы получить более темный желтый цвет, надо одинаково уменьшить интенсивности красного и зеленого -- A7A700.

Чем больше значение байта цветовой составляющей, тем ярче этот цвет. При наложении одной составляющей на другую яркость суммарного цвета также увеличивается.

Цветовая модель CMYK

Цветовая модель CMYK соответствует рисованию красками на бумажном листе и используется при работе с отраженным цветом, т. е. для подготовки печатных документов.

Цветовыми составляющими этой модели являются цвета: голубой (Cyan), лиловый (Magenta), желтый (Yellow) и черный (Black). Эти цвета получаются в результате вычитания основных цветов модели RGB из белого цвета. Черный цвет задается отдельно. Увеличение количества краски приводит к уменьшению яркости цвета.

Цветовая модель HSB

Системы цветов RGB и CMYK связаны с ограничениями, накладываемыми аппаратным обеспечением (монитор компьютера в случае RGB и типографские краски в случае CMYK).

Цветовая модель HSB наиболее удобна для человека, т. к. она хорошо согласуется с моделью восприятия цвета человеком. Компонентами модели HSB являются:

  • тон (Hue);
  • насыщенность (Saturation);
  • яркость цвета (Brightness).

Тон -- это конкретный оттенок цвета. Насыщенность характеризует его интенсивность или чистоту. Яркость же зависит от примеси черной краски, добавленной к данному цвету.

Значение цвета выбирается как вектор, выходящий из центра окружности. Точка в центре соответствует белому цвету, а точки по границе окружности -- чистым цветам. Направление вектора определяет цветовой оттенок и задается в угловых градусах. Длина вектора определяет насыщенность цвета. Яркость цвета задают на отдельной оси.


Растровая графика

Особенности растровой графики

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

При оцифровке изображения оно делится на такие крошечные ячейки, что глаз человека их не видит, воспринимая все изображение как целое. Сама сетка получила название растровой карты, а ее единичный элемент называется пикселом.

Пикселы подобны зернам фотографии и при значительном увеличении они становятся заметными. Растровая карта представляет собой набор (массив) троек чисел: две координаты пиксела на плоскости и его цвет.

В отличие от векторных изображений, при создании объектов растровой графики математические формулы не используются, поэтому для синтеза растровых изображений необходимо задавать разрешение и размеры изображения.

С помощью растровой графики можно отразить и передать всю гамму оттенков и тонких эффектов, присущих реальному изображению. Растровое изображение ближе к фотографии, оно позволяет более точно воспроизводить основные характеристики фотографии: освещенность, прозрачность и глубину резкости.

Чаще всего растровые изображения получают с помощью сканирования фотографий и других изображений, с помощью цифровой фотокамеры или путем "захвата" кадра видеосъемки. Растровые изображения можно получить и непосредственно в программах растровой или векторной графики путем преобразовании векторных изображений.

Существует множество форматов файлов растровой графики, и каждый из них предусматривает собственный способ кодирования информации об изображении. Перечислим особенности лишь наиболее распространенных форматов.
Формат | Макс. число бит/пиксел | Макс. число цветов | Макс. размер изображения, пиксел | Методы сжатия | Кодирование нескольких изображений
BMP | 24 | 16 777 216 | 65535 x 65535 | RLE | -
GIF | 8 | 256 | 65535 x 65535 | LZW | +
JPEG | 24 | 16 777 216 | 65535 x 65535 | JPEG | -
PCX | 24 | 16 777 216 | 65535 x 65535 | RLE | -
PNG | 48 | 281 474 976 710 656 | 2 147 483 647 x 2 147 483 647 | Deflation (вариант LZ77) | -
TIFF | 24 | 16 777 216 | всего 4 294 967 295 | LZW, RLE и другие | +

Из большого числа форматов графических файлов в Интернете сейчас широко используются только два -- GIF и JPEG. О них и поговорим подробнее.

GIF -- формат

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

GIF-формат позволяет записывать изображение "через строчку" (Interlaced), благодаря чему, имея только часть файла, можно увидеть изображение целиком, но с меньшим разрешением. Эта возможность широко применяется в Интернет. Сначала вы видите картинку с грубым разрешением, а по мере поступления новых данных ее качество улучшается. Основное ограничение формата GIF состоит в том, что цветное изображение может содержать не более 256 цветов. Для полиграфии этого явно недостаточно.

JPEG -- формат

Формат файла JPEG (Joint Photographic Experts Group -- Объединенная экспертная группа по фотографии) был разработан компанией C-Cube Microsystems, как эффективный метод хранения изображений с большой глубиной цвета, например, получаемых при сканировании фотографий с многочисленными едва уловимыми (а иногда и неуловимыми) оттенками цвета.

Самое большое отличие формата JPEG от других форматов состоит в том, что в JPEG используется алгоритм сжатия с потерями (а не алгоритм без потерь).

Алгоритм сжатия без потерь так сохраняет информацию об изображении, что распакованное изображение в точности соответствует оригиналу. При сжатии с потерями приносится в жертву часть информации об изображении, чтобы достичь большего коэффициента сжатия.

Сжатие, используемое в формате JPEG, необратимо искажает изображение. Это не заметно при его простом просмотре, но становится явным при последующих манипуляциях. Зато размер файла получается от 10 до 500 раз меньше, чем BMP! Если вы решили записать изображение в формате JPEG, то лучше выполнить все необходимые операции перед первой записью файла.

Сравнение GIF и JPEG

  1. GIF-формат удобен при работе с рисованными картинками.
  2. JPEG-формат лучше использовать для хранения фотографий и изображений с большим количеством цветов.
  3. Для создания анимации и изображений с прозрачным фоном применяется GIF-формат.


Векторная графика

Основным логическим элементом векторной графики является геометрический объект. В качестве объекта принимаются простые геометрические фигуры (так называемые примитивы -- прямоугольник, окружность, эллипс, линия), составные фигуры или фигуры, построенные из примитивов, цветовые заливки, в том числе градиенты.

Преимущество векторной графики заключается в том, что форму, цвет и пространственное положение составляющих ее объектов можно описывать с помощью математических формул.

Важным объектом векторной графики является сплайн. Сплайн -- это кривая, посредством которой описывается та или иная геометрическая фигура. На сплайнах построены современные шрифты TryeType и PostScript.

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

Объекты векторной графики легко трансформируются и модифицируются, что не оказывает практически никакого влияния на качество изображения. Масштабирование, поворот, искривление могут быть сведены к паре-тройке элементарных преобразований над векторами.

В тех областях графики, где важное значение имеет сохранение ясных и четких контуров, например, в шрифтовых композициях, в создании логотипов и прочее, векторные программы незаменимы.

Векторная графика может включать в себя и фрагменты растровой графики: фрагмент становится таким же объектом, как и все остальные (правда, со значительными ограничениями в обработке).

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

Однако, с другой стороны, векторная графика может показаться чрезмерно жесткой, "фанерной". Она действительно ограничена в чисто живописных средствах: в программах векторной графики практически невозможно создавать фотореалистические изображения.

А кроме того, векторный принцип описания изображения не позволяет автоматизировать ввод графической информации, как это делает сканер для точечной графики.

В последнее время все большее распространение получают программы 3-мерного моделирования, также имеющие векторную природу.

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

В любом случае, если вы работаете с графикой, то неизбежно будете иметь дело с обеими ее формами -- векторной и растровой. Понимание их сильных и слабых сторон позволит вам выполнить свою работу максимально эффективно.


Средства работы

Средства работы с графикой

Существует множество различных графических редакторов. Некоторые из них, такие как Adobe PhotoShop и CorelDraw, предназначены для проффесиональной работы с графикой. Это коммерческие продукты, которые стоят немалых денег. Другие, например Paint, встроенный в ОС Windows, доступны для работы даже маленькому ребенку, но и возможности у них не велики.

В ОС Linux на данный момент представлен весь спектр графических редакторов. Первое место среди них бесспорно занимает мощнейший редактор GIMP, обладающий инструментами как для создания десятков разновидностей форматов растровой графики, так и средствами подготовки векторной графики. В его состав входит уникальный редактор фрактальной графики, позволяющий создавать настоящие произведения искусства. Следует также отметить, что как и большинство Linux-приложений, редактор GIMP распространяется бесплатно, что также является немаловажным плюсом в пользу его применения.

Имеются в ОС Linux и другие графические редакторы, более специализированные для работы с тем или иным форматом графики. Среди них:

  • XPaint -- редактор растровой графики, похожий на Paint, но содержащий массу дополнительных возможностей;
  • KPaint -- встроенный в KDE редактор растровой графики, менее функционален чем XPaint;
  • KDE Icon Editor -- редактор растровой графики, предназначенный для создания пиктограмм;
  • XFig -- редактор векторной графики.


Paint

Редактор Paint

Этот редактор является одним из самых простых графических редакторов в среде MS Windows. Он появился в версии Windows 95 и с тех пор не изменился. Paint (в переводе с английского означает краска) представляет собой простой однооконный редактор растровой графики, который, тем не менее, позволяет создать достаточно сложный рисунок.

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

Доступны и некоторые операции преобразования рисунка, а именно: зеркальное отображение относительно горизонтальной и вертикальной оси, инвертирование и замена цветов, сжатие, растяжение и наклон. Однако, в Paint совершенно отсутствуют разного рода эффекты и фильтры. Кроме того, этот редактор поддерживает всего несколько форматов файлов.


Знакомство с редактором

Для запуска программы Paint выберите в меню Пуск пункт Программы, в нем пункт Стандартные, а затем пункт Paint. Появится окно Paint -- (Без Имени).

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

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

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

В центре окна расположена видимая часть рабочей области, то есть область экрана, внутри которой можно рисовать. Если рисунок не виден целиком, следует воспользоваться линейками прокрутки. С помощью команды Создать (New) из меню Файл (File) рабочую область можно очистить (если в ней что-то было нарисовано, то программа предложит вам сохранить ее содержимое в файл) и начать рисовать новый рисунок.

окно Paint На рисунке цифрами обозначены:
  • 1 -- Строка основного меню.
  • 2 -- Панель инструментов.
  • 3 -- Цветовая палитра.
  • 4 -- Рабочая область.

Для сохранения созданного вами рисунка в файл выберите в меню Файл (File) команду Сохранить (Save) или Сохранить как (Save As). При выборе команды Сохранить как появится диалоговое окно, в котором следует задать имя и тип сохраняемого файла, а также путь (диск и каталог) к нему.

Ниже перечислены основные инструменты Paint, используемые при создании изображений.

Инструмент Выделение произвольной области и Выделение Выделение произвольной области и Выделение.

Инструмент Ластик Ластик. При нажатии на левую кнопку мыши он заменяет один цвет (заданный как основной) другим (заданным как фоновый), на правую -- стирает все цвета, заменяя их цветом фона.

Инструмент Заливка Заливка. Позволяет закрашивать ограниченную замкнутой линией область в цвет, заданный как основной (если область незамкнута, краска зальет всю видимую часть рисунка).

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

Инструмент Лупа Лупа. Увеличивает изображение в 1, 2, 6 или 8 раз. Для возврата к реальному размеру выберите 1-кратное увеличение.

Инструменты Карандаш и Кисть Карандаш и Кисть. Используются для создания четких тонких линий и имитации рисования кистью заданной формы (форма выбирается в дополнительном окне панели инструментов).

Инструмент Пульверизатор Пульверизатор рисует разреженными точками-каплями, имитируя эффект разбрызгивания краски.

Инструмент Текст Текст. Предназначен для создания надписей (с помощью меню Текст можно задать шрифт, начертание и другие атрибуты).

Инструмент Линия Линия. Позволяет соединить две точки отрезком прямой.

Инструмент Кривая Кривая. Предназначена для построения гладких кривых (сначала строится отрезок, а затем при помощи мыщи отрезок можно дважды деформировать, чтобы получить кривую).

Инструменты Прямоугольник и Многоугольник Инструмент Прямоугольник со скругленными краями Прямоугольник, Многоугольник и Прямоугольник со скругленными краями (контурные, безконтурные или закрашенные). Тип объекта выбирается в дополнительном окне панели инструментов, которое появляется при выборе инструмента.

Инструмент Окружность/эллипс Эллипс. Чтобы нарисовать окружность, следует во время построения удерживать нажатой клавишу Shift.


Редактирование

Редактирование и преобразование рисунка в Paint

Если во время рисования вы допустили ошибку, то исправить ее можно различными способами:

  • выбрать в меню Правка команду Отменить;
  • воспользоваться ластиком: удерживая нажатой левую кнопку мыши, перемещайте курсор, стирая ненужные цвета.

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

Нажмите на левую кнонку мыши внутри выделенного фрагмента и перетащите мышь. Фрагмент переместится вслед за курсором. Если при этом удерживать нажатой клавишу Shift, то фрагмент будет оставлять за собой след в виде шлейфа. Чтобы осуществить не перемещение объекта, а его копирование, во время перетаскивания необходимо удерживать нажатой клавишу Ctrl.

Если после выделения области рисунка нажать на правую кнопку мыши, то на экране появится меню действий над данной выделенной областью. Все последующие операции с выделенной областью рисунка можно выполнить из этого меню.

Операции вырезания, копирования и вставки выполняются через меню Правка посредством команд Вырезать, Копировать и Вставить.

Следует отметить, что при выполнении команды Вставка, фрагмент всегда вставляется в левый верхний угол, откуда его можно перетащить в нужное место.

Выделенный фрагмент можно сохранить в отдельном файле с помощью команды Копировать в файл... из меню Правка. В том же меню есть команда Вставить из файла, с помощью которой осуществляется вставка рисунка из другого файла.

Чтобы выполнить зеркальное отображение или поворот рисунка, достаточно выделить нужную область, а затем выбрать в меню Рисунок команду Отразить/повернуть.

Для инвертирования цвета рисунка надо выделить нужную область и выбрать в меню Рисунок команду Инвертировать цвета.

Операции наклона, сжатия и растяжения выполняются одинаково: выделите прямоугольный фрагмент рисунка и выберите в меню Рисунок команду Растянуть/наклонить. В появившемся окне растяжение задается в процентах, а наклон в градусах. Если задать параметр растяжения меньше 100%, то область рисунка будет сжата.

Для увеличения масштаба просмотра изображения выберите в меню Вид команду Масштаб, а затем Другой. В появившемся окне можно задать увеличение в 2, 4, 6 и 8 раз. Чтобы увидеть весь рисунок целиком, выберите в меню Вид команду Просмотреть Рисунок. Чтобы вернуться к нормальному окну редактора Paint, нажмите клавишу q.
Задания
  1. Нарисуйте домик, используя инструменты Прямоугольник, Многоугольник, Окружность, Пульверизатор, Заливка и Линия. С помощью инструмента Текст подпишите свой рисунок.
домик
  2. Нарисуйте вазу, используя команды Отразить/повернуть в меню Рисунок (чтобы нарисовать симметричную вазу) и команды Растянуть/наклонить (для изменения формы прямоугольника). Создайте копию своего рисунка и увеличьте ее в два раза.
 ваза с цветком


XPaint

Создание растровых рисунков в XPaint

Познакомимся еще с одним из графических редакторов, позволяющих создавать растровую графику, т. е. изображения, представимые в виде множества пикселов разных цветов, -- редактором XPaint. Он, несмотря на свою простоту, предоставляет набор необходимых средств по созданию и редактированию изображений. Редактор функционирует в среде ОС Linux и запускается командой xpaint.

При запуске появляется окно с набором инструментов для рисования и панелью управления, которая представляет возможность работы с файлами.


XPaint

Команда меню Font

Команда позволяет задавать различные шрифты, символы которых будут использоваться в текстовых операциях. Шрифт можно выбрать из представленного в подменю набора.

Данное окно делится на четыре подокна (слева направо): пробелы (Spacing), семейство шрифтов (Font Family), толщина/стиль (Weight/Style), размер (Point Size).

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

Если в списке под названием Point Size выбрать "0", размер шрифта можно указать в соответствующей строке справа от слов Point Size. Выбор завершен, если в области, расположенной справа и внизу от слова Selection появился выбранный шрифт.

Если требуется выбрать шрифт заново, то следует щелкнуть мышью по пустой области в списках, при этом на экране отобразятся только совместимые между собой элементы списков.


Основные инструменты

Основные инструменты XPaint

Данное меню раскрывается при щелчке левой кнопкой мыши по кнопке File. Перечислим его пункты.

New Canvas
Создается "чистый лист" размером 640x480 пикселов.
New With Size
Также создается чистый лист, но при этом можно задать его размер и масштаб (zoom), в котором будем работать.
Open
Вызывает окно, позволяющее открыть для изменения уже существующий файл с рисунком.
Load Clipboard
Вызывает окно, в котором можно выбрать существующий файл с рисунком для того, чтобы его можно было "наклеить" на лист при помощи команды Paste.
Quit
Выход из XPaint.

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

Набор инструментов для рисования

Для выбора любого инструмента нужно щелкнуть один раз по соответствующей картинке.

Кисть. Рисует при нажатой кнопке мыши. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя. При двойном щелчке открывается дополнительная панель для выбора вида кисти.

Ластик. "Стирает" при нажатой кнопке мыши, т. е. закрашивает цветом фона (по умолчанию -- белый), если вы рисуете на новом листе, и возвращает стираемую область к первоначальному рисунку, если вы изменяете существующий (открытый через пункт Open... из меню File).

Карандаш. При нажатой кнопке мыши рисует на листе сплошную линию (следуя курсору). При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя. Толщину линии можно изменить в меню Line.

Пунктирный карандаш. При нажатой кнопке мыши рисует на листе пунктирную линию. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя. Толщина линии изменяется в меню Line.

Выделение. Выделяет прямоугольную область. Нажмите кнопку мыши в одном из углов предполагаемой области и растяните прямоугольную рамку до противоположного угла. Если нужна квадратная область, то удерживайте клавишу Shift.

Выделение обведенной области. Нажмите кнопку мыши и, удерживая ее, обведите нужную область. Если начальная и конечная точки не совпадут -- они соединятся отрезком.

Выделение многоугольной области. Щелкните левой кнопкой мыши в одну из вершин предполагаемого многоугольника, затем щелкайте в каждую следующую вершину (при этом они будут соединяться ломаной линией). Для завершения выделения нажмите среднюю кнопку.

Баллончик с краской. При нажатой кнопке мыши как бы распыляет краску. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя.

Заливка. Закрашивает область одного цвета -- другим. Для этого щелкните мышкой в любую точку монотонной области. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя.

Градиентная заливка. Закрашивает плавным переходом цветов (от цвета главной палитры до цвета вспомогательной).

Капелька. Применение аналогично кисти, но вместо рисования происходит "размывание" цветов, попавших под кисть.

Текст. Для нанесения надписи на рисунке щелкните левой кнопкой мыши по редактируемой области и задайте в появившемся дополнительном окне параметры шрифта.

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

Лучи. Левая кнопка мыши указывает расположение точки, из которой выходят лучи, каждое следующее нажатие определяет новый луч; для завершения построения лучей щелкните средней кнопкой мыши. Для горизонтальных, вертикальных или диагональных лучей дополнительно удерживайте клавишу Shift.

Дуга. Для соединения дугой двух точек нажмите левую кнопку мыши в одной точке и растяните до другой. Если нужна дуга окружности -- растягивая ее, удерживайте клавишу Shift.

Ломаная. Нажатие левой кнопки мыши -- фиксация первой и каждой последующей точки ломаной; средняя -- закончить рисование ломаной.

Прямоугольник. Нажать кнопку мыши в одном из углов, не отпуская, растянуть до противоположного. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя. Если нужен квадрат -- удерживайте клавишу Shift.

Закрашенный прямоугольник. Нажать кнопку мыши в одном из углов и, не отпуская, растянуть до противоположного. При нажатой левой кнопки мыши цвет из главной палитры используется для границы прямоугольника, а цвет из дополнительной -- для заливки, и наоборот, если нажата средняя. Для получения квадрата удерживайте клавишу Shift.

Эллипс. Нажать кнопку мыши в одном из углов прямоугольника, ограничивающего эллипс и, не отпуская, растянуть до противоположного. При этом используется цвет из главной палитры, если нажата левая кнопка, и из дополнительной, если средняя. Нужна окружность -- удерживайте клавишу Shift.

Закрашенный эллипс. Нажать кнопку мыши в одном из углов прямоугольника, ограничивающего эллипс и, не отпуская, растянуть до противоположного. При этом используется цвет из главной палитры для границы эллипса, а цвет из дополнительной -- для заливки, если нажата левая кнопка и наоборот, если средняя. Нужен круг -- удерживайте клавишу Shift.

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

Закрашенный многоугольник. Нажатие левой кнопки мыши фиксирует первую и каждую последующую точку многоугольника, нажатие средней -- заканчивает рисование, при этом первая точка соединится отрезком с последней.

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

Закрашенная фигура. Нажав кнопку мыши, рисуете любую линию. Когда отпустите -- начальная точка соединится с конечной отрезком. При этом используется цвет из главной палитры для линии, а цвет из дополнительной -- для заливки, если нажата левая кнопка, и наоборот, если средняя.


XPaint

Меню Line

Данное меню вызывается нажатием на кнопку [image] на панели управления. В нем можно задать толщину линии (в пикселах), которая будет использована всеми инструментами, рисующими какие-либо виды линий (в том числе и границы фигур).

Если стандартные значения толщины (1, 2, 4, 6 и 8 пикселов) вас не устраивают, то выбрав пункт Select... можно задать любую другую, например 50.


Рабочее окно XPaint

Рабочее окно содержит:

  • лист, на котором вы рисуете, возможно, вместе с его увеличенной копией и двумя полосами прокрутки (горизонтальной и вертикальной);
  • ряд меню, позволяющих выполнять различные действия с изображением;
  • область с двумя палитрами и кнопками для работы с ними.

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

Теперь посмотрим, какие возможности нам предоставлены в меню рабочей области.

Меню File

Данный пункт меню позволяет сохранять различную графическую информацию, связанную с рисунком.

Меню Edit

Этот пункт меню позволяет выполнять основные виды взаимодействия выделенной области и буфера обмена. Первые шесть пунктов этого меню доступны при нажатии правой кнопки мыши в области листа.

Меню Region

Содержит ряд команд для работы с выделенной областью.
Flip X Axis
Зеркально отображает выделенную область относительно центра по горизонтальной оси.
Flip V Axis
Зеркально отображает выделенную область относительно центра по вертикальной оси.

Rotate By
Поворот выделенной области на +/- 45o, +/- 90o и 180o.
Rotate...
Поворот выделенной области. При выборе этого пункта появится окошко, в котором можно указать на сколько градусов осуществлять поворот. Также поворот можно выполнить, если нажать на области среднюю кнопку мыши и сдвинуть ее в направлении поворота. Если при этом удерживать клавишу Shift, то поворот будет выполняться с шагом 15o.
Crop to Region...
Отсекает весь рисунок, не попавший в выделенную область, т. е выделенная область становится рисунком. Будьте осторожны -- это действие нельзя "откатить"!
Reset
Возвращает выделенную область к ее первоначальному размеру и ориентации (если они были изменены). Будьте осторожны -- это действие нельзя "откатить"!

Меню Filter

Данный пункт меню предоставляет несколько алгоритмов (фильтров) обработки изображения.
Reset
После выбора команды Reset изображение возвращается к виду, который оно имело до того, как на него подействовали операциями, описанными в данном разделе. Т. е., если над изображением были произведены какие-либо из указанных операций и затем была выбрана команда Reset, результаты этих операций уничтожатся и вернуться к ним будет невозможно.
Repeat Last
Применяет последний из использованных фильтров, при этом не спрашивается значение никаких параметров.

Invert
"Негатив". Каждый цвет заменяется на свое побитовое отрицание, т. е в двоичном представлении цвета все нули меняются на единицы, а единицы на нули и получается эффект негатива.
Sharpen
"Отчетливость". Увеличивается четкость рисунка.
Smooth
"Замутнение". Уменьшается четкость рисунка. При выборе этого фильтра будет запрошен параметр (степень замутнения), этот параметр должен быть нечетным числом.
Directional Smooth
"Замутнение". Так же уменьшается четкость рисунка, но этот фильтр не "размазывает" грани перехода между областями разного цвета.
Despeckle ...
Этот фильтр пытается убрать эффекты, которые обычно возникают при сканировании. При выборе этого фильтра будет запрошено значение предполагаемого размера дефектов от сканирования, этот параметр должен быть нечетным числом.
Edge Detect
С помощью этого фильтра можно добиться эффекта, при котором все грани будут как бы "выдавлены на фольге".
Emboss
Этот фильтр перекрашивает рисунок в серый цвет, при этом все детали рисунка будут как бы "оттиснуты".
Oil paint...
При использовании этого фильтра рисунок будет выглядеть так, как будто он нарисован маслом. При выборе этого фильтра будет запрошен параметр четкости рисунка, этот параметр должен быть нечетным числом.
Add Noise...
При использовании этого фильтра на рисунок будут случайным образом наложены точечные помехи, создающие эффект зернистости рисунка. При выборе этого фильтра будет запрошен параметр -- количество помех на единицу площади.
Spread...
Этот фильтр случайным образом меняет каждую точку с близлежащей точкой. Таким образом, создается эффект покрытого инеем стекла. При выборе этого фильтра будет запрошен параметр -- радиус области вокруг точки, откуда будет браться точка для замены.
Pixelize...
Позволяет "уменьшить" разрешение рисунка, т. е. рисунок будет разбит на квадратные (прямоугольные) монотонные кусочки. При выборе этого фильтра будет запрошен параметр -- размер кусочков. Можно задать одно число (сторона квадрата, например, '5') или два, разделенные буквой 'x' (стороны прямоугольника, например, '3x6').
Solarize...
"Выдержка". Создается эффект фотографии, сделанной с недостаточной выдержкой. При выборе этого фильтра будет запрошен параметр -- выдержка в процентах, исходя из того, что рисунок сделан со 100-процентной выдержкой.
Normalize Contrast
"Контраст". В качестве параметров задаются "черный" и "белый" уровни яркости. Каждый цвет имеет свою яркость. Цвета темнее черного уровня становятся черными, цвета светлее белого -- белыми, остальные пропорционально изменят свою яркость. Оба параметра должны быть заданы в процентах от яркости белого цвета.
Quantize Colors...
Этот фильтр позволяет изменить количество цветов в рисунке. При выборе этого фильтра будет запрошен параметр -- требуемое количество цветов.
Turn into Greyscale
Позволяет сделать рисунок черно-белым.

Меню Image

Подменю пункта меню Image представляет из себя список операций, которые могут быть произведены над изображением, находящимся в данный момент времени в текущем окне для рисования. Оно позволяет вызвать вспомогательный редактор Fat Bits, расчертить рабочее окно с помощью сетки, изменить фон фисунка, его размер и масштаб изображения.


Дополнительные возможности

Работа с цветом

Задать цветовой диапазон можно в специальном окне, которое вызывается кнопкой Select Color Range рабочего окна (рядом с палитрами).

Сначала устанавливается базовый цвет (или "центральный" цвет диапазона). Его можно выбрать в "цветовом колесе" или же "взять" с любого места на экране (щелкнуть по кнопке Match и затем по любой области экрана нужного цвета).

Затем задаются три числа, задающих диапазоны изменения, -- так называемая RG B-окрестность цвета - диапазон красной, зеленой и синей компонент. RGB-окрестность можно задать, выбрав граничный цвет с помощью кнопки Pixel Delta (ее действие аналогично Match).

Далее можно:

  • Ok -- установить цветовой диапазон и закрыть окно;
  • Apply -- установить цветовой диапазон и не закрывать окно;
  • Cancel -- закрыть окно, не устанавливая цветовой диапазон.

Задания

  1. Нарисуйте следующие геометрические фигуры: треугольник, окружность, круг и закрашенный прямоугольник. Около каждой фигуры подпишите ее название, используя шрифт fixed (koi, iso8859) размером 17 пунктов.

  2. Попробуйте нарисовать такой же кактус. При копировании частей кактуса для их выделения используйте опцию Only Color Range.

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

После создания рисунков сохраните иx в формате GIF.


GIMP

Графический редактор GIMP

GIMP -- это мощный профессиональный графический редактор с массой вспомогательных программ. Само название "GIMP" является аббревиатурой GNU Manipulation Image Program и переводится на русский язык как "программа обработки изображений".

Первая версия GIMP была выпущена в феврале 1996 и оказала большое влияние как первая действительно профессиональная и бесплатная программа обработки изображений, которая могла конкурировать с большими коммерческими графическими редакторами. GIMP постоянно развивается: появляются версии программы с новыми функциональными возможностями. В данном пособии будет рассматриваться GIMP версии 1.2.1.

GIMP обладает широкими и разносторонними возможностями. Новички могут использовать GIMP в качестве простой "рисовалки", однако профессионалы наверняка по достоинству оценят средства, которые предоставляет GIMP для коррекции и ретуши фотографий, интерактивной пакетной обработки, создания изображений, конвертирования графических форматов и т. п.

Разработчики программы постарались включить в нее все, начиная с основных средств рисования и редактирования, без которых не обходится ни один графический редактор, и заканчивая самыми современными средствами обработки изображений. Он очень похож на Photoshop, широко распространенный коммерческий графический пакет для ОС Windows. GIMP включает все те средства, которые есть в программе Photoshop, и, "понимает" формат файлов, используемый в этой программе, так что пользователи Photoshop могут легко перейти на использование GIMP.


Интерфейс программы

Запуск графического редактора GIMP осуществляется командой gimp или с помощью главного меню KDE.

Если загрузка данных завершится успешно, перед вами появятся несколько окон: Главное окно редактора, Параметры инструментов, Диалог слоев, Выбор кисти и Совет дня GIMP.

Главное окно программы можно условно разбить на части: Меню, Панель Инструментов, Панель Цветов, Градиентов, Шаблонов и Кистей.

Первое, что рекомендуется сделать -- это прочитать все предложенные советы. Они содержат основную начальную информацию о работе в GIMP, которая вам безусловно пригодится.


Панель инструментов

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

Главное окно

Всплывающая подсказка для кнопки инструмента Текст

Если подвести курсор мышки к одной из кнопок на панели инструментов, появится всплывающая подсказка, рассказывающая о назначении инструмента.

Двойной щелчок левой клавишей мыши по кнопке инструмента открывает окно Параметры инструментов, в котором можно задать параметры инструмента.

Окно Tool Options для инструмента Перо

Строка Меню окна панели инструментов включает три пункта: Файл, Расш. и Справка. Меню Файл содержит команды для создания новых и открытия существующих изображений, захвата экранных снимков, команды настройки рабочей среды и доступа к палитрам. Mеню Расш. позволяет работать с дополнительными приложениями. Наконец, последним пунктом строки меню является Справка. С помощью данного пункта меню можно получить справочную информацию по редактору и вывести окно Совет дня с полезными рекомендациями по работе с редактором.

Перечислим назначение основных инструментов GIMP.

Инструменты выделения
 | Выделение прямоугольной области
 | Выделение эллиптической области
 | Выделение произвольной области
 | Выделение связанной области
 | Выделение области с использованием кривых Безье
 | Выделение форм в изображении
 | Перемещение слоев и выделенных областей
 | Изменение масштаба
Инструменты трансформирования изображения
 | Кадрирование/изменение размера изображения
 | Вращение, искривление, масштабирование, перспектива
 | Зеркальное отражение
Инструменты цвета и заливки
 | Получение цвета из изображения
 | Заливка цветом или шаблоном
 | Градиентная заливка
Инструменты рисования
 | Нанесение резких карандашных линий
 | Нанесение размытых мазков кистью
 | Очистка до фона или прозрачности
 | Рисование аэрографом
 | Рисование шаблоном или областью изображения (штамп)
 | Рисование чернилами
 | Размывание/резкость
 | Осветление/затемнение
 | Палец (размазывание изображения)
 | Измерение расстояний и углов
 | Вставка текста

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


Окно изображения

GIMP позволяет одновременно редактировать множество изображений. При этом каждое изображение открывается в отдельном рабочем окне, которое мы будем называть Окном изображения.

Заголовок этого окна обычно содержит имя файла с редактируемым изображением. Если же созданное в GIMP изображение ни разу не сохранялось в файл, в заголовке окна присутствует слово Безымянное. Кроме того, в заголовке в круглых скобках обязательно указывается тип изображения (индексированное, RGB или градации серого), который определяет количество используемых цветов и набор доступных операций.

Линейки показывают размер изображения. Кроме того, на них отображается позиция курсора в изображении. Полосы прокрутки позволяют просматривать изображениe, если оно больше окна. Кнопка Просмотр откроет Вам полный уменьшенный вид рисунка. Это особенно полезно в случае, когда изображение большое. В Строке состояния отображаются координаты положения курсора на изображении и информация об изображении (аналогичная заголовку окна). Quick mask -- специальная возможность GIMP, о которой речь пойдет позже.

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

Отметим полезную возможность GIMP, которая призвана облегчить работу по вызову функций контекстного меню. Если вам часто приходится пользоваться одним из его пунктов, то постоянно выбирать его, перемещаясь по всему меню, довольно утомительно. Каждый пункт меню в верхней своей части содержит пунктирную полоску. Если к ней подвести курсор мыши, то эта полоска выделяется как отдельный элемент. Щелкните мышкой по пунктиру, и пункт меню превратится в самостоятельное окно.


Работа с файлами

Работа с файлами изображений осуществляется через пункт меню Файл. В редакторе GIMP есть два меню Файл: одно находится в панели инструментов, другое вы найдете в контекстном меню Окна изображения (щелчок правой клавишей мыши по изображению). Эти меню несколько отличаются друг от друга.

В меню Файл окна панели инструментов вы не обнаружите таких распространенных команд, как Сохранить и Сохранить как, Восстановить, Закрыть, Отправить почтой и Печатать, поскольку все они относятся к конкретному изображению. По этой причине все перечисленные команды перенесены в контекстное меню Файл окна изображения.


Создание

Создание новых изображений

Для того чтобы начать редактировать изображение "с нуля", отдельно отредактировать часть изображения или сохранить часть изображения в новый файл, вам, скоре всего, понадобится создать новое изображение. Такое изображение не содержит ничего, кроме фона, и поэтому его можно сравнить с чистым холстом, на который художник впоследствии будет наносить краски.

Для создания нового изображения выберите в меню Файл команду Новый, или нажмите комбинацию клавиш Ctrl+n. В результате появится окно Новое изображение, в котором вы можете задать размеры, тип и цвет фона изображения.

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

  2. С помощью переключателя Тип изображения задайте тип изображения, который, в свою очередь, будет определять количество используемых в изображении цветов:
    • режим RGB поддерживает 166 = 16 777 216 цветов, а
    • в режиме Grayscale (Градации серого) все цвета передаются 256-ю оттенками серого цвета.

  3. Используя переключатель Тип заливки, задайте фон изображения:
    • переднего плана -- фон цвета, совпадающего с основным цветом;
    • фон -- фон цвета, совпадающего с фоновым цветом;
    • белое -- белый фон;
    • прозрачное -- прозрачный (бесцветный) фон.

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


Открытие

Открытие изображений

Окно Загрузка изображения

Для того чтобы открыть уже существующее (записанное в файл) изображение, выберите в меню Файл команду Открыть или нажмите комбинацию клавиш Ctrl+o. В результате появится окно Загрузка изображения, посредством которого вы можете осуществить выбор необходимого файла.

Советы
  • При открытии файла с изображением используйте автоматическое распознавание формата файла. В случае, если GIMP по каким-либо причинам не может определить формат файла, задайте его явно.
  • При наборе имен файлов и каталогов используйте клавишу Tab -- GIMP будет автоматически дописывать имя по его начальным символам.


Сохранение

Сохранение изображений

Для того чтобы сохранить изображение в файл, воспользуйтесь командой Сохранить меню Файл окна изображения. Для этого выберите в контекстном меню Файл команду Сохранить, либо нажмите комбинацию клавиш Ctrl+s. Если изображение сохраняется впервые, появится окно Сохранить изображение. В нем следует указать полный путь, имя и формат файла.

Окно Сохранения изображения

Если изображение уже сохранялось ранее, то при выполнении команды Сохранить окно Сохранение изображения не появится, и изображение будет сохранено под тем же именем (поверх предыдущего изображения).

Советы

  • При наборе имен файлов и каталогов используйте клавишу Tab -- GIMP будет автоматически дописывать имя по его начальным символам.
  • Для обновления файла с редактируемым изображением используйте команду Сохранить, а для сохранения дополнительных копий и различных вариантов изображения -- команду Сохранить как. Если же изображение сохраняется впервые, то эти команды действуют одинаковы, и вы можете воспользоваться любой из них.

Среди огромного разнообразия формата файлов, в которых возможно сохранение изображений, особо отметим два наиболее распространенных в сети Интернет -- форматы JPEG и GIF.


В формат JPEG

Сохранение изображений в формате JPEG

При сохранении изображения в формате JPEG на экране появится окно Сохранить как Jpeg, которое позволяет задать уровень качества, степень сглаживания, оптимизацию изображения и некоторые другие параметры.

Качество. Сжатие, которое используется при сохранении изображения в формате JPEG, неизбежно приводит к ухудшению качества изображения, поэтому GIMP предоставляет вам возможность задать тот уровень качества, который наиболее подходит для ваших целей. Значение 0.75 (которое используется по умолчанию), как правило, дает неплохие результаты, однако при желании вы можете увеличить это значение до 0.95 (дальнейшее увеличение не имеет смысла, так как приводит лишь к увеличению размера файла, без какого-либо заметного улучшения в качестве изображения) или, наоборот, снизить его до 0.50 (дальнейшее уменьшение приводит к очень низкому качеству изображения).

Сглаживание. При желании вы можете задать степень сглаживания, применяемого для корректировки резких границ, которые могут возникнуть в изображении в результате сохранения в формате JPEG. Если значение равно 0.00, сглаживание не применяется.

Оптимизация. Эта опция позволяет немного уменьшить размер файла.

Изображение, сохраняемое в формате JPEG, должно быть одного из двух типов: RGB или Градации серого. Для преобразования изображения к типу Градации серого выберите в контекстном меню Изображение команду Режим/Градации серого, а для преобразования к типу RGB -- команду Режим/RGB.


В формате GIF

Сохранение изображения в формате GIF

При сохранении изображения в формате GIF на экране появится окно Сохранить как GIF, которое позволяет задать некоторые дополнительные параметры.

Черезстрочность. Если изображение состоит из одного, фонового слоя, то с помощью опции Черезстрочность вы можете сохранить его как черезстрочное изображение GIF, что позволит некоторым приложениям (например, браузеру Netscape) загружать его постепенно: сначала появится очень размытое изображение, затем оно будет становиться все более четким.

Комментарий GIF. При желании вы можете задать комментарий, который будет сохранен в файле.

Бесконечный цикл. Если изображение содержит слои, вы можете создать анимацию GIF, в которой слои будут играть роль кадров или слайдов. Для того чтобы анимация "прокручивалась" только один раз, опцию Бесконечный Цикл следует выключить.

В поле Задержка между кадрами вы можете указать время задержки в миллисекундах между кадрами анимации.

С помощью переключателя Расположение кадра вы можете задать зависимость между кадрами анимации и слоями изображения.

  • Don't care (Не важно) и Наложение слоев (объединение) -- анимация начинается с отображения первого слоя изображения (первый кадр), затем на первый слой накладывается второй слой (второй кадр) и т. д. Каждый последующий кадр анимации получается из предыдущего добавлением нового слоя поверх всех остальных слоев.
  • Один кадр на слой (замена) -- в качестве первого кадра используется первый слой, в качестве второго -- второй слой и т. д.

Изображение, сохраняемое в формате GIF, должно быть одного из двух типов: Индексированные цвета или Градации серого. Для преобразования изображения к типу Градации серого выберите в контекстном меню Изображение пункт Режим и далее Градации серого, а для преобразования к типу Индексированные цвета -- пункт Режим и далее Индексированное.


Инструменты выделения

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

Первые шесть инструментов на панели инструментов -- это Инструменты Выделения. Они предназначены для простого и быстрого выделения областей заданных форм или цветов.

Инструменты выделения

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

Параметры инструментов выделения

Дважды щелкнув по кнопке выбранного инструмента, вы откроете окно Параметры инструментов. Почти все инструменты выделения имеют опции Растушевка и Выравнивание.

Параметры инструментa Кривая Безье

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

Опция Выравнивание позволяет сгладить границы выделяемой области за счет создания вокруг границы каймы шириной один пиксел с плавным переходом цветов.


Прямоугольник и эллипс

 Предыдущий раздел Уровень выше Следующий раздел

Инструменты Прямоугольная область и Эллиптическая область

Инструменты Прямоугольная область и Эллиптическая область Инструменты Прямоугольная и Эллиптическая области предназначены для выделения областей прямоугольной и эллиптической формы соответственно.

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

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

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

Чтобы выделить часть изображения квадратной или круглой формы, в процессе построения области нажмите клавишу Shift, если вы используете первый способ построения, или клавиши Shift+Ctrl при втором способе построения.

Если вы не удовлетворены результатом выделения, попробуйте повторить процедуру выделения еще раз. Прежняя область выделения немедленно исчезнет, как только вы начнете создавать новую. Если же вы хотите просто отменить выделение, выберите один из первых трех инструментов на панели инструментов и щелкните мышкой по изображению.

Когда у вас имеется более чем одна выделенная область, и вы хотите отменить лишь последнюю, щелкните правой кнопкой мышки (и отпустите левую) прежде, чем закончите ее построение, либо нажмите комбинацию клавиш Ctrl+Z (команда Правка/Отменить) после того, как область уже будет выделена.
Объединение областей
После создания одной выделенной области, нажмите на Shift и создайте следующую область. Если выделенные участки пересекаются, они будут объединены в единую область.
Разность областей
После создания первой выделенной области нажмите клавишу Ctrl и создайте вторую. В случае, если выделенные области пересекаются, от первой области останется лишь та часть, которая не является для них общей. В противном случае, первая выделенная область полностью исчезнет, а вторая, наоборот, останется, как если бы вы вообще не нажимали никаких клавиш.

Пересечение областей
После создания первой выделенной области нажмите клавиши Shift+Ctrl и создайте вторую. В случае, если выделенные области пересекаются, от них останется лишь та часть, которая является для них общей. В противном случае обе области исчезнут полностью.


Лассо

Инструмент Лассо

Инструмент Лассо Инструмент Лассо служит для выделения области произвольной формы. Этот инструмент имеет два параметра настройки: Выравнивание и Растушевка. О назначении этих опций рассказано ранее.
Выделение области произвольной формы

Для выделения области произвольной формы выберите инструмент Лассо. Нажмите кнопку мышки в той точке изображения, через которую будет проходить контур выделяемой области, и перетащите курсор вдоль контура выделяемой области. При этом появится линия, повторяющая траекторию перемещения курсора.

Если отпустить кнопку мыши, то концы линии автоматически соединятся прямой линией, и ограниченная замкнутым контуром область будет выделена.

Подкорректировать линию выделения можно, преобразовав ее к контуру, составленному из кривых Безье, при момощи команды В контур контекстного меню Выделение.


Волшебная Палочка

 Предыдущий раздел Уровень выше Следующий раздел

Инструмент Волшебная Палочка

Инструмент Волшебная Палочка Инструмент Волшебная Палочка предназначен для выделения области определенного цвета или цветового диапазона.

Выделение области определенного цвета

Для выделения области определенного цвета выберите инструмент Волшебная Палочка и щелкните мышкой в той точке изображения, которая должна быть включена в область выделения. В результате вокруг точки появится контур выделения, ограничивающий область, цвет которой совпадает с цветом указанной точки.

Для выделения области определенного цветового диапазона нажмите кнопку мышки в той точке изображения, которая должна быть включена в область выделения, и перетащите курсор. При этом вокруг точки появится контур, форма которого будет меняться по мере перемещения курсора. Когда вы отпустите кнопку мышки, ограниченная контуром область будет выделена.


Перо

 Предыдущий раздел Уровень выше Следующий раздел

Инструмент Перо

Инструмент Перо Инструмент Перо предназначен для создания контуров с помощью кривых Безье.

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

Метод построения кривой Безье основан на использовании пары касательных, проведенных к линии в точках ее концов. На практике эти касательные играют роль "рычагов", с помощью которых линию изгибают так, как это необходимо. На форму линии влияет не только угол наклона касательной, но и ее длина.

Начало отрезка кривой Безье называется точкой привязки, а касательная -- направляющей линией. Для создания точки привязки щелкните в той точке изображения, через которую будет проходить контур. После создания очередной точки привязки появится линия, соединяющая новую точку с предыдущей, и называемая сегментом.

Для получения замкнутого контура совместите последнюю точку привязки с первой.

Каждая точка привязки имеет две направляющие линии, которые становятся видимыми, если нажать мышкой на точке привязки и перетащить курсор. Если перетащить маркер направляющей, форма сегментов, соединяющих точку привязки с другими точками, будет меняться по мере изменения направляющих линий. Для перемещения точек привязки нажмите клавишу Ctrl и перетащите точку привязки на новое место.

По умолчанию направляющие линии имеют одинаковую длину, что позволяет создавать гладкую кривую, проходящую через точку привязки. Для создания в точке привязки острого угла нажмите клавишу Shift и, путем перетаскивания соответствующего маркера, измените каждую из направляющих по отдельности.

Создав контур с помощью инструмента Перо, вы можете легко превратить его в выделенную область, просто щелкнув левой клавишей мыши внутри контура.

Задание
Сохраните в свою домашнюю директорию рисунок logo.gif, oткройте его в GIMP и с помощью инструмента Перо создайте контур пингвина, состоящий из кривых Безье.


Умные Ножницы

 Предыдущий раздел Уровень выше Следующий раздел

Инструмент Умные Ножницы

Инструмент Умные Ножницы Инструмент Умные Ножницы позволяет выделить область на основе цветовых границ.

Выберите инструмент Умные Ножницы. Последовательно отмечая точками границу выделяемой области, создайте контур выделения.

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

В процессе создания контура граница выделения проводится между соседними отмеченными точками автоматически на основе различия цветов. Для корректировки положения точек перемещайте их мышью при нажатой клавише Ctrl.

Чтобы добавить точку, достаточно просто щелкнуть мышью в нужном месте контура, а для превращения контура в выделенную область необходимо щелкнуть мышью внутри него.

Задание
Используя инструмент Умные ножницы, выделите из представленного изображения главный объект.


Работа со слоями

"Если вы новичек в работе с изображениями, представление о слоях может быть не очень очевидным. Однако, использование слоев так же просто, как одевание слоев одежды на ваше тело. Однажды попробовав использовать слои, вы потом не поймете, как раньше без них работали."

GIMP User Manual

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

Что же такое слои? Представьте папку прозрачных листов, на которую вы смотрите сверху. Вы видите насквозь все, что нарисовано на этих листах. Некоторые из них могут быть непрозрачными и скрывать нижние, некоторые могут быть меньше или больше других. Вот и слои -- это стопка, наложенных друг на друга изображений. Аналогично создаются мультфильмы: берется фон, на него накладывается прозрачный лист с окружающими предметами, затем прозрачный лист с персонажами и т. д.

На представленном рисунке нижний, полностью непрозразный слой -- это исходное изображение. Средний слой имеет такие же размеры, как и предыдущий, но этот слой уже прозрачный. У нанесенного на него белого прямоугольника параметр непрозрачности относительно нижнего слоя порядка 50%. И, наконец, у верхнего слоя с текстом размеры меньше, чем у всех предыдущих слоев и он также имеет прозрачную основу, как и второй слой.

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


Основные приемы

 Предыдущий раздел Уровень выше Следующий раздел

Основные приемы работы

Рассмотрим основные приемы и идеи работы со слоями. Начнем с рассмотрения диалогового окна слоев. Это окно вызывается нажатием комбинации клавиш Ctrl-l или через пункт Слои, каналы и контуры контекстного меню Слои. Окно содержит три вкладки: Слои, Каналы, Контуры. Рассмотрим основные приемы работы со слоями.

Основную часть вкладки Слои занимает список слоев изображения. Для каждого слоя отображается его имя, которое можно поменять дважды щелкнув мышью по слою. Темной полосой выделен активный (рабочий) слой. Значок в виде глаза слева от слоя означает, что слой является видимым, его содержимое показывается в окне изображения. Невидимый слой отображаться не будет.

Эта удобная возможность позволяет на время отключать мешающие работе слои. Отключение или включение слоя происходит щелчком мыши по изображению глаза.

Изображение крестика (похожего на курсор перемещения) слева от слоя означает, что при перемещении слоев, выделенных этим значком, будут двигаться все отмеченные слои, а не только активный.

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

В самом верху диалога слоев находится раскрывающийся список Изображение. При работе сразу с несколькими изображениями, вы можете, раскрыв список, выбрать нужное для работы с его слоями. При включенной кнопке Авто, диалог слоев автоматически выбирает для работы то изображение, окно которого в данный момент активно. При этом в меню Изображение появится уменьшенный вид выбранного рисунка.

Диалоговое окно слоев включает шесть кнопок, обеспечивающих работу со слоями.
Кнопка | Назначение
 | Создание нового слоя
 | Перемещение текущего слоя наверх в стопке слоев
 | Перемещение текущего слоя вниз стопки слоев
 | Создание копии слоя
 | Прикрепление плавающего выделения к текущему слою
 | Удаление слоя

При создании нового слоя можно задать параметры нового слоя -- его размеры и название, а также указать, какого цвета будет его фон -- прозрачный, белый и т. д. Кроме того, если у вас есть плавающее выделение, например, только что написанный текст или вставленный объект, то нажатие на эту кнопку приведет к тому, что плавающий объект будет помещен на новый слой. Причем размер этого слоя будет оптимизированным, т. е. он будет занимать не больше места, чем требуется объекту. Это позволяет изображению занимать меньше места в памяти и на диске компьютера.

Меню Режим позволяет производить "математические" операции со слоями -- складывать, вычитать, умножать, делить, добавлять и т. п.

Следующий параметр диалога слоев -- это Сохранять прозрачность. Он позволяет не использовать в работе прозрачные точки. Это очень важный момент, например, для создания тени.

Пусть у нас есть изображение, содержащее букву А со сложной закраской на прозрачном фоне.

Попробуем что-либо нарисовать на этом изображении, не включая параметр "Сохранять прозрачность". Мы видим, что черный крест перечеркнул все изображение.

Если проделать тоже самое, но включив параметр Сохранять прозрачность, то прозрачные области останутся незатронутыми.

Параметр Непрозрачность устанавливает степень непрозрачности слоя. При значении 100 слой является абсолютно непрозрачным. Чем меньше это значение, тем больше будут просвечивать через него остальные слои.

Наконец, в самом низу окна расположена кнопка Закрыть, которая, закрывает диалог слоев.

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


Функции меню

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

Нажатие правой клавиши мыши на любом из слоев в окне Диалог слоев приводит к появлению всплывающего меню.

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

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

Следующая группа пунктов меню позволяет производить изменения размеров слоя.

Размер границы слоя ("Слой Boundary Size") позволяет уменьшить или увеличить размер слоя, не затрагивая размер изображения, что полезно, например, в случае, когда размер изображения в слое намного меньше самого слоя.

Пункт Масштабировать слой позволяет изменить размер слоя вместе с изображением, т. е. масштабирует его аналогично пункту Масштабировать из контекстного меню Изображение.

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

Третья группа пунктов меню производит объединениe слоев.

Объединить видимые слои -- объединяет все видимые слои, при этом предоставляет выбор нескольких вариантов размера объединенного слоя.

Объединить с предыдущим -- объединяет текущий слой с предыдущим, часто применяется после использования функции Режим.

Свести изображение -- объединяет все слои в один, не отображая при этом скрытые слои.

Пропустим пока группу пунктов меню, посвещенную работе с маской, и рассмотрим следующую, позволяющую работать с альфа-каналом.

Добавить альфа-канал -- добавляет альфа-канал (прозрачность). Эта функция применяется только для слоя, который является фоном изображения. Новое созданное изображение имеет всегда один слой, называющийся "фон". Этот слой нельзя перемещать в стопке слоев и производить с ним многие другие действия, как с обычными слоями. Используя этот пункт меню, мы преобразуем слой в обычный. Это не относится к новому изображению с прозрачным фоном. Оно уже имеет альфа-канал.

Альфа-канал -> выделенная область -- создает контур выделения по прозрачным участкам изображения.

Например, если мы имеем прозрачное изображение с нарисованной на нем буквой А, то применение этого пункта меню даст выделение только буквы А, при этом не важно, какого она цвета или текстуры.

Правка атрибутов слоя позволяет изменить имя слоя.


Маски

 Предыдущий раздел Уровень выше Следующий раздел

Понятие маски слоя

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

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

Если изображение содержит только один фоновый слой, то к нему нельзя сразу добавить маску слоя -- данный пункт меню недоступен. В этом случае сначала воспользуйтесь пунктом Добавить альфа-канал, после чего создание маски слоя становится возможным.

Рассмотрим пример. Предположим, что у нас есть два изображения. Возьмем первое и в диалоге слоев вызовем всплывающее меню, в котором выберем пункт Добавить маску слоя.

Маска бывает трех типов: Белая (непрозрачная), Черная (прозрачная) и Альфа-канал слоя. Последний пункт означает, что мы получим маску слоя, в которой черный цвет будет соответствовать прозрачным местам изображения, а белый -- непрозрачным. В данном примере нам нужна белая маска.

Маска слоя помещается рядом с изображением слоя в диалоге слоев. В ней, как и в обычном изображении, можно рисовать, копировать, стирать, применять фильтры.

Нужно лишь щелкнуть мышкой на ее изображение в списке слоев. Скопируем (Ctrl-c) второе изображение и вставим (Ctrl-v) его в маску первого. Для большей наглядности поместим под первый слой заливку под дерево.

В результате в том месте, где в маске был черный цвет, мы видим деревянный фон.

Рассмотрим остальные пункты меню для работы с масками.

Применить маску слоя -- заменяет на прозрачные все места изображения, куда показывала маска слоя, черным цветом. Белые оставляет без изменения, а оттенки серого заменяет на участки различной степени прозрачности.

Удалить маску слоя -- удаляет маску слоя.

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

Пункт Слои из контекстного меню изображения во многом повторяет только что описанное меню, поэтому рассмотрим только новые пункты.

Слои, каналы, контуры -- открывает диалог слоев.

Вращение -- позволяет врящать слой относительно остальных.

Центрировать слой -- помещает слой по центру изображения.

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


Анимация

 Предыдущий раздел Уровень выше Следующий раздел

Анимация в GIMP

Анимационные изображения в формате GIF встречаются в сети Интернет повсеместно. Баннеры, кнопки, логотипы, -- все они, используя даже простейшую анимацию, вносят в содержание HTML-страницы некую динамику.

Существует множество различных программ, предназначенных специально для создания анимационных gif-изображений. Большинство из них могут работать только с готовыми изображениями, искажая их, или перемещая в пространстве, однако, совершенно логично создавать анимационные изображения, используя программу, с помощью которой можно еще и рисовать. Ниже будет показано, как легко можно создать эффект анимации при помощи редактора GIMP.

Напомним сначала немного о самой идее анимационного gif. Формат GIF позволяет хранить изображение в виде нескольких слоев, каждый из которых может представлять собой отдельное изображение. Идея в том, что каждому слою в gif-изображении можно задать время, в течении которого он будет отображаться. Таким образом, чередуя слои, можно получить анимацию.

Итак, для создания анимационного gif нужно иметь несколько слоев изображения. Рассмотрим простейший пример. Создадим новое изображение. Самый нижний слой оставим белым. На других четырех нарисуем появляющиеся буквы слова GIMP.

Диалог слоев

Самый простой способ осуществить это -- сделать надпись на новом слое, затем создать четыре копии этого слоя и в каждом из них стереть ненужные буквы.

Таким образом получится пять слоев, один из которых -- фон, а четыре других представляют собой побуквенно собирающееся слово GIMP.

Если попытаться сохранить полученное изображение в формате GIF (пункт Сохранить как из меню Файл), то GIMP предложит экспортировать изображение в GIF, при этом следует выбрать, объединять ли слои в одно изображение или сохранить их как анимацию. Так как нас интересует именно анимация, выберем второй вариант и нажмем Экспорт. Появится окно выбора параметров анимационного gif.

меню сохранения gif

Первые два параметра задают общие свойства данного формата -- это черезстрочность и комментарий. Нас больше интересуют параметры анимации.

Бесконечный цикл. При включении этого параметра чередование слоев будет выполняться бесконечно, т. е. после отображения последнего слоя вновь последует первый и т. д.

Задержка между кадрами -- время в микросекундах, в течение которого по умолчанию будет отображаться каждый слой.

Расположение кадра -- имеет три режима. Первый (по умолчанию) -- I Don`t Care (мне все равно) -- позволяет GIMP распорядиться самостоятельно. Второй режим -- Combine (наложение слоев) -- последовательно накладывает один слой на другой. Таким образом, если у вас есть прозрачные места в слоях, предыдущие слои будут сквозь них проглядывать. По умолчанию GIMP обычно использует именно этот режим, как наиболее гибкий. Третий режим -- Replace (один кадр на слой) -- замещает предыдущий слой на новый.

Используем в рассматриваемом примере расположение слоев по умолчанию, а время между кадрами установим равным 200 миллисекунд (мс).

Если теперь открыть это изображение с помощью GIMP, то можно увидеть, что в диалоге слоев в названии каждого слоя в скобках добавился параметр -- время отображения.

Редактируя наименование слоя, можно задать каждому слою свое персональное время отображения (в мс). Если для последнего слоя установить значение равное 500 мс, то полная надпись будет оставаться на экране подольше.

Диалог слоев

Это был самый простой пример создания анимационного изображения. Но всегда хочется большего! Настало время обратиться к пункту Анимация из меню Фильтры. В нем содержится три подпункта -- Воспроизведение, Оптимизация и Разоптимизация.

Пункт Воспроизведение позволяет воспроизводить анимационное изображение. В появившемся окне воспроизведения анимации кнопка Пуск/стоп запускает проигрывание изображения и она же его останавливает. Кнопка Перемотка возвращает на первый кадр изображения, кнопка Шаг позволяет менять кадры вручную.

Если щелкнуть мышкой по проигрываемому изображению, то курсор изменит свою форму и превратится в вертикальную стрелочку. Теперь можно перетащить данное изображение в любое место экрана, например, в окно браузера, чтобы посмотреть, как будет выглядеть этот анимационный рисунок на вашей страничке. Этой возможностью можно пользоваться и для не анимированных изображений.

Каждый слой в анимационном gif-файле представляет собой, по сути, отдельное изображение и, сохраняя его как анимацию, мы сохраняем сразу несколько изображений. Таким образом, при большом количестве слоев размер анимационного gif будет весьма значительным. Выходом из положения может быть уменьшение вручную размеров каждого слоя и уничтожение лишних частей изображения. Фильтр Оптимизация поможет сделать это автоматически.

Фильтр делает приблизительно следующее: просматривая каждый слой, он находит точки, отличающиеся от соответствующих точек предыдущего, и оставляет только их, изменяя размер слоя на минимально возможный. Все неизменившиеся точки внутри этого слоя будут заменены на прозрачные.

Диалог слоев

Применив этот фильтр к недавно созданному изображению увидим, что в каждом слое остается только по одной букве, причем весь белый цвет будет заменен на прозрачный.

Кроме того, в названии слоя в скобках появится еще один параметр, так называемый режим расположения кадра -- combine. После применения фильтра Оптимизация этот режим всегда будет иметь значение combine, т. е. новый кадр будет добавляться к предыдущим.

Попробуйте изменить параметр combine на replace. Для этого щелкните левой клавишей мыши по редактируемому слою и внесите необходимые коррективы в появившееся дополнительное окно установки параметров слоя. При просмотре изображения слой, в котором установлен режим расположения кадра replace, будет замещать все предыдущие.

Пункт Разоптимизация производит обратное действие.

Подводя итоги, сформулируем основные принципы создания анимационных изображений с помощью GIMP.

  1. Каждый кадр анимации представляет собой отдельный слой изображения.
  2. Каждый кадр имеет два параметра: время показа в микросекундах и его тип, combine (объединение) или replace (замещение). Параметры задаются в имени слоя и заключаются в скобки, например: Слой1 (1000ms)(combine).
  3. Оптимизация слоев позволяет заметно уменьшить размеры анимационного изображения.

Задание.
Создайте анимационную надпись с последовательно появляющимися буквами. Используйте прозрачный фон изображения.


Редактор GFig

Редактор GIMP включает в свой состав мощное средство GFig -- встроенный редактор, позволяющий создавать и накладывать на существующий рисунок объекты векторной графики. Используя его, вы можете легко и быстро сделать простейший чертеж, сохранить его в отдельном файле (в векторном формате) и, при необходимости, добавить к растровому изображению.

Для запуска данного редактора в контекстном меню выберите пункт Фильтры/Визуализация/Gfig. Перед вами появиться главное окно GFig, в которое по умолчанию загружается первый имеющийся объект из представленного списка в правом верхнем углу диалогового окна.

Окно редактора GFig

Для создания нового рисунка необходимо в разделе работы со списком объектов окна редактора GFig выбрать пункт Новый. Затем, щелкнув мышью по необходимому инструменту рисования, можно начинать работу. Какое действие выполняет тот или иной инструмент легко понять по всплывающей подсказке, появляющейся при подводе курсора мыши к его кнопке.

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

Когда чертеж готов, его можно сохранить в отдельном файле в собственном векторном формате GFig, выбрав пункт Сохранить.

Для того чтобы наложить чертеж на редактируемое изображение, нажмите на кнопку Нарисовать -- рисование будет произведено текущим цветом и кистью, тип которой задается в разделе Кисть. Обратите внимание на то, что действие параметров кисти относится ко всему чертежу, а не к отдельным его элементам. Поэтому, если вам необходимо поместить на изображение геометрические фигуры с разной толщиной линии, то их надо создавать, как отдельные объекты.

Рассмотрим функции кнопок, расположенных в нижней части окна редактора.

  • Готово -- завершить работу в GFig.
  • Нарисовать -- поместить рисунок, находящийся в рабочей области, на редактируемое изображение.
  • Сохранить -- сохранить созданный рисунок в отдельном файле, как объект редактора GFig.
  • Очистить -- удалить все созданные фигуры из рабочей области.
  • Откат -- отменить последнее действие. В разделе Параметры вы можете установить уровень отката ваших действий (максимум -- 10).
  • Отмена -- закрыть окно редактора.


Дополнительные возможности

Кроме стандартных операций по рисованию и редактированию изображений в редакторе GIMP есть множество дополнительных функций. Это прежде всего Фильтры и так называемый набор специальных команд Скрипт-Фу.

Все эти команды направлены на внесение в изображение каких-либо специальных эффектов. На некоторых из них мы остановимся подробнее, с действием остальных вы можете познакомится сами, обратившись к соответствующим пунктам основного (пункт Расш.) или контекстного меню редактора GIMP.


Фильтры

Фильтры -- это специальные средства GIMP, которые позволяют применять к изображению некоторые эффекты. Обратиться к списку доступных фильтров можно с помощью пункта контекстного меню Фильтры.

Приведем примеры действия некоторых из фильтров, применительно к конкретному изображению:
Исходное изображение | Имитация/Масляная краска
Искажения/Барельеф | Световые эффекты/Сверхновая


Скрипт-Фу

Средства Скрипт-Фу

Скрипт-Фу -- это набор дополнительных средств GIMP по преобразованию изображений и созданию новых графических объектов. Обратиться к функциям Скрипт-Фу можно с помощью контекстного или основного меню GIMP. Эти два меню различаются по списку представленных в них команд. Если функции контекстного меню направлены на преобразование редактируемого изображения, то в пункт Скрипт-Фу из меню Расш. включены такие возможности как создание кнопок и необычных надписей (эмблем), шаблоны и многое другое.

В примере справа применена функция Скрипт-Фу/Тень/Падающая тень для создания теневой каймы вокруг изображения. Используя это средство, вы можете добавлять тень к любому выделенному объекту. Так, добавление тени к помещенному в изображение тексту делает его визуально объемным.

При создании тени получается многослойное изображение и для его правильного сохранения в формате JPEG необходимо выполнить преобразование Свести изображение или Объединить видимые слои из контекстного меню Слои.

Задание.
Скопируйте предложенное изображение на чистый рисунок. Поместите его в рамку с тенью. Под изображением добавьте надпись, на которую также наложитe тень.


Логотипы

Создание логотипов

Редактор GIMP обладает богатыми возможностями по созданию логотипов. Такие надписи создаются посредством применения команд пункта Скрипт-Фу/Эмблема из меню Расш..

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

При создании логотипа изображение получается многослойным. Это очень важный факт, ибо у вас появляется возможность откорректировать результат, например, заменить или убрать совсем (сделать прозрачным) фон. Сохраняя логотип, не забудьте, что многослойное изображение нужно записывать в формате GIF. Если в вашей эмблеме присутствует тень, то логотип лучше сохранять в формате JPEG, предварительно склеив все слои командой контекстного меню Слои/Свести изображение или Слои/Объединить видимые слои.

Ниже представлены различные типы надписей, полученные с помощью некоторых средств из пункта Скрипт-Фу/Эмблема.

- Глянцевая | - Основа I
- Sota Хром | - Пятнистая корова
- Звездный фон | - Чужое свечение
- Выпуклый градиент | - Прохладный металл

Задания
  1. Используя средства редактора GFig и инструменты заливки GIMP, создайте рисунок, аналогичный представленному ("геометрические фигуры"). Пунктирную линию в конусе можно сделать при помощи инструмента Ластик.

  2. Создайте надпись типа Основа II и залейте в ней фон каким-либо шаблоном. Сохраните получившееся изображение в формате JPEG.


XFig

Редактор векторной графики XFig

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

Этот графический редактор предназначен для работы в операционной системе Linux. Описание редактора соответствует версии редактора XFig, встроенного в графическую оболочку KDE. Запуск редактора производится командой xfig или выбором соответствующего пункта в главном меню KDE.

Основное окно редактора содержит четыре панели управления. На рисунке они обозначены цифрами 1, 2, 5 и 6, горизонтальную и вертикальную линейки -- 4, рабочую область (рабочее окно) -- 7 и небольшую вспомогательную диаграмму -- указатель функций мыши -- 3.

Рабочее окно -- аналог холста художника, оно предназначено для рисования. Выбрав инструмент, укажите щелчком мыши место размещения нового объекта и начните создание рисунка.

Указатель функций мыши предназначен для вывода информации о назначении каждой из трех кнопок мыши, в зависимости от выбранного инструмента или состояния редактора.

Команды, ассоциированные с кнопками мыши, отображаются рядом с тремя прямоугольниками, соответствующими трем кнопкам мыши.

Если какая либо из клавиш не имеет в данный момент надписи, то это означает, что она сейчас не задействована.

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

[Rulers] Граничные линейки отражают изменение координат курсора при перемещении его по рабочей области и помогают пользователю в визуальном определении точных размеров фигур. Когда курсор мыши перемещается по рабочей области, следом за ним постоянно перемещаются два треугольных маркера, показывающие позицию курсора мыши, -- один по вертикальной линейке, а второй по горизонтальной. Единицы измерения, отображаемые на линейках, устанавливаются кнопкой в правом верхнем углу пересечения линеек.

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

Нажатие на граничной линейке левой или правой клавиши мыши переместит холст на 1/2 дюйма (1см, если единица измерения -- см). Клавиши управления курсором дают тот же эффект. Нажатая при этом клавиша Shift позволит переместить холст в пять раз дальше.

Холст переместится в начало, если левая клавиша мыши будет нажата при наведении на индикатор единиц размерности или, если нажата средняя клавиша мыши одновременно с клавишей Ctrl, когда курсор наведен на сам холст.

На верхней панели управления (будем называть ее главной) находятся только кнопки глобальных действий над объектом рисования. Слева имеется две другие панели: панель средств рисования фигур и панель редактирования. Для каждой из кнопок этих панелей внизу рабочей области появляется временная панель, которая предоставляет возможности дополнительной настройки выполняемых действий. Например, если вы выбрали команду Picture Object, то для нее будут доступны следующие кнопки временной панели: Zoom Scale, Grid Mode, Point Posn, Depth и PenColor.


Объекты XFig

Все возможные чертежи и схемы в XFig создаются при помощи определенного набора фигур, их комбинаций и переплетений. Если в вашем чертеже должен быть объект, который невозможно составить из геометрических фигур, то в этом случае поможет инструмент Picture object, посредством которого вставить в чертеж растровый рисунок. Для создания текста, чисел и некоторых символов служит инструмент Tекст, который позволяет вводить текст заданным шрифтом и начертанием.

Стандартный набор геометрических фигур включает в себя: окружность и эллипс с возможностями их создания по двум различным начальным условиям -- радиусу или диаметру, замкнутые и незамкнутые линии и ломаные, правильные и неправильные многоугольники, дуги и различные прямоугольники. Инструменты создания этих объектов расположены на панели фигур.


Панели инструментов

Работа с редактором XFig чаще всего происходит по следующей схеме: выбор нужного инструмента на одной из панелей и последующее его применение. Внимательно изучите весь набор предлагаемых инструментов. Это позволит оптимальным образом использовать их при создании рисунка, чертежа или схемы.

После запуска программы на экране появляется окно с различными панелями инструментов

  • Главная панель;
  • Панель объектов;
  • Панель редактирования;
  • Панель параметров;
  • Панели информации.

    Далее мы подробно рассмотрим каждую из перечисленных панелей редактора XFig.


Главная панель

Перечислим назначение кнопок, расположенных на главной панели управления (номер 2 на рисунке).

Quit
Выход из программы.
New
Создает новый файл.
Port/Land
Переключает расположение редактируемой области (портретное/альбомное).
Undo
Отменяет последнее действие. Если вас не устраивает последнее изменение, внесенное в чертеж, то нажав эту кнопку, вы можете его отменить.
Redraw
Перерисовывает холст, заново отображая чертеж.
Paste
Вставляет в чертеж объект, хранящийся в буфере обмена (содержимое файла "~/.xfig"). Подробнее см. команду "Copy".
File
Вызывает меню работы с файлами.
Export
Вызывает меню преобразования в файлы различных форматов.
Print
Вызывает меню печати.

Под главной панелью имеется поле с именем файла (1) и строка сообщений, в которой представляется информация о текущей команде (3). Кнопка Balloons (4) включает или отключает всплывающие подсказки, которые появляются при наведении курсора мыши на разные кнопки в окне редактора.


Панель объектов

Панель фигур содержит в себе 14 объектов-фигур, а также текст, объект-изображение и добавление библиотечных элементов. Все фигуры предназначены для отображения в рабочей области Xfig.

Создание окружности по радиусу.

Создание окружности по диаметру.

Создание эллипса по радиусам.

Создание эллипса по диаметрам.

Ломаная замкнутая линия, аппроксимированная окружностями.

Ломаная замкнутая интерполированная линия.

Многоугольник. Создание по точкам многоугольника (не обязательно выпуклого).

Ломаная линия, аппроксимированная окружностями.

Ломаная интерполированная линия.

Ломаная линия.

Прямоугольник. Создание прямоугольника по его двум противоположным вершинам.

Прямоугольник с закругленными углами.

Правильный многоугольник.

Дуга окружности.

Объект картинка. Включение в векторный чертеж растровой картинки.

Текстовый объект. Вставка текста.

Библиотечный элемент. Позволяет выбрать из коллекции векторный объект.

Следует учесть, что во время выполнения всех команд этой панели нажатие на правую клавишу мыши до завершения команды вызывает ее полную отмену.


Панель редактирования

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

Создание группы объектов. Объединение несколько фигур в одну (группу). После выполнения этого действия с группой объектов можно оперировать, как с одним целым.

Разгруппировка. Действие, противоположное предыдущему.

Масштабирование. Увеличение или уменьшение объекта или группы объектов.

Перемещение точки. Изменение одной из узловых точек объекта.

Перемещение объекта.

Добавление точки. Добавление новой точки. Следует отметить, что добавлять новую точку можно только к объектам типа линия и ломаная, а также к многоугольнику.

Копирование объекта.

Удаление точки. Возможно только для кривых, ломаных и многоугольников.

Обновить. Применяет сделанные изменения к объекту.

Редактировать. Изменение параметров объекта.

Зеркальное отражение. Симметрия относительно горизонтальной оси.

Зеркальное отражение. Симметрия относительно вертикальной оси.

Вращение. Поворот объекта по часовой стрелке на 90 градусов.

Вращение. Поворот объекта против часовой стрелки на 90 градусов.

Преобразование. Преобразует ломаную линию в кривую и наоборот, а также из замкнутой в не замкнутую.

Добавление/удаление стрелок. Возможно только для незамкнутых линий.


Панель параметров

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

Из многочисленных параметров отметим только два -- установку опорной сетки (Grid Mode) и переключение режима размещения точек (Point Posn), которые позволяют размещать объекты строго в узлах сетки.

[Update Control Buttons]

Панель параметров не статична, она изменяется в зависимости от выбранной команды. Кнопки на панели параметров появляются при создании новых объектов, их коррекции (update) и редактировании (edit).

Если для данной команды все значимые кнопки-параметры не помещаются на экран, то в окно будет добавлен "бегунок" (scrool-bar).


Панели информации

Кнопка всплывающих подсказок

[Balloons Button]

Если эта кнопка включена, то при подведении курсора к инструментам или областям окна появляются всплывающие сообщения.


Горячие клавиши.

Горячие клавиши -- это комбинации клавиш на клавиатуре, нажатие на которые приводит к действиям, аналогичным щелчку мыши по изображению-кнопке данной команды.

Задания

  1. Нарисуйте следующие геометрические фигуры: треугольник и его высоты; окружность, ее диаметр и две хорды; ромб и его диагонали. Дайте имена всем точкам, расположенным на рисунке.

  2. Нарисуйте следующие геометрические тела: куб, пирамиду, цилиндр и конус. Все невидимые линии нарисуйте пунктиром. Подпишите вершины данных тел. Постройте какое-либо сечение каждой из фигур. В кубе проведите любые две его диагонали. В пирамиде и конусе постройте высоты.

  3. Нарисуйте план кабинета, размером 30 на 40 метров и разместите в нем 10 столов размером 1.5 x 1 м, 20 стульев размером 0.5 x 0.5 м и 2 шкафа размером 1.2 x 0.7 м. Используйте копирование и группировку объектов для размещения столов со стульями. Используя стрелки, укажите размеры одного из столов и шкафа.
  4. Используя вставку библиотечных изображений из раздела Music, создайте приведенный нотный фрагмент.


Ввод графики в ЭВМ

Разрабатывая свой Web-сайт, создавая электронную версию домашнего фотоархива, или просто занимаясь оформлением доклада для выступления, вы столкнетесь с необходимостью включения в документы красочных иллюстраций, которые не всегда можно подготовить, используя только компьютер и имеющееся программное обеспечение.

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

  • Изображение на бумажном носителе -> Сканер -> Файл на компьютере.
  • Фотокамера -> Пленка -> Слайд-сканер -> Файл на компьютере.
  • Цифровая фото- или видеокамера -> Файл на компьютере.

В этом разделе мы познакомимся с основными средствами ввода графической информации в ЭВМ, узнаем какие бывают цифровые камеры и сканеры, как они работают и как их использовать для получения качественного результата.


Цифровая фототехника

Обзор цифровой фототехники

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

Большинство цифровых камер имеет маленький цветной экран, на котором можно немедленно увидеть и оценить сделанный снимок. Принцип работы цифровой камеры достаточно прост.

Для получения цветного изображения свет пропускается через набор (красный, синий и зеленый) светофильтров и попадает на пикселы ПЗС, превращающие свет в электрический заряд. Затем электрические заряды усредняются и преобразуются посредством аналого-цифрового преобразователя (АЦП) в последовательность нулей и единиц, после чего цифровые данные подвергаются сжатию (наиболее часто используется JPEG) и запоминаются в памяти камеры.

Цифровое изображение можно откорректировать при помощи компьютера и затем распечатать. Сейчас распространены два класса фотопринтеров: струйные и сублимационные.


Виды сканеров

Виды сканеров, их назначение и характеристики

Сканер -- устройство для преобразования графической информации в цифровой формат. Кроме обработки фотографий и рисунков его часто используют (в комплекте со специальным программным обеспечением) для получения электронной версии печатных документов.

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

  • Оптическое разрешение
    Измеряется в точках на дюйм (dots per inch, dpi). Чем больше разрешение у сканера, тем больше информации об оригинале может быть введено в компьютер и подвергнуто дальнейшей обработке.
  • Глубина цвета
    Эта характеристика обозначает количество цветов, которое способен распознать сканер. Большинство компьютерных приложений, исключая профессиональные графические пакеты, работают с 24 битным представлением (16.77 миллионов оттенков цвета). У сканеров эта характеристика, как правило, выше -- 36 бит.
  • Динамический диапазон (диапазон оптических плотностей)
    Оптическая плотность -- это характеристика оригинала, равная десятичному логарифму отношения света падающего на оригинал, к свету отраженному (или прошедшему -- для прозрачных оригиналов). Минимально возможное значение 0.0 D -- идеально белый (прозрачный) оригинал. Значение 4.0 D на практике соответствует абсолютно черному (непрозрачному) оригиналу. Динамический диапазон сканера характеризует, какой диапазон оптических плотностей оригинала сканер может распознать, не потеряв оттенки ни в светах, ни в тенях оригинала.

Совершенно непохожие друг на друга планшетные, ручные, листопротяжные и слайдовые сканеры являются, тем не менее, очень близкими родственниками по конструкции и принципу действия. В них изображение сканируется построчно: оригинал освещается специальной лампой, обычно газоразрядной, и отраженный непрозрачным или пропущенный прозрачным оригиналом световой поток при помощи системы зеркал и объектива фокусируется на светочувствительной матрице. Аналогичный принцип используется и в факс-аппаратах. Полученный электрический сигнал с помощью аналогово-цифрового преобразователя (АЦП) порождает двоичные данные, последовательность которых и создает итоговое цифровое изображение.


Особенности сканирования

Особенности сканирования изображений

Для получения хорошего результата сканирования полезно придерживаться следующих рекомендаций.
  1. Начните с выбора четкого и контрастного оригинала.
  2. Определитесь с устройством вывода. Подготовка материалов для печати в типографии, печати на принтере или размещение в сети Интернет требует использования различных параметров сканирования.

    Для изображений, сканируемых для размещения на Web-страницах, разрешения 100 dpi (или даже меньшего) будет достаточно. При сканировании с целью распознавания текста целесообразно установить разрешение около 300 dpi, а для остальных целей -- максимально возможное.

  3. Расположите оригинал ровно или под необходимым углом.
  4. Выберите режим сканирования. Для черно-белых изображений без оттенков серого используйте LineArt, для изображений с оттенками серого используйте Grayscale, для цветных фотографий и рисунков -- RGB color.
  5. Произведите предварительное сканирование (PreScan) и отметьте только ту часть изображения, которую хотите получить в цифровом виде. Это сэкономит время и дисковое пространство.
  6. Произведите окончательное сканирование и сохраните файл в необходимом графическом формате. Для уменьшения размера файла можно использовать формат JPEG или сократить количество цветов в итоговом изображении.


Графические планшеты

Для профессиональных графических работ графический планшет, или дигитайзер, является практически стандартным устройством. Первоначально он использовался только в САПР, но затем сфера его применения значительно расширилась.

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

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


4. Обработка текста

Глава 4 Обработка документов

Одной из наиболее распространенных функций современного персонального компьютера является подготовка разнообразных текстовых документов. В данном разделе рассматриваются программные продукты, функционирующие в MS Windows и ОС Linux и предназначенные для работы с текстами. Мы ознакомимся с принципами создания и редактирования как простых, так и более сложных документов.

Различают две основные группы программ подготовки текстовых документов: текстовые редакторы и текстовые процессоры.

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

Текстовые процессоры умеют форматировать текст, вставлять в документ графику и другие объекты, не относящиеся к классическому понятию "текст". Следует отметить условность такого разделения -- разнообразие программ для обработки текста позволяет найти редактор с любым набором функций.

Некоторые текстовые процессоры являются так называемыми WYSIWYG-редакторами. Название получено по первым буквам фразы What You See Is What You Get -- то, что ты видишь, есть то, что ты получишь. Когда говорят, что это WYSIWYG-редактор, то гарантируют полное соответствие внешнего вида документа на экране компьютера и его печатной копии. К редакторам такого типа относятся Word и StarWriter.

Некоторые современные редакторы поддерживают концепцию "почти" WYSIWYG. Вид документа на экране при этом немного отличается от того, как будет выглядеть напечатанный документ, но делается это специально с целью более эффективного использования рабочего окна документа. Примерами "почти" WYSIWYG-редакторов являются Netscape Composer и KLyX.


Форматы текстовых файлов

Текстовые файлы -- наиболее распространенный тип данных в компьютерном мире. Существуют несколько проблем, связанных с текстовыми файлами. Первая -- чрезвычайно большое количество символов, требующихся для поддержки различных языков. Американские программисты для работы со 128 символами используют набор символов US ASCII (американский стандартный код для обмена информацией). Для поддержки других языков зачастую не хватает и 256 символов, поэтому сейчас осуществляется постепенный переход к кодировке Unicode, в которой для хранения одного символа отводится уже два байта (т. е. имеется возможность закодировать 65 536 различных символов).

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

Многие текстовые файлы передаются в виде простого текста (plain text). Простой текст сложно сделать привлекательным и легко читаемым, так как в нем нет шрифтов различных начертаний, графики, заголовков, подзаголовков и т. д. Эти дополнительные особенности носят название разметки текста (markup).

Говоря о разметке текста, выделяют понятия физической и логической разметки. При использовании физической разметки текста указывается точный вид каждого фрагмента. Например, "центрированный текст, 14-м кеглем, жирный, гарнитура Times". При логической разметке указывается логическое значение данного фрагмента, например, "это заголовок главы". Эти два способа разметки предназначаются, как правило, для использования в разных ситуациях. Для того чтобы распечатать текст на принтере, необходимо использовать физическую разметку. Должны быть приняты решения о размере полей и абзацных отступах. Ранние версии текстовых процессоров использовали только физический тип разметки. При этом для каждого фрагмента указывался шрифт, размер и стиль.

При обмене информацией с другими людьми физическое оформление текста накладывает ряд ограничений, особенно для онлайновых документов. Размер экрана, разрешение, шрифты различны для различных систем. По этим причинам все чаще используется логическое оформление текста. В некоторых случаях логическое оформление практически необходимо: при создании электронных документов типа страниц WWW или при создании и публикации объемных трудов, таких как книги.

Для сохранения разметки документов при передаче текстовой информации от машины к машине применяют разные способы. Текстовые процессоры и издательские системы используют специально разработанные форматы файлов, содержащие не только текст, но и информацию о том, как он должен быть оформлен. Основная проблема здесь в несовместимости таких форматов, хотя наиболее сложные программы обычно могут читать файлы в форматах программ-конкурентов. Примерами такого подхода являются текстовые процессоры Word и StarWriter.

При другом подходе непосредственно в текст документа вставляются специальные команды разметки. Даже если у вас нет программного обеспечения, поддерживающего такой формат, вы все же сумеете в нем разобраться. Существует немало способов подобного представления разметки текста, в том числе:

  • HyperText Markup Language (HTML), использующийся в World Wide Web;
  • TeX и LaTeX, пользующиеся популярностью у многих академических изданий, а также у математиков, физиков, химиков и даже музыкантов.
Примерами программ, которые позволяют разметить текст подобным образом, служат Netscape Composer и LyX (KLyX).

Файлы, созданные разными редакторами, зачастую имеют уникальные расширения, позволяющие, не заглядывая внутрь документа, догадаться о способах разметки текста. Так файлы, созданные редакторами подготовки plain-текста, часто имеют расширение .txt, а подготовленные в редакторе Lyx -- .lyx. Текстовый процессор Word по умолчанию создает файлы в формате MS Word (расширение .doc), но поддерживает и другие форматы, например RTF (расширение .rtf). Документы, содержащие команды разметки языка HTML, имеют расширение .html или .htm.

Очевидно, что невозможно перечислить все текстовые редакторы. Многие из них "заточены" под ту или иную специфическую деятельность. В списке, рассмотренном ниже, представлена лишь небольшая часть текстовых редакторов.

Редакторы неформатированных текстов

NotePad
встроен в операционную систему Windows, понятен и прост и использовании;
McEdit
имеет сходство с редактором Edit из MS DOS, компонента файлового менеджера mc (Midnight Commander) ОС Linux;
KEdit
простейший текстовый редактор, входит в состав KDE Linux;
KWrite
текстовый редактор, имеющий ряд дополнительных настроек по сравнению с другими простейшими текстовыми редакторами;
Emacs
совмещает в себе функции файлового менеджера и текстового редактора; одной из отличительных черт является возможность создание макрокоманд (макросов); имеется во всех клонах Unix, в том числе и Linux; Emacs можно использовать и в MS Windows.

Редакторы, создающие текст с элементами разметки

Word
служит для создания разнообразных печатных документов, является компонентом офисных приложений в MS Windows;
StarWriter
входит в состав программы StarOffice, внешним видом и функциональностью он похож на Word, одинаково хорошо работает как в MS Windows, так и в ОС Linux;
LyX (KLyX в KDE)
современный текстовый редактор, предназначенный для людей, которые хотят получить документ, выглядящий профессионально, но затратить на его создание минимум времени; редактор вставляет в текст команды разметки TeX и LaTeX;
Netscape Composer
вставляет в текст команды разметки языка HTML, существуют версии как для ОС Linux, так и для MS Windows.


Кодировки русского текста

 Предыдущий раздел Уровень выше Следующий раздел

Кодирование русского текста

Исторически сложилось так, что для представления печатных символов (кодирования текста) в первых ЭВМ отвели 7 бит. 27=128. Этого количества вполне хватало для кодирования всех строчных и прописных букв латинского алфавита, десяти цифр и различных знаков и скобок. Именно такой, 7-битной, является таблица символов ASCII (американский стандартный код для обмена информацией), подробную информацию о которой вы можете получить при помощи команды man ascii операционной системы Linux.

Когда возникла необходимость кодировать национальные алфавиты, то 128 символов стало недостаточно. Было решено перейти на кодирование с помощью 8 бит (т. е. одного байта). В результате количество символов, которые можно закодировать таким образом стало равно 28=256. При этом символы национальных алфавитов располагались во второй половине кодовой таблицы, т. е. содержали единицу в старшем разряде байта, отведенного для кодирования символа. Так появился стандарт ISO 8859, содержащий множество кодировок для наиболее распространенных языков.

Среди них была и одна из первых таблиц для кодировки русских букв -- ISO 8859-5 (воспользуйтесь командой man iso_8859_1 для получения кодов русских букв в этой таблице).

Задачи передачи текстовой информации по сети вынудили разработать еще одну кодировку для русских букв, названную Koi8-R (код отображения информации 8-битный, русифицированный). Рассмотрим ситуацию, когда письмо, содержащее русский текст, отправлено по электронной почте. Случалось, что в процессе путешествия по сетям письмо обрабатывалось программой, которая работала с 7-битной кодировкой и обнуляла восьмой бит. В результате такого преобразования код символа уменьшался на 128, превращаясь в код символа латинского алфавита. Возникла необходимость повысить устойчивость передаваемой текстовой информации к обнулению 8 бита.

К счастью, значительное число букв кириллицы имеет фонетические аналоги в латинском алфавите. Например, Ф и F, Р и R. Есть несколько букв, совпадающих даже по начертанию. Расположив русские буквы в кодовой таблице таким образом, чтобы их код превышал код аналогичных латинских на число 128, добились того, что потеря 8-го бита превращала текст хотя и в состоящий из одной латиницы, но все равно понимаемый русскоязычным пользователем.

Так как из всех операционных систем, распространенных в то время, самыми удобными средствами работы с сетью обладали различные клоны операционной системы Unix, то эта кодировка стала фактическим стандартом в этих системах. Таковой она является и сейчас в ОС Linux. И именно эта кодировка чаще всего применяется для обмена почтой и новостями в Интернет.

Далее наступила эра персональных компьютеров и операционной системы MS DOS. Как выяснилось, кодировка Koi8-R для нее не подходила (так же, как и ISO 8859-5), в ее таблице некоторые русские буквы находились на тех местах, которые многие программы предполагали заполненными псевдографикой (горизонтальные и вертикальные черточки, уголки и т. д.). Поэтому была придумана еще одна кодировка кириллицы, в таблице которой русские буквы "обтекали" со всех сторон графические символы. Назвали эту кодировку альтернативной (alt), поскольку она была альтернативой официальному стандарту -- кодировке ISO-8859-5. Неоспоримым достоинством этой кодировки является то, что русские буквы в ней расположены в алфавитном порядке.

После появления ОС Windows от фирмы Microsoft выяснилось, что альтернативная кодировка по некоторым причинам для нее не подходит. Снова передвинув русские буквы в таблице (появилась возможность -- ведь псевдографика в Windows не требуется), получили кодировку Windows 1251 (Win-1251).

Но компьютерные технологии постоянно совершенствуются и в настоящее время все большее число программ начинает поддерживать стандарт Unicode, который позволяет кодировать практически все языки и диалекты жителей Земли.

Итак, в различных ОС предпочтение отдается разным кодировкам. Для того чтобы стало возможным чтение и редактирования текста, набранного в другой кодировке, используются программы перекодирования русского текста. Некоторые текстовые редакторы содержат встроенные перекодировщики, позволяющие читать текст в различных кодировках (Word и др.). Мы для перекодировки файлов будем использовать ряд утилит в ОС Linux, назначение которых ясно из названия: alt2koi, win2koi, koi2win, alt2win, win2alt, koi2alt (откуда, куда, цифра 2 (two) схожа по звучанию с предлогом to, указывающим направление). Эти команды имеют одинаковый синтаксис: команда <входной_файл >выходной_файл.

Пример
Перекодируем текст, набранный в редакторе Edit в среде MS DOS, в кодировку Koi8-R. Для этого выполним команду

alt2koi <file1.txt >filenew
Так как в MS DOS и Linux по разному кодируется перевод строки, рекомендуется выполнить еще команду "fromdos":
fromdos <filenew >file2.txt
Команда с обратным действием называется "todos" и имеет такой же синтаксис.

Пример
Отсортируем файл List.txt, содержащий список фамилий и подготовленный в кодировке Koi8-R, в алфавитном порядке. Воспользуемся командой sort, которая сортирует текстовый файл по возрастанию или убыванию кодов символов. Если применить ее сразу, то, например, буква В окажется в конце списка, аналогично соответствующей ей букве латинского алфавита V. Вспомнив, что в альтернативной кодировке русские буквы расположены строго по алфавиту, выполним ряд операций: перекодируем текст в альтернативную кодировку, отсортируем его и снова вернем в кодировку Koi8-R. С использованием конвейера команд получаем

koi2alt <List.txt | sort | alt2koi >List_Sort.txt

В современных дистрибутивах ОС Linux решены многие проблемы, связанные с локализацией программного обеспечения. В частности утилита sort теперь учитывает особенности кодировки Koi8-R и для сортировки файла в алфавитном порядке достаточно выполнить команду

sort <List.txt >List_Sort.txt


Редакторы plain-текста

Простые и удобные в использовании редакторы неформатированного текста (plain-text) постоянно требуются программистам при написании текстов программ, создателям Web-документов, которых по ряду причин не устраивают Web-редакторы, людям, использующим TeX или LaTeX, и многим другим. Принципы создания, сохранения и редактирования документов в них очень схожи и не требуют от пользователя кропотливой работы по их освоению. Мы познакомимся с программой NotePad, входящей в состав MS Windows, а также с редакторами, входящими в состав среды KDE (Linux): KEdit, KWrite, McEdit. Затем мы рассмотрим программу Emacs, для которой создание plain-текста есть лишь малая часть ее потенциальных возможностей.


NotePad

 Предыдущий раздел Уровень выше Следующий раздел

NotePad (Блокнот)

Редактор NotePad является одним из самых распространенных средств подготовки неформатированного текста в среде MS Windows. Окно редактора содержит строку меню, включающую три пункта: Файл, Правка и Поиск.

Меню Файл служит для работы с файлами. Оно позволяет создавать, сохранять и открывать существующий файл. Команды редактирования документа (копирование, вставка, удаление фрагмента текста) осуществляются при помощи меню Правка. Для поиска фрагмента текста используется меню Поиск.

NotePad допускает еще один способ вызова команд редактирования документа -- контекстное меню. Для вызова контекстного меню нужно выделить некоторый элемент документа, а затем щелкнуть правой кнопкой мыши. Для закрытия контекстного меню без выбора команды достаточно щелкнуть по кнопке мыши, поместив ее курсор за пределами меню, или нажать клавишу Esc.

Для выделения частей текста и перемещения используются различные комбинации клавиш, представленные в таблице.

Shift+стрелка вправо | Выделение символа слева от курсора
Shift+стрелка влево | Выделение символа справа от курсора
Shift+стрелка вверх | Выделение предыдущей строки
Shift+стрелка вниз | Выделение последующей строки
Shift+Home | Выделение текста от начала строки до курсора
Shift+End | Выделение текста от курсора до конца строки
PgUp/PgDn | Перемещение на страницу вверх/вниз
Home/End | Перемещение в начало/конец строки
Ctrl+стрелка вправо | Перемещение на слово вперед
Ctrl+стрелка влево | Перемещение на слово назад
Ctrl+Home | Перемещение в начало текста
Ctrl+End | Перемещение в конец текста
Для установки курсора в определенное место можно использовать мышь: надо передвинуть курсор и сделать щелчок левой кнопкой.

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

Редактор NotePad использует в своей работе так называемый буфер обмена. В буфер обмена временно помещают фрагменты текста произвольной длины. Фрагмент с прежней позиции копируется или удаляется, при этом он автоматически помещается в буфер обмена и затем может быть вставлен в какое-либо место текста. Фрагмент сохраняется в буфере до тех пор, пока в него не будет внесен новый текст.

Задания

  1. Наберите фрагмент текста:

    Yesterday, all my troubles seemed so far away,
    Now it looks as though they're here to stay,
    Oh i believe in yesterday.

    Еще вчера мне казалось, что все мои беды далеки от меня,
    А сейчас они словно стеной обступили меня,
    Но я верю во вчерашний день.

  2. Скопируйте последний абзац три раза и сохраните файл под именем notepad.txt


KEdit

Редактор KEdit

Редактор KEdit запускается путем набора команды "kedit" в командной строке, или через главное меню KDE. KEdit -- простой в использовании, быстрый и удобный редактор.

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

Меню Файл | Меню Правка

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

Задания

  1. Создайте новый файл и наберите в нем два-три абзаца текста.
    2. Скопируйте последний абзац дважды. Удалите последние две строки. Проверьте орфографию в тексте. Сохраните файл под именем kedit.txt
  2. Откройте файл notepad.txt. Проблемы с русским текстом? Попробуйте прочитать текст, изменяя кодировку текста.
  3. Перекодируйте файл notepad.txt из кодировки win в кодировку koi8 и сохраните результат в файле с именем newfile.txt. Просмотрите полученный файл в текстовом редакторе KEdit.


KWrite

Редактор KWrite

Еще одним редактором, предназначенным для создания неформатированных текстов, является KWrite. Для его запуска нужно в командной строке набрать "kwrite" или воспользоваться меню KDE.

Редактор KWrite удобно использовать для набора текстов, содержащих команды разметки и коды программ, так как он является синтаксически ориентированным редактором. Последнее означает, что он умеет выделять цветом специальные конструкции и команды разметки.

С точки зрения интерфейса KWrite подобен KEdit и имеет строку меню и панель кнопок. В пункте Файл, кроме стандартных пунктов, аналогичных имеющимся в редакторе KEdit, добавлен пункт Новый вид (открытие окна, содержащего копию текущего документа). В пункте меню Перейти добавлена возможность вставлять так называемые метки, ускоряющие поиск нужного фрагмента текста. В пункте Редактирование содержатся стандартные команды редактирования, а также возможность вставки содержимого указанного файла в текст. KWrite поддерживает так называемый журнал откатки, позволяющий отменить ряд произведенных действий.

В пункте Инструменты имеется возможность установки/отмены отступов и добавления комментариев, соответствующих типу расширения файла.

Настройки в KWrite заметно богаче, чем в KEdit. В нем можно установить раскраску синтаксиса какого-либо языка: C, C++, Java, HTML и т. п., гарнитуру, размер, кодировку и цвет шрифта. В подпункте Настройка KWrite можно установить ограничение длины строки (при включении переноса по словам), величину табуляции, уровни отмены, различные отступы, а также параметры выделения (в том числе множественное и вертикальное выделение). Здесь же можно определить горячие клавиши для большого количества команд -- перемещения курсора, файловых операций, редактирования, выделения, поиска, замены и перехода.

Задания

  1. Откройте файл kedit.txt, внесите в него изменения и сохраните под именем kwrite.txt.
  2. Перекодируйте его в в альтернативную и Win-1251 кодировку, сохранив результаты соответственно в файлах alt.txt и win.txt. Файл win.txt просмотрите в редакторе NotePad.


Редактор McEdit

Пользователи файлового менеджера Midnight Commander охотно используют встроенный в него редактор Mcedit. Однако, он способен запускаться и как самостоятельное приложение, в этом случае требуется в командном окне набрать "mcedit".

Внешне этот редактор напоминает редактор Edit из набора утилит Norton Commander, хорошо известный пользователям еще со времен MS DOS.

Перемещение по документу осуществляется при помощи клавиш управления курсором, а также с использованием мыши. Для перехода на другую строку служит клавиша Enter. Выделение фрагмента текста осуществляется с помощью мыши.

В таблице перечислены назначения пунктов меню и некоторые комбинации клавиш для работы с текстом.

Ctrl+y | Удаление строки
Ctrl+u | Отмена последней операции редактирования
Ins | Переключение вставка/замена (insert/overtype)
F7 | Поиск (можно использовать регулярные выражения)
Shift+F7 | Повтор последней операции поиска
F4 | Замена
F3 | Первое нажатие -- начало отметки блока, второе -- конец
F5 | Копирование выделенного фрагмента
F6 | Перемещение выделенного фрагмента
F8 | Удаление текущей строки
Ctrl+f | Запись в файл
Shift+F5 | Чтение из файла
Shift+F4 | Создание нового файла
F2 | Сохранение файла
F10 | Завершение работы

Задания

  1. Запустите файловый менеджер mc и просмотрите содержимое файла notepad.txt
  2. Войдите в режим редактирования и скопируйте английский фрагмент текста дважды.
  3. Сохраните файл под именем medit.txt и выйдите из него, завершив работу с программой mc.


Emacs

Текстовый редактор Emacs

Во всех Unix системах, в том числе и Linux, широко используется редактор Emacs. Являясь редактором plain-текста, он обладает еще множеством дополнительных функций и возможностей. Emacs -- удобный файловый менеджер, с его помощью легко манипулировать файлами и директориями.

Когда вы запускаете Emacs, он создает свое отдельное окно, которое, за исключением первой и последней строки, отводится для отображения текста. Первая строка называется полоской меню, а последняя -- эхо-областью или окном минибуфера, где отображаются введенные командные последовательности и появляются запросы. Как только вы останавливаетесь более чем на секунду в середине команды, все знаки этой команды сразу же отображаются. В дальнейшем мы будем придерживаться обозначений, аналогичным появляющимся в эхо-области, например, при одновременном нажатии клавиш Ctrl и x в минибуфере появится строка C-x, а при нажатии клавиш Alt и x строка М-x (клавиша на клавиатуре, помеченная Alt, в Emacs играет особую роль: она выполняет функции специальной клавиши -- META).

Эхо-область используется также для отображения минибуфера: окна, которое применяется для считывания аргументов для команд, например, имени файла для редактирования. Когда используется минибуфер, эхо-область начинается со строки подсказки, которая обычно кончается двоеточием; кроме того, в этой строке появляется курсор, так как она становится выбранным окном. Вы всегда можете выйти из минибуфера, набрав C-g.

Рекомендуемый способ использования Emacs -- запускать его только один раз сразу после входа в систему. При необходимости одновременной работы с несколькими файлами или различными частями одного и того же документа следует командой C-x 5 2 или при помощи пункта Make New Frame меню Files создать новое окно (так называемый фрейм). Допускается разделение одного окна на несколько рабочих областей (в терминологии Emacs -- окон), хотя это менее удобно, чем использование фреймов. Команда C-x 2 разделит окно на два по вертикали, команда C-x 3 -- на два по горизонтали, а команда C-x 1 оставит только одно окно.

Emacs сохраняет текст каждого файла в объекте, называемом буфер (buffer). При первом обращении к файлу Emacs создает новый буфер. Для того чтобы увидеть список буферов, созданных в текущем сеансе работы, наберите C-x C-b.

Для завершения работы редактора Emacs служит команда C-x C-c. Если в этот момент были буфера, содержимое которых не было сохранено на диск, то вам будет предложено сохранить их.


Работа с файлами

При запуске редактора командой "emacs .&" на экране появляется окно Emacs с информацией о содержимом текущего каталога (символ & в конце команды обеспечивает запуск приложения в фоновом режиме). В этом случае он играет роль файлового менеджера.

Перемещение по каталогам

Первые две строки окна файлового менеджера Emacs справа содержат точку (.) и две точки (..). Строка с точкой соответствует текущей директории. Для перемещения к родительскому каталогу (т. е. на уровень вверх по файловому дереву) служит строка с двумя точками. Если вы хотите зайти в какую-нибудь поддиректорию текущей директории, то нужно установить курсор на строку с ее именем и нажать клавишу Enter.

Для обращения к требуемому файлу или каталогу служит команда C-x C-f. В окне минибуфера появится строка Find File, в которой указан путь до текущей директории. Редактируя ее, укажите путь до нужного вам каталога в соответствии с синтаксисом операционной системы Linux. После ввода имени директории или файла следует нажать клавишу Enter. Если указано имя файла, то будет открыт или создан соответствующий файл.

Пример
Для того чтобы переместиться на уровень вверх нужно ввести фрагмент ../, если вы хотите подняться на два и более уровней вверх, соответственно укажите два или более раз ../ без пробелов и других символов. Если вы хотите зайти в какую-то поддиректорию текущей директории, то нужно указать имя требуемой директории. Для перемещения в домашнюю директорию пользователя используется символ ~, в корневую директорию -- /. Введенный вами фрагмент может выглядеть следующим образом: ../../Work/text, что означает перемещение на два уровня вверх, далее в директорию Work и поддиректорию text.

Создание директории

Для создания директории служит команда +. В минибуфере появится сообщение Create directory, после которого нужно ввести имя создаваемой директории.

Копирование файла или группы файлов

Для копирования файла нужно установить курсор на имя файла и нажать клавишу C. После чего в окне минибуфера появится строка Copy to, в которой нужно указать путь к директории, в которую нужно скопировать данный файл.

Если вы хотите скопировать группу файлов, то перед копированием нужно предварительно отметить каждый файл нажатием на клавишу m, после чего в крайней левой позиции строки с именем файла появляется символ отметки *.

Переименование (перемещение) файлов и каталогов

Для переименования файла нужно установить курсор на данном файле и нажать клавишу R. В минибуфере появляется строка с именем файла (каталога) и указывается полный путь к нему. Для переименования файла достаточно указать новое имя, а для перемещения -- путь к новому каталогу.

Изменение прав доступа к файлам или директориям

Для изменения прав доступа к файлу или директории нужно выделить объекты, права доступа к которым вы хотите изменить, и применить команду M. В окне минибуфера необходимо ввести три цифры, соответствующие правам доступа для хозяина файла, для группы и для всех остальных соответственно. Цифры получаются в результате двоичного кодирования прав доступа и перевода их затем в 8-ичную систему счисления.

Символьное обозначение | rwx | rw- | r-x | r-- | -wx | -w- | --x | ---
2-ное представление | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000
8-ное представление | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0

В приведенной выше таблице буквы означают соответственно r -- read (чтение), w -- write (запись), x -- execute (выполнение для файлов и возможность входа для каталогов), причем наличие соответствующего права кодируется 1, а отсутствие -- 0.

Удаление файлов или каталогов

Для удаления группы файлов следует сначала отметить их, как удаляемые, нажатием клавиши d (в крайней левой позиции при этом появляется метка D). После отметки всех файлов нажать клавишу x и на экране появится список удаляемых файлов, а в окне минибуфера запрос подтверждения удаления. Нажмите y в случае согласия или n для отмены операции. Удаление одного файла или группы файлов, отмеченных нажатием на клавишу m, можно выполнить и с помощью команды D. Удаление каталогов происходит точно так же, как и удаление файлов, но удаляемые директории должны быть пустыми.

Отметим некоторые другие полезные команды редактора.
Команда | Назначение
v | Просмотр содержимого файла
e | Редактирование содержимого файла
u | Снятие пометки файла
g | Обновление содержимого директории


Редактирование

Чтобы редактировать файл, вы должны дать команду редактору считать его и подготовить буфер, содержащий копию текста файла. Эта операция называется обращением к файлу. Команды редактирования применяются непосредственно к тексту в буфере, то есть к копии внутри Emacs. Ваши изменения появятся в самом файле только после сохранения буфера. Как уже отмечалось, для обращения к файлу служит команда C-x C-f. Если вы обращаетесь к файлу, который уже был открыт, то новый буфер не создается.

Можно стартовать Emacs с указанием конкретного имени файла, например "emacs file.txt &". В этом случае редактор создаст буфер и загрузит в него содержимое указанного файла (если файл с таким именем отсутствует, то будет создан пустой буфер), после чего можно сразу приступать к редактированию.

После внесения изменений в буфер нужно сохранить его содержимое. Сохранение буфера в Emacs означает запись его содержимого обратно в файл, с которым связан этот буфер. Для этого служит команда C-x C-s.

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

Emacs время от времени (основываясь на подсчете нажатых вами клавиш) самостоятельно записывает все модифицированные буфера. Эта операция называется самосохранение или автосохранение. При автосохранении создается файл, имя которого отличается от имени исходного файла наличием в начале и конце имени символа "#". Например, буфер, связанный с файлом exam.txt, будет сохранен в файл #exam.txt#. Когда вы сохраните буфер, Emacs удалит автосохраненный файл.

Для создания и редактирования документа можно воспользоваться строкой меню, расположенной в верхней части окна Emacs. Строка меню содержит следующие пункты:

  • Buffers -- служит для перемещения по ранее созданным буферам с файлами;
  • Files -- это меню дублирует команды работы с файлами;
  • Tools -- служит для выполнения множества различных действий; отметим, что оно содержит возможность работы с несколькими буферами;
  • Edit -- при редактировании документа можно воспользоваться этим меню, среди функций есть возможность проверки орфографии (Spell);
  • Search -- это меню нужно для поиска фрагментов текста в документе;
  • HTML (или TeX, Java и т. д.) -- появляется, если Emacs "узнал" расширение файла, в этом случае предоставляются дополнительные возможности, специфические для файлов с данным расширением (так, например, если это файл с расширением html, то появляются возможности вставки наиболее распространенных команд разметки гипертекста);
  • Help -- меню помощи.

Выделять и копировать текст удобно с помощью мыши. Выделенный фрагмент текста можно удалить, щелкнув на нем правой кнопкой мыши, а также вставить в любую часть документа нажатием на среднюю кнопку мыши или путем выполнения команды C-y или Shift+Insert.

Для переключения ввода с русского на английский текст и обратно используются возможности, предоставляемые операционной системой. Кроме этого часто настраивают Emacs так, чтобы переключение осуществлялось клавишей F5. Emacs позволяет использовать два режима раскладки русских букв на клавиатуре: раскладка под пишущую машинку ("йцукен", как правило, указанная на клавиатуре) и фонетическая раскладка (по созвучию, на клавише с английской буквой k находится и русская к). Переключение между ними осуществляется клавишей F6, либо стандартными средствами переключения клавиатуры.

Перечислим некоторые команды редактора Emacs для работы с текстом. Если вы ошиблись при вводе какой-либо команды, то комбинация клавиш C-g прервет ее ввод.

Команда | Назначение
DEL | Удалить знак перед позицией курсора
C-d | Удалить знак после позиции курсора
C-k | Уничтожить все до конца строки
M-d | Уничтожить слово
M-DEL | Уничтожить предыдущее слово
C-y | Восстановить последний уничтоженный текст
C-a | Переместить курсор в начало строки
C-e | Переместить курсор в конец строки
M-f | Переместить курсор на слово вперед
M-b | Переместить курсор на слово назад
C-n | Переместить курсор на строку вниз
C-p | Переместить курсор на строку вверх
M-l | Перевести слово в нижний регистр
M-u | Перевести слово в верхний регистр
M-c | Перевести слово в нижний регистр с первой заглавной буквой
C-x u | Отменить действие последней команды (откатка)
C-_ | То же самое
Esc число команда | Повторить указанное число раз команду

Для проверки орфографии нужно в меню Edit выбрать пункт Spell и указать язык, на котором будем осуществлять проверку. После этого выполнить команду Check Buffer из этого же пункта меню. Редактор Emacs будет выводить на экран пронумерованный список слов для замены; указав номер нужного слова, вы автоматически исправите ошибку. Если вы не хотите изменять существующее слово, нужно нажать клавишу Space. Очень удобен режим Incremental Mode, при котором проверка орфографии происходит в реальном времени, одновременно с просмотром или вводом текста: все слова с неверным написанием немедленно подчеркиваются.

Как и в других редакторах, в Emacs есть команды для поиска вхождений в текст какой-либо строки. Необычность их в том, что они являются наращиваемыми. Наращиваемый поиск начинается, как только вы набрали первый знак строки поиска. По мере того, как вы набираете строку поиска, Emacs показывает вам, где эта строка может быть найдена. C-s начинает наращиваемый поиск вперед; C-r используется для поиска назад.

Редактор Emacs позволяет производить автоматическую замену одного фрагмента текста на другой. Для этого необходимо выполнить команду M-x, после чего в окне минибуфера вводятся следующие данные (каждый ввод завершается нажатием клавиши Enter):

1) команда replace-string;
2) фрагмент текста, который вы хотите заменить;
3) фрагмент, на какой производится замена.
Эта последовательность действий приведет к автоматической замене всех вхождений указанного фрагмента на новый, введенный вами.


Макросы

Клавиатурные макросы

В редакторе Emacs возможно использование специальных макрокоманд (или макросов), которые позволяют многократно повторять один раз введенную последовательность действий.

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

Команда | Назначение
C-x ( | Начать ввод макроса
C-x ) | Закончить ввод макроса
C-x e | Выполнить макрос

Макрос сохраняется в памяти редактора до тех пор, пока не будет определен новый макрос. Если вы хотите сохранить макрос клавиатуры дольше, чем до следующего определения, то ему нужно дать имя командой M-x name-last-kbd-macro. Введите команду (можно пользоваться клавишей Tab для автопродолжения), нажмите Enter, затем введите имя макроса. Для выполнения именованного макроса наберите M-x и имя макроса.

Рассмотрим на примерах приемы создания макросов.

Пример
Заменить указанную букву в тексте многоточием, а саму букву поместить в конце слова, окружив ее фигурными скобками, например, для буквы "о" в слове "выполнить" получить "вып...лнить{о}". Для этого необходима следующая последовательность команд:

1) переместиться к требуемой букве;
2) C-x ( -- начать ввод макроса;
3) стрелка вправо;
4) C-пробел -- установить метку;
5) стрелка влево;
6) C-w -- удалить все с текущей позиции до метки;
7) ... -- вставить три точки;
8) M-f -- переместиться к концу слова;
9) { -- ввести левую фигурную скобку;
10) C-y -- вставить последний уничтоженный текст;
11) } -- ввести правую фигурную скобку;
12) C-x ) -- закончить ввод макроса.

После этого можно выполнить макрос при помощи комбинации клавиш C-x e. Сохраним данный макрос под именем one.

Теперь создадим макрос для обратной задачи: вставить вместо многоточия '...' в слове букву, стоящую в фигурных скобках в конце слова, т. е. заменить "вып...лнить{o}" на "выполнить". Приведем макрос, решающий данную задачу.

1. C-x (            5. C-r ...       9. Backspace
2. C-s {            6. Enter         10. стрелка влево
3. стрелка влево    7. C-y           11. Backspace
4. C-k              8. Esc 3 C-d     12. C-x )

Отметим, что команда Esc 3 C-d трижды выполняет операцию удаления символа. Сохраним макрос под именем two.

Мы получили два макроса, выполняющие взаимно обратные преобразования. Убедитесь в этом, последовательно выполнив один макрос за другим: для выполнения первого наберите M-x one, для второго -- M-x two.


Дополнительные

Дополнительные возможности

Трудно перечислить все возможности Emacs в таком небольшом руководстве. Кроме редактирования текстов он позволяет выполнять еще множество других функций. Далее перечислены лишь некоторые из них, позволяющие вам немного отвлечься от работы и расслабиться.

Сначала отметим одну удобную возможность, предоставляемую редактором -- это автопродолжение при вводе команд в строке минибуфера. Набрав начало длинной последовательности символов, воспользуйтесь клавишей Tab для показа возможных продолжений команды.

Emacs может работать и как настольный календарь. Чтобы войти в этот режим, наберите M-x calendar. Окно разделится на два, в нижнем из них будет показан календарь на три месяца, отцентрированный на текущем месяце с выделенной текущей датой. Изображение календаря автоматически прокручивается, когда вы сдвигаетесь за пределы видимой части. Ниже перечислены некоторые команды для работы с календарем.

Команда | Назначение
o | Запрашивает месяц и год, а затем центрирует трехмесячный календарь вокруг этого месяца
p d | Выводит номер выбранного дня в году
Shift+s | Показывает времена восхода и заката Солнца
Shift+m | Выводит даты и времена всех четвертей Луны для показанного трехмесячного периода
q | Выходит из календаря

Если вы заскучали, можете попробовать M-x hanoi. Как видно из названия команды -- это реализация известной головоломки "Ханойская башня". Если вам очень скучно, то задайте численный аргумент, например, M-x hanoi 5.

Игра в крестики-нолики на бесконечной доске потребует от вас личного участия. Она запускается командой M-x gomoku; выигрывает тот, кто сумеет построить ряд из 5 элементов.

M-x dunnet запускает большую приключенческую игру.

Если вас расстроили, запустите знаменитую программу Eliza (пример программы, моделирующей искусственный интеллект). Она выполняет функции психотерапевта, который готов помочь вам разобраться в ваших проблемах. Введите M-x doctor для запуска, а каждый свой ответ доктору заканчивайте двойным нажатием на клавишу Enter. Завершить сеанс общения с психотерапевтом следует при помощи команды quit.

Задания

  1. Запустите информационную систему и просмотрите документацию к командам Emacs.
  2. Создайте директорию Text и установите для нее следующие права доступа: для себя -- чтение, запись, выполнение; для остальных -- выполнение. Скопируйте в данную директорию файлы notepad.txt, kedit.txt, kwrite.txt. Переименуйте файл notepad.txt в файл windows.txt
  3. Создайте и выполните макросы для выполнения следующих действий:
    1. добавление десяти пробелов в начало каждой строки;
    2. удаление каждого второго слова.


MS Word

Текстовый процессор MS Word

Microsoft Word -- это мощный текстовый редактор, получивший широчайшее распространение в среде Windows. Он является удобным инструментом для подготовки разнообразных писем, деловой документации, отчетов. С его помощью удобно создавать как бланки и анкеты, так и статьи, брошюры.

В основе оформления документов в Word лежит система шаблонов и стилей форматирования, которые позволяют достичь единства оформления большинства документов. Word относится к WYSIWYG-редакторам: напечатанный документ выглядит так же, как и на экране.

Word по умолчанию сохраняет текстовые файлы в собственном двоичном формате MS Word (соответствующее расширение файла -- .doc). Текстовая версия этого формата -- RTF формат (Rich Text Format), документирована фирмой Microsoft и поддерживается текстовыми процессорами некоторых других фирм. Из-за своей текстовой структуры формат RTF намного безопаснее с точки зрения распространения компьютерных вирусов, в то время как файлы формата DOC являются одним из инструментов передачи вирусов между компьютерами. Последние версии процессора могут сохранять файл в формате, включающим элементы разметки гипертекста (.html или .htm).

В текстовом процессоре Word используется несколько панелей инструментов, которые облегчают работу с документом. Давайте рассмотрим эти панели инструментов и их назначение.

Стандартная
содержит кнопки команд, служащих для работы с файлом и с буфером обмена.
Форматирование
служит для форматирования текста.
VisualBasic
предназначена для создания программ на VisualBasic, совмещенных с документом Word.
Web
преобразует документ Word в Web страницу, т. е. файл, содержащий разметку языка HTML.
WordArt
содержит кнопки вызова команд создания фигурного текста.
Автотекст
автоматическая замена фрагментов или быстрая вставка часто повторяющегося фрагмента.
Базы Данных
предназначена для создания и работы с базами данных, которые используются в таблицах документа.
Настройка Изображения
содержит кнопки вызова команд, служащих для работы с графическим изображением.
Рецензирование
предназначена для вставки сообщений и рецензий.
Рисование
предназначена для вставки в документ графических объектов.
Таблицы и границы
служит для обрамления таблиц.
Формы
содержит кнопки создания форм, таблиц, списков, полей ввода при работе с базами данных.
Элементы управления
вставляет кнопки, переключатели и другие элементы VisualBasic в документ.
Колонтитулы
при помощи этой панели инструментов можно установить различные верхние и нижние колонтитулы.
Главный документ
служит для разработки структуры главного документа.
Настройка объема
устанавливает варианты объема текста в документе.
Настройка тени
позволяет добавить тень как к тексту, так и к рисункам.
Структура
предназначена для установки структуры документа.


Создание

Создание и сохранение документа

Word предоставляет несколько шаблонов документов, которые позволят вам создавать специализированные документы, такие как письма или статьи. Один и тот же шаблон можно использовать много раз. Для создания, сохранения, открытия и закрытия документа можно воспользоваться пунктами меню Файл или кнопками на панели инструментов "Стандартная".

Текстовый редактор Word может сохранять документы в некоторых других форматах. Для сохранения документа в формате, отличном от Microsoft Word, нужно в окне сохранения документа в списке "Тип файла" выбрать требуемый формат файла.

Одной из важнейших особенностей текстовых процессоров, в том числе и программы Word, является возможность разнообразного форматирования текста. Различают три вида форматирования.

  • Форматирование символов -- при форматировании символов речь идет, в основном, об изменении шрифта.
  • Форматирование абзацев -- под форматированием абзацев понимается изменение размеров полей отдельных абзацев в тексте, изменение интервалов между строками и выравнивание абзацев.
  • Форматирование страниц -- под форматированием страниц понимается выбор размера, ориентации и размеры полей страниц.

Форматирования символов включает в себя изменение цвета, размера, стиля написания текста. Для изменения стиля написания символов могут использоваться кнопки, расположенные на панели инструментов "Форматирование".

Под абзацем в Word понимается часть документа, за которой следует маркер абзаца. При вводе текста абзац всегда заканчивают нажатием на клавишу Enter. Если же требуется перейти на следующую строку без выделения нового абзаца, используйте комбинацию Shift + Enter.

Процесс форматирования абзацев включает в себя:

  • выравнивание абзацев;
  • установку абзацных отступов;
  • установку отступа первой строки абзаца;
  • установку расстояния между строками;
  • установку расстояния между абзацами;
  • контроль положения абзаца на странице.

Выравнивание абзацев устанавливается при помощи панели инструментов "Форматирование". По умолчанию Word выравнивает все абзацы влево, при этом строки начинаются как бы с одной вертикальной линии. Можно осуществлять выравнивание как по центру, так и по правому краю, а также блочное выравнивание -- выравнивание по ширине листа.

Для установки отступов абзаца и первой строки можно использовать горизонтальную линейку. Выделите абзацы, для которых нужно установить отступ, и с помощью мыши переместите маркеры отступов абзацев и первой строки (бегунки), расположенные на горизонтальной линейке, в нужную позицию. Основные параметры отступов абзаца можно также установить в диалоговом окне Абзац, для чего необходимо из меню Формат вызвать пункт Абзац.

По умолчанию Word устанавливает расстояние между строками в один интервал, т. е. это расстояние точно соответствует высоте одной строки. Однако оно может составлять полтора, два и более интервалов. Расстояние между строками устанавливается в диалоговом окне Абзац в списке "Межстрочный".

Любой документ, напечатанный на бумаге, имеет поля. Word позволяет установить величину для каждого из четырех полей (верхнего, нижнего, правого и левого) по отдельности. Для этого следует выбрать пункт Параметры страницы из меню Файл и ввести требуемые величины в соответствующие поля.

Для того чтобы обеспечить автоматическое выполнение переносов слов во всем документе, нужно не только включить режим переноса слов (для чего в пункте Перенос слов меню Сервис нужно поставить отметку Автоматический перенос слов в документе), но также убедиться, что перенос слов не заблокирован ни в одном абзаце. Чтобы снять блокировку слов в отдельном абзаце в меню Правка выберите Выделить все, затем в меню Формат выберите Абзац, щелкните на вкладке Положение на странице и удалите отметку Без переноса слов.

Для проверки орфографии документа используйте клавишу F7. Можно также использовать кнопку Орфография на панели инструментов "Стандартная".


Колонтитулы

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

Одна из причин применения разбиения документов на разделы -- это необходимость иметь разные верхние и нижние колонтитулы в различных частях документа. Выделив каждую часть в отдельный раздел, вы получаете возможность установить для каждого из разделов колонтитулы, отличающиеся друг от друга.

Чаще всего в колонтитулы помещают номера страниц документа. Для быстрой нумерации страниц выберите пункт Номера страниц из меню Вставка. Если на первой странице не должно быть номера, то удалите отметку в поле Номер на первой странице. В диалоговом окне Формат номера страницы Word предлагает вам выбрать один из вариантов расположения номеров страниц.


Колонки

Многоколоночный текст

Word позволяет разместить текст в несколько колонок, при этом он располагает средствами, способными установить следующие виды документа с использованием колонок:

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

Для изменения количества колонок в документе нужно воспользоваться кнопкой Колонки на панели инструментов "Стандартная" или выбрать пункт Колонки из меню Формат, после чего в окне Колонки устанавливаются основные параметры.

Пример
Рассмотрим пример создания документа, название которого размещено через всю полосу, а основной текст в две и более колонок. Для этого вставим маркер конца раздела между заголовком и основным текстом при помощи пункта Разрыв из меню Вставка.

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


Списки

Для того чтобы создать нумерованный, маркированный (не нумерованный) или многоуровневый список, достаточно выделить все абзацы, которые нужно оформить в виде списка и воспользоваться пунктом Список из меню Формат. Word выведет на экран диалоговое окно Список.

При необходимости можно выбрать нестандартный символ маркировки. Word вставит символ маркировки перед каждым новым абзацем. Для увеличения и уменьшения вложенности списка можно воспользоваться кнопками Увеличить отступ и Уменьшить отступ на панели инструментов "Стандартная".


Таблицы

Текстовый процессор Word позволяет вставлять таблицу в документ. Для этого служит меню Таблица. Также можно воспользоваться кнопкой Вставка таблицы на панели инструментов "Стандартная". На экране появится диалоговое окно Вставка таблицы, в котором можно установить количество строк и столбцов создаваемой таблицы. Для выбора одного из стандартных видов оформления таблицы можно воспользоваться кнопкой Автоформат, при нажатия на которую Word выведет на экран диалоговое окно Автоформат таблицы. Оформление таблицы осуществляется при помощи панели инструментов "Обрамление".

Установку ширины столбцов (строк) можно регулировать при помощи маркера границы столбца (строки) или при помощи пункта Высота и ширина ячейки меню Таблица, который предоставляет дополнительные возможности по сравнению с установкой ширины столбцов путем установки маркера границы столбца (строки). Во-первых, можно задать ширину столбцов с большей точностью, а во-вторых, эта вкладка предоставляет гораздо больше возможностей по управлению шириной столбцов.

Для вставки нового столбца (строки) в любом месте таблицы вы можете воспользоваться пунктом Вставить столбец (строку) из меню Таблица. Выделим столбец и выполним команду вставки столбца; новый столбец будет вставлен слева от исходного. Вставка строки над исходной осуществляется аналогично.

Для того чтобы удалить из таблицы целые столбцы (строки), выделите эти столбцы (строки) и выберите пункт Удалить столбцы (строки) из меню Таблица или пункт Вырезать из меню Правка.

В процессе редактирования таблицы может понадобиться объединение или разбивка ячеек. Для объединения ячеек необходимо их выделить и выполнить команду Объединение ячеек из меню Таблица. Для разбиения ячейки нужно выделить ее, выполнить команду Разбить ячейку из меню Таблица, и в появившемся диалоговом окне указать количество столбцов, на которые будет разбита ячейка.

Пример
Рассмотрим процесс создания таблицы следующего вида:

Выполним пункт Вставить из меню Таблица. В появившемся диалоговом окне установим количество строк -- 5 и количество столбцов -- 3. Выделим первые две ячейки первой строки таблицы и выполним команду Объединить ячейки. Таким же образом объединим ячейки 2-3 строки 4 и ячейки 1-3 строки 5. После этого при помощи панели инструментов "Обрамление" оформим таблицу так, чтобы 1-я ячейка 3-й строки не имела верхней и нижней линии, внешний контур таблицы был нарисован двойной толстой линией, а внутренние линии были двойными тонкими. Заполним таблицу соответствующим образом. Выделим ячейки, которым хотим изменить цвет и выполним пункт Обрамление и заливка из меню Формат. Word выведет на экран диалоговое окно Обрамление и заливка в котором, на вкладке Заливка, можно выбрать требуемый цвет ячейки.

В документах Word можно использовать формулы, подсчитывающие сумму значений чисел в строке или столбце таблицы. Для этого установите точку вставки в ячейку, в которую вы хотите ввести формулу, и в меню Таблица выберите Формула. По умолчанию суммируются все значения, находящиеся выше точки вставки формулы для суммирования по столбцу или левее при суммировании по строке. Можно изменить диапазон ячеек для суммирования, указав явно диапазон их имен. Имя ячейки формируется из буквы, обозначающей столбец, и числа, задающего строку. Интервал суммирования задается путем ввода имен первой и последней ячеек, разделенных двоеточием, например "A2:B6". Нажатие на клавишу F9 обновит сумму после изменения значений в ячейках.


Графика

Вставка графики

В документы Word может быть импортирована графика самых разных форматов. Среди них широко распространенные форматы -- BMP и PCX, а также TIF, EPS, GIF, PIC и другие. Для работы с этими форматами Word использует графические фильтры -- программы, позволяющие интерпретировать и отображать на экране графику.

Word позволяет вам легко поместить графический рисунок в документ. Для этого нужно вызвать пункт Рисунок из меню Вставка, после чего в появившемся диалоговом окне выбрать рисунок из списка стандартных или указать свой.

Для изменения масштаба и положения рисунка необходимо поместить рисунок в кадр. Это можно сделать при помощи пункта меню Кадр из меню Вставка. Для работы с кадрами наиболее удобен режим просмотра страницы. В этом случае иллюстрация окажется вставленной в невидимую рамку, которую можно произвольно перемещать на экране. После помещения рисунка в кадр нужно выполнить пункт Кадр из меню Формат. Word выведет на экран диалоговое окно Кадр, в котором вы можете указать масштаб рисунка, расстояние между текстом и графикой, обрезать графическое изображение по краям или оставить вокруг него свободное пространство. В поле "Обтекание текста" можно установить режим обтекания рисунка текстом.

В состав редактора Word включены средства, которые позволяют создавать рисунки, состоящие из линий и геометрических фигур. Они могут быть успешно использованы для оформления приглашений, фирменных знаков, рекламных проспектов. Для создания таких иллюстраций служит панель инструментов "Рисование". С ее помощью можно легко и быстро создать простой рисунок.

Текстовые эффекты

При помощи Microsoft WordArt могут быть вставлены в документ объекты, содержащие преобразованный текст. Можно изменять форму надписей, растягивать их, оттенять. Для запуска этого приложения нужно вызвать пункт Объект из меню Вставка и в списке диалогового окна выбрать строку Microsoft WordArt. Word выведет на экран окно программы WordArt.

У верхнего края окна расположена панель управления. Поясним значение всех кнопок на ней и укажем функции, которые выполняются при их нажатии.

Форма | Выбор формы изображения текстового фрагмента
Шрифт | Выбор вида шрифта
Размер шрифта | Выбор размера шрифта
Полужирный | Установка полужирного начертания
Курсив | Установка курсивного начертания
Равная высота | Установка одинаковой высоты прописных и строчных букв
Поворот | Поворот букв на 90 градусов
Растянуть | Растягивание текста по горизонтали и вертикали
Выравнивание | Центрирование текста
Интервал между символами | Выбор расстояния между отдельными символами
Вращение | Выбор параметров поворота текста
Узор | Выбор типа узора или цвета для букв текста
Тень | Наложение тени на текст
Граница | Выбор толщины линии, ограничивающей текст


Формулы

Включение математических формул

Большинство математических и других научных статей включают в себя теоремы, доказательства и уравнения, использующие особую математическую символику. Математические формулы, как правило, содержат многочисленные специальные символы и конструкции, а также используют особые правила расположения составных частей, почти не применяющиеся при работе с обычным текстом. Microsoft Word поставляется вместе с приложением Microsoft Equation, которое позволяет создавать математические формулы на экране и выводить их на печать.

Для запуска Microsoft Equation нужно вызвать пункт Объект из меню Вставка, в появившемся диалоговом окне Вставка объекта выбрать вкладку "Создание", где в списке "Тип объекта" указать Microsoft Equation.

Панель инструментов "Формула" состоит из двух рядов кнопок. Перечислим их назначение в порядке следования построчно и слева направо.
Символы отношений, такие как равно или приблизительно равно
Области и эллипсы
Символы, подобные знакам дифференцирования или векторам
Математические операции, такие как знаки умножения и деления
Стрелки
Логические символы, такие как кванторы
Символы теории множеств, такие как пересечения или объединения множеств
Разнообразные символы, такие как бесконечность и градус
Строчные символы греческого алфавита
Заглавные символы греческого алфавита
Шаблоны для заключения вводимых объектов в круглые, квадратные или фигурные скобки
Шаблоны для дробей и корней
Шаблоны для вставки верхних или нижних индексов
Шаблоны для суммирования
Шаблоны для интегралов
Шаблоны для подчеркивания и надчеркивания
Шаблоны для надписей под или над стрелками
Шаблоны для представления выражений теории множеств
Шаблоны для матриц

Задания

  1. Создайте документ, содержащий докладную записку на имя преподавателя информатики. При создании используйте основные приемы оформления докладных записок.
  2. Создайте список с тремя уровнями вложенности.
  3. Включите в текст формулы, содержащие дроби, радикалы и другие математические символы.


StarWriter

Редактор StarWriter

StarWriter является компонентом программного продукта StarOffice фирмы Sun MicroSystem, реализованный как под MS Windows так и под ОС Linux.

Это современный текстовый процессор, который (аналогично программе Word) является WYSIWYG редактором. Внешне он очень напоминает Word и обладает практически такой же функциональностью. С его помощью можно создавать как простые текстовые документы, так и статьи, брошюры и даже книги.

При старте программы StarOffice появляется окно, содержащее пиктограммы документов разных форматов. Для запуска текстового редактора StarWriter необходимо в меню Файл программы StarOffice выбрать пункт Текстовый документ из меню Создать, либо на рабочем столе программы нажать на значок с надписью Новый текст. На экране раскрывается окно программы StarWriter с пустым листом.

Окно программы содержит строку меню со следующими пунктами:

  • Файл -- для работы с файлами;
  • Правка -- позволяет осуществлять операции выделения, вставки и удаления текста, а также функции поиска и замены;
  • Вид -- содержит в себе компоненты управления внешним видом окна программы;
  • Вставка -- служит для вставки объектов и дополнительных приложений в документ;
  • Формат -- позволяет осуществлять элементы форматирования текста;
  • Сервис -- содержит дополнительные функции, связанные с оформлением документа, а также функцию проверки правописания;
  • Окно -- устанавливает атрибуты расположения окон.

При работе с редактором StarWriter удобно использовать служебные панели, которые содержат кнопки выбора инструментов, дублирующих основные пункты меню. Использование этих панелей значительно ускоряет работу по редактированию документов. Среди них:

  • Панель функций, которая содержит кнопки команд работы с файлами; обычно располагается под строкой меню;
  • Панель объектов, которая осуществляет основные операции форматирования текста; расположена ниже панели функций;
  • Панель инструментов, содержащая кнопки команд вставки дополнительных объектов в документ; расположена слева от области ввода текста.

Горизонтальная линейка позволит быстро и точно установить отступы как красной строки, так и всего абзаца.

В строке состояния в нижней части окна StarWriter отражается информация о текущем состоянии документа и ряд дополнительных полей, позволяющих изменять некоторые параметры документа.

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

StarWriter, так же как и Word, имеет несколько шаблонов, при помощи которых можно создавать специализированные документы, такие как презентации, статьи или письма. Для создания, сохранения или закрытия документа можно воспользоваться кнопками на панели функций или же пунктами меню Файл.

При открытии файла на экране появится диалоговое окно Открыть, в котором можно установить параметры поиска файла. Это окно обеспечивает перемещение по дереву каталогов в поисках нужного файла.

При первом сохранении документа появится диалоговое окно Сохранить, в котором нужно указать место и имя файла для сохранения. Для повторного сохранения достаточно воспользоваться комбинацией клавиш Ctrl+S или кнопкой с изображением дискеты на панели функций.

При редактировании документа часто приходится выделять тот или иной фрагмент текста. Для выделения с помощью мыши нужно установить курсор в начало или конец выделяемого фрагмента, нажать левую кнопку мыши и, не отпуская ее, переместить курсор в конец или начало выделяемого фрагмента. Для выделения текста при помощи клавиатуры нужно нажать клавишу Shift и стрелки управления курсором для выделения в соответствующих направлениях. Комбинация клавиш Ctrl+a выделяет весь текст.


Форматирование

Форматирование текста

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

Приемы физического форматирования текста в программе StarWriter практически идентичны аналогичным в программе Word. Так, например, при помощи кнопки с символом Ж на панели объектов текста, желаемый фрагмент текста будет выделен жирным шрифтом. Мягкое форматирование выполняется присвоением тексту определенного стиля. Стиль -- это набор заданных значений или средств под общим именем, при помощи которых форматируются или, иначе говоря, оформляются тексты.

Жесткое форматирование лучше применять в тех случаях, когда его необходимо быстро выполнить. Если вы хотите выделить слово, к примеру, жирным шрифтом, то достаточно установить курсор на этом слове и нажать на кнопку с символом Ж.

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

Для форматирования символов можно воспользоваться Панелью объектов. С помощью нее можно установить тип шрифта, стиль написания, размер шрифта, а также цвет текста и цвет фона.

Абзацем считается часть документа, за которой следует маркер абзаца. Разделение на абзацы осуществляется нажатием на клавишу Enter. При форматировании абзацев можно в диалоговом окне Абзац устанавливать расстояние между строками и абзацами, абзацные отступы, контроль положения абзаца на странице. Для вывода на экран диалогового окна Абзац нужно выделить абзацы, к которым вы хотите применить данные элементы форматирования, и выполнить команду Абзац из меню Формат.

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


Орфография

Проверка правописания

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

Автоматическую проверку правописания во время ввода текста можно включить или отключить при помощи кнопки Автопроверка на панели инструментов. Если функция автопроверки активна, то все слова, не найденные в словаре (возможно содержащие ошибки) будут подчеркнуты красной волнистой линией. Это выделение видно только на экране, при печати оно не отображается. В StarWriter имеется словарь под именем "Standard.dic". Но вы всегда можете составить свой словарь или изменить имеющийся стандартный словарь так, чтобы он отвечал вашим требованиям. Создать свой словарь можно используя вкладку Лингвистика, для открытия которой нужно из меню Сервис выбрать пункт Параметры, затем Общие... и Лингвистика.

Исправить неправильно написанное слово можно либо непосредственно внеся в него изменения, либо вызвав контекстное меню (щелчком правой клавишей на слове), которое предложит набор правильно написанных слов, похожих на ошибочное. Выбор слова из списка приведет к замене неправильно написанного слова на выбранное.

Если вы хотите проверить ваш текст на наличие ошибок, то нужно в меню Сервис выбрать пункт Правописание, а затем Проверка. При обнаружении ошибок на экране появится диалоговое окно Правописание, в котором могут быть указаны варианты для исправления. В этом диалоговом окне имеется возможность добавления слов в словарь.


Поиск и замена

В StarWriter реализована возможность поиска заданного фрагмента текста в документе. При необходимости все вхождения этого фрагмента могут быть заменены на другой текст. StarWriter запускает поиск, начиная с текущей позиции курсора. Для активации поиска выберите пункт Найти и заменить из меню Правка либо нажмите комбинацию клавиш Ctrl+g. По достижению конца документа появится диалоговое окно, в котором можно выбрать возможность продолжения поиска с начала документа или выход из поиска. Если искомое выражение будет найдено в документе, то оно будет выделено.

Одной из самых практичных функций в StarWriter является функция группового выделения в комбинации с кнопкой Найти все. Если вы, к примеру, хотите выделить определенное слово, встречающееся в тексте много раз, жирным шрифтом, то введите это слово в поле Найти и щелкните на кнопку Найти все. Теперь это слово выделено во всех местах текста. Окно поиска содержит несколько параметров, а также кнопки, предназначенные для управления дополнительными функциями поиска.

Если вы хотите произвести поиск не во всем документе, а только в его части, то выделите требуемый фрагмент и отметьте параметр Поиск в выделении. Для замены одной комбинации символов на другую используйте кнопку Заменить или Заменить все, предварительно введя в соответствующие поля фрагменты поиска и замены.


Колонтитулы

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


Списки

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

Если вы часто пользуетесь списком и нумерацией в определенном формате, то лучше всего создать стиль абзаца, которому вы потом на вкладке Нумерация присвоите определенный стиль нумерации.

Возможности редактора StarWriter при создании списков превосходят возможности редактора Word. В качестве маркера списка можно вставлять не только число или символ таблицы ASCII, но и произвольный рисунок. Списки могут быть как одноуровневые, так и иерархические (многоуровневые).

Для повышения и понижения уровня вложенности списка можно воспользоваться кнопками Увеличить отступ и Уменьшить отступ на панели инструментов Панель объектов.

Для оформления в виде списка уже набранного фрагмента текста нужно его выделить, а затем выбрать пункт Нумерация/Список из меню Формат. StarWriter выведет на экран диалоговое окно Нумерация/Список, содержащее в себе ряд вкладок, служащих для создания списка:

  • Маркеры -- устанавливает в качестве маркера списка определенный символ;
  • Тип нумерации -- позволяет создать список, нумерованный арабскими, греческими или римскими цифрами;
  • Структура расположения -- позволяет выбрать вид многоуровневого списка;
  • Рисунки -- устанавливает в качестве маркера списка рисунок;
  • Позиция -- устанавливает отступы каждого уровня списка;
  • Настройки -- позволяет для каждого уровня списка установить свою нумерацию или отступы.

Для создания нового элемента списка достаточно нажать клавишу Enter в конце списка. Если вы хотите вставить новый элемент внутрь уже существующего списка, то нужно поместить курсор в конец той строки, после которой вы хотите вставить новый элемент списка, и нажать клавишу Enter.


Колонки

Многоколоночный текст

Для размещения текста в несколько колонок нужно выделить требуемый фрагмент текста и выбрать пункт Колонки из меню Формат. На экране появится диалоговое окно Колонки. В этом диалоговом окне нужно установить следующие параметры: число колонок, ширину столбца, наличие разделительной линии, интервал между колонками. После установки всех параметров нужно нажать клавишу OK. На экране текст будет выглядеть так же, как при печати.


Таблицы

Для помещения в документ таблицы выберите пункт Таблицаиз меню Вставка. На экране появится диалоговое окно Вставить таблицу, в котором нужно указать имя таблицы, а также количество столбцов и строк создаваемой таблицы. После установки необходимых параметров следует нажать кнопку OK.

На экране появится созданная вами таблица. Если курсор находится внутри таблицы, то при выборе меню Формат в раскрывшемся подменю будут располагаться три дополнительных пункта работы с таблицами:

Ячейка | Строка | Колонка

Для вставки или удалении строки (столбца) нужно выделить строку (столбец), над (справа от) которой нужно вставить новую строку (столбец) и выбрать пункт Строка (Колонка) из меню Формат, а затем Вставить. Если вы хотите разбить ячейки на несколько ячеек по вертикали или по горизонтали, то нужно выделить их и нажать на кнопку Разбить ячейки на Панели объектов.

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

Для обрамления таблицы или изменения цвета фона ячеек нужно пользоваться Панелью объектов, которая появляется при установки курсора внутри таблицы.


Графика

Вставка графики и текстовые эффекты

StarWriter, как и большинство текстовых процессоров, позволяет включать в документ разнообразные линии, рисунки, фотографии и другие графические объекты.

Редактор StarWriter позволяет размещать текст внутри кадра (рамки). Для этого нужно выделить текст и щелкнуть на кнопке Вставить рамку вручную на панели "Вставить" и, не отпуская клавиши мыши, слегка опустить указатель вниз. Откроется окно, в котором можно выбрать нужное количество столбцов. Теперь, если переместить стрелку мыши в основную область текстового документа, то она изменит свою форму, превратившись в крестик, что позволяет нарисовать рамку. Можно воспользоваться пунктом Рамка из меню Вставка и в появившемся диалоговом окне установить следующие параметры: Тип, Параметры, Обтекание, Гиперссылка, Обрамление, Фон, Колонки, Макрос.

При выполнении этих операций выделенный текст будет автоматически вырезан из основного текста и вставлен в рамку.

Для установки параметров обтекания рамки нужно выбрать пункт Обтекание из меню Формат и в раскрывшемся списке выбрать одну из следующих возможностей: контур, на фоне, без обтекания, обтекание страницы, оптимальное обтекание, сквозное обтекание, правка контуров, первый абзац.

Для того чтобы активировать текстовую рамку, щелкните по ее границе. Если появятся так называемые узлы или точки (четыре в углах и четыре по середине каждой стороны), то это значит, что рамка активирована. Активированную рамку можно растягивать, изменяя ее размеры при помощи нажатой клавиши мыши на узлах. При этом точка, находящаяся напротив перемещаемой точки, будет оставаться неподвижной. При перемещении угловых точек будет изменяться и ширина и высота рамки. Если вы будете удерживать нажатой клавишу Shift, то рамка будет изменяться пропорционально.

Тексты можно легко и просто выделять линиями. При этом линиям можно назначать различные атрибуты, такие как ширина и цвет, а также располагать их под углом.

Для рисования простейших графических объектов предназначена панель инструментов Функции рисования. Текст, созданный при помощи инструмента Текст на панели Функции рисования, можно поворачивать под разными углами.

После выбора инструмента Текст курсор примет форму крестика. Это значит, что вы можете нарисовать в документе рамку для текста. После того, как вы нарисовали рамку, введите текст (по мере необходимости рамка будет автоматически "вытягиваться" вниз). После ввода текста щелкните вне текста, а затем внутри его. Первым щелчком вы выйдете из режима ввода текста, а второй щелчок выделит только что введенный текст, как объект.

Для вращения текста на 90 градусов выберите пункт Положение и размер из меню Формат. Вращать объект можно и при помощи мыши, если предварительно выбрать инструмент Вращение объектов, который находится на панели объектов. Если при вращении вы будете удерживать нажатой клавишу Shift, то объект будет поворачиваться только на углы с определенным шагом.

При помощи программного модуля FontWork можно подготовить заголовки, эмблемы и девизы с эффектом фигурного текста.

Для создания фигурного текста откройте панель Функции рисования на панели инструментов и выберите инструмент Текст, нарисуйте рамку и введите в нее текст. При выборе пункта FontWork из меню Формат откроется окно установки параметров FontWork.

Выше приведен пример фигурного текста, который можно получить при помощи программного модуля FontWork.

StarWriter, также как и Word, позволяет импортировать в свой документ графические изображения. Для вставки рисунка выберите пункт Рисунок из меню Вставка и в раскрывшемся списке укажите способ вставки рисунка.


Формулы

 Предыдущий раздел Уровень выше Следующий раздел

Вставка формул в текст

Как и большинство других текстовых процессоров, StarWriter позволяет включать в документ формулы. Математические формулы могут содержать различные специальные символы, отсутствующие на клавиатуре. На экране формулы видны так, как будут выглядеть на печати. Для создания формулы выберите пункт Формула из меню Вставка, в результате на экране появится панель инструментов Выбор и окно Команды для ввода формулы. Первые две строки панели инструментов Выбор содержат команды с раскрывающимися подсписками (элементы подсписков отображается в следующих строках окна):

  • Унарные/Бинарные операторы -- создает дробь или вставляет в формулу различные арифметические операции;
  • Отношения -- содержит кнопки операторов отношения;
  • Операции множеств -- вставляет математические символы, используемые в операциях над множествами;
  • Функции -- содержит кнопки для вставки различных функций;
  • Операторы -- вставляет в формулы знаки суммирования, интегрирования и произведения;
  • Атрибуты -- содержит кнопки команд, позволяющие осуществить функции подчеркивания или установки стрелок над элементами формул;
  • Прочее -- содержит в себе стрелки следования и другие символы, используемые в математике;
  • Скобки -- позволяет установить различные виды скобок;
  • Формат -- устанавливает верхние и нижние индексы.

Панель Выбор ускоряет ввод формул, однако многие предпочтут вводить всю формулу вручную в окне Команды. Для группировки частей формул используются фигурные скобки. Приведем лишь некоторые команды создания фрагментов математических формул; с полным списком можно ознакомится в справке по составлению формул из руководства StarWriter.

Фрагмент | Назначение | Пример
_ и ^ | Нижний и верхний индексы | a_i^k
over | Дробь | a over b
sqrt | Квадратный корень | sqrt 2
dotsaxis | Многоточие | 1 dotsaxis n
vec | Знак вектора | vec a

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

Задания

  1. Подготовьте текст, состоящий из нескольких абзацев. Скопируйте их и оформите часть текста в виде двух колонок.
  2. Добавьте к тексту таблицу и рисунок.
  3. Разместите один из абзацев текста внутри кадра.
  4. Создайте список с тремя уровнями вложенности, используя в качестве маркера третьего уровня рисунок.
  5. Добавьте в документ фигурный текст.
  6. Включите в текст несколько математических формул.


Netscape Composer

Редактор Netscape Composer

Этот редактор предназначен для создания документов, содержащих команды разметки языка HTML. При работе с ним не требуется знания самого языка HTML, так как редактор самостоятельно вставляет в текст документа требуемые команды разметки. Файлы, создаваемые в редакторе Netscape Composer, обычно имеют расширение .html.

Редактор Netscape Composer является компонентой браузера Netscape Communicator, для запуска которого в командной строке введите netscape. После старта браузера выберите пункт Править страницу из меню Файлы. В появившемся окне редактора в меню Файлы можно выбрать уже существующую или создать новую страницу гипертекста.


Форматирование текста

Язык HTML, в соответствии с которым размечается текст, создаваемый в редакторе Composer, не позволяет вам строго задавать внешний вид документа. Часто документы, содержащие большое количество команд форматирования, неплохо выглядят в одной отдельно взятой программе просмотра (браузере), операционной системе и при конкретном размере экрана. Однако, если выбрать другую программу просмотра, то документ может стать неудобочитаемым. Поэтому рекомендуется не увлекаться чрезмерным форматированием документа и, по возможности, тестировать создаваемый документ в различных программах просмотра.

Панель, содержащая кнопки форматирования текста, расположена над полем ввода.

Кнопка | Назначение
 | Задает стиль текста: обычный, заголовки различного уровня, адрес, элемент списка и т. д.
 | Устанавливает размер шрифта: от +4 до -2
 | Выбирает цвет текста
 | Устанавливает жирный, курсивный или подчеркнутый шрифт, а также их комбинации
 | Очищает все стили
 | Задает расположение текста на странице: текст прижат к левому краю, центрирован или прижат к правому краю
 | Создает нумерованные и маркированные списки

Гипертекстовые документы предназначены, в основном, для просмотра с экрана монитора, а не для печати на бумаге, поэтому при их создании используются самые разнообразные цветовые оттенки не только для самого текста, но и для фона документа. Кроме этого в качестве фонового можно использовать графическое изображение в формате GIF, JPEG или PNG. Следует учесть, что фоновая картинка имеет приоритет над цветом фона. Для изменения фона документа вызовите контекстное меню, нажав правую кнопку мыши, и, не отпуская ее, выберите пункт меню Цвета и свойства страницы (Page Colors and Propeties). Появится окно, в котором можно задать цвета и свойства документа.

На вкладке Цвета и фон включите флажок Использовать пользовательские цвета (Use custom colors) и нажмите на кнопку Фон (Background). В появившемся окне выберите один из предлагаемых цветов, при этом кнопка Новый (New) окрасится в выбранный цвет. После нажатия на кнопку OK цвет фона будет установлен.

Если же в окне Установка цвета выбрать вкладку RGB, то откроется окно для выбора различных оттенков цвета. При кодировании оттенков цвета в гипертекстовых документах используется модель RGB, в которой каждая из трех цветовых составляющих кодируется двумя шестнадцатеричными цифрами и поэтому может изменяться в диапазоне от 0 до 255 (162-1). Передвигая рычажки управления цветами (R -- красный, G -- зеленый, B -- синий), можно добиться требуемого оттенка цвета, который отображается на кнопке Новый (для сравнения служит кнопка Старый, показывающая цвет до изменения). Величина каждой из цветовых составляющих может указываться в десятичной или в шестнадцатеричной системе счисления, а также в процентном отношении. Для переключения между этими режимами служит кнопка в нижней части окна.

Фоновая картинка задается также при помощи вкладки Цвета и фон. Включите флажок Использовать картинку (Use image) и в ставшем доступном поле справа укажите имя фоновой картинки. Если вы забыли имя файла с картинкой, воспользуйтесь кнопкой Обзор файлов (Browse for File...) для его поиска.

Редактор Composer обладает большими возможностями создания нумерованных и маркированных списков, а также различных вложенных списков. Для включения списка используйте либо кнопки на панели форматирования, либо пункт Список из меню Формат. Помните: номера элементов списка отображаются только в окне браузера, в окне редактора каждый элемент такого списка имеет маркер в виде символа #.


Вставка гиперссылок

Пожалуй, основной особенностью гипертекстового документа является возможность добавления ссылок на другие документы или части этого же документа. Если бы Web-страницы не ссылались друг на друга, содержимое WWW превратилось бы в обычный набор файлов, не связанных между собой.

Простая ссылка состоит из двух частей: текста, который выделяется (чаще всего подчеркиванием) на фоне остального текста, и адреса (URL) документа, на который ссылаются.

Для создания ссылки в меню Вставить предусмотрен пункт Ссылка, а также кнопка Связь на панели инструментов. В появившемся окне на вкладке Ссылка в поле Исходный текст ссылки вводится текст (если перед созданием ссылки текст был предварительно выделен, то он автоматически будет занесен в это поле), а в поле Ссылка на вводится URL файла. Для выбора файла, на который будет указывать ссылка, служит окно Прицепить файл, которое появляется после нажатия на кнопку Обзор файлов.

Если же требуется сослаться не на начало документа, а на его другую часть, то это место предварительно следует отметить. Для этого установите курсор в нужное место и выберите пункт Цель из меню Вставить, либо нажмите кнопку Цель на панели инструментов; в появившемся окне введите имя метки (латиницей), например, part1.

Имя метки непосредственно не отображается в окне ввода текста, но в том месте текста, где установлена метка (якорь, anchor) появляется маленькое изображение мишени, при подведении к которому курсора в статусной строке появляется имя метки.

Для задании ссылки на одну из частей документа, которой ранее было присвоено имя (установлена метка), следует в списке меток, находящимся в нижней части вкладки Ссылка, выделить нужную метку.


Вставка изображений

Важным дополнением к тексту документа являются вставленные в него графические объекты. Они могут выступать в качестве иллюстраций или ссылок. В гипертекстовый документ могут быть импортированы рисунки таких форматов, как GIF, JPG и PNG. Для вставки рисунков в документ необходимо выбрать пункт Картинка из меню Вставить. Появляется окно Свойства с открытой вкладкой Картинка.

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

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


Таблицы

Таблицы в гипертексте

Таблицы, включенные в состав гипертекстового документа, могут использоваться в различных целях. Это может быть просто набор строк и столбцов с размещенными в них данными. Другим распространенным применением таблиц является возможность добиться тех эффектов форматирования, которые отсутствуют в обычном HTML: разделение на столбцы, выступающие строки, интервалы. Многие Web-дизайнеры используют большие таблицы в качестве контейнеров для задания структуры страницы.

Таблица в гипертекстовом документе представляет собой иерархическую структуру: она состоит из строк, которые в свою очередь состоят из ячеек. Кроме того, компонентом таблицы является ее заголовок. Для вставки таблицы в документ следует выбрать пункт Таблица из меню Вставить.

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

Для изменения параметров ранее созданной таблицы переместите курсор внутрь таблицы и правой кнопкой мыши откройте контекстное меню, в котором выберите пункт Свойства таблицы.

На экране появится окно установки свойств таблицы с тремя вкладками: Таблица, Строка и Ячейка, при помощи которых можно менять параметры таблицы: вставлять и удалять строки, столбцы и ячейки, выравнивать и форматировать содержимое ячеек.

Напомним, что для просмотра гипертекстового документа используются браузеры -- специальные программы, предназначенные для этих целей, например, Netscape.

Задание
Создайте приведенный ниже html-документ, заменив фамилию, имя и отчество на свои, и установив в качестве фонового цвет "#F1E1E9".


KLyX

Редактор KLyX

KLyX (более старая версия носит название LyX) -- еще один современный текстовый редактор. Он форматирует текст, вставляя в него команды разметки языка подготовки документов TeX. Редактор KLyX можно отнести к разряду WYSIWYG-редакторов. Хотя при печати документ иногда выглядит и не так, как на экране, это вызвано исключительно желанием более рационально использовать окно редактора.

Для запуска редактора KLyX введите в командной строке klyx (lyx -- для более старой версии), либо выберите его из меню KDE. При старте программы появляется окно, в верхней части которого располагается строка меню. Чуть ниже строки меню размещены панели инструментов. В отличие от текстовых редакторов Word, StarWriter или NotePad при первоначальном открытии программы не создается новый документ и некоторые функции недоступны.

Кнопки панели инструментов дублируют часть пунктов меню. Основные элементы рабочего окна аналогичны рассмотренным в других редакторах.

KLyX различает несколько так называемых классов документов, основными из которых можно считать следующие:

  • аrticle -- для написания статей;
  • аrticle (AMS) -- для статей, содержащих математику;
  • report -- для создания отчетов;
  • book и book (AMS) -- для написания книг;
  • letter -- для подготовки писем.

При создании нового документа пользователь должен задать его класс, исходя из целей, для которых документ создается. Для этого используют пункт Document из меню Layout. В появившимся окне Document Layout можно задавать стиль страницы, режим выделения абзаца, печать текста в две колонки и некоторые другие опции. Рассмотрим их подробнее.

Опция Pagestyle отвечает за оформление верхних и нижних колонтитулов страниц, задает режим нумерации. Чаще всего используют:

  • default -- значения, установленные по умолчанию для этого класса;
  • empty -- полное отсутствие колонтитулов;
  • plain -- колонтитулы содержат только нумерацию страниц.

Опция Sides позволяет задать различное оформление для четных и нечетных страниц. Опция Columns определяет число колонок на странице при печати документа. Для установки межстрочных интервалов в документе используйте опцию Spasing. Можно задать одинарное (Single), двойное (Double) или половинное расстояние (OneHalf).

Для выделения абзацев используют опцию Separation окна Document Layout. Можно установить режим "красной строки", т. е. отступа в начале абзаца -- Indent, или увеличенное расстояние между абзацами -- Skip.

Если же для какого либо абзаца хочется установить свои собственные параметры, то используют пункт Paragraph из меню Layout. Появляется диалоговое окно Paragraph Environment. Для запрета отступа от левого края используют опцию No Indent, для изменения расстояния от соседних абзацев -- Vertical Space: Above -- от предыдущего, Below -- от последующего.

Рассмотрим порядок создания документа в редакторе KLyX.

  1. В меню File выбрать пункт New для создания нового документа с именем, указанным пользователем.
  2. Задать класс документа: пункт Document из меню Layout.
  3. Используя необходимые окружения, подготовить текст документа.
  4. Сохранить подготовленный документ на диск при помощи пункта Save или Save As из меню File.
  5. Для предварительного просмотра документа перед печатью использовать пункт View Dvi из меню File; при этом открывается специальное окно, показывающее окончательный вид документа.
  6. Для печати документа использовать пункт View Postscript из меню File. В открывшемся окне выберите весь документ или его часть для печати.
  7. Закончить работу с редактором: пункт Exit из меню File.


Форматирование

Форматирование текста

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

Меню Layout позволяет изменять текущий шрифт. Пункт Emphasize Style -- делает текущий шрифт курсивным, Noun Style -- переключает шрифт на капитель (все буквы как заглавные), Bold Style -- использует полужирное начертание. Допускается одновременное использование курсивного и полужирного начертания. Для этих же целей удобно пользоваться кнопками [image], расположенными на панели инструментов. Кнопка с восклицательным знаком переключает шрифт между курсивным и обычным начертанием. Кнопка с изображением человечка переключает шрифт между начертанием капитель (SMALL CAPS), где все буквы печатаются как заглавные, и обыкновенным.

Для того чтобы задать шрифт, отличный от предлагаемого по умолчанию, следует воспользоваться пунктом Character из меню Layout. В появившимся окне Character Style можно задать семейство (Family), размер (Size), цвет (Color) и некоторые другие характеристики шрифта. Для переключения между новым и предлагаемым по умолчанию шрифтом используйте кнопку с надписью Font.

Нажатие комбинации клавиш Alt+Shift+c всегда возвращает к шрифту, используемому по умолчанию.

Для копирования, вырезания и перемещения фрагмента текста нужно выделить этот фрагмент и воспользоваться меню Edit, а именно командами: Cut -- вырезает из текста отмеченный кусок, Copy -- копирует отмеченный блок в буфер для последующего использования, Paste -- вставляет запомненный текст из буфера. Для откатки нежелательных изменений (т. е. их удаления) используется пункт Undo; пункт Redo можно применить для откатки откатки.

Для поиска и замены в тексте используют пункт Find & Replace. В появившемся окне в поле Find указывается текст для поиска, в поле Replace with, если нужно, помещаем текст, заменяющий собой найденный. Кнопки со стрелками служат для поиска вперед и назад по тексту.

Нажатие на кнопку Replace производит замену найденного вхождения на новое. При задании опции Case sensitive поиск происходит с учетом регистра букв. Опция Match word обеспечивается поиск тождественно совпадающих слов, например, при поиске слова "кот" слово "скот" не будет найдено.


Списки

 Предыдущий раздел Уровень выше Следующий раздел

Нумерованные и маркированные списки

При создании списков KLyX явно превосходит возможности большинства текстовых процессоров. KLyX различает четыре типа списков, а именно:

  • Itemize -- создает маркированный список;
  • Enumerate -- создает нумерованный список;
  • Description -- использует заданное слово для выделения;
  • List -- создает уникальную метку для каждого элемента.

Все окружения могут содержать до шести уровней вложенности. Для того чтобы перейти на следующий уровень вложенности удобно пользоваться специальной кнопкой [image] на панели инструментов. Нажатие на нее увеличивает уровень вложенности. Для увеличения уровня вложенности списка также можно использовать пункт Change Invironment Depth из меню Layout. Для изменения уровня вложенности можно использовать и клавиатуру: нажатие комбинации клавиш Alt+P+стрелка вправо увеличивает уровень вложенности, а Alt+P+стрелка влево -- уменьшает его. Для того чтобы при вводе следующего элемента списка остаться на том же уровне вложенности, нажимайте Alt+Enter вместо Enter.

KLyX при использовании окружения Itemize создает для разных уровней вложенности различные метки, но это различие становится видно только при печати документа, на экране оно не отражается.

Если стандартные метки не устраивают пользователя по каким либо причинам, то их можно изменить, используя пункт Document из меню Layout. В окне Document Layout при нажатии на кнопку Bullet Shapes открывается новое окно Itemize Bullet Selection, где можно задать новую метку для каждого из уровней вложенности (Bullet Depth).

Пример
Список, созданный при помощи окружения Itemize.

Анаконда
большая
маленькая
Питон
большой
очень
не очень
маленький
Список, созданный при помощи окружения Enumerate.
1. Млекопитающие
(a) Волки
(b) Медведи
2. Птицы

Окружение Description использует первое слово первой строки абзаца в качестве метки. Если же хочется в качестве метки применить два или более слов, то их нужно разделять не обыкновенным пробелом, а вставлять специальный символ. Для этого выберите в меню Insert пункт Special Characters, затем Protected Blank, или воспользуйтесь комбинацией клавиш Ctrl+Space.

Пример
Окружение Description подходит для создания словарных статей.

Слоны
гигантские животные, обладают огромной силой, распространены в Индии и Африке.
Кенгуру
сумчатое млекопитающее, имеет очень мощные задние конечности, обитает в Австралии.

Окружение List не создает нумерованных списков. Аналогично Description, оно использует созданные пользователем метки. Отличие в том, что List не выделяет метку жирным шрифтом и использует для метки первое слово каждой строки (а не абзаца).


Таблицы

 Предыдущий раздел Уровень выше Следующий раздел

Использование таблиц и иллюстраций

KLyX дает возможность создавать и редактировать таблицы. Для вставки таблицы в документ нужно выбрать из меню Insert пункт Table или нажать кнопку [image] на панели инструментов Стандартная. В появившемся диалоговом окне Insert Table укажите число строк (Rows) и столбцов (Columns) в создаваемой таблице. В документ будет включена таблица и появится дополнительная панель инструментов для работы с ней:

При щелчке правой кнопкой мыши по таблице раскроется контекстное меню, содержащее следующие возможности:

  • добавление или удаление обрамление (линия вверху, внизу, слева, справа);
  • задание выравнивания текста в колонке по левому, правому краю или по центру (Align Left, Right, Center);
  • добавления строки (Append Row) или столбца (Append Column);
  • удаления строки (Delete Row), столбца (Delete Column) или всей таблицы (Delete Table);
  • объединение несколько колонок в одну (Multicolumn).

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

При добавлении строки она добавляется под строкой, содержащей курсор, при добавлении колонки -- справа от курсора. Удаляются всегда строка или колонка, содержащая курсор. Multicolumn объединяет по горизонтали две смежные ячейки в одну; часто эту возможность используют для задания общего заголовка для нескольких колонок. Можно задать обрамление для каждой ячейки в отдельности, отмечая в поле Borders те места, где должно присутствовать обрамление. Если таблица так широка, что не помещается по ширине листа, то можно развернуть ее, используя поворот на 90 градусов. Этот поворот не отображается на экране и не показывается при выборе View Dvi. Для того чтобы увидеть такую таблицу, используйте View PostScript. В ячейку таблицы можно помещать разнообразные объекты: просто текст, математические формулы и уравнения, рисунки. Нельзя помещать таблицу в ячейку другой таблицы.

Пример

Создадим таблицу из 5 строк и двух столбцов. Затем, используя Multicolumn, объединим колонки первой строки в одну, установим полужирный шрифт (пункт Bold из меню Layout) и введем слово "Канцтовары". Перейдем к следующим строкам.

Канцтовары
Наименование | Цена, руб.
Тетрадь | 2.00
Карандаш | 4.50
Линейка | 15.00

Стоя в первом столбце, откроем контекстное меню и установим переключатель Align в положение Left, чтобы прижать содержимое столбца влево. Заполним столбец. Содержимое второго столбца будем выравнивать по правому краю (Right). После заполнения данными второго столбца таблица готова.

Рассмотрим порядок включения в документ KLyX рисунка. Рисунок должен быть создан и сохранен в формате Encapsulated PostScript. Если формат графического файла другой, то его следует предварительно перекодировать в каком-либо графическом редакторе (GIMP, XFig).

Для вставки рисунка нужно воспользоваться пунктом Figure из меню Insert или кнопкой на панели инструментов Стандартная. В появившемся окне нужно выбрать одну из двух возможностей:
  • Encapsulated PostScript -- вставляет рисунок, располагая его между строк текста;
  • Inlined EPS -- помещает рисунок в виде значка в строку текста.

После выбора появляется прямоугольник, в который будет помещен рисунок. Нажатие левой кнопки мыши на него открывает окно Figure, в котором задается имя файла, содержащего рисунок, его размер и угол поворота. Для редактирования этих параметров нужно снова щелкнуть левой кнопкой мыши по вставленному рисунку. Поиск нужного файла можно осуществить, нажав на кнопку Browse в окне Figure. При этом предоставляется возможность найти файл в множестве директорий, либо выбрать его из коллекции Clipart.


Формулы

Включение математических формул

В документе, подготовленном с помощью KLyX, так же, как и в документах TeX, различают математические формулы внутри текста и так называемые "выключные" (выделенные) формулы, вынесенные на отдельную строку. Формулами считаются как "настоящие" формулы, так и отдельные цифры или буквы, в том числе и греческие, а также верхние и нижние индексы и наборы математических символов. Формулы выделяются на экране голубым цветом. Каждая латинская буква в формуле рассматривается как имя переменной и выводится специальным шрифтом "математический курсив". KLyX, в отличии от самого языка TeX, не допускает вхождение русских букв в формулу.

Для ввода формулы необходимо переключиться в режим ввода математики, для чего нужно нажать кнопку с изображением дроби или воспользоваться меню Math. Появится отмеченный голубым прямоугольник -- это область ввода формул. Латинские буквы и числа просто вводятся в эту область, ввод более сложных объектов осуществляется с помощью кнопок, расположенных на математической панели KLyX.

Панель содержит кнопки для ввода квадратных корней, дробей, различных скобок, включая скобки под и над формулой, устанавливает ширину пробелов в формуле, позволяет создавать матрицы, переводит формулу в выделенный режим и обратно. Специальные кнопки позволяют вводить греческие буквы и разнообразные математические символы. Кнопка функций f(x) содержит множество математических функций. Для создания выделенной формулы удобно пользоваться кнопкой Equation, однако, опытные пользователи языка TeX могут использовать клавиатуру для набора математического текста. Закончить ввод математической формулы можно, щелкнув левой кнопкой мыши вне поля для ввода математики. Щелчок мышью в области формулы позволит вновь редактировать ее. Для удаления формулы нужно установить курсор справа от нее и нажать клавишу удаления BackSpace.

Пример
Добавим в текст определение функции модуль x:

Для этого нужно:

1)
кнопкой Equation переключиться в режим создания выключной формулы;
2)
установить в качестве левой и правой скобки вертикальную черту;
3)
ввести "x" в прямоугольник между появившимися прямыми скобками, затем нажать клавишу Space, чтобы выйти за скобки, и знак "=";
4)
снова скобки: фигурная слева и пустое место справа (для этого существует кнопка без изображения скобки);
5)
нажатием кнопки Matrix создадим массив (матрицу); передвинем бегунки для задания 3 строк и 2 столбцов; в окне Horizontal Align (горизонтальное выравнивание) зададим rl (left -- прижать к левому краю, right -- к правому, center -- центрировать); появится матрица из шести прямоугольников.
6)
введем данные в прямоугольники матрицы (перемещаться между прямоугольниками удобно с помощью стрелок); после ввода нажмем несколько раз клавишу пробела для выхода из формулы.

Теперь можно посмотреть, как формула будет выглядеть при печати: пункт Preview, а затем View dvi из меню Filе.

Для ввода уравнений, занимающих несколько строк, после перехода в режим выделенной формулы нажмите Ctrl+Enter. Появится матрица из шести прямоугольников. В каждой строке первое поле предназначено для ввода левой части уравнения, среднее -- знака "=", последнее -- для ввода правой части уравнения. Если двух строк мало, то нажатие комбинации клавиш Ctrl+Enter добавит еще одну строку.

Задания

  1. Создайте документ класса аrticle с именем Text1.lyx. Введите два абзаца текста по 2-3 предложения в каждом.
  2. Установите двойное расстояние между строк документа. Сохраните полученный документ под именем Text2.lyx.
  3. Отредактируйте документ Text1.lyx: в первом абзаце используйте курсивное начертание, во втором Small Caps и цвет Magenta.
  4. Установите дату в качестве верхнего колонтитула.
  5. В документ Text1.lyx вставьте маркированный список, имеющий три уровня вложенности, в качестве маркеров используйте символы [image], [image] и [image].
  6. В документ Text2.lyx добавьте нумерованный список и список, созданный при помощи окружения Description.
  7. Введите в текст документа дробь и систему уравнений.
  8. Создайте выключную формулу


5. Основы языка HTML

 Предыдущий раздел Уровень выше Следующий раздел

Глава 5 Основы языка HTML

HyperText Markup Language (HTML) -- язык разметки гипертекста -- предназначен для написания гипертекстовых документов, публикуемых в World Wide Web.

Гипертекстовый документ -- это текстовый файл, имеющий специальные метки, называемые тегами, которые впоследствии опознаются браузером и используются им для отображения содержимого файла на экране компьютера. С помощью этих меток можно выделять заголовки документа, изменять цвет, размер и начертание букв, вставлять графические изображения и таблицы. Но основным преимуществом гипертекста перед обычным текстом является возможность добавления к содержимому документа гиперссылок -- специальных конструкций языка HTML, которые позволяют щелчком мыши перейти к просмотру другого документа.

Существует два способа создания гипертекстовых документов. Можно воспользоваться одним из WYSIWYG HTML-редакторов (например, Netscape Composer, основы работы с котором рассмотрены в разделе "Обработка текста на ЭВМ", Microsoft FrontPage, HotDog, или др.), для работы с которыми не требуется специальных знаний о внутренней структуре создаваемого документа. Этот способ позволяет создавать документы для WWW без знания языка HTML. HTML-редакторы автоматизируют создание гипертекстовых документов, избавляют от рутинной работы. Однако их возможности ограничены, они сильно увеличивают размер получаемого файла и не всегда полученный с их помощью результат соответствует ожиданиям разработчика. Но, безусловно, этот способ незаменим для новичков в деле подготовки гипертекстовых документов.

Альтернативой служит создание и разметка документа при помощи обычного редактора plain-текста (таких, как emacs или NotePad). При этом способе в текст вручную вставляются команды языка HTML. Создавая документы таким способом, вы точно знаете, что делаете.

Как уже отмечалось, HTML-документ содержит символьную информацию. Одна ее часть - собственно текст, т. е. данные, составляющие содержимое документа. Другая -- теги (markup tags), называемые также флагами разметки, -- специальные конструкции языка HTML, используемые для разметки документа и управляющие его отображением. Именно теги языка HTML определяют, в каком виде будет представлен текст, какие его компоненты будут исполнять роль гипертекстовых ссылок, какие графические или мультимедийные объекты должны быть включены в документ. Графическая и звуковая информация, включаемая в HTML-документ, хранится в отдельных файлах. Программы просмотра HTML-документов (браузеры) интерпретируют флаги разметки и располагают текст и графику на экране соответствующим образом. Для файлов, содержащие HTML-документы, приняты расширения .htm или .html.

Прописные и строчные буквы при записи тегов не различаются. В большинстве случаев теги используются парами. Пара состоит из открывающего (start tag) и закрывающего (end tag) тегов. Синтаксис открывающего тега:

<имя_тега [атрибуты]>
Прямые скобки, используемые в описании синтаксиса, означают, что данный элемент может отсутствовать. Имя закрывающего тега отличается от имени открывающего лишь тем, что перед ним ставится наклонная черта:
</имя_тега>

Атрибуты тега записываются в следующем формате:

имя[="значение"]
Кавычки при задании значения аргумента не обязательны и могут быть опущены. Для некоторых атрибутов значение может не указываться. У закрывающего тега атрибутов не бывает.

Действие любого парного тега начинается с того места, где встретился открывающий тег и заканчивается при встрече соответствующего закрывающего тега. Часто пару, состоящую из открывающего и закрывающего тегов, называют контейнером, а часть текста, окаймленную открывающим и закрывающим тегом, -- элементом.

Последовательность символов, составляющая текст, может состоять из пробелов, табуляций, символов перехода на новую строку, символов возврата каретки, букв, знаков препинания, цифр, и специальных символов (например, +, #, $, @), за исключением следующих четырех символов, имеющих в HTML специальный смысл: < (меньше), > (больше), & (амперсенд) и " (двойная кавычка). Если необходимо включить в текст какой-либо из этих символов, то следует закодировать его особой последовательностью символов.

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

Каждая из таких зарезервированных последовательностей начинается символом амперсенда (&) и заканчивается точкой с запятой (;).

Последовательность | Символ
&lt; | символ <
&gt; | символ >
&amp; | символ &
&quot; | символ " (кавычка)
&nbsp; | неразрывный пробел


Структура HTML-документа

Самым главным из тегов HTML является одноименный тег -- <HTML>. Он должен всегда открывать ваш документ, так же, как тег </HTML> должен непременно стоять в последней его строке. Эти теги обозначают, что находящиеся между ними строки представляют единый гипертекстовый документ. Без этих тегов браузер или другая программа просмотра не в состоянии идентифицировать формат документа и правильно его интерпретировать.

Закрывающий тег так же важен, как и открывающий. Если, например, документ включен в электронное письмо, тег </HTML> дает команду программе просмотра прекратить интерпретацию текста, как HTML-кода.

HTML-документ состоит из двух частей: заголовок (head) и тело (body), расположенных в следующем порядке:

<HTML>
  <HEAD>
       ...
  </HEAD>

  <BODY>
       ...
  </BODY>
</HTML>

В HTML-документ можно включать комментарии, позволяющие скрыть часть текста от браузера. Все, что заключено между последовательностями символов <!-- и -->, при просмотре страницы остается невидимым. Комментарии не могут быть вложенными друг в друга.


Заголовок документа

Включение в документ заголовочной части не является обязательным. Задачей заголовка является представление необходимой информации для браузера и сервера HTTP. Информация, размещенная внутри заголовка документа, обычно не выводится на экран (кроме названия документа).

Заголовок документа открывается тегом <HЕAD>, который обычно следует сразу же за тегом <HTML>. Закрывающий тег </HEAD> показывает конец этого раздела, между ними располагаются остальные теги заголовка документа.

Чаще всего в заголовок документа включают парный тег <TITLE> ... </TITLE>, определяющий название документа. Многие программы просмотра используют его как заголовок окна, в котором выводят документ. Программы, индексирующие документы в сети Интернет, используют название для идентификации страницы. Хорошее название должно быть достаточно длинным для того, чтобы можно было корректно указать соответствующую страницу, и в то же время оно должно помещаться в заголовке окна. Название документа вписывается между открывающим и закрывающим тегами.


Тело документа

В отличии от заголовка, тело документа является обязательным элементом, так как в нем располагается весь материал вашего документа (есть только одно исключение, с которым мы познакомимся далее, -- когда документ содержит вместо тела группу фреймов). Тело документа размещается между тегами <BODY> и </BODY>. Все, что размещено между этими тегами, интерпретируется браузером в соответствии с правилами языка HTML, позволяющими корректно отображать страницу на экране монитора.

Тег <BODY> не только обозначает начало содержимого документа, но и задает его основные свойства: цвет фона, текста и многое другое. Эти свойства определяются с помощью атрибутов, которые приведены в таблице.

Атрибут | Назначение
ALINK | Определяет цвет активной ссылки
BACKGROUND | Указывает на URL-адрес изображения, которое используется в качестве фонового
BGCOLOR | Определяет цвет фона документа
LINK | Определяет цвет непосещенной ссылки
ТЕХТ | Определяет цвет текста
VLINK | Определяет цвет посещенной ссылки

Пример

<HTML>

 <HEAD>

  <TITLE>Моя страничка</TITLE>

 </HEAD>

 <BODY  TEXT=red BGCOLOR=white>

 Тело <!-- Это комментарий --> документа

 </BODY>

</HTML>


Цвет в HTML

Цветовое оформление документа

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

Цвет может быть задан названием (например, green) или шестнадцатеричным числом, определяющим цвет в модели RGB. Эта цветовая модель базируется на определении цвета как композиции трех основных оттенков цвета: красного (Red), зеленого (Green) и синего (Blue). Каждая компонента задается двузначным шестнадцатеричным числом (т. е. изменяется от 00 до FF). Затем эти значения объединяются в одно число, перед которым ставится символ # (большинство современных браузеров может распознать цвет и без указания символа #).

Следует также отметить, что в записи шестнадцатеричного значения цвета можно использовать как большие, так и маленькие латинские буквы, например, запись #00FF00 равнозначна записи #00ff00.

Ниже представлена таблица 16 стандартных цветов вместе с их шестнадцатеричными кодами. Современные браузеры понимают 140 наименований цветов, часть из которых приведена в главе "Динамический HTML".

Цвет | Код | Цвет | Код
black (черный) | #000000 | silver (серебряный) | #C0C0C0
maroon (темно-бордовый) | #800000 | red (красный) | #FF0000
green (зеленый) | #008000 | lime (известь) | #00FF00
olive (оливковый) | #808000 | yellow (желтый) | #FFFF00
navy (темно-синий) | #000080 | blue (синий) | #0000FF
purple (фиолетовый) | #800080 | fuchsia (фуксия) | #FF00FF
teal (сине-зеленый) | #008080 | aqua (аква) | #00FFFF
gray (серый) | #808080 | white (белый) | #FFFFFF

Пример
Чтобы установить синий цвет фона документа нужно для синей составляющей цвета указать максимальное значение, а остальные сделать равными нулю: <BODY BGCOLOR="#0000FF">.

Тот факт, что разработчик Web-страницы ничего не знает о компьютере, на котором этот документ будет просматриваться, накладывает дополнительные ограничения на использование RGB-модели. На некоторых мониторах невозможно отобразить все разнообразие оттенков. Браузеры в этом случае сокращают используемое количество цветов, переназначая их под собственные палитры. Использование разработчиками гипердокументов Web-палитры является в некотором роде гарантией того, что документ будет выглядеть одинаково на различных дисплеях.

Web-палитра распознает по шесть оттенков красного, синего и зеленого цвета, что в результате дает 216 возможных значений цветов (6x6x6=216). Поэтому ее иногда называют "куб 6x6x6". В таблице приведены численные значения цветов из Web-палитры.

Шестнадцатеричные | Десятичные | Процентные
00 (самый темный) | 0 | 0 %
33 | 51 | 20 %
66 | 102 | 40 %
99 | 153 | 60 %
CC | 204 | 80 %
FF(самый светлый) | 255 | 100 %

Цвета, RGB-компоненты которых входят в Web-палитру, называют Web-надежными цветами. Среди всех цветов, имеющих имена, только 10 цветов входят в Web-палитру: aqua, black, blue, cyan, fuchsia, lime, magenta, red, white и yellow.


Разделение на абзацы

Разделение текста на абзацы

Язык HTML предполагает, что автор документа ничего не знает о компьютере своего читателя. Читатель вправе установить любой размер окна и пользоваться любым из имеющихся у него шрифтов. Это означает, что место переноса в строке определяется только программой просмотра и установками конечного пользователя. Символы перевода строки оригинального документа игнорируются, в результате чего текст, отлично смотревшийся в окне вашего редактора, может превратиться в сплошной неудобочитаемый текст в окне программы просмотра.

Избежать этой неприятности позволяет разделение на абзацы при помощи тега <Р>. Разместите его в начало каждого абзаца, и программа просмотра отделит абзацы друг от друга пустой строкой. Использование закрывающего тега </P> необязательно. Несколько стоящих подряд тегов <Р> не дают дополнительного пространства между абзацами.

Тег абзаца имеет один атрибут, поддерживаемый большинством браузеров. Это атрибут ALIGN, задающий выравнивание текста в абзаце. Если этот атрибут не задан, то текст выравнивается по левому краю окна браузера. В таблице представлены возможные значения этого атрибута:

Значение | Функция
LEFT | Выравнивание текста по левой границе окна браузера
CENTER | Выравнивание по центру окна браузера
RIGHT | Выравнивание по правой границе окна браузера
JUSTIFY | Выравнивание текста по ширине окна браузера

Пример
Если вы хотите, чтобы текст абзаца был выровнен по центру, нужно написать следующее: <P ALIGN=CENTER> Текст </P>


Разрыв строки

Иногда требуется "разорвать" текст, перенеся его остаток на новую строку, при этом не выделяя нового абзаца. Для этого используется тег разрыва строки <BR>. Он заставляет программу просмотра выводить стоящие после него символы с новой строки. В отличие от тега абзаца, тег <BR> не добавляет пустую строку. У этого тега нет парного закрывающего тега.

Пример

<HTML>
<HEAD>
<TITLE> Иосиф Бродский </TITLE>
</HEAD>
<BODY TEXT=black BGCOLOR=white>
Откуда к нам пришла зима, <BR>
не знаешь ты, никто не знает.
<P>
Умолкло все. Она сама <BR>
холодных губ не разжимает.
</BODY>
</HTML>

Некоторые браузеры интерпретируют несколько стоящих рядом тегов <BR> как один тег, поэтому не стоит использовать его для вставки пустых строк.

Бывают случаи, когда возникает надобность в операции противоположного назначения -- запретить перевод строки. Текст, заключенный между тегами <NOBR> и </NOBR>, будет гарантированно располагаться в одной строке без переноса на другую.


Горизонтальные линии

Другим методом разделения документа на части является проведение горизонтальных линий. Они визуально подчеркивают законченность той или иной области страницы. Тег <HR> позволяет провести рельефную горизонтальную линию в окне большинства программ просмотра. Этот тег не требует закрывающего тега. До и после линии автоматически вставляется пустая строка. Атрибуты тега <HR> представлены в таблице.

Атрибут | Назначение
ALIGN | Выравнивает по краю или центру; имеет значения LEFT, CENTER, RIGHT
WIDTH | Устанавливает длину линии в пикселах или процентах от ширины окна браузера; в последнем случае добавляется символ %
SIZE | Устанавливает ширину линии в пикселах
NOSHADE | Отменяет рельефность линии
COLOR | Указывает цвет линии; используется наименование цвета или шестнадцатеричный код

Задания

  1. Создайте документ с именем index.html, в заголовке которого поместите свои имя и фамилию и установите белый цвет фона.
  2. Включите в документ четыре абзаца текста, демонстрирующие различные случаи выравнивания. Разделите их горизонтальными линейками с различными значениями атрибутов.


Форматирование текста

Форматирование гипертекста

Язык HTML поддерживает как логический (logical), так и физический (physical) стили форматирования содержимого документа. Использование логического форматирования указывает на назначение данного фрагмента текста, а при физическом форматировании досконально задается его внешний вид. По возможности стоит использовать логические стили, так как они позволяют браузеру выбрать наиболее подходящий документу вид. Использование логических стилей также поможет читателю разобраться в структуре документа. Физический стиль используется в основном программами, конвертирующими текстовые файлы, содержащие физическое форматирование, в HTML, так как логическое форматирование документа невозможно выполнить автоматически.


Логическое

Логическое форматирование

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

Говоря о логической разметке текста, можно выделить две основные части:

выделение заголовков в документе;
логическое выделение элементов текста.

Название документа, задаваемое с помощью тега <TITLE>, не выводится на экран как часть документа. Чтобы отобразить название используется один из тегов заголовка. Заголовки в типичном документе разделяются по уровням. Язык HTML позволяет задать шесть уровней заголовков: H1 (заголовок первого уровня), Н2, Н3, H4, Н5 и H6. Заголовок первого уровня имеет обычно больший размер и насыщенность по сравнению с заголовком второго уровня.

Если вы посмотрите на эту главу, то "Логическое форматирование" -- заголовок третьего уровня, "Форматирование гипертекста" -- второго, а "Основы языка HTML" -- первого. На практике заголовки четвертого и далее уровней встречаются лишь в очень больших документах.

Пример

<HTML>
 <HEAD>
  <TITLE> Заголовки </TITLE>
 </HEAD>
 <BODY BGCOLOR=white>
  <H1> Заголовок 1 уровня</H1>
  <H2> Заголовок 2 уровня</H2>
  <H3> Заголовок 3 уровня</H3>
  <H4> Заголовок 4 уровня</H4>
  <H5> Заголовок 5 уровня</H5>
  <H6> Заголовок 6 уровня</H6>
  </BODY>
</HTML>

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

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

Элементы логического выделения фрагментов текста, а также возможное оформление каждого из них приведены в таблице.

Теги | Применение | Результат
<CITE> </CITE> | <CITE> Используется для выделения цитат или названий книг и статей </CITE> | Используется для выделения цитат или названий книг и статей
<CODE> </CODE> | <CODE> Применяется для вывода небольшого куска программного кода </CODE> | Применяется для вывода небольшого куска программного кода
<EM> </EM> | <EM> Используется для выделения важных фрагментов текста </EM> | Используется для выделения важных фрагментов текста
<KBD> </KBD> | <KBD> Выделяет текст, вводимый пользователем с клавиатуры </KBD> | Выделяет текст, вводимый пользователем с клавиатуры
<SAMP> </SAMP> | <SAMP> Используется для выделения текста примера </SAMP> | Используется для выделения текста примера
<STRONG> </STRONG> | <STRONG> Используется для выделения очень важных фрагментов текста </STRONG> | Используется для выделения очень важных фрагментов текста
<VAR> </VAR> | <VAR> Используется для отметки имен переменных </VAR> | Используется для отметки имен переменных
<STRIKE> </STRIKE> | <STRIKE> Используется для отметки удаленного текста </STRIKE> | Используется для отметки удаленного текста

Вы, наверное, обратили внимание на то, что некоторые элементы логической разметки текста дают одинаковый результат. Зачем же тогда нужно такое их разнообразие? Ответ на этот вопрос содержится в названии этой группы тегов. Они предназначены для расстановки логических ударений, выделения логических частей и подчеркивания сути высказываний. Их использование весьма актуально, поскольку, вероятно, в ближайшем будущем станет возможен, например, поиск цитат в Web-пространстве, а, может быть, следующее поколение браузеров научится читать документы вслух. Программы, умеющие распознавать логические ударения, заменят монотонные речевые процессоры сегодняшнего дня.

Для выделения длинных цитат из основного текста в HTML существует тег <BLOCKQUOTE>. Этот элемент является контейнером и может содержать любые форматирующие теги.

Современные браузеры реагируют на элемент <BLOCKQUOTE> смещением текста цитаты вправо. Некоторые текстовые программы просмотра обозначают цитату символами >, располагающимися в крайнем левом столбце экрана. Так как сегодня большинство браузеров являются графическими программами, элемент <BLOCKQUOTE> позволяет авторам внести в текст некоторое визуальное разнообразие.


Физическое

Физическое форматирование

Одним из отличий HTML-документа от документа, подготовленного на печатной машинке, является возможность форматирования текста. Язык HTML позволяет автору документа выбрать понравившийся ему шрифт, подходящий размер букв, их цвет и начертание. За все эти параметры отображения текста отвечают теги физического форматирования. Они действуют на все символы, стоящие между открывающим и закрывающим тегами.

Теги | Применение | Результат
<B> </B> | <B>Полужирный</B> | Полужирный
<I> </I> | <I>Курсив</I> | Курсив
<U> </U> | <U>Подчеркнутый</U> | Подчеркнутый
<TT> </TT> | <TT>Пишущая машинка</TT> | Пишушая машинка
<S> </S> | <S>Зачеркнутый</S> | Зачеркнутый
<BIG> </BIG> | <BIG>Большой</BIG> | Большой
<SMALL> </SMALL> | <SMALL>Маленький</SMALL> | Маленький
<SUP> </SUP> | Верхний -- x<SUP>индекс</SUP> | Верхний -- xиндекс
<SUB> </SUB> | Нижний -- x<SUB>индекс</SUB> | Нижний -- xиндекс

Элементы физического форматирования могут быть вложенными друг в друга, хотя конечный результат зависит от браузера. При этом нужно внимательно следить, чтобы один контейнер находился целиком в другом контейнере, например,

<B><U>жирный и подчеркнутый текст</U></B>

Кроме вышеперечисленных тегов в документе может использоваться тег <FONT>, позволяющий непосредственно задать размер и цвет шрифта. Элемент FONT представляет собой контейнер, т. е. требует как открывающего, так и закрывающего тегов, и сам может использоваться внутри любого другого текстового контейнера.

После стартового тега обязательно указание атрибутов, без которых элемент не оказывает никакого влияния на текст, помещенный в контейнер.

Атрибут FACE позволяет указать тип шрифта, которым программа просмотра выведет ваш текст (если таковым располагает пользователь). Если нужного шрифта нет, программа проигнорирует запрос и будет использовать шрифт, установленный по умолчанию.

Этот атрибут позволяет указать как один, так и несколько шрифтов (через запятую). Весь список будет просмотрен слева направо и первый из имеющихся на машине пользователя будет использован для вывода документа.

Атрибут SIZE служит для указания размера шрифта в условных единицах от 1 до 7. Считается, что размер "нормального" шрифта соответствует числу 3. Размер может быть как абсолютной величиной (SIZE=5), так и относительной (SIZE=+2). Во втором примере текущий размер шрифта увеличивается на 2.

Атрибут COLOR устанавливает цвет шрифта, который может быть задан как в формате RGB, так и указанием имени.

Пример

Текст <FONT COLOR=red> красного цвета </FONT> и

<FONT SIZE=7> большого размера </FONT>


Тег <PRE>

Предварительно отформатированный текст

Любой фрагмент текста, расположенный между тегами <PRE> и </PRE>, разбивается на строки и абзацы в точном соответствии с тем, как вы его вводили. Обычно при выводе на экран предформатированного (preformatted) текста используется моноширинный шрифт (так называется шрифт печатной машинки). Этот тег можно использовать, например, для печати стихов, в которых взаимное расположение строк задал сам автор, или для изображения "картинки", состоящей из символов. Другим важным применением тега <PRE> является вывод на экран текстов компьютерных программ (на языках Java, C++ и др.), в которых традиционно используют отступы, дополнительные пробелы и пустые строки для выделения структуры исходного кода.

Текст внутри контейнера <PRE> подчиняется действиям тегов <Р> и <BR> и поддерживает теги заголовков.

К содержимому контейнера <PRE> могут применяться любые элементы физического и логического форматирования, но некоторые моноширинные шрифты не содержат наборов символов полужирного и курсивного начертания.

Пример
Рассмотрим фрагмент HTML-документа, содержащий предварительно отформатированный текст:

<PRE>
Здесь можно ставить <B>сколько</B>      угодно
                     <EM>пробелов</EM>,
и переносить строки,
там, где
захочется. <P>Html <S>не</S> сможет <H1>нам</H1> помешать.
</PRE>

В окне браузера количество пробелов и разрывы строк будут сохранены, к ним добавятся разрывы строк, вызванные использованием тегов <Р>, <BR> и <H1>. Первый из приведенных ниже рисунков соответствует заданию в качестве моноширинного в настройках браузера шрифта Courier (Adobe), а для второго использовался шрифт Fixed (Sony).

Задания

  1. Создайте файл first.html в каталоге public_html. Напишите свои фамилию и имя, используя заголовок первого уровня.
  2. Установите желтый цвет фона (yellow) этого документа.
  3. Разместите в документе три пословицы следующим образом: первая выравнивается по левому краю, пишется полужирным шрифтом красного цвета; вторая -- по центру курсивным шрифтом зеленого цвета; третья -- по правому краю подчеркнутым шрифтом синего цвета.
  4. Включите в документ другие образцы логического и физического форматирования текста.
  5. Добавьте в документ фрагмент предварительно отформатированного текста. Как ведет себя такой фрагмент при уменьшении ширины окна браузера?


Графика в HTML

Использование графики в HTML-документах

Рисунки и анимация могут сделать HTML-документ более привлекательным и интересным. Они не только украшают страницу, но и помогают лучше передать содержание документа. Для правильного использования графики в HTML-документе необходимо учитывать следующие факторы: многие браузеры поддерживают только графические форматы GIF и JPEG; файлы, содержащие графику, передаются медленно; некоторые пользователи не имеют графических браузеров или намерено отключают загрузку изображений; цветная графика, которая хорошо смотрится на вашем компьютере, может плохо выглядеть на другом.

Тег <IMG> вставляет изображение в документ, как если бы оно было просто одним большим символом. Синтаксис тега:
<IMG атрибут1=значение1 ... [атрибутN=значениеN]>

Атрибуты тега <IMG> и их значения приведены в таблице.

Атрибут | Назначение
SRC="файл" | Задает URL-адрес изображения (можно указывать как абсолютный, так и относительный URL-адрес; если файл с изображением находится в той же директории, что и HTML-документ, то достаточно просто указать имя файла); этот атрибут является обязательным
ALT="текст" | Задает альтернативный текст для браузеров, не поддерживающих работу с изображениями
ALIGN="тип" | Задает расположение картинки относительно текста, тип может принимать следующие значения: ТОР, MIDDLE, BOTTON, LEFT, RIGHT
BORDER=n | Устанавливает толщину обрамления вокруг изображения в пикселах
HEIGHT=n(%) | Устанавливает высоту изображения в пикселах или в процентах от высоты окна браузера
WIDTH=n(%) | Устанавливает ширину изображения в пикселах или в процентах
HSPACE=n | Задает свободное пространство слева и справа от изображения (в пикселах)
VSPACE=n | Задается свободное пространство над и под изображением (в пикселах)

Обратите внимание, что ширина и высота изображения могут быть заданы не только в пикселах, но и в процентах от размеров окна браузера. Многие компоненты, включаемые в состав Web-страниц (изображения, таблицы, аплеты и т. д.), позволяют задавать размер в относительных единицах (т. е. в процентах). Это позволяет уменьшить зависимость внешнего вида документа от текущих установок конкретного браузера и особенностей операционной системы. Рекомендуется задавать только один из атрибутов пары "ширина-высота" изображения, иначе рисунок может быть непропорционально деформирован и изменит свой вид.

Пример
Если размер изображения, хранящегося в файле exm2.gif составляет 150 пикселов по ширине и 90 по высоте, то следующая команда приведет к включению в документ деформированного изображения: <IMG SRC="exm2.gif" WIDTH=50 HEIGHT=200> .

Помните, что графика передается по сети намного медленнее, чем текст, поэтому лучше включать в документ картинки небольшого размера. Если вы задаете размер изображения меньше, чем у исходного, то это приводит только к неоправданному увеличению объема передачи информации по сети. Рациональнее предварительно уменьшить размер изображения с помощью графического редактора.

Язык HTML позволяет задать расположение изображения относительно окружающего его текста. Атрибут ALIGN может принимать следующие значения.

Значение | Функция
ТОР | Выравнивает одну строку по верху изображения, остальные помещает после рисунка
MIDDLE | Выравнивает одну строку по середине изображения, остальные помещает после рисунка
BOTTOM | Выравнивает одну строку по низу изображения, остальные помещает после рисунка
LEFT | Прижимает обтекаемое текстом изображение к левой стороне окна браузера
RIGHT | Прижимает обтекаемое текстом изображение к правой стороне окна браузера

Пример
Рассмотрим возможные варианты выравнивания изображения относительно текста.

<img src=exm.gif align=top>
Первая строка текста находится сверху изображения и обычно используется для описания рисунка.
<img src=exm.gif align=middle>
Первая строка текста находится по середине изображения и используется для того же.
<img src=exm.gif align=bottom>
Первая строка текста находится внизу изображения и используется также как и в двух первых случаях.
<img src=exm.gif align=left>
Изображение прижимается к левому краю окна просмотра, а текст обтекает изображение справа.
<img src=exm.gif align=right>
Изображение прижимается к правому краю окна просмотра, а текст обтекает изображение слева.

Задания

  1. Запустите браузер Netscape, выберите любую картинку и скопируйте ее к себе в директорию public_html (для копирования картинки поставьте курсор мыши на выбранное изображение, нажмите правую кнопку мышки и в появившемся контекстном меню выберите пункт "Сохранить картинку как..." ("Save image as..."), а в окне, задающем список директорий, выберите public_html и введите имя файла).
  2. В документ, хранящийся в файле image.html, включите скопированное изображение, при этом рисунок должен иметь рамку шириной 3 пиксела и прижиматься к правому краю, а расстояние вокруг рисунка должно составлять 5 пикселов. Включите альтернативный текст в описание тега IMG.


Гиперссылки

Несмотря на то, что в состав HTML-документа входят самые различные компоненты, можно сказать, что гипертекстовые ссылки - основа WWW. Если бы Web-страницы не ссылались друг на друга, содержимое Web превратилось бы в обычный набор файлов, не связанных между собой.

Для создания гипертекстовой ссылки используется пара тегов <A>...</A>. Фрагмент текста, изображение или любой другой объект, расположенный между этими тегами, отображается в окне браузера как гипертекстовая ссылка. Активация такого объекта приводит к загрузке в окно браузера нового документа или к отображению другой части текущей Web-страницы. Гипертекстовая ссылка формируется с помощью выражения

<A HREF="URL_ресурса">фрагмент документа</A>
HREF здесь является обязательным атрибутом, значение которого и есть URL-адрес запрашиваемого ресурса. Кавычки в задании значения атрибута HREF не обязательны.

Текстовые указатели, т. е. фрагменты текста, являющиеся ссылками, не отличаются разнообразием внешнего вида. Обычно такой указатель представляет собой слово или слова, подчеркнутые прямой линией. Цвет указателя может регулироваться автором и установками программы просмотра.

Пример
<A HREF="example.html">Ссылка</A>

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

Пример
<A HREF="example.html"><IMG SRC="pict.gif"></A>


URL-адреса

 Предыдущий раздел Уровень выше Следующий раздел

Абсолютный и относительный URL

В разделе, посвященном компьютерным сетям и принципам поиска информации в Интернет, было введено понятие URL (универсального локатора ресурса), однозначно определяющего расположение объекта в глобальной сети. В общем случае URL имеет следующий вид (части, заключенные в квадратные скобки, не обязательны и могут быть опущены):

протокол://адрес_узла[:порт]/путь/файл[#метка]
В таблице ниже приведены назначения компонент URL.

Компонента | Назначение
протокол | Обозначение одного из протоколов, используемых для обращения к ресурсу, возможные значения: http, ftp, file и др.
адрес_узла | Доменное имя или IP-адрес компьютера в сети Интернет
порт | Порт, по которому клиент обращается к серверу для установления соединения; указывается только в случае обращения к нестандартному порту
путь | Путь к требуемому ресурсу
файл | Имя файла, содержащего HTML-документ или другой ресурс
метка | Позиция в документе, начиная с которой он отображается в окне браузера

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

Пример
При обращении к конкретному ресурсу порт и позиция в документе часто не указываются:

http://www.ctc.msiu.ru/education/book/index1.html

Пример
Рассмотрим ссылку на так называемую домашнюю страницу (Home Page) конкретного пользователя. Предположим, что на сервере www.msiu.ru зарегистрирован человек с пользовательским именем (login) ivanov. Домашней страницей называют файл index.html, находящийся в директории с именем public_html, которая, в свою очередь, должна располагаться в домашней директории пользователя. Тогда ссылка на домашнюю страницу этого человека может быть задана в виде

<A HREF="http://www.msiu.ru/~ivanov">Текст ссылки</A>
Обратите внимание, что имя самого файла при такой записи не указывается. Если потребуется сослаться на какой-либо другой документ данного пользователя, расположенный в директории public_html, например, photo.html, то ссылка примет вид:
<A HREF="http://www.msiu.ru/~ivanov/photo.html">Текст</A>

Относительный URL описывает положение ресурса, на который указывает ссылка, относительно URL текущего документа.

Пример
При задании относительных ссылок указывается путь по файловому дереву до того места, где находится требуемый HTML-ресурс. Вот ссылка на документ image.html, размещенный в текущем каталоге: <A HREF="image.html">Ссылка</A>.

Если файл pict.html лежит в родительском по отношению к текущему документу каталоге, то следует использовать запись

<A HREF="../pict.html">Текст ссылки</a>
Если же требуемый документ находится в поддиректории Picture, то используется запись, аналогичная следующей
<A HREF="Picture/pict.html">Текст ссылки</A>


Внутренние ссылки

 Предыдущий раздел Уровень выше Следующий раздел

Гиперссылки в пределах одного документа

Другая форма тега <A> предназначена для присваивания имени некоторому фрагменту документа HTML:

<A NAME="имя">фрагмент документа</A>

Тег <A> часто называют тегом якоря (anchor). Если якорь применяется для добавления метки (имени) к фрагменту документа, то его называют именованным якорем.

Для того чтобы сослаться на фрагмент, которому присвоено имя, используется следующая форма тега <A>:

<A HREF="URL_ресурса#имя">Текст ссылки</A>
Если нужно сослаться на фрагмент текущего документа, то URL-ресурса можно опустить:
<A HREF="#имя">Текст ссылки</A>

Пример
Пусть в документе с именем book.html заголовку главы 2 присвоено имя chapter2:

<A NAME="chapter2">Глава 2</A>
Тогда ссылка на эту главу, расположенная в этом же документе, будет иметь вид:
<A HREF="#chapter2">Глава 2</A>
Для задания ссылки на эту же метку файла book.html из другого файла нужно написать:
<A HREF="book.html#chapter2">Глава 2</A>


Ссылка на e-mail

 Предыдущий раздел Уровень выше Следующий раздел

Ссылка на почтовый ящик

Для того чтобы создать ссылку на почтовый ящик, напишите:

<A HREF=mailto:адрес_e-mail>текст ссылки</A>
Здесь вместо адрес_e-mail нужно поставить адрес почтового ящика. После того, как посетитель активизирует эту ссылку, у него на экране появится специальное окно, позволяющее послать письмо по указанному адресу.

Пример

<A HREF=mailto:sidorov@mail.msiu.ru>Почта автору</A>

Задания

  1. Откройте файл image.html и сделайте в нем ссылку в виде картинки на файл first.html.
  2. Откройте файл first.html и сделайте в нем текстовую ссылку на файл image.html.
  3. Добавьте в файл first.html несколько абзацев текста в таком количестве, чтобы документ уже не помещался целиком в окне браузера. Отметьте последний абзац, присвоив ему имя end.
  4. Включите ссылку, ведущую сразу к последнему абзацу файла first.html, в файл image.html.
  5. В файл first.html включите ссылку на свой почтовый ящик.


Списки

В настоящее время стандарты HTML поддерживают теги для списков трех различных видов: нумерованных (упорядоченных), маркированных (неупорядоченных) и списков определений. Списки и элементы списков являются блочными элементами. Это означает, что перед ними и после них автоматически добавляются пустые строки.

Язык HTML допускает вложенность любых видов списков. Для этого размещают одну пару тегов (стартовый и завершающий) внутри другой. Следует помнить о том, что все имеющиеся списки должны завершаться закрывающим тегом.


нумерованные

 Предыдущий раздел Уровень выше Следующий раздел

Нумерованные списки

Нумерованные (упорядоченные) списки используют, когда важен порядок вывода элементов списка. Браузер автоматически вставляет номера элементов по порядку, в исходном HTML-тексте номера не печатаются. Если количество элементов списка изменится (в результате удаления или добавления новых элементов), то нумерация автоматически обновится.

Весь нумерованный список заключается между парой тегов <OL> и </OL>, а каждый элемент списка расположен между тегами <LI> и </LI> (закрывающий тег </LI> может отсутствовать).

Пример

<OL>
 <LI>Программирование</LI>
 <LI>Алгоритмизация</LI>
 <LI>Проектирование</LI>
</OL>

Тег <OL> может имеет атрибуты TYPE и START:

<OL START=n TYPE=вид_счетчика>
Атрибут TYPE задает вид счетчика, возможные значения которого приведены в таблице, a START -- начальное значение.

Значение | Функция
A | большие латинские буквы (A,B,C...)
a | маленькие латинские буквы (a,b,c...)
I | большие римские цифры (I,II,III...)
i | маленькие римские цифры (i,ii,iii...)
1 | арабские цифры (1,2,3...); используется по умолчанию

Пример

<OL TYPE=I START=15>
 <LI>Программирование</LI>
 <LI>Алгоритмизация</LI>
 <LI>Проектирование</LI>
</OL>


маркированные

 Предыдущий раздел Уровень выше Следующий раздел

Маркированные списки

Маркированный (неупорядоченный) список используется для представления коллекции элементов, порядок вывода которых не важен. При выводе маркированных списков браузер автоматически вставляет специальные значки (маркеры), отмечающие каждый элемент списка.

Маркированный список начинается стартовым тегом <UL> и завершается тегом </UL>. Каждый элемент списка начинается с тега <LI> и завершается (необязательным) тегом </LI>.

Пример
<UL>
 <LI>Программирование</LI>
 <LI>Алгоритмизация</LI>
 <LI>Проектирование</LI>
</UL>

Тег <UL> имеет атрибут TYPE, определяющий внешний вид маркера:

<UL TYPE=тип_маркера>
Значение атрибута TYPE может быть одним из следующих:: disc (круг -- форма по умолчанию), circle (окружность) или square (квадрат).

Пример
<UL TYPE=square>
 <LI>Программирование</LI>
 <LI>Алгоритмизация</LI>
 <LI>Проектирование</LI>
</ul>

Атрибут TYPE применяется и в теге <LI> для изменения формы маркера перед конкретным элементом списка.

Пример
<UL>
 <LI TYPE=circle>
     Программирование
 <LI TYPE=disk>
     Алгоритмизация
 <LI TYPE=square>
     Проектирование
</ul>

Тег <LI> обеспечивает вывод маркера и разделение элементов списка. Если хочется использовать нестандартные маркеры, то тег <LI> не указывается. Для выделения элементов списка в этом случае используются какие-либо картинки или символы, а тег <BR> обеспечивает переход к следующему элементу списка.

Пример
<UL>
 <IMG SRC=arr.gif ALIGN=top>
 <nbr>Программирование<BR>
 <IMG SRC=arr.gif ALIGN=top>
 <nbr>Алгоритмизация<BR>
 <IMG SRC=arr.gif ALIGN=top>
 <nbr>Проектирование<BR>
</UL>


определений

Список определений

Список описаний (список определений) начинается с тега <DL> и завершается тегом </DL>. Данный список служит для создания списков типа "термин" -- "описание". Термин автоматически размещается у левой границы страницы, а их определения смещены относительно них вправо. Каждый термин обозначается тегом <DT>, а его описание -- тегом <DD>.

Пример

<DL>
 <DT>Отдел маркетинга
 <DD>Данный отдел занимается продвижением товаров и услуг
 <DT>Финансовый отдел
 <DD>Данный отдел занимается финансовыми операциями
</DL>

В результате браузер покажет следующее:

Отметим, что все вышеперечисленные виды списков имеют атрибут СОМРАСТ, позволяющий выводить списки в более компактном виде.


вложенные

Вложенные списки

Любой список может быть частью другого списка, вложен в другой список. Считается полезным использование сдвигов при подготовки текста исходного HTML-документа, чтобы четко представлять уровни вложенности списков.

<OL>
 <LI>Дирекция</LI>
 <UL>
   <LI>Иванов И.И.</LI>
   <LI>Петров К.В.</LI>
 </UL>
 <LI>Отдел маркетинга</LI>
 <UL>
  <LI>Варшавская Е.Л.</LI>
  <LI>Самсонов Д.М.</LI>
 </UL>
</OL>

При выводе вложенных маркированных списков браузер автоматически проставляет маркеры перед элементами, находящимися на разных уровнях вложенности.

Для вложенных нумерованных списков браузер, к сожалению, не изменяет тип нумерации. По умолчанию каждый уровень внутри такого списка будет отмечен арабскими цифрами. Для получения списка в другом формате потребуется вручную проставить каждую метку, используя атрибут TYPE.

<OL TYPE=I>
 <LI>Дирекция</LI>
 <OL>
   <LI>Иванов И.И.</LI>
   <LI>Петров К.В.</LI>
 </OL>
 <LI>Отдел маркетинга</LI>
 <OL>
  <LI>Варшавская Е.Л.</LI>
  <LI>Самсонов Д.М.</LI>
 </OL>
</OL>

Задания

  1. Создайте файл list.html в директории public_html и включите в него маркированные и нумерованные списки нескольких уровней вложенности.
  2. Используйте различные стартовые значения для нумерованных списков.


Таблицы

Использование таблиц в HTML

Теги HTML для создания таблиц первоначально предназначались для представления строк и столбцов табулированных данных. Однако дизайнеры научились с их помощью управлять разметкой Web-страниц: создавать столбцы текста, задавать интервалы между элементами и изменять внешний вид текста способами, недоступными другим тегам форматирования HTML.

Таблицы в языке HTML всегда имеют прямоугольный вид и состоят из строк, которые в свою очередь состоят из ячеек. Все языковые конструкции, описывающие компоненты создаваемой таблицы, заключаются между тегами <TABLE> и </TABLE>.

Заполнение таблицы происходит построчно; для обозначения строки используется пара тегов <TR>...</TR>. Строка состоит из ячеек, для задания которых используют либо теги <TH>...</TH>, если эти ячейки содержат заголовки столбцов, либо теги <TD>...</TD>. Заголовки выводятся полужирным шрифтом и располагаются по центру ячейки. Данные имеют обычный шрифт и выравниваются по левой стороне ячейки. Для задания заголовка всей таблицы используются теги <CAPTION> и </CAPTION>.

Пример

<TABLE>
<CAPTION>Заголовок таблицы</CAPTION>
<TR><TH>Заголовок 1</TH><TH>Заголовок 2</TH></TR>
<TR><TD>Ячейка 1</TD><TD>Ячейка 2</TD></TR>
<TR><TD>Ячейка 3</TD><TD>Ячейка 4</TD></TR>
</TABLE>

Наличие в ячейках данных не обязательно. Создать пустую ячейку можно двумя способами: ничем не заполнять ее контейнер (<TD></TD>), либо поместить в нее символ неразрывного пробела, задаваемого специальной последовательностью символов -- &nbsp; (т. е. создать ячейку вида <TD>&nbsp;</TD>).

Нет надобности отдельно создавать пустые ячейки, если планируется, что все оставшиеся в строке ячейки не будут заполнены. Так как тег <TR> сигнализирует о начале новой строки, пустые ячейки будут добавлены браузером автоматически.


Атрибуты тега <TABLE>

 Предыдущий раздел Уровень выше Следующий раздел

Основные атрибуты тега <TABLE>

Назначение основных атрибутов тега <TABLE> и значения, которые они могут принимать перечислены в таблице.

Атрибут | Назначение
BORDER=n | Определяет ширину рамки таблицы (в пикселах), например, BORDER=1; значение, равное нулю, означает отсутствие рамки
WIDTH=n | Определяет ширину всей таблицы в пикселах, либо в процентах от ширины окна браузера
HEIGHT=n | Определяет высоту всей таблицы в пикселах, либо в процентах от высоты окна браузера
ALIGN | Задает горизонтальное выравнивание таблицы в окне браузера; имеет значения left, center и right (по умолчанию -- left)
CELLPADDING=n | Добавляет свободное пространство между данными внутри ячейки и ее границами; по умолчанию значение равно 2
CELLSPACING=n | Добавляет свободное пространство между ячейками внутри всей таблицы; по умолчанию значение равно 2
HSPACE=n | Задает области свободного пространства указанной ширины (в пикселах) слева и справа от таблицы
VSPACE=n | Задает области свободного пространства заданной высоты (в пикселах) сверху и снизу от таблицы
BGCOLOR=цвет | Устанавливает цвет фона всей таблицы
BACKGROUND=URL | Указывает фоновое изображение для таблицы, где URL -- адрес источника (имя файла с изображением)

Пример
Изменим содержимое документа, созданного в предыдущем примере, добавив атрибуты BORDER и ALIGN в тег <TABLE>:

<TABLE BORDER=1 ALIGN=center>
Теперь ячейки таблицы будут обрамлены рамкой, a таблица выровнена по центру окна браузера.


Выравнивание данных

Выравнивание данных в ячейках

При помощи атрибутов ALIGN и VALIGN можно по-разному размещать данные относительно границ ячейки. Эти атрибуты используются совместно с тегами <CAPTION>, <TR>, <TH> и <TD> в самых различных комбинациях. Ниже приведены значения атрибутов для перечисленных элементов.

Тег | Назначение атрибута
<TR> | Атрибут ALIGN может принимать значения left, center и right (по умолчанию -- left для данных и center для заголовков); он определяет горизонтальное выравнивание данных в ячейках и действует на всю строку, если не отменяется тем же атрибутом в отдельной ячейке Атрибут VALIGN может иметь значения top, bottom, middle и baseline (по умолчанию -- middle); он регулирует положение данных относительно верхней и нижней границ ячейки и влияет на всю строку, если не отменяется таким же атрибутом в отдельной ячейке. baseline применяется ко всем элементам строки и выравнивает их по базовой линии
<TH> | Атрибут ALIGN может принимать значения left, center и right (по умолчанию -- center) Атрибут VALIGN может иметь значения top, bottom и middle (по умолчанию -- middle)
<TD> | Атрибут ALIGN может принимать значения left, center и right (по умолчанию -- left) Атрибут VALIGN может иметь значения top, bottom и middle (по умолчанию -- middle)
<CAPTION> | Атрибут ALIGN может иметь значения top и bottom (по умолчанию -- top); размещает заголовок таблицы сверху или снизу


Объединение ячеек

Смежные ячейки таблицы могут объединяться. Например, в таблице из нескольких столбцов все ячейки первой строки можно объединить и поместить в этой строке красивый заголовок таблицы. Возможно также объединение нескольких строк или создание пустой прямоугольной области.

Для соединения двух смежных ячеек в одном столбце нужно использовать атрибут ROWSPAN тега <TH> или <TD>, например,

<TD ROWSPAN=2>

Для объединения двух смежных ячеек в одной строке нужно использовать атрибут COLSPAN тех же тегов, например,

<TD COLSPAN=2>

Пример
В следующей таблице используется объединение столбцов и строк.

<HTML>
<BODY>
<TABLE BORDER=1 ALIGN=center>
<TR><TH COLSPAN=3>Заголовок на 3 столбца</TH></TR>
<TR>
<TH>Заголовок на 1 строку</TH>
<TD>Ячейка 1</TD>
<TD>Ячейка 2</TD>
</TR>
<TR>
<TH ROWSPAN=3>Заголовок на 3 строки</TH>
<TD>Ячейка 3</TD>
<TD>Ячейка 4</TD>
</TR>
<TR><TD>Ячейка 5</TD><TD>Ячейка 6</TD></TR>
<TR><TD>Ячейка 7</TD><TD>Ячейка 8</TD></TR>
</TABLE>
</BODY>
</HTML>

Таблица будет иметь следующий вид.

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


Цвет в таблицах

В HTML не предусмотрено специальных средств раскрашивания таблиц. Однако как Netscape Navigator, так и Microsoft Internet Explorer имеют расширения, позволяющие изменять цвет ячеек и рамок. Вы можете изменить цвет фона ячейки при помощи атрибута BGCOLOR перед размещением в ней текста или изображения, а также использовать атрибут BORDERCOLOR для изменения цвета рамки ячейки. Теги <TABLE>, <TD>, <TH> и <TR> также допускают использование в них указанных атрибутов. Таким образом, вы можете изменить цвет всей таблицы, отдельной ячейки или строки таблицы.

Значения цветов, установленные на уровне ячейки, будут перекрывать значения, установленные на уровне строки, которые в свою очередь, будут перекрывать значения, заданные на уровне всей таблицы.

Пример
Создадим таблицу, удовлетворяющую следующим требованиям:

  • цвет таблицы -- белый;
  • вторая строка светло-серого цвета, в ячейке 2 -- цвет "teal";
  • цвет надписи в ячейке 5 -- красный;
  • первый столбец составляет 20% от ширины таблицы, два другие -- по 40%;
  • ячейка 3 центрирована, а ячейка 4 -- выровнена вправо;
  • ячейки 6 и 8 объединены в одну, центрированы и выровнены по нижнему краю ячейки;
  • поля внутри ячеек -- 10 пикселей.

<HTML>
<BODY>
<TABLE BORDER=8 WIDTH=90% BGCOLOR="white"
 CELLPADDING=10 ALIGN=center>
<TR>
 <TH WIDTH=20%>Простой заголовок</TH>
 <TH WIDTH=80% COLSPAN=2>Заголовок на 2 столбца</TH>
</TR>
<TR BGCOLOR="#CCCCCC">
 <TH WIDTH=20%>Заголовок на 1 строку</TH>
 <TD WIDTH=40%>Ячейка 1</TD>
 <TD WIDTH=40% BGCOLOR="teal">Ячейка 2</TD>
</TR>
<TR>
 <TH WIDTH=20% ROWSPAN=3>Заголовок на 3 строки</TH>
 <TD ALIGN=center>Ячейка 3</TD>
 <TD ALIGN=right>Ячейка 4</TD>
</TR>
<TR>
 <TD><FONT COLOR="red">Ячейка 5</FONT></TD>
 <TD ROWSPAN=2 ALIGN=center VALIGN=bottom>Ячейка 6</TD>
</TR>
<TR>
 <TD>Ячейка 7</TD>
</TR>
</TABLE>
</BODY>
</HTML>

Задание
Создайте файл table.html, в котором разместите приведенную выше таблицу.


Фреймы

Один из способов выдать сразу несколько файлов HTML на экран пользователя -- это открыть несколько окон браузера. Другой путь состоит в том, чтобы разбить окно на несколько разделов. Эти разделы называются фреймами или кадрами. В каждом фрейме показывается свой HTML-документ. Каждый фрейм может иметь свои полосы прокрутки, ссылки, графические изображения и т. д. Фреймы могут функционировать независимо или влиять друг на друга, используя ссылки, указывающие на другие фреймы.


Контейнер <FRAMESET>

Web-страница, которая разделена на фреймы, называется документом группы фреймов. Документы группы фреймов содержат стандартный заголовок, задаваемый тегом HEAD, но в отличии от стандартных HTML-документов, они не содержат тега BODY. Вместо него используется контейнер (т. е. парный тег) <FRAMESET>, который применяется для определения строк и столбцов отдельных фреймов, каждый из которых обозначается тегом <FRAME>.

Если включить контейнер BODY в документ, где используется контейнер FRAMESET, то кадры будут проигнорированы программой просмотра, и информация, содержащаяся в документах, задаваемых тегами <FRAME>, не будет выведена. Будет показана только информация, содержащаяся в контейнере BODY.

Внутри контейнера <FRAMESET> ... </FRAMESET> могут располагаться только теги <FRAME> или другие контейнеры FRAMESET.


Параметры кадров

 Предыдущий раздел Уровень выше Следующий раздел

Определение параметров кадров

Тег <FRAMESET> имеет два главных атрибута: ROWS и COLS, задающих разбиение на строки и столбцы соответственно. Ниже приведен вид контейнера FRAMESET:

<FRAMESET ROWS="список_значений" COLS="список_значений">
...
</FRAMESET>
Можно определить любое число рядов и столбцов; необходимым условием является указание хотя бы одного из атрибутов ROWS или COLS.

Кадр не может быть единственным: если вы определили единственный ряд и единственный столбец, то программа просмотра проигнорирует контейнер FRAMESET, и экран останется пустым. Если определены по крайней мере два ряда или два столбца, другой атрибут может быть опущен (ему по умолчанию будет присвоено значение, равное 100%).

Значение атрибута ROWS или COLS представляет собой строку, содержащую список значений в пикселах, процентах или относительных единицах, разделенных запятыми. Количество рядов или столбцов кадров определяется числом этих значений.

Пример
Для задания сетки кадров из трех рядов, высота которых 100, 240 и 140 пикселов соответственно, используйте тег

<FRAMESET ROWS="100,240,140">

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

Пример
Тег <FRAMESET ROWS="25%, 50%, 25%"> задаст три кадра, размером по 25%, 50% и 25% от высоты окна браузера.

Относительно точности указания размеров фреймов в процентах можно не беспокоиться: если сумма значений не равна 100%, то масштаб кадров будет пропорционально изменен.

Задание параметров кадров в относительных единицах выглядит примерно так:

<FRAMESET COLS="*,2*,3*">
Символ * обозначает пропорциональное деление окна программы просмотра. В данном примере окно будет разделено на три вертикальных кадра, первый из которых будет иметь ширину в 1/6, второй -- в 2/6 (или 1/3) и третий -- в 3/6 (или 1/2) от ширины окна браузера. Единица при указании относительных значений может быть опущена.

Указание значений атрибутов ROWS и COLS может быть и смешанным, включающим любое сочетание абсолютных размеров, процентных отношений и относительных значений, например,

<FRAMESET COLS="100,25%,*,2*">
Здесь первому кадру присвоено абсолютное значение в 100 пикселов по ширине, второму -- 25% от ширины окна. Оставшееся пространство делится между третьим и четвертым кадрами в пропорции 1 к 2.

Приоритеты в указаниях значений атрибутов таковы: в первую очередь (слева направо) отводится место для кадра с абсолютным значением, затем -- для кадра со значением в процентах, и в последнюю очередь -- для кадров с относительными величинами.

Если вы пользуетесь абсолютными величинами в атрибутах ROWS и COLS, не делайте такие кадры большими -- ведь они должны поместиться в окно браузера любого размера. Совместно с такими кадрами для лучшей балансировки рекомендуется использовать хотя бы один кадр, определенный в процентах или в относительных величинах.

При определении обоих атрибутов получается сетка кадров, например, тег

<FRAMESET ROWS="*,2*,*" COLS="2*,*">
задает сетку из трех рядов и двух столбцов. В данном примере первый и последний ряды занимают по 1/4, второй ряд -- половину от высоты окна. Первый столбец занимает 2/3, а второй -- 1/3 ширины окна браузера.


Тег <FRAME>

Тег <FRAME> определяет отдельный кадр. Он должен располагаться внутри контейнера FRAMESET.

Пример

<FRAMESET ROWS="*,2*">
 <FRAME>
 <FRAME>
</FRAMESET>

Заметьте, что этот тег не является контейнером и, в отличие от тега <FRAMESET>, не имеет закрывающего тега.

Число тегов <FRAME> обязательно должно быть равно числу кадров, определенных в теге <FRAMESET>. В нашем примере определено два кадра, поэтому контейнер содержит соответственное количество тегов <FRAME>. Пока кадры ничем не заполнены.

В HTML тег <FRAME> располагает шестью атрибутами: SRC, NAME, MARGINWIDTH, MARGINHEIGHT, SCROLLING и NORESIZE. Вот синтаксис использования этих атрибутов:

<FRAME SRC="URL" NAME="имя_окна"
 SCROLLING=yes|no|auto MARGINWIDTH="значение"
 MARGINHEIGHT="значение" NORESIZE>

Использовать все атрибуты необязательно. Чаще всего вы будете пользоваться только одним атрибутом -- SRC. Строка

<FRAME SRC="URL">
определяет URL-адрес содержимого кадра. Это обычно файл HTML-документа, расположенный в том же каталоге, что и документ, содержащий контейнер FRAMESET, например,
<FRAME SRC="first.html">

Этот документ должен быть полноценным HTML-документом, т. е. содержать все обязательные части (контейнеры HTML, HEAD, BODY и т. д.).

В случае, если программа просмотра не сможет найти указанный файл, кадр не будет построен, и браузер выведет сообщение об ошибке. Если же в теге вовсе не указан атрибут SRC, кадр будет создан и оставлен пустым.

Текст, заголовки, графика и другие элементы не могут напрямую включаться в документ с кадрами. Все они должны вводиться только с помощью указания URL-адреса элемента. Если контейнер FRAMESET содержит "инородное тело", оно будет выведено, а кадры полностью проигнорированы.

Атрибут MARGINWIDTH=n задает размещение слева и справа от содержимого кадра областей свободного пространства высотой по n пикселов, а MARGINHEIGHT=n, соответственно, сверху и снизу.

Значения этих атрибутов всегда должны указываться в абсолютных значениях (пикселах). Так, тег

<FRAME MARGINHEIGHT="5" MARGINWIDTH="7">
создаст внутреннюю рамку на верхней и нижней границах кадра шириной в 5 пикселов, а на левой и правой границе -- шириной в 7 пикселов. Внутри этой рамки данные выводиться не будут. Эти атрибуты не имеют ничего общего с рамкой кадра, определяемой браузером, либо задаваемой при помощи атрибута BORDER.

К построенным вами кадрам автоматически добавляются полосы прокрутки, если содержание кадра больше его размера. Иногда это может нарушить эстетику страницы, поэтому в HTML предусмотрен атрибут SCROLLING тега <FRAME>, имеющий следующий формат:

<FRAME SCROLLING="yes|no|auto">

Этот атрибут может принимать одно из трех значений: yes, no и auto. Последнее значение подразумевается по умолчанию, т. е. когда атрибут не определен. Если указано значение yes, полоса прокрутки появится в любом случае, значение no запрещает появление полосы. Определение атрибута SCROLLING, например, может быть следующим:

<FRAME SCROLLING=yes>

По умолчанию размеры кадров могут легко изменяться читателями, однако понятно, что это может сильно нарушить авторский замысел. Поэтому вы, скорее всего, захотите использовать атрибут NORESIZE тега <FRAME>, запрещающий возможность "перекраивания" вашей страницы:

<FRAME NORESIZE>

Этот атрибут не имеет значений. Указав его в одном кадре, вы тем самым запретите изменять размеры и всех смежных кадров. Как правило, этого бывает достаточно, чтобы "закрепить" рамки всех кадров страницы на месте.

Когда вы захватываете рамку кадра мышью, то указатель становится двунаправленной стрелкой, если перемещение рамки возможно. В противном случае, т. е. когда использован атрибут NORESIZE, двунаправленная стрелка не появляется.

Для определения рамки кадра в HTML существуют три атрибута: BORDER, FRAMEBORDER и BORDERCOLOR. Первый из этих атрибутов используется только с тегом <FRAMESET> и устанавливает ширину всех рамок для всех кадров контейнера FRAMESET. Эта величина указывается в пикселах, например,

<FRAMESET BORDER="10">

Если этот атрибут нулевой, то все кадры контейнера будут без рамок. По умолчанию атрибут BORDER имеет значение 5.

Атрибут FRAMEBORDER используется с тегами <FRAMESET> и <FRAME> и может принимать два значения: yes или no. В случае yes рамка имеет трехмерную форму. Если FRAMEBORDER="no", рамка невидима, т. е. она имеет цвет фона окна браузера, устанавливаемого по умолчанию.

По умолчанию атрибут FRAMEBORDER имеет значение yes, т. е. предусматривает наличие трехмерной рамки. Рамка кадра будет невидимой, если значение FRAMEBORDER="no" установлено для всех кадров, смежных с ним.

Атрибут BORDERCOLOR может использоваться с тегами <FRAMESET> и <FRAME>. Ему может быть присвоено стандартное имя цвета или RGB-значение.

Пример

<FRAMESET BORDERCOLOR="red" ROWS="*,*">
 <FRAME SRC="first.html" BORDERCOLOR="#FF00FF">
 <FRAME SRC="first.html">
</FRAMESET>

Здесь атрибут BORDERCOLOR тега <FRAMESET> устанавливает красный цвет рамок ("red"), однако такой же атрибут тега <FRAME> отменяет это значение и определяет цвет рамки первого кадра как фиолетовый. В результате второй кадр, в котором цветовой атрибут не определен, будет иметь часть рамки фиолетовой (на стороне, смежной с первым кадром), а остальную часть рамки -- красной.

Если же в двух смежных кадрах определены свои собственные атрибуты BORDERCOLOR, то ни один из них не будет иметь силы. Цвет их рамок будет определяться соответствующим атрибутом контейнера FRAMESET.


Организация ссылок

Теперь, когда мы разобрались с методами создания кадров, познакомимся с их главным предназначением -- управлением навигацией по сайту.

Для определения имени кадра служит атрибут NAME. Например, строка <FRAME NAME="frame1"> создает кадр с именем "frame1", на который можно сделать гипертекстовую ссылку следующим образом:

<A HREF="putfirst.html" TARGET="frame1">Нажмите сюда,</A>
чтобы перейти на первую страницу

Атрибут TARGET гипертекстовой ссылки содержит имя кадра. При активизации этой ссылки содержимое кадра frame1, т. е. файл first.html, размещенный в нем при создании, будет заменен файлом putfirst.html.

Заметьте, что если атрибут TARGET отсутствует, файл putfirst.html будет выведен в том же окне или кадре, где находится указатель ссылки. Атрибут TARGET как раз и предназначен для указания "цели" -- кадра, в котором должен быть размещен файл, определенный атрибутом HREF. Этот принцип замены файлов в одном кадре при управлении этим процессом из другого кадра и лежит в основе навигации по сайту.

Имя | Назначение
_blank | Загружает указанный файл в новое окно без названия
_self | Загружает указанный файл в кадр, откуда делается вызов
_parent | Загружает указанный файл в старший (родительский) кадр сетки кадров; если такой кадр не определен, результат аналогичен действию _self
_top | Загружает указанный файл в полное окно, разрушая всю структуру кадров

Кадру обязательно нужно присвоить имя, иначе на него нельзя будет ссылаться. Поэтому всем кадрам, содержание которых планируется менять, должны быть даны правильные имена. Имена кадров должны начинаться с алфавитно-цифрового символа. Ваши имена не должны начинаться с символа подчеркивания, так как он является первым символом зарезервированных имен кадров, перечисленных в таблице.

Пример
Создайте файл frames.html в директории public_html и запишите в нем следующие теги:

<HTML>
<FRAMESET ROWS="*,*">
<FRAMESET COLS="*,*">
 <FRAME SRC="frame1.html" NAME="fr1">
 <FRAME SRC="frame2.html" NAME="fr2">
</FRAMESET>
 <FRAME SRC="frame3.html" NAME="fr3">
</FRAMESET>
</HTML>

После этого, создайте файлы frame1.html, frame2.html, frame3.html и заполните их следующим образом:

frame1.html:

<HTML><BODY BGCOLOR=white>
<H1>Frame1</H1>
<A HREF=frame2.html TARGER="fr3">Ссылка на 2 кадр</A>
</BODY></HTML>

frame2.html:

<HTML><BODY BGCOLOR=red TEXT=yellow>
<H1>Frame2</H1>
<A HREF=frame3.html TARGER=_top>Frame3 во все окно</A>
</BODY></HTML>

frame3.html:

<HTML><BODY BGCOLOR=purple>
<H1>Frame3</H1>
<A HREF=frame1.html TARGER=_self>Frame1 в это окно</A>
</BODY></HTML>

Теперь при помощи браузера загрузите файл frames.html и посмотрите на результат.

Задания

  1. Создайте файл frame1.html и с помощью контейнеров FRAMESET разбейте окно в соответствии с рисунком.

  2. Откройте файл index.html и удалите его прежнее содержание. Разбейте страницу на четыре фрейма (по два в строке и столбце), в которые загрузите ранее созданные файлы: list.html, table.html, image.html и first.html. Затем:
    а)
    установите в фрейме, содержащим файл list.html обязательное наличие полосы прокрутки;
    б)
    исключите возможность изменения размера (NORESIZE) фрейма, содержащего файл table.html;
    в)
    измените файл first.htmlтаким образом, чтобы при выборе текстовой ссылки на файл image.html он загружался в тот же фрейм, где находится сам файл first.html;
    г)
    в файле image.html преобразуйте ссылку в виде картинки на файл first.html так, чтобы при нажатии на нее файл first.html открывался в новом окне браузера.


Мультимедиа в HTML

Мультимедийные возможности HTML

Браузер Netscape позволяет подключать дополнительные программные модули для мультимедийных приложений. В программу встроена поддержка технологий LiveAudio (для звуковых файлов форматов WAV, AU, AIFF и MIDI), Live3D (VRML), LiveVideo (видео-файлы АVI) и QuickTime (файлы формата MOV, включающие текст и звук MIDI). Все это может быть интегрировано в вашу страницу при помощи тега <EMBED>.

Для других браузеров указывается элемент <NOEMBED>, где между начальным и конечным тегами указывается альтернативный текст. Отметим некоторые параметры тега <EMBED>.

Атрибут | Назначение
SRC | Полный путь или имя файла вставляемого объекта. Параметр обязателен
PALETTE | Тип палитры для просматриваемого объекта. Имеет значения: foreground, background
HIDDEN | Тип отображения объекта на экране. Значения: false -- объект не отображается (по умолчанию), true -- объект отображается
TYPE | Тип файла объекта

Другие атрибуты этого тега аналогичны атрибутам тега <IMG> (собственно, и вставка объекта в HTML-документ происходит похожим образом), поэтому здесь не будут описаны такие параметры элемента, как NAME, ALT, BORDER, HEIGHT, WIDTH, ALIGN, HSPACE, VSPACE.

Пример
Строка <EMBED SRC=nature.wav> позволит использовать в качестве фонового звука музыкальный файл nature.wav, а для вложения файла js.pdf в формате PDF (Adobe Portable Document Format) нужно добавить строку

<EMBED SRC=js.pdf WIDTH=500 BORDER=0 ALIGN=left>


Формы

Формы в HTML-документах

Формы HTML позволяют получать информацию от читателей. До сих пор мы обсуждали только способы вывода данных, теперь речь пойдет об обратном действии. Формы дают возможность запрашивать информацию в виде свободного текста, получать ответы типа "да/нет" или делать выбор из нескольких опций.

Вы можете использовать формы с различными целями. Простейшим примером является размещение формы, куда читатели, посетившие сайт, смогут записать свои отзывы. Круг применения форм HTML ограничивается только вашей фантазией.


Тег <FORM>

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

Атрибут | Назначение
ACTION | Определяет URL, который примет и обработает данные формы. Если этот атрибут не определен, данные отправляются по адресу страницы, на которой помещена форма
METHOD | Указывает форме, как послать информацию соответствующей программе обработки (скрипту). Обычно он получает значение post, тогда информация формы посылается отдельно от URL. Значению get соответствует посылка вместе с URL

Пример

<FORM METHOD="post" ACTION="/cgi-bin/comment_script">
...
</FORM>

В этом примере дано указание браузеру отправить заполненную форму для обработки скриптом comment_script, расположенным в каталоге cgi-bin вашего сервера, и использовать метод посылки post.

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


Теги форм

Работа с тегами форм

В HTML существует три тега для создания различного типа полей в форме: <TEXTAREA>, <SELECT> и <INPUT>. Любое их количество может быть размещено в контейнере между тегами <FORM> и </FORM>. Ниже дано их краткое описание, а подробнее они будут рассмотрены чуть позже.

Тег | Назначение
<TEXTAREA> | Определяет поле, в которое пользователь вводит многострочную текстовую информацию
<SELECT> | Позволяет пользователю сделать выбор в окне с полосой прокрутки, либо в раскрывающемся меню
<INPUT> | Обеспечивает некоторые другие виды ввода информации: ввод одной строки текста, установку и сброс флажков (check boxes), выбор переключателя (radio buttons) и нажатие кнопки для отправки данных или очистки формы


Тег <TEXTAREA>

Этот тег предназначен для построения поля с целью ввода многострочный текстовой информации. В контейнере TEXTAREA допускается размещать любой текст, который будет выведен в поле ввода по умолчанию. Перечислим атрибуты этого тега.

Атрибут | Назначение
NAME | Определяет название поля; обязателен
ROWS | Устанавливает высоту поля, т. е. число строк в нем
COLS | Устанавливает ширину поля, т. е. длину строки

Пример

<HTML><BODY>
<FORM>
<TEXTAREA> Какой-то текст </TEXTAREA>
</FORM>
</BODY></HTML>

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


Тег <SELECT>

Этот тег используется для создания всплывающего меню или списка опций с полосой прокрутки. Список опций и пункты меню располагаются внутри контейнера SELECT. Аналогично тегу <TEXTAREA>, <SELECT> требует обязательного определения имени в атрибуте NAME. Количество опций указывается в атрибуте SIZE. Ниже перечислены атрибуты тега <SELECT>.

Атрибут | Назначение
NAME | Определяет название информации
SIZE | Определяет вертикальный размер окна для опций выбора. Если атрибут опущен или его значение равно 1, выводится всплывающий список опций. Если указано число больше единицы, то опции выводятся в окне с полосой прокрутки. Если значение атрибута больше, чем фактическое количество элементов списка, добавляются пустые строки. При их выборе пользователем возвращаются пустые поля
MULTIPLE | Позволяет выбирать сразу нескольких опций

Список опций включается в контейнер <SELECT> при помощи тега <OPTION>. Этот тег имеет два атрибута.

Атрибут | Назначение
VALUE | Указывает значение, возвращаемое программе обработки (скрипту), в случае выбора опции пользователем
SELECTED | Указывает на опцию, выбранную по умолчанию

Пример
Ниже приведено содержимое двух HTML-документов, содержащих похожие формы. Во втором документе предварительно выбран один элемент из списка (добавлен атрибут SELECTED).

<HTML>
<BODY>
 Выберите время года:
<FORM>
<SELECT NAME=year>
<OPTION SELECTED VALUE="winter"> зима
<OPTION VALUE="spring"> весна
<OPTION VALUE="summer"> лето
<OPTION VALUE="autumn"> осень
</SELECT>
</FORM>
</BODY>
</HTML>

<HTML>
<BODY>
<FORM>
 Выберите время года:
<SELECT MULTIPLE NAME="year">
<OPTION SELECTED VALUE="winter"> зима
<OPTION VALUE="spring"> весна
<OPTION VALUE="summer"> лето
<OPTION VALUE="autumn"> осень
</SELECT>
</FORM>
</BODY>
</HTML>


Тег <INPUT>

Тег <INPUT>, в отличие от <TEXTAREA> и <SELECT>, является одиночным тегом. Он предназначен для сбора информации различными способами, включая текстовые поля, поля для ввода пароля, переключатели, флажки, кнопки для отправки данных (Submit) и для очистки формы (Reset, Clear).

Тег <INPUT> располагает следующими атрибутами.

Атрибут | Назначение
NAMESIZE | Указывает размер поля ввода в символах
MAXLENGTH | Определяет максимально возможное число символов, вводимых в поле
VALUE | Для текстового поля определяет текст, выводимый по умолчанию. Для флажков и переключателей указывает значение, возвращаемое программе обработки. Для кнопок отправки и очистки формы определяет надпись на кнопке
CHECKED | Устанавливает флажок или переключатель во включенное состояние по умолчанию. С другими типами тегов <INPUT> не употребляется
TYPE | Устанавливает тип поля ввода


Тип поля ввода

Тип поля ввода, атрибут TYPE

Атрибут TYPE тега <INPUT> может принимать следующие значения.

Атрибут | Назначение
TEXT | Является значением по умолчанию и предполагает создание одной строки для ввода данных. Для этого типа поля ввода употребляются атрибуты NAME (обязательный), SIZE, VALUE и MAXLENGTH
PASSWORD | Позволяет заменять вводимые символы пароля звездочками. Для этого типа поля ввода используются атрибуты NAME (обязательный), SIZE, MAXLENGTH и VALUE
CHECKBOX | Позволяет вывести поле для установки флажка в виде маленького квадратика, в котором может быть произведена отметка опции "галочкой". Может использоваться совместно с атрибутами NAME (обязательный), VALUE и CHECKED (определяет установленный по умолчанию флажок). Флажки обычно употребляются, когда можно выбрать сразу несколько опций из числа предложенных. Нужно быть очень осторожным в использовании флажков и переключателей, если цвет фона страницы определяется не документом, а пользователем при помощи установок программы просмотра. Не допускайте, чтобы опции сливались с фоном страницы
RADIO | Позволяет выбрать только одну из представленного числа опций. Переключатели можно группировать, задавая одно и то же значение атрибута NAME (обязательный). Так же используются атрибуты VALUE и CHECKED
RESET | Позволяет создать кнопку для очистки формы. Атрибут VALUE может быть использован здесь для наименования этой кнопки (по умолчанию кнопка имеет надпись Reset)
SUBMIT | Используется для создания кнопки, по нажатию которой введенные данные отправляются на сервер для обработки программой-скриптом. В атрибуте VALUE может быть указано название для этой кнопки (по умолчанию -- Submit Query)

Пример
В следующей форме используется значение TEXT.

<HTML>
<BODY>
<FORM>
Введите номер телефона:
<INPUT TYPE="TEXT" NAME="phone"
 SIZE="15" MAXLENGTH="12">
</FORM>
</BODY>
</HTML>

Пример
Использование значения PASSWORD.

<HTML>
<BODY>
<FORM>
Введите секретное слово:
<INPUT TYPE="password" NAME="secret_word"
SIZE="30" MAXLENGTH="30">
</FORM>
</BODY>
</HTML>

Пример
Использование значения CHECKBOX.

<HTML>
<BODY>
<FORM>
<INPUT TYPE="checkbox" NAME="checkbox1"
 VALUE="checkbox_value1"> Вариант
<BR>

<INPUT TYPE="checkbox" NAME="checkbox2"
 VALUE="checkbox_value2" CHECKED>
 Предварительно выбранный вариант
</FORM>
</BODY>
</HTML>

Пример
В этом примере две формы расположены в соседних ячейках таблицы.

<HTML>
<BODY>
<TABLE ALIGN=center BORDER CELLSPACING=10>
<TR>
<TD>
Форма 1:
<FORM>
<INPUT TYPE="radio" NAME="choice"
 VALUE="choice1"> yes.
<INPUT TYPE="radio" NAME="choice"
 VALUE="choice2"> no.
</FORM>
</TD>
<TD>
Форма 2:
<FORM>
<INPUT TYPE="radio" NAME="choice"
 VALUE="choice1" CHECKED> yes.
<INPUT TYPE="radio" NAME="choice"
 VALUE="choice2"> no.
</FORM>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>

Пример
В следующей форме используется значение RESET.

<HTML>
<BODY>
<FORM>
<INPUT TYPE="reset">
<BR>
<INPUT TYPE="reset" VALUE="Очистить форму!">
</FORM>
</BODY>
</HTML>

Пример
Использование значения SUBMIT.

<HTML>
<BODY>
<FORM>
<TEXTAREA> Какой-то текст </TEXTAREA>
<BR>
<INPUT TYPE="submit" VALUE="Отослать данные!">
</FORM>
</BODY>
</HTML>


Советы

 Предыдущий раздел Уровень выше Следующий раздел

Нестандартное использование элементов форм

Многие теги HTML используются в целях, для которых они изначально не предназначались, например, таблицы -- для разметки страниц. Поэтому смело экспериментируйте и с элементами форм.

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

Пример

Ниже приведен HTML-документ, в котором раскрывающийся список используется для размещения небольшого рассказа об авторе.
<HTML>
<BODY>
Немного о себе:
<FORM>
<SELECT NAME="about">
<OPTION SELECTED VALUE="line0"> Автобиография
<OPTION VALUE="line1"> ------------------------------
<OPTION VALUE="line2"> Меня зовут Михаил.
<OPTION VALUE="line3"> Я студент первого курса МГИУ.
<OPTION VALUE="line4"> Мои увлечения: футбол, теннис.
<OPTION VALUE="line5"> Я жду от вас писем по адресу:
<OPTION VALUE="line6">  petrov@mail.msiu.ru
</SELECT>
</FORM>
</BODY>
</HTML>

Задание
Создайте файл form.html и разместите в нем следующую форму.

Требования к оформлению:
1)
поле "Пароль" должно иметь размер 10 символов и не отображать введенные данные;
2)
среди всех номеров вопроса только один может быть выбран, по умолчанию выбранным должен быть вопрос под номером один;
3)
поле для ответа на вопрос должно содержать четыре строки по сорок символов, первоначальное значение -- "???";
4)
кнопка "Очистить форму" должна восстанавливать первоначальный вид формы.


6. DHTML

Глава 6 Динамический HTML

Динамический HTML (Dynamic HTML, или DHTML) -- это развитие традиционного языка HTML, позволяющее создавать интерактивные, "живые" HTML-документы. Стремлению сделать Web-страницу динамичной и интерактивной, то есть легко изменяющейся, управляемой пользователем, столько же лет, сколько и самому WWW.

Один из методов реализации идеи динамичности заставил разработчиков "дополнить" HTML и встроить в браузеры средства обработки специальных языков программирования, таких как JavaScript, JScript и VBScript. Сами сценарии (скрипты), т. е. программы, написанные на одном из этих языков, можно размещать вместе с основным содержанием и разметкой HTML-документа. Программы на этих языках перемещаются по сети Интернет в виде исходных текстов, а компилируются и выполняются после загрузки в конкретный браузер.

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

С противоположного фланга на HTML наступает, принимая на себя часть его функций и снимая тем самым часть его ограничений, язык иерархических стилевых спецификаций (Cascading Style Sheets, CSS). Главная цель CSS (эту технологию часто называют каскадные таблицы стилей.) -- отделить структуру документа от его оформления и позволить автору или пользователю самому решать, как должен выглядеть тот или иной элемент содержания HTML-страницы. Другим достоинством таблиц (иногда называемых листами) стилей является возможность обеспечить единый стиль оформления некоторого набора HTML-документов, например курсовых или дипломных работ.

На стыке этих двух расширений HTML -- языка стилей и языка сценариев -- и возник тот набор технологий, который сейчас принято называть динамическим HTML. Основную идею динамического HTML можно сформулировать очень просто: полный контроль языка сценариев над всеми без исключения элементами документа, параметрами их оформления и размещения (как подразумеваемыми в HTML, так и задаваемыми с помощью CSS) и даже над самим текстом страницы. Благодаря этому любой элемент HTML-документа может изменять свое содержание и внешний вид.

К сожалению, два варианта реализации динамического HTML, предлагаемые компаниями Netscape Communications Corporation и Microsoft -- разработчиками двух наиболее популярных браузеров, имеют между собой очень мало общего, особенно если судить по документации самих этих компаний. Различиям между этими реализациями и рекомендациям по подготовке HTML-страниц, совместимых с разными браузерами, посвящено много статей в Интернет. В этой главе рассматриваются образцы применения DHTML, одинаково отображаемые этими браузерами, и даются советы, как достичь такого "взаимопонимания".


Стили и таблицы стилей

На самом простом уровне, стиль является всего лишь правилом, сообщающим браузеру, как интерпретировать отдельные теги HTML. С каждым тегом связан ряд свойств, значения которых определяют его вид при выводе браузером. Так, например, у большинства тегов (<P>, <TD>, и т. д.) есть свойство COLOR, значение которого определяет цвет, используемый для отображения содержимого тега.

Таблица (лист) стилей CSS -- набор правил отображения, применяемых в документе, к которому присоединяется соответствующая таблица стилей. Все свойства, использующиеся в таблицах стилей, условно можно разделить на несколько групп:

  • управляющие видом шрифта (гарнитура, кегль, цвет, наклон, жирность,..);
  • управляющие форматированием абзаца (отступ красной строки, выравнивание, интерлиньяж, расстояние между словами,..);
  • управляющие свойствами блока (отступы слева-сверху-справа-снизу, местоположение блока в документе, видимость блока,..);
  • другие (цвет ссылок, изменение внешнего вида курсора,..).


Использование стилей

Одним из способов подключения стиля к HTML-странице (остальные способы рассматриваются в параграфе "Каскадные таблицы стилей") является использование в заголовке документа контейнера <STYLE>:

<HEAD>
...
<STYLE TYPE="text/css">
 ...
 описание стилей
 ...
</STYLE>
...
</HEAD>

Включение в этот контейнер атрибута TYPE="text/css" указывает браузеру, что в нем содержится описание стилей. В настоящее время атрибут TYPE может принимать только указанное значение, однако если он будет опущен, то некоторые браузеры могут проигнорировать всю таблицу стилей.

Само описание стиля включает селектор тега, указывающий имя тега, на который распространяется правило стиля, и фигурные скобки, содержащие одну или более пар объявлений вида "свойство_стиля:значение", разделенных точкой с запятой:

селектор_тега{
 свойство_стиля1:значение1;
 свойство_стиля2:значение2;
 свойство_стиля3:значение3;
}
Если в фигурных скобках указано всего одно правило, то точку с запятой можно опустить.

Пример

<HTML>
<HEAD>
<TITLE>Первый пример использования стилей</TITLE>
<STYLE TYPE="text/css">
<!--
 H1 {text-align: center}
-->
</STYLE>
</HEAD>
<BODY>
<H1>Заголовок</H1>
<P>
Какой-то текст
</BODY>
</HTML>

В данном примере в секции заголовка документа <HEAD> ... </HEAD> задан стиль (правило), согласно которому браузер должен выравнивать по центру страницы содержимое контейнера <H1> ... </H1>: свойству text-align присвоено значение center.

Обратите внимание на использование тегов комментария (<!-- и -->). Все содержимое контейнера <STYLE> находится между ними. Это позволяет скрыть информацию о стиле от браузеров, которые не распознают тег <STYLE> (в противном случае они могут принять правила за текст и вывести их на экран).

В таблицах стилей также можно использовать комментарии, позволяющие описать то или иное свойство: текст, расположенный между символами /* и */ не обрабатывается браузером и не рассматривается, как элемент таблицы стилей (не путайте теги комментария и комментарии таблиц стилей, они имеют разный синтаксис и разное назначение).

Пример
Рассмотрим пример оформления текста. Установим белый цвет фона документа (свойство background-color), затем задействуем свойства управления шрифтом: color (цвет), font-family (гарнитура шрифта) и font-size (размер шрифта), например,

  • цвет -- серый;
  • семейство шрифта (гарнитура) -- Times, шрифт с засечками;
  • размер шрифта -- 14 пунктов.

Добавим свойства, связанные с форматированием абзаца: text-indent (отступ красной строки), text-align (выравнивание), padding-left (отступ слева), например,

  • дополнительный отступ красной строки -- 10pt;
  • выравнивание -- по ширине документа;
  • отступ от левого края -- 20pt.

Установим темно-красный цвет (свойство color) заголовков с первого по третий уровень.

Документ примет вид:

<HTML>
<HEAD>
<TITLE>Второй пример использования стилей</TITLE>
<STYLE TYPE="text/css">
<!--
 BODY {background-color: white}

 H1, H2, H3 {color: red}

 P    {
 /* шрифт */
       color: gray;
       font-family: Times, serif;
       font-size: 14pt;
 /* абзац */
       text-indent: 10pt;
       text-align: justify;
       padding-left: 20pt;
      }
-->
</STYLE>
</HEAD>
<BODY>
...
</BODY>
</HTML>


Задание значений

Для задания значений в правилах таблиц стилей важно использовать корректный синтаксис.

Задание цвета (color), также как и в тегах HTML, возможно двумя способами: наименованием и численным значением. Спецификация CSS1 ("Спецификации каскадных таблиц стилей, уровень 1"), разработанная Консорциумом World Wide Web (W3C), перечисляет только 16 наименований цветов, которые можно использовать в таблицах стилей:

aqua           gray          navy            silver
black	       green	     olive           teal
blue           lime          purple          white
fuchsia	       maroon	     red             yellow

Другие наименования из полного списка цветов, приведенного ниже, также могут поддерживаться некоторыми браузерами.

Web-цвета по оттенкам
black            white

Нейтральные/холодные

darkgray         ghostwhite          silver
darkslategray    gray                slategray
dimgray          lightgrey           snow
gainsboro        lightslategray

Нейтральные/теплые

antiquewhite     ivory               papayawhip
cornsilk         linen               seashell
floralwhite      oldlace

Коричневые/бронзовые

beige            chocolate           rosybrown
bisque           khaki               sienna
blanchedalmond   moccasin            tan
brown            navajowhite         wheat
burlywood        peru

Розовые

coral            lightcoral          mistyrose
darksalmon       lightpink           pink
deeppink         lightsalmon         salmon
hotpink          magenta

Оранжевые

darkorange       orange       orangered       peachpuff

Желтые

darkgoldenrod    lemonchiffon           palegoldenrod
gold             lightyellow            yellow
goldenrod        lightgoldenrodyellow

Зеленые

aquamarine       greenyellow           olive
chartreuse       honeydew              olivedrab
darkgreen        lawngreen             palegreen
darkkhaki        lime                  seagreen
darkolivegreen   limegreen             springgreen
darkseagreen     mediumseagreen        yellowgreen
forestgreen      mediumspringgreen
green            mintcream

Фиолетовые

blueviolet       lavenderblush        plum
darkmagenta      mediumorchid         purple
darkorchid       mediumpurple         thistle
darkviolet       mediumvioletred      violet
fuchsia          orchid
lavender         palevioletred

Сине-зеленые

aqua             darkturquoise       mediumauqamarine
cyan             lightcyan           mediumturquoise
darkcyan         lightseagreen

Синие

aliceblue        deepskyblue         mediumslateblue
azure            dodgerblue          midnightblue
blue             indigo              navy
cadetblue        lightblue           powderblue
cornflowerblue   lightskyblue        skyblue
darkblue         lightsteelblue      slateblue
darkslateblue    mediumblue          steelblue

Красные

crimson          firebrick           maroon
darkred          indianred           red

При задании цвета численным значением используют либо шестнадцатеричное значение, либо тройку вида rgb(red, green, blue), где red, green и blue являются числами в диапазоне от 0 до 255, либо процентными величинами, определяющими яркость каждой составляющей цвета в RGB. Значения 255 или 100% указывают, что соответствующая составляющая цвета имеет максимальную яркость; значения 0 или 0% -- соответствующая составляющая полностью отсутствует.

Пример

H1  {color: #0000FF}
H1  {color: #00F}
H1  {color: rgb(27, 119, 207)}
H1  {color: rgb(50%,75%, 0%)}
Во втором примере используется трехзначный синтаксис, при использовании которого три цифры преобразуются в шесть путем дублирования каждой из них.

При задании единиц длины (length) используют число, за которым без пробелов следует двухсимвольное обозначение единицы измерения (em, ex, in, cm и др.) Обозначения единиц измерения еm и ех относятся к общей высоте шрифта и высоте буквы "х" соответственно. Единица измерения рх соответствует величине пиксела на экране, а in, cm, mm, pt и рс обозначают дюймы, сантиметры, миллиметры, пункты и цицеро соответственно. В дюйме 25,4 миллиметра или 72,27 пункта, а в цицеро -- 12 пунктов. Если значение равно нулю, обозначение единицы измерения можно опустить.

Пример

P  {font-size: 12pt}
H3 {text-indent: 20em}

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

Пример

P {line-height: 120%}

Для указания местоположения ресурса используется его URL-адрес. В этом случае после ключевого слова url сразу (без пробелов) следует открывающая круглая скобка, а за ней - URL, заключенный, при желании, в одиночные или двойные кавычки, и закрывающая правая скобка.

Пример

BODY {
  background: url(http://www.image.ru/image/pic1.gif)
  }

Наконец, некоторые значения являются последовательностью (list) других величин и описываются как "список" некоторых значений. Список состоит из одного или более допустимых значений, разделяемых запятыми.

Пример

P {font-family: Times, serif}

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


Справочник по CSS

Справочник по свойствам таблиц стилей

Свойство и его описание | Браузер
background: list Составное свойство, определяющее привязку фона (background-attachment), цвет фона (background-color), изображение для фона (background-image), положение фона и повторение фона (background-position, background-repeat); list представляет собой значения этих свойств, указанные в любом порядке | N, IE
background-attachment: scroll Указывает, должно ли фоновое изображение фиксироваться или прокручиваться вместе с документом. Допустимые значения: fixed (фиксированный), scroll (прокручиваемый) | IE
background-color: transparent Устанавливает цвет фона для элемента. Допустимые значения: color, transparent (прозрачный) | N, IE
background-image: none Указывает фоновое изображение элемента. Допустимые значения: url, transparent (прозрачный), none | N, IE
background-position Устанавливает исходное положение фонового изображения элемента; как правило, указываются парные значения для определения координат х, у. Положение по умолчанию 0%,0%. Допустимые значения: length, percent, top, center, bottom, left, right | IE
background-repeat: repeat Определяет, каким образом фоновое изображение заполняет элемент. Допустимые значения: repeat, repeat-x, repeat-y, no-repeat | N, IE
border: list Устанавливает все четыре границы элемента; значением может быть одна или более величин цвета, ширины границы и стиля границы | N, IE
border-bottom: list Устанавливает нижнюю границу элемента; значением может быть одна или более величин цвета, ширина нижней границы и стиль границы | IE
border-bottom-width: medium Устанавливает толщину нижней границы элемента. Допустимые значения: length, medium, thin, thick | N, IE
border-color: list Устанавливает цвет всех четырех границ элемента; значением по умолчанию является цвет элемента | N
border-left: list Устанавливает левую границу элемента; значением может быть одна или более величин цвета, ширина левой границы и стиль границы | IE
border-left-width: medium Устанавливает толщину левой границы элемента. Допустимые значения: length, medium, thin, thick | N, IE
border-right: list Устанавливает правую границу элемента; значением может быть одна или более величин цвета, ширина правой границы и стиль границы | IE
border-right-width: medium Устанавливает толщину правой границы элемента. Допустимые значения: length, medium, thin, thick | N, IE
border-style: none Устанавливает стиль всех четырех границ элемента. Допустимые значения: none (отсутствует), dashed (штриховая), dotted (пунктир), double (двойная), groove (канавка), inset (утопленная), outset (возвышающаяся), ridge (гребень), solid (сплошная) | N, IE
border-top: list Устанавливает верхнюю границу для элемента; значением может быть одна или более величин цвета, ширина верхней границы и стиль границы | IE
border-top-width: medium Устанавливает толщину верхней границы элемента. Допустимые значения: length, medium, thin, thick | N, IE
border-width: medium Устанавливает толщину всех четырех границ элемента. Допустимые значения: length, medium, thin, thick | N, IE
clear: none Определяет, какие поля элемента не должны примыкать к плавающему элементу. Элемент будет перемещен вниз на такую величину, чтобы это поле оказалось свободным. Допустимые значения: none (нет), both (оба), left (левое), right (правое) | N, IE
color: color Задает цвет элемента | N, IE
display: block Управляет отображением элемента. Допустимые значения: block (блок), inline (внутристрочный), list-item (элемент списка), none (нет) | N
float: none Определяет, является ли элемент плавающим с выравниванием по левому или правому краю, позволяя тексту обтекать его, либо выводится внутристрочно (при указании none). Допустимые значения: left (слева), right (справа), none (нет) | N, IE
font: list Определяет все атрибуты шрифта для элемента; значениями могут быть стиль шрифта, тип шрифта, насыщенность, размер, высота строки и семейство шрифтов в указанном порядке | N, IE
font-family: список имен шрифтов Определяет шрифт, используемый в элементе. Значение может быть как специфическим именем, так и одним из родовых шрифтов serif, sans-serif, cursive, fantasy или monospace | N, IE
font-size: medium Определяет размер шрифта. Допустимые значения: length, percent, xx-small, x-small, small, medium, large, x-large, xx-large, larger, smaller | N, IE
font-style: normal Определяет начертание шрифта как нормальное или один из видов наклонного. Допустимые значения: italic (курсив), oblique (наклонный), normal (нормальный) | N, IE
font-variant: normal Указывает, должен ли шрифт выводиться маленькими прописными буквами. Допустимые значения: smallcaps, normal | IE
font-weight: normal Определяет насыщенность начертания шрифта. Если используется число, оно должно быть кратным 100 и находиться между 100 и 900; 400 соответствует нормальному шрифту, а 700 равносильно ключевому слову bold (полужирный). Допустимые значения: number, bold, bolder, lighter, normal | N, IE
height: auto Задает высоту элемента. Допустимые значения: length, auto | N
letter-spacing: normal Вставляет дополнительные промежутки между символами текста. Допустимые значения: length, normal | IE
line-height: normal Устанавливает расстояние между базовыми линиями соседних строк. Допустимые значения: length, number, percent, normal | N, IE
list-style: list Определяет стили списка с использованием любых значений для изображения, положения и типа списка - list-style-image, list-style-position, list-style-type | N, IE
list-style-image: none Определяет изображение, используемое в качестве маркера элемента списка вместо устанавливаемого типом списка list-style-type. Допустимые значения: url, none | IE
list-style-position: outside Устанавливает отступ или выступ (по умолчанию) маркера элемента списка относительно его содержания. Допустимые значения: inside (отступ), outside (выступ) |
list-style-type: disk Определяет маркер элемента списка для неупорядоченных списков (circle, disc, square - окружность, круг, квадрат соответственно) или упорядоченных списков (все остальные). Допустимые значения: circle (окружность), square (квадрат), decimal (десятичные цифры), disc (круг), lower-alpha (строчные буквы), lower-roman (строчные римские цифры), none (нет), upper-alpha (прописные буквы), upper-roman (прописные римские цифры) | N, IE
margin Определяет все четыре поля элемента. Допустимые значения: length, percent, auto | IE
margin-bottom Определяет нижнее поле элемента; значением по умолчанию служит 0. Допустимые значения: length, percent, auto | N IE
margin-left Определяет левое поле элемента; значением по умолчанию служит 0. Допустимые значения: length, percent, auto | N, IE
margin-right Определяет правое поле элемента; значением по умолчанию служит 0. Допустимые значения: length, percent, auto | N, IE
margin-top Определяет верхнее поле элемента; значением по умолчанию служит 0. Допустимые значения: length, percent, auto | N, IE
padding: list Задает величину всех четырех отступов вокруг элемента | IE
padding-bottom Указывает величину отступа от элемента снизу; значением по умолчанию служит 0. Допустимые значения: length, percent | N, IE
padding-left Указывает величину отступа от элемента слева; значением по умолчанию служит 0. Допустимые значения: length, percent | N, IE
padding-right Указывает величину отступа от элемента справа; значением по умолчанию служит 0. Допустимые значения: length, percent | N, IE
padding-top Указывает величину отступа от элемента сверху; значением по умолчанию служит 0. Допустимые значения: length, percent | N, IE
text-align: стиль Определяет тип выравнивания для элемента. Значение по умолчанию зависит от элемента. Допустимые значения: center (по центру), justify (по всей доступной области), left (к левому краю), right (к правому краю) | N, IE
text-decoration: none Определяет виды украшения текста; значения можно объединять. Допустимые значения: blink (мерцание), none (нет), line-through (перечеркнутый), overline (надчеркивание), underline (подчеркивание) |
text-indent Задает отступ первой строки в элементе; значением по умолчанию служит 0. Допустимые значения: length, percent | N, IE
text-transform: none Преобразует указанным образом текст в элементе. Допустимые значения: capitalize (прописные буквы), lowercase (нижний регистр), none (нет), uppercase (верхний регистр) | N, IE
vertical-align: позиция Выравнивание элемента по вертикали. Значение по умолчанию зависит от элемента. Допустимые значения: percent, baseline (базовая линия), bottom (низ), middle (середина), sub (подстрочный), super (надстрочный), text-bottom (низ текста), text-top (верх текста), top (верх) | N, IE
word-spacing: normal Вставляет дополнительный промежуток между словами. Допустимые значения: length, normal |
white-space: normal Определяет, как обрабатываются символы пробелов, табуляции и пустой строки в элементе. Допустимые значения: normal, nowrap (без переноса), pre | N
width: auto Определяет ширину элемента. Допустимые значения: length, percent, auto | N, IE


Классы стилей

При написании HTML-документов довольно часто встречается необходимость каким-либо образом выделять блоки информации, подчеркивать их уникальность или логическую нагрузку. Например, в учебнике по математике кроме обычного описания материала могут присутствовать теоремы, задания, примеры и др. Стандартный HTML предоставляет нам теги логической разметки, например, тег <BLOCKQUOTE> предназначен для длинных цитат. CSS дает возможность самим придумывать логические конструкции и описывать их внешний вид.

Допустим, мы хотим создать страницу, на которой будет два вида абзацев (тег <P>), причем оба вида будут постоянно чередоваться и часто повторяться. Типичный пример такой страницы - интервью, в котором чередуются вопросы журналиста и ответы интервьюируемого. Естественно, при создании такой страницы мы захотим визуально отделить вопросы и ответы друг от друга.

Сначала выделим абзацы (вопросы журналиста и ответы интервьюируемого) с помощью селектора класса CLASS.

<HTML>
...
<BODY>
...
<P CLASS="ask">Вопрос журналиста</P>
<P CLASS="answer">Ответ интервьюируемого</P>
...
</BODY>
</HTML>

В разделе HEAD документа зададим стиль каждого класса.

P.ask{
 font-family: Verdana, Arial, Helvetica, sans-serif;
 font-size: 12pt;
 text-align: justify;
 color: gray;
 margin-left: 100px;
 font-weight: bold;
}

P.answer{
 font-family: Times, serif;
 font-size: 14pt;
 color: black;
 text-align: justify;
 margin-left: 20px;
}

Вопросы журналиста будут отображаться шрифтом серии sans-serif серого цвета, полужирным начертанием, размером 12 пунктов, с отступом 100 пикселов от левого края страницы, с выравниванием по ширине. Ответы же будут отображены шрифтом Times, размером 14 пунктов черного цвета, с отступом 20 пикселов от левого края страницы, с выравниванием по ширине.

Вложенные элементы наследуют правила, заданные для родительских элементов. Так, например, если в абзац, содержащий вопрос журналиста, включить фрагмент текста, выделенный курсивным начертанием, то этот фрагмент при отображении браузером уже будет иметь выделение как курсивом, так и полужирным шрифтом. Это связано с тем, что текст, заключенный между тегами <I> и </I>, входит в состав абзаца и наследует его свойства.


Каскадность стилей

 Предыдущий раздел Уровень выше Следующий раздел

Каскадные таблицы стилей

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

Свойство каскадности тесно связано со способом подключения стилей к HTML-документу, которое возможно осуществить тремя способами: inline-описание, описание в секции заголовка и использование внешнего файла.

Самый простой способ -- это, так называемое, inline-описание или описание, встроенное в тег. При помощи дополнительного атрибута STYLE можно определить нужные стилевые параметры в любом теге. Основной недостаток этого способа в том, что определение стиля действует лишь в пределах одного тега. Представьте, насколько вырастет размер файла, и насколько неудобно будет его исправлять, если указывать стиль у каждого тега. Этот способ не слишком отличается, к примеру, от прямого описания внешнего вида при помощи тега <FONT>.

Пример

<P STYLE="color:red; text-align:center;">Этот
параграф переопределен стилем</P>

Гораздо удобнее заранее определить все нужные стили оформления и впоследствии просто применять их к соответствующим тегам, т. е. воспользоваться способом описания стилей в секции заголовка. Именно этим способом мы пользовались в примерах, рассматривающих форматирование абзаца и оформление интервью. Действие таблицы стилей, подключенной таким образом, распространяется на весь HTML-документ.

И наконец, третий способ, -- вынесение описания стилей во внешний файл (внешнюю таблицу стилей). Для этого нужно все описание стилей поместить в отдельный файл с расширением .css. В раздел HEAD документа включить строку, аналогичную следующей, где атрибут HREF содержит имя файла со стилями:

<LINK REL="STYLESHEET" TYPE="text/css" HREF="list.css">
Диапазон воздействия таблицы в этом случае простирается на все файлы, в которые включено такое описание. Если потребуется изменить внешний вид группы документов, то будет достаточно откорректировать лишь один стилевой файл. Сравните этот способ с предыдущими: в одном из них придется менять описание стилей в каждом документе, а в другом -- даже в каждом теге.

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

Например, пусть во внешнем стилевом файле определено, что текст в теге <P> должен выводится шрифтом высотой 10 пунктов. Если при этом в разделе HEAD документа переопределить тег <P>, указав, что текст должен отображаться шрифтом в 12 пунктов, то он будет выведен именно таким кеглем - стиль, расположенный в заголовке документа, переопределит стиль внешнего файла.

В целом, браузер расставляет приоритеты таблиц стилей следующим образом:

  1. inline-стили (встроенные с помощью атрибута STYLE непосредственно в теги документа) -- наивысший приоритет; будут применены браузером в любом случае, даже если возникает конфликт с внедренными или внешними стилями;
  2. внедренные стили (перечисленные в теге-контейнере <STYLE> в разделе <HEAD> документа) - чуть меньший приоритет; будут применяться во всех случаях, кроме случаев возникновения конфликта с inline-стилями (при возникновении такого конфликта будут применены inline-стили);
  3. связанные стили (стили, присоединенные к HTML-файлу посредством тега <LINK>) - наименьший приоритет; будут применены только после того, как браузер убедится в отсутствии аналогичных правил во всех остальных типах стилей.

Зная, в какой последовательности браузер анализирует таблицы стилей, можно задать одну общую связанную таблицу для всех страниц сайта и при этом гибко управлять стилями отдельных страниц и отдельных элементов на странице. Именно с этой особенностью и связано слово "каскадные" в названии CSS (cascading style sheets) - несколько таблиц стилей, присоединенных к HTML-файлу, прокатываются через анализатор (браузер) неким "каскадом" в порядке их приоритетности.


Применение CSS

Применение таблиц стилей

Подготавливая Web-материал, авторы всегда встают перед выбором, как организовать оформление материала: пользоваться обычными средствами HTML или подключать таблицы стилей? Профессиональные Web-дизайнеры всегда останавливают свой выбор на таблицах стилей. Какие же преимущества имеет этот подход?

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

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

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

Задания

  1. Создайте HTML-документ, в котором
    а) заголовку первого уровня (тег <H1>) задайте следующий стиль оформления: цвет текста -- красный, выравнивание -- по центру, семейство шрифта (гарнитура) -- Arial, шрифт без засечек (sans-serif), размер шрифта -- 14 пунктов;
    б) заголовку второго уровня задайте выравнивание по правому краю, наклонное начертание, размер шрифта -- 12 пунктов.
  2. Создайте HTML-документ, предназначенный для размещения интервью. Оформите таблицу стилей в виде отдельного файла и свяжите ее с документом. Переопределите при помощи внедренной таблицы стилей класс ask, сделав цвет текста зеленым.


Язык JavaScript

 Предыдущий раздел Уровень выше Следующий раздел

Использование языка сценариев JavaScript

В сети Интернет размещено огромное количество сценариев обработки HTML-документов, как очень простых, так и достаточно сложных. Среди них значительную часть составляют программы, написанные на языке JavaScript. Цель данного параграфа -- рассмотреть некоторых из них и научить вас использовать их на своих HTML-страничках. Подробнее возможности языка подготовки сценариев JavaScript рассматриваются в разделе "Программирование для Интернет".

Программы на языке программирования JavaScript часто называют сценариями или скриптами. По сути они представляют собой набор инструкций по управлению браузером. Код программы размещается непосредственно в HTML-документе или в виде отдельного файла.

Скрипты могут находится в любом месте HTML-документа. Однако между строчками кода JavaScript-программы нельзя помещать теги языка HTML. Поэтому чаще всего скрипт размещают внутри раздела <HEAD> документа. Сама JavaScript-программа размещается между тегами <SCRIPT> ... </SCRIPT>. Встретив тег <SCRIPT>, браузер построчно анализирует содержимое документа до тех пор, пока не будет достигнут тег </SCRIPT>. После этого проводится проверка скрипта на наличие ошибок и компиляция программы в формат, пригодный для использования в данном браузере. Не все браузеры понимают код JavaScript, поэтому полезно заключать весь код сценария в комментарии (<!-- и //-->)

Для размещения текста программы внутри HTML-документа используют конструкцию

<SCRIPT LANGUAGE="JavaScript">
<!--
 ...
 здесь располагается код программы
 ...
//-->
</SCRIPT>

Программы на языке JavaScript можно размещать и в виде отдельных текстовых файлов, имеющих расширение .js. Для подключения такого сценария используется параметр SRC тега <SCRIPT>, содержащий абсолютный URL файла, из которого загружается сценарий. Адрес URL может быть и относительным, задавая, например, скрипт, расположенный в том же каталоге, что и текущий HTML-документ:

<SCRIPT SCR="myScript.js">
</SCRIPT>

Кроме этого, для работы программы в "теле" HTML-документа могут содержатся конструкции кода, позволяющие начать выполнение программы. Дело в том, что мало разместить в правильном месте код сценария, даже правильно написанный, необходимо еще дать команду браузеру для запуска программы.

Пример
Рассмотрим HTML-файл со сценарием на языке JavaScript, который отображает текущее время.

<HTML>
<HEAD>
 <TITLE>Электронные часы</TITLE>
<!--
 <SCRIPT LANGUAGE="JavaScript">

 function clock_form() {
     day=new Date()
     clock_f=day.getHours()+":"+
             day.getMinutes()+":"+
             day.getSeconds()
     document.form.f_clock.value=clock_f
     id=setTimeout("clock_form()",100)
 }
//-->
 </SCRIPT>
</HEAD>
<BODY onLoad="clock_form()">
  <FORM NAME="form">
  Московское время:
  <INPUT NAME="f_clock" SIZE="8">
  </FORM>
</BODY>
</HTML>
В этом примере для запуска сценария используется конструкция onLoad = "clock_form()", размещенная в качестве атрибута тега <BODY>. Для вывода показаний часов используется элемент <FORM>...</FORM>, размером в 8 символов.

Пример
Следующий скрипт создает "бегущую строку" в окне браузера. Для изменения скорости вывода информации используется переменная speed, текст строки задается в переменной line.

<HTML>
<HEAD>
 <TITLE>Бегущая строка</TITLE>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
 var line="Центр Компьютерных Технологий";
 var speed=200;
 var i=0;
 function m_line() {
    if(i++<line.length) {
       document.form.ctc.value=line.substring(0,i);
    }
    else{
       document.form.ctc.value=" ";
       i=0;
    }
    setTimeout('m_line()',speed);
 }
//-->
</SCRIPT>
<BODY onload="m_line()">
 <CENTER>
 <FORM NAME="form">
 <INPUT TYPE="text" SIZE="30" NAME="ctc">
 </FORM>
 </CENTER>
</BODY>
</HTML>

Следующий файл содержит скрипт "Бегущая строка".

Задания

  1. Поместите программу "Электронные часы" на вашу домашнюю страницу.
  2. Поместите скрипт, выводящий бегущую строку в файл с именем line.js. Подключите скрипт в вашей странице. Измените скрипт так, чтобы выводилась фраза "Добро пожаловать на мою домашнюю страничку!".


Бегущая строка

назад


Рекомендации

Рекомендации по созданию HTML-документов

Несмотря на то, что Web-технологии возникли сравнительно недавно, в мире Интернет успели сформироваться правила, которые диктуют, что нужно и что нельзя делать, чтобы HTML-документы корректно воспринимались пользователем. Этот параграф содержит несколько советов по созданию и оформлению HTML-документов.

Ошибки русского языка

При написание Web-материала (впрочем, не только Web) придерживайтесь орфографических правил и правил пунктуации русского языка.

Интернет -- открытое и очень демократическое образование. Опубликованный в сети материал никем не контролируется. Поэтому, к сожалению, довольно часто можно увидеть документы не только с незначительными, но и просто страшными с точки зрения русского языка ошибками. Проверяйте не только текст, подлежащий разметке с помощью HTML, но и текст на графических кнопках, заголовках и т. д., то есть весь текст, который пользователь будет читать.

При оформлении текста полезно придерживаться следующих типографских традиций набора.

Расстановка пробелов
В русскоязычном наборе пробел обязательно ставится:
  • после, а не до запятой, точки, точки с запятой, двоеточия, вопросительного или восклицательного знака (и их сочетаний), многоточия в конце фразы или предложения, закрывающей скобки и закрывающей кавычки;
  • до, а не после, открывающей скобки, открывающей кавычки и многоточия в начале предложения;
  • и до, и после тире.

Никогда не ставится пробел между скобкой или кавычкой и каким-либо другим знаком препинания, кроме тире.
Неразрывные пробелы
Неразрывный пробел, обозначаемый в языке HTML последовательностью символов &nbsp;, в русском языке ставится:
  • между двумя инициалами и между инициалами и фамилией: И. O. Фамилия;
  • между знаками номера и параграфа и относящимися к ним числами;
  • внутри сокращений "и т. д.", "и т. п.", "т. е." и другими;
  • между внутритекстовыми пунктами, такими как "а)", "б)" или "1.", "2.", и следующим за ними текстом;
  • между числами и относящимися к ним единицами измерения: 200 кг; это же относится и к указаниям дат: XVIII в.;
  • перед тире в середине предложения (таким образом, этот знак препинания отделяется пробелами с двух сторон - неразрывным слева и обычным справа);
  • между классами многозначных чисел, начиная с пятизначных: 1 302 569;
  • перед номерами версий программных продуктов и частями их названий, состоящими из цифр или сокращений;
  • после однобуквенных предлогов и союзов.
Текстовые выделения
Пользуясь курсивом или полужирным выделением в тексте, соблюдайте следующие правила:
  • кавычки должны быть того же начертания, что и заключенный в них текст; окружающие выделенный фрагмент скобки, наоборот, должны соответствовать начертанию основного текста, а в месте стыка прямого и курсива скобки всегда остаются прямыми;
  • знаки препинания, следующие за выделенным фрагментом, должны быть набраны основным начертанием.

Заголовки страниц

Не забывайте для каждого HTML-документа включать в контейнер <HEAD> ... </HEAD> заголовок документа, заключенный между тегами <TITLE> и </TITLE>.

Именно этот тег содержит необходимые пользователю минимальные сведения о документе. Когда пользователь сохранит адрес вашей странички в закладках браузера, именно информация из заголовка <TITLE> ... </TITLE> послужит ему в дальнейшем ориентиром для загрузки вашей странички.

Поиск ваших документов в сети

Используйте атрибуты DESCRIPTION и KEYWORDS тега <META> для задания описания и ключевых слов документа.

Важным является правильная организация поиска вашего материала на поисковых сайтах. Автоматические сборщики информации при поиске документов опираются на метаинформацию, расположенную в разделе HEAD документа и описываемую при помощи тега <META>. Эта служебная информация не отображается в окне браузера.

Пример

<META NAME="description"
 CONTENT="Рекомендации по созданию домашних страничек">
<META NAME="keywords" CONTENT="язык HTML, HTML, тег,
 метаинформация, русский язык, типографские правила,
 title, meta, !DOCTYPE, тестирование, браузеры">

Проверка ссылок

Web-автор обязан обеспечить правильную работу всех ссылок в пределах своего материала: локальных (в пределах вашего материала) и внешних (ссылки на "чужие" сайты и странички).

Грубейшей ошибкой в сети считается неправильная работа ссылок. Ваши странички не должны содержать "ссылок в никуда" или ссылаться на некорректный материал.

Условия просмотра

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

Профессиональный Web-дизайнер старается по мере сил учитывать возможные варианты просмотра и создавать странички максимально подходящие для разных условий.

Старайтесь, чтобы ваши странички смотрелись правильно по крайней мере в двух браузерах -- Netscape и Explorer.

Программисты обеих компаний вводят в свои программы особенности, не признаваемые другими браузерами. Поэтому когда вы посещаете сайт, разработанный "специально для Netscape", пользуясь другим браузером, то видите его страницы не совсем в том виде, на который рассчитывали их создатели. Документация по сетевым технологиям зачастую содержит комментарии типа "в Netscape не работает". Изворотливые мастера отыскивают способы обмануть браузеры, заставляя показывать информацию одинаково.

Следует учитывать различие в поведении этих браузеров при обнаружении некорректного кода. Netscape неправильный код не обрабатывает и, соответственно, показывает страничку как есть, т. е. с ошибками. Explorer поступает по-другому -- при обработке неправильного кода он пытается предугадать недостающие теги или пропущенные параметры.

Например, в большинстве случаев незакрытый парный тег будет обработан браузером Explorer так, как будто он есть, и не вызовет ошибки, хотя сам код, тем не менее, останется некорректным. Лучше, конечно, учиться писать корректный код.

Если при подготовке HTML-документа соблюдать следующие правила, то количество возможных ошибок значительно снизится.

  • Обязательно закрывайте все теги (кроме одиночных).
  • Внимательно следите за вложенностью тегов. Не допускайте ситуации, когда внешний тег закрывается раньше, чем внутренний:
    <B><I>правильно</I></B>
<B><I>неправильно</B></I>
  • Значения атрибутов, содержащих пробелы и другие специальные символы, должны обязательно заключаться в кавычки. Можно заключать в кавычки все параметры, но это не является обязательным.
  • При использовании формы на странице внимательно следите за тем, чтобы все элементы, составляющие форму (<INPUT>, <SELECT>, <TEXTAREA>, и т. д.), находились между тегами <FORM> и </FORM>.

Попробуйте отключить у браузера поддержку графики, листов стилей, JavaScript, изменить различные установки странички -- цвет фона, цвет ссылок, шрифты и др.

В теге <BODY> нужно обязательно прописывать все цвета: фон странички, текст, цвет ссылок, цвет посещенных ссылок, цвет активных ссылок или не прописывать никаких. В противном случае может возникнуть такая ситуация, что какой-нибудь из неописанных цветов и, следовательно, взятый из настроек пользователя, совпадет с цветом фона, что приведет к "исчезновению" части текста.

Для всех изображений, несущих некоторую смысловую нагрузку, нужно прописывать параметр ALT тега <IMG>. Причем текстовое описание должно выражать смысл изображения; это позволит просматривать ваши странички при отключенной графике и все же понять смысл иллюстраций.

Задание

  1. Примените указанные правила к оформлению вашей домашней странички.
  2. Включите при помощи тега META в документ его описание и набор ключевых слов.
  3. Убедитесь в том, что ваш документ корректно отображается и браузером Netscape, и браузером Internet Explorer.