k (Sender: TObject);
begin
Memo1.Lines.SaveToFile (SaveDialog1.FileName);// Збереження файлу
end;
procedure TForm1.N4Click (Sender: TObject);
begin
with SaveDialog1 do
If execute Then
Memo1.Lines.SaveToFile (SaveDialog1.FileName);// Меню "Зберегти як.В» br/>
End;
// зараз йде опис самої головної частини програми
procedure TForm1.N5Click (Sender: TObject);
var list: TStringList;
tmpString: string;
i, CurrentSymbol, SeekSymbol, lastTag: integer;
notFound: boolean;
begin
With SaveDialog2 do
If execute then
Begin
list: = TStringList.Create;
for i: = 0 to memo1.Lines.Count-1 do list.Add (memo1.lines [i]);
list.Insert (0, '');
list.Add ('');
// в цій частині (Дивіться вище) відбувається вставка тегів
// перед набраним текстом і після тексту.
for i: = 1 to memo1.Lines.Count do
begin
lastTag: = 1; tmpString: ='';
for CurrentSymbol: = 1 to Length (List [i]) - 9 do
if Copy (List [i], CurrentSymbol, 9) = '
begin
SeekSymbol: = CurrentSymbol; notFound: = true;
while (SeekSymbol <= Length (List [i])) and (notFound) do
begin
if Copy (List [i], SeekSymbol, 1) = '>' then
begin
tmpString: = tmpString + '
' +
Copy (List [i], lastTag, CurrentSymbol-lastTag) +
'
' +
Copy (List [i], CurrentSymbol, SeekSymbol-CurrentSymbol +1) + '
';
lastTag: = SeekSymbol +1; notFound: = false;
end;
inc (SeekSymbol);
end;
end;
if tmpString <>'' then
begin
tmpString: = tmpString + '
' + Copy (List [i], lastTag, Length (List [i])-lastTag +1) + '
';
List [i]: = '' + tmpString + '';
end;
end;
List.SaveToFile (Filename);
list.Free;
End;
end;
// У цій частині відбувається вставка таблиці (дивіться стор 9). p>// Щоб забезпечити коректне відображення формули браузером.
Загалом, код програми заснований на декількох принципах: на пошуку тега, в якому знаходиться посилання на математичну формулу, вставка таблиці, і експортуванні тексту в формат HTML. При написанні програми найскладнішою частиною виявилася вставка таблиці. На початку програма могла знаходити потрібні теги тільки в тому випадку, якщо він перебував окремо в якій або сходинці. Далі, після усунення вищеописаної помилки, другою проблемою стала неможливість вставки в документ відразу кілька картинок, що безпосередньо важливо для математичного документа. Самою останньою проблемою була неможливість роботи програми на інш...