Создание структурированного шаблона документа
- Войдите на сайт для отправки комментариев
Добрый день! Замучался осваивать самостоятельно структурный Фрейм. Может, кто-нибудь согласится дать мне платную консультацию по теме "Создание структурированного шаблона в FM"? Буду признателен любому, кто разбирается в данном виде интерфейса приложения и готов проконсультировать меня за разумную плату. Очень нужно. Срочно! Пишите на mazlum (at) rambler (dot) ru
или по Аське
272-684-999
Знатоки Фрейма, откликнитесь!
Уважаемый СергейЛ! Как-то вы советовали не лениться при определении элемента GeneralRule...Пытаюсь правильно задать условия для него. Вот пример:
General rule:
А теперь расшифрую, чего я хочу. Во-первых, мне нужно, чтобы у меня в наличии было несколько элементов Body, List, Heading2. Насколько я понял из руководства по Фрейму, это условие можно выполнить при помощи знаков *(Звездочка) и +(Плюс). Уточню, что элементы Body и List могут понадобится, а могут и нет. Во-вторых, порядок всех перечисленных элементов должен быть произвольным.
Так, после импорта моего EDD в окне структуры моего будущего шаблона все эти элементы почему-то отображаются как обязательные (отмечены галочкой). При этом после втавки Heading2, в каталоге элементов почему-то больше ничего нет, когда, как мне кажется, первое условие должно было бы обеспечить его наполняемость. Объясните мне, что я делаю не так? Спасибо за ответ.
Меня интересует, почему эта запись не нужна? Ведь я хочу задать контекстное форматирование! ... При определении форматирования для дочернего элемента, отличного от родительского, я вставлял: "ContextRule", далее, как в том примере, который вы видели, я его описывал, хотя, по-вашему, не верно, затем "ParagraphFormatting"->"PropertiesBasic","PropertiesFont".
ContextRule требуется в случае, когда Вы описываете один элемент для разных случаев его применения.
Например, для случаев когда формат элемента зависит от значений его атрибутов или от того в какой элемент входит текущий элемент (к примеру, когда элемент Heading1 входит в элемент Chapter, то у него нумерация имеет вид 1 ЗАГОЛОВОК, а когда он входит в элемент Appendix, то у него нумерация имеет вид ПРИЛОЖЕНИЕ А ЗАГОЛОВОК).
В Вашем же случае элементы могут использоваться только одним способом, значит надо указать, что применять форматирование надо в любом контексте. А Вы задали условие (If context is: Name), которое программа не понимает и, соответственно, не выполняет.
Интереса ради, я пробовал импортировать свойства моего шаблона (шаблона резюме в данном случае) в документ, в котором уже есть содержимое, оформленное стилем по умолчанию. Однако после импорта ничего с этим документом не произошло. Я же думал, он должен был изменить внешний вид согласно шаблону. Почему это у меня не получилось?
Мало просто импортировать. Надо еще "обернуть" (Wrap) части текста в соответствующие элементы. Вы это сделали?
Уважаемый СергейЛ! Спасибо вам за своевременный для меня комментарий! Однако, у меня остались вопросы.
3. Запись "If context is: Name " не нужна - Вы ведь и так этот элемент описываете.
Меня интересует, почему эта запись не нужна? Ведь я хочу задать контекстное форматирование! Я, конечно, могу сослаться на какой-либо абзацный стиль из каталога, поставив элемент "ElementPgfFormatTag", однако в дальнейшем у меня все равно не получается изменить форматирование дочерних элементов, в данном случае "PersonalInfo", "DateOfBirth", "MaritalStatus". Я пытался решить эту проблему следующим способом. При определении форматирования для дочернего элемента, отличного от родительского, я вставлял: "ContextRule", далее, как в том примере, который вы видели, я его описывал, хотя, по-вашему, не верно, затем "ParagraphFormatting"->"PropertiesBasic","PropertiesFont". Пробовал вместо элемента "PropertiesBasic" вставлять "FormatChangeListTag", а ниже описывал его в элементе "FormatChangeList". Однако, не смотря на все эти ухищрения, дочерние элементы ни в какую не хотели изменять своего форматирования. В этом у меня и заключается загвоздка.
Есть еще один вопрос: на сколько я понял, в EDD задается структура будущего документа (шаблона). В дальнейшем на основе этого документа (шаблона) мы можем создавать другие документы, не заботясь об оформлении. Интереса ради, я пробовал импортировать свойства моего шаблона (шаблона резюме в данном случае) в документ, в котором уже есть содержимое, оформленное стилем по умолчанию. Однако после импорта ничего с этим документом не произошло. Я же думал, он должен был изменить внешний вид согласно шаблону. Почему это у меня не получилось?
Итак, по порядку:
Element (Container): Name
General rule:
Automatic insertions
Automatically insert child: PersonalInfo
Text format rules
If context is: Name
Use format change list: Name
Format change list: Name
Basic properties
Alignment: Center
Default font properties
Color: Blue
Size: 16pt
Weight: Book
Family: Arial
1. Лучше не пользоваться
2. Зачем PersonalInfo делать потомком Name'а? По логике это, как минимум, равноправные элементы (или даже Name может входить в PersonalInfo).
3. Запись "If context is: Name " не нужна - Вы ведь и так этот элемент описываете.
4. Это "Use format change list: Name Format change list: Name "
не нужно, т.к. Вы ниже описываете стиль элемента.
И, на будущее, если Вы используете тэг FormatChangeListTag, то ниже Вы должны описать его в элементе FormatChangeList. Если Вам требуется сослаться на формат параграфа, который задан в Paragraph Designer'е, то следует использовать тэг ParagraphFormatTag.
Element (Container): PersonalInfo
General rule:
Automatic insertions
Automatically insert child: DateOfBirth+, MaritalStatus+
Text format rules
If context is: PersonalInfoUse format change list: name
Format change list: name
Basic properties
Indents
First indent: 1,5pt
Alignment: Left
Default font properties
Color: Blue
Angle: Regular
Size: 12pt
Weight: Book
Family: Times New Roman
1. Запись "If context is: PersonalInfo
2. Про Format change list я уже писал.
Element (Container): MaritalStatus
General rule:
Resume
Format change list: Title, Heading1, Heading2
Basic properties
Indents
First indent: 1,2pt
Line spacing
Height: 1,2pt
Alignment: Justified
Default font properties
Family: Times
Size: 12
Color: Black
Weight: Bold
Language: US English
1. Что такое Resume? Честно говоря, я это вперые вижу
2. Запись "Format change list: Title, Heading1, Heading2 " я не понял. Изменение формата может быть одно (и должно быть описано).
Ну, в общих чертах, вот так:)
Будут вопросы - пишите.
А деньги вместо коллеги я лучше с работодателя сдеру - они это заслуживают:D [/b]
Уважаемый СергейЛ! Кое-как начал разбираться со структурой в EDD. Однако, рано порадовался: новое препятствие. Не понимаю, как задавать различное форматирование для элементов структуры в EDD? На всякий случай, привожу в качестве примера синтаксис EDD для моего шаблона резюме. Что в нем не так?
Element (Container): Human
Valid as the highest-level element.
General rule:
Element (Container): Name
General rule:
Automatic insertions
Automatically insert child: PersonalInfo
Text format rules
If context is: Name
Use format change list: Name
Format change list: Name
Basic properties
Alignment: Center
Default font properties
Color: Blue
Size: 16pt
Weight: Book
Family: Arial
Element (Container): PersonalInfo
General rule:
Automatic insertions
Automatically insert child: DateOfBirth+, MaritalStatus+
Text format rules
If context is: PersonalInfo
Format change list: name
Basic properties
Indents
First indent: 1,5pt
Alignment: Left
Default font properties
Color: Blue
Angle: Regular
Size: 12pt
Weight: Book
Family: Times New Roman
Element (Container): DateOfBirth
General rule:
Element (Container): MaritalStatus
General rule:
Resume
Format change list: Title, Heading1, Heading2
Basic properties
Indents
First indent: 1,2pt
Line spacing
Height: 1,2pt
Alignment: Justified
Default font properties
Family: Times
Size: 12
Color: Black
Weight: Bold
Language: US English
Готовые шаблоны (http://authorit.ru/node/240) не подошли?
- Войдите на сайт для отправки комментариев
Согласно заданным Вами условиям General Rule будет выглядеть так:|(Body*|List*)|Heading2)+|Heading2)+|Body*|List*)
(
либо так:
((
Это читается так:
в элемент может войти или текст, или/и один и более Heading2, или/и ноль и более Body, или/и ноль и более List. Причем все это может идти в различных комбинациях, но или текст, или Heading2 должны быть обязательно.
Галочкой обозначаются доступные согласно структуре элементы (см. Options в окне Elements). А о том, что не вставлен обязательный элемент ФМ сообщает красным квадратиком в окне структуры.