Создайте линейное уравнение в отчете

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

Вы указываете, находится ли уравнение на линии само по себе или в соответствии с соседним текстом, установив DisplayInline свойство репортера уравнений. Если D- isplayInline для свойства задано значение 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);

См. также

| |

Похожие темы