fbpx

Как вывести значение параметра в формуле LaTeX **

Print
Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive
 

В предыдущей статье было рассмотрено, как показать формулу LaTeX в документе TechEditor. В данном материале мы рассмотрим, как управлять такими формулами.

Как изменить текст формулы

Для набора формул в TechEditor используется язык формульной разметки LaTeX. Это значит, что скрипт самой формулы набирается простым текстом и пользователь может управлять им непосредственно из приложения.

Чтобы отредактировать текст формулы, выполните следующие действия:

  1. Откройте модуль, где определена формула
  2. Внесите изменения в формулу
  3. Запустите приложение

Чтобы изменения отразились в текущем отчете, не забудьте указать в скрипте команду UpdateReport (см. далее).

Как вывести вещественное число в формуле (функция FloatToStr)

Функция FloatToStr преобразует вещественное число в строку текста. Пример использования данной функции:

uses
  Classes, Dialogs;

var
N, A: Double;
Stress: string;

begin
N := 150.0;
A := 5.0;
Stress := '\sigma=\frac{N}{A}=\frac{' + FloatToStr(N) + '}{' + FloatToStr(A) + '}=' + FloatToStr(N/A) + '.';
UpdateReport;
end;

В данном примере используются две числовые переменные N, A и одна текстовая переменная Stress.

Сначала, в переменную Stress помещается исходный текст формулы. После этого, числовые значения преобразуются с помощью функции FloatToStr в текст и подставляются на соответствующие места в выражение LaTeX. Если теперь вывести формулу в отчете, то получим такое выражение:

\[\sigma=\frac{N}{A}=\frac{150}{5}=30.\]

Как это выглядит в TechEditor (слева — приложение, справа — отчет):

TechEditor - LaTeX equation

Пользователь вашего приложения может не заботиться о виде самой формулы. Достаточно изменять числовые значения и в отчет попадет корректный результат.

Как вывести целое число в формуле (функция IntToStr)

Функция IntToStr работает аналогично FloatToStr, но ее аргументом должно быть целое число.

Как вывести число в формуле (функция Format)

Функция Format имеет богатый функционал по форматированию различных данных — от целых и вещественных чисел до даты и времени. Подробнее об этой функции вы узнаете из Справочного руководства к TechEditor.

Чтобы вывести ту же самую формулу со значениями в отчете, используйте следующую запись:

begin
N := 150.0;
A := 5.0;
Stress := Format('\sigma=\frac{N}{A}=\frac{%g}{%g}={%g}.', [N, A, N/A]);
UpdateReport;
end;

Первым аргументом функции Format выступает текст формулы, вторым — набор чисел. В тех местах формулы, где вы планируете выводить числа, укажите параметр "%g" (g — General, общий числовой тип), а вторым аргументом в квадратных скобках через запятую укажите сами числа.

Обратите внимание, что порядок перечисления параметров в функции Format имеет значение. Числа будут выведены в последовательности, в которой они указаны в наборе (в квадратных скобках).

В общем случае, функцией Format можно выводить:

Пример добавления единиц измерения в формулу:

begin
N := 150.0;
A := 5.0;
Stress := Format('\sigma=\frac{N}{A}=\frac{%g %s}{%g %s}={%g %s}.', [N, '\text{ N}', A, '\text{ mm²}', N/A, '\text{ MPa}']);
UpdateReport;
end;

Результат:

\[\sigma=\frac{N}{A}=\frac{150 \text{ N}}{5 \text{ mm²}}=30 \text{ MPa}.\]

Способ представления LaTeX-выражений в документах TechEditor с помощью функции Format является рекомендованным.