exponenta event banner

Создание встроенной формулы в отчете

В этом примере показано, как вставить уравнение в строку текста в отчете. Например:

Можно указать, находится ли уравнение в строке само по себе или в соответствии со смежным текстом, задав значение DisplayInline свойство репортера уравнений. Если DisplayInline свойство имеет значение false, репортер добавляет изображение форматированного уравнения на отдельной строке отчета. Если DisplayInline свойство имеет значение true, вы получаете изображение отформатированного уравнения, вызывая getImpl и добавьте изображение в абзац отчета.

Импорт пакетов API

Импортируйте пакеты DOM и Report API, чтобы не использовать длинные, полные имена классов.

import mlreportgen.report.* 
import mlreportgen.dom.* 

Создать отчет

В этом примере создается однофайловый HTML-отчет. Чтобы создать отчет другого типа, измените тип вывода на "html", "pdf", или "docx". Создайте абзац, содержащий уравнение.

rpt = Report("myreport","html-file");
p = Paragraph("Here is an inline equation: ");
p.FontSize = "14pt";
p.WhiteSpace = "preserve";

Создание репортера уравнений для встроенной формулы

Создание Equation репортер. Укажите, что изображение уравнения соответствует смежному тексту, задав значение DisplayInline свойство для true.

eq = Equation("\int_{0}^{2} x^2\sin(x) dx");
eq.DisplayInline = true;
eq.FontSize = 14;

Добавление изображения уравнения в отчет

Чтобы получить снимок отформатированного уравнения, вызовите getImpl способ. Выровняйте базовую линию уравнения с базовой линией текста, указав величину, на которую изображение опускается по сравнению с базовой линией текста. Используйте различные суммы, пока не будете удовлетворены выравниванием. Для отчетов HTML и PDF можно указать сумму в процентах от высоты линии. Для отчетов Word укажите количество единиц. См. раздел Value имущества mlreportgen.dom.VerticalAlign класс.

eqImg = getImpl(eq,rpt);
if (rpt.Type == "html" || rpt.Type == "html-file" || rpt.Type == "pdf")
    eqImg.Style = {VerticalAlign("-30%")};
elseif(rpt.Type == "docx") 
    eqImg.Style = {VerticalAlign("-5pt")};
end

Добавьте изображение в абзац. Добавьте абзац в отчет.

append(p,eqImg);
add(rpt,p);

Закрыть и просмотреть отчет

close(rpt);
rptview(rpt);

См. также

| |

Связанные темы