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

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

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

Импортируйте пакеты API

Импортируйте DOM и пакеты 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);

Смотрите также

| |

Похожие темы