Пакет: mlreportgen.dom
Скопируйте объект абзаца
clonedPara = clone(sourcePara)
копии (клоны) заданный абзац. Получившийся клонированный абзац включает дочерние элементы исходного абзаца, но не родительский элемент.clonedPara
= clone(sourcePara
)
Используйте метод clone
, чтобы добавить то же содержимое абзаца несколько раз в документе.
Когда вы клонируете абзац, DOM копирует все дочерние объекты исходного абзаца, но не родительский элемент абзаца.
Клонированный абзац включает форматы, которые вы устанавливаете в исходном абзаце. Клонированные форматы абзаца используют те же объекты формата в качестве исходного абзаца. Если вы изменяете параметр формата в разделяемом объекте формата, источник и клонированные абзацы отражают то изменение.
Если вы изменяете параметр формата в клонированном абзаце, то DOM создает новый объект формата для клонированного абзаца, с помощью нового параметра формата. Для того формата источник и клонированный абзац больше не совместно используют тот же объект формата.
Этот пример показывает отношение между форматами для источника и клонированных абзацев.
Создайте абзац, который использует стиль, который устанавливает Bold
и форматы Italic
к true
.
import mlreportgen.dom.*; myReport = Document('myDoc','html'); p = Paragraph('This is a paragraph'); append(myReport,p); MyStyle = {Bold,Italic}; p.Style = MyStyle; p.Bold
ans = 1
p.Italic
ans = 1
Клонируйте абзац. Bold
и форматы Italic
совпадают с теми из исходного абзаца.
pClone = clone(p); pClone.Bold
ans = 1
p.Italic
ans = 1
Для клонированного абзаца изменение выключает полужирный текст. Изменение в формате Bold
в клонированном абзаце не влияет на текст для исходного абзаца. Исходный текст абзаца все еще полужирен.
pClone.Bold = false; p.Bold
ans = 1
В объекте стиля (MyStyle
) для исходного абзаца выключите курсив. Теперь клонированный абзац не использует курсив, потому что он совместно использует установку MyStyle
для формата Italics
.
MyStyle(2).Value = false pClone.Italic
ans = 0
mlreportgen.dom.Document
| mlreportgen.dom.Paragraph
| mlreportgen.dom.Paragraph.append