Некоторые примеры синтаксиса языка Curl.
Язык Curl сочетает в себе возможности форматирования текста, сходные с использованием тагов HTML, и программную функциональность. Правила форматирование текста могут определяться как в самом документе, так и быть загружены или импортированы из внешних файлов.
Команды форматирования текста в языке Curl подразделяются на следующие категории:
- форматирования символов и фрагментов текста;
- форматирование параграфов;
- включение в текст изображений и объектов и выравнивание текста
Рассмотрим небольшой пример форматирования текста:
{curl 1.6 applet}
|| Заголовок текста
{title
font-family="Times New Roman",
font-size=24pt,
color="green",
Заглавие текста}
|| Первый параграф
{paragraph
Первый параграф Первый параграф Первый параграф }
|| Заголовок, с размером по умолчанию.
{heading
font-size=14pt,
color="green",
Заголовок 1}
{paragraph
Второй параграф Второй параграф Второй параграф }
|| Заголовок, с размером 2
{heading level=2,
font-size=10pt,
color="olive",
Заголовок 2}
{paragraph
Третий параграф Третий параграф Третий параграф }
{curl 1.6 applet} - определитель языка Curl, который указывает на то, что файл содержит апплет, написанный на API 1.6, который может исполняться на Surge plug-in версии 1.1.
|| - оператор комментария, данный оператор ставится в начале строки; текст который стоит после него, но до конца строки является комментарием.
{title font-family="Font name", font-size=Npt, color="color", text } - оператор описывающий заглавие текста, где font-family - имя шрифта, font-size - размер шрифта, color - цвет текста, text - текст заглавия; определители font-family, font-size и color являются необязательными и если они неописаны, то будут приняты значения текста по умолчанию.
{paragraph font-style="style", text} - оператор описывающий параграф текста, где font-style - стиль шрифта, text - текст заглавия. Может использоваться со следующими операторами text, italic, bold, itemize.
{heading level = N, font-family="Font name", font-size=Npt, color="color", text } - оператор для описания заголовков, где level - предустановленный тип заголовка, font-family - имя шрифта, font-size - размер шрифта, color - цвет текста, text - текст заглавия.
Ниже представлен результат работы вышеприведенного примера:
{italic text} - оператор, устанавливающий на текст атрибут курсива.
{bold text} - оператор, устанавливающий на текст атрибут увеличинной толщины символов.
{text font-style="style" text} - оператор, устанавливающий на текст определенный стиль.
{itemize {item text1} {item text2} {item text3}} - оператор, позволяющий отформатировать текст как список.
{center object} - оператор, выравнивающий объект по центру документа.
{image source={url "image.jpg"}, width=Nin, height=Min} - оператор, включающий в документ файлы с изображениями.
{hrule color="color", height=Npt} - оператор, отображающий в документе горизонтальный разделитель
При форматировании документов можно использовать специальный оператор {set-document-properties margin=Npt, background={url "image.jpg"}, border-width=Mpt, border-color="color"}, где margin - отступ слева, backgroud - фон документа (вместо файла с изображением как параметр может использоваться и цвет фона), border-width - ширина обрамления документа, border-color - цвет обрамления документа.
{curl 1.6 applet}
{set-document-properties
margin=0.2in,
background="beige",
border-width=5pt,
border-color="olive"
}
{title
font-family="Times New Roman",
font-size=24pt,
color="green",
Документ}
{paragraph
Определение: от латинского documentum - свидетельство.
}
{text }
{paragraph
{text font-size=8pt,
{itemize
{item Документ - материальный носитель данных
с записанной на нем информацией, предназначенной
для ее передачи во времени и пространстве.}
{item Документы могут содержать тексты, изображения,
звуки и т.д. В узком смысле - деловая бумага,
юридически подтверждающая какой-либо факт или
право на что-то.}
}
}
}
{hrule color="olive", height=2pt}
{center {italic Статья из \"Советского Энциклопедического Словаря\"}
Результат работы примера:
Для форматирования документа можно также использовать специальные предопределенные стили. Данная операция производится с помощью оператора {document-style style}. Этот оператор должен предшествовать оператору {set-document-properties ...}. В качестве значений параметра style могут выступать DefaultDocument - содержимое документа отображается на простой странице с белым фоном, этот же стиль применяется по умолчанию, если данный оператор не задан, TocDocument - задает вид страницы с автоматически сгенерированным окном содержания документа, PlainDocument - отображает один объект в отдельную область (Frame) без линеек прокрутки, дополнительные объекты вызывают ошибку, а текст самого вернего уровны игнорируется; данный стиль нужен для отображения графики.
Если вы создаете простой документ, то обычным является перезначение стилей в начале файла, иначе правильным будет создание внешнего файла со стилями и подключения его к документу. Создание стиля осуществляется с помощью оператора {define-text-format ...}.
{define-text-format H1 as heading with
level = 1,
font-size = 14pt,
color = "olive" }
Если нам необходимо подключить внешний файл со стилями, то это можно осуществить с помощью оператора {include ...} до объявления {document-style ...} и {set-document-properties ...}.
Рассмотрим возможности среды Curl по форматированию текста. Эти возможности можно подразделить на следующие категории: работа с символами, работа с параграфами, работа с таблицами и работа с ссылками и изображениями. Основным оператором форматирования для символов является оператор {text ...}, а для параграфов - {paragraph ...}. Приведем небольшой пример использования этих операторов.
{paragraph Я не хочу форматировать весь текст;
{text color = "green" только этот текст будет выделен зеленым
цветом,} а этот уже не будет. }
Я не хочу форматировать весь текст; только этот текст будет
выделен зеленым цветом, а этот уже не будет.
Каждый из этих операторов имеет свой собственный синтаксис, который приведен в данной таблице. В некоторых случаях атрибуту оператора может соответствовать предопределенный оператор-эквивалент. Например, оператору {bold ...} соответствует {text font-weight = "bold" ...}.
Форматирование текста | {text ...} | Color | Цвет |
Font-family | Шрифт |
Font-size | Размер шрифта |
Font-style | Стиль шрифта |
Font-weight | Ширина символа |
Text-underline? | Текст подчеркнут |
Text-line-through? | Текст зачеркнут |
Text-vertical-align | Расположение текста |
Text-breakable? | Одной строкой? |
Text-preserve-whitespace? | Работа с пробелами |
Форматирование параграфа | {paragraph ...} | Paragraph-first-line-indent | Отступ для 1-й строки |
Paragraph-justify | Выравнивание |
Paragraph-line-spacing | Межстрочное расстояние |
Paragraph-left-indent | Левый отступ |
Paragraph-right-indent | Правый отступ |
Paragraph-after-spacing | Отступ до параграфа |
Paragraph-before-spacing | Отступ после параграфа |
Форматирование таблиц | {table ...} | Cell-border-width | Ширина рамки ячейки |
Cell-margin | Отступ до содержимого ячейки |
Cell-border-color | Цвет рамки ячейки |
Cell-border-style | Стиль рамки ячейки |
Форматирование изображений | | Border-width | Ширина рамки |
Border-style | Стиль рамки |
Border-color | Цвет рамки |
Width | Ширина |
Height | Высота |
Margin | Отступ |
Background | Фон |
Halign | Выравнивание по горизонтали |
Valign | Выравнивание по вертикали |
|
К операторам, форматирующим текст, также относят следующие операторы:
{trademark} - символ TM.
{registered-trademark} - символ ®.
{copyright} - символ ©.
{degrees} - символ .
{em-dash} - символ —.
{en-dash} - символ –.
{bullet} - символ .
{br} - оператор принудительного переноса текста на следующую строку.
{page-break} - оператор принудительного переноса текста на следующую страницу.
Предопределенные операторы-эквиваленты стандартному оператору {paragraph ...}:
{left-justify ...} - выравнивание по левому краю.
{right-justify ...} - выравнивание по правому краю.
{center ...} - выравнивание по центру.
{blockquote ...} - одинаковые отступы по правому и левому краям.
{pre ...} - вывод блока тескста шрифтом фиксированной ширины.
{heading ...} - заголовок.
{numbered-heading ...} - заголовок с соответствующим номером.
{itemize ...} - ненумерованное перечисление.
{enumerate ...} - нумерованное перечисление.
{item ...} - элемент перечисления.
{definition ...} - элемент описания.
Рассмотрим специальные операторы форматирования:
{title ...} - установка названия документа в окне броузера.
{link [target = browser-string, ] href = {url destination-string}, link-display} - оператор, описывающий ссылку, где browser-string - окно броузера куда будет загружен ресурс загруженный по ссылке, destination-string - адрес ссылки в формате URL, link-display - текст, к которому будет "привязана" ссылка.
{destination name = name-string, [, display]} - оператор, описывающий имя ресурса, на который можно сослаться с помощью оператора {link ...}, где name-string - название ресурса, display - текст.
{link source = {url image-file-string}, [width = width,] [height = height]} - оператор, описывающий изображение, где image-file-string - адрес изображения в формате URL, height и width - высота и ширина изображения.
{hrule [height = distance-value,] [color = color-value]} - оператор, отображающий горизонтальную линию в документе.
Рассмотрим операторы, работающие с таблицами - {table ...}, {row...}, {cell ...}. Структура вложенности этих операторов эквивалента аналогичным тэгам языка HTML.
{table ...
{row ...
{cell ...}
{cell ...}
}
{row ...
{cell ...}
{cell ...}
}
}
{table ...} - оператор, задающий таблицу.
{row ... [colspan = n]} - оператор, задающий столбец таблицы, где colspan - команда слияния n строк.
{cell ... [rowspan = n]} - оператор, задающий строку таблицы, где rowspan - команда слияния n столбцов.
Приведем пример работы данной группы операторов:
{table background="beige",
margin=1cm,
border-color="red",
border-width=2pt,
cell-margin=0.5cm,
cell-border-width=4pt,
cell-border-color="brown",
{row cell-margin=0.5cm,
{cell color="magenta", I don't really garden}
{cell color="purple", I putt around}
}
{row color="green",
cell-margin=0.5cm,
{cell I don't use a table saw}
{cell I use my teeth}
}
}
[ Назад ]
[ Содержание ]
[ Вперед ]
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|