Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Перевести TStringGrid в HTML

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ The SGridToHtml() function converts a Stringgrid to a HTML Code. 
  Parameters: SG: TStringGrid to convert 
              Dest: TMemo to show the HTML Code 
              BorderSize: Size of border (0 = show no border) 
{ 
  Mit der Funktion SGridToHtml() konnen StringGrids in HTML Code umgewandelt werden. 
  SG bezieht sich auf das TStringGrid, welches codiert werden soll. 
  in Dest (vom Typ TMemo) wird der HTML Code erzeugt. 
  BorderSize bestimmt, wie dick der Tabellenrahmen sein soll. 0 = kein Rahmen 
}

 procedure SGridToHtml(SG: TStringgrid; Dest: TMemo; BorderSize: Integer);
 var
    i, p: integer;
   SStyle1, SStyle2, Text: string;
 begin
   Dest.Clear;
   Dest.Lines.Add('<html>');
   Dest.Lines.Add('<body>');
   Dest.Lines.Add('  <table border="' + IntToStr(BorderSize) + '" width="' +
     IntToStr(SG.Width) + '" height="' + IntToStr(SG.Width) + '">');

   for i := 0 to SG.RowCount - 1 do
   begin
     Dest.Lines.Add('  <tr>');
     for p := 0 to SG.ColCount - 1 do
     begin
       SStyle1 := '';
       SStyle2 := '';
       if fsbold in SG.Font.Style then
       begin
         SStyle1 := SStyle1 + '<b>';
         SStyle2 := SStyle2 + '</b>';
       end;
       if fsitalic in SG.Font.Style then
       begin
         SStyle1 := SStyle1 + '<i>';
         SStyle2 := SStyle2 + '</i>';
       end;
       if fsunderline in SG.Font.Style then
       begin
         SStyle1 := SStyle1 + '<u>';
         SStyle2 := SStyle2 + '</u>';
       end;
       Text := sg.Cells[p, i];
       if Text = '' then Text := ' ';
       Dest.Lines.Add('    <td width="' + IntToStr(sg.ColWidths[p]) +
         '" height="' + IntToStr(sg.RowHeights[p]) +
         '"><font color="#' + IntToHex(sg.Font.Color, 6) +
         '" face="' + SG.Font.Name + '">' + SStyle1 +
         Text + SStyle2 + '</font></td>');
     end;
     Dest.Lines.Add('  </tr>');
   end;
   Dest.Lines.Add('  </table>');
   Dest.Lines.Add('</body>');;
   Dest.Lines.Add('</html>');
 end;

 // Example, Beispiel 
procedure TFormCSVInport.Button6Click(Sender: TObject);
 begin
   SGridToHtml(StringGrid1, Memo1, 1);
   Memo1.Lines.SaveToFile('c:\test.html');
 end;
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay