![]() |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Zitat:
Parallel dazu, würde mich allerdings die Sache mit den Reports mal Interessiere. Hab mal ein bißchen Gegoogled und kann momentan allerdings noch nicht so richtig erkennen, welche Komponente da wohl das richtige wäre. Gefunden habe ich RaveReport, PowerPDF und FastReport. Außerdem kann ich mich schwach an die BDE erinnern, da gab es mal unter Delphi 5 noch QuickReports. Mit QuickReports, habe ich schon mal gearbeitet, diese Komponente scheint aber unter D2007 nicht mehr vorhanden zu sein. Am liebsten wär mir natürlich eine kostenlose Komponente, ist aber kein muss. Vieleicht kann mir ja jemand mal eine Empfehlung über eine Kompo, evtl. Deutschsprachige Anleitung oder ein Tutorial geben. Gruß Jens |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Guten Abend erstmal,
ich habe mir jetzt mal die Komponente PowerPDF geladen, und woltte die gerne installieren. Leider meckert Delphi, das die Komponente VisualClx fehlt. Beim suchen im Internet, bin ich darauf gestoßen, das die Funktion mit CLX unter der Personal Edition wohl nicht geht. Da ich aber die Professional Version habe, müsste das doch eigendlich funkti0nieren. Wo bekomme ich diese Komponente her oder was muss ich machen um PowerPDF zu installieren. Gruß Jens |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
|
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Zitat:
Habe das jetzt mit dem HTML soweit hinbekommen, das wird eine meiner Lösungen werden, die ich in mein Programm integrieren will. Allerdings habe ich mal eine Frage, ich habe folgende Page mal durchgearbeitet, ![]() Daraus müsste zu schließen sein, das folgender Code mir eine Zeile in Roter Schrift in meine HTML-Dokument schreibt. :gruebel:
Delphi-Quellcode:
Leider aber nicht. Der Text wird zwar geschrieben, aber nur in Schwarz. Was mach ich denn falsch.
slHTML.Add('<td style="color:#ff0000;">Firma hartmann + uebach Nachrichtentechnik</td>');
:gruebel: Genauso, müsste ja folgende Zeile Rote Schrift auf Schwarzem Hindergrund liefern, auch das geht nicht.
Delphi-Quellcode:
Über eine Idee, wie ich das gelößt bekomme, würde ich mich sehr freuen. :-D
slHTML.Add('<td style="color:#ff0000; background-color:#000000">Firma hartmann + uebach Nachrichtentechnik</td>');
Gruß Jens |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Hallo,
td ist keine Zeile, sondern eine Spalte. Erstell' bitte mal eine komplette HTML-Seite und häng' die hier dran, mit den "Einzeilern" kann ich Dir da auf die Schnelle nicht sagen, wo es klemmt. |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Eine HTML-Tabelle sieht wie folgt aus:
Code:
Ich würde übriges mit CSS arbeiten. Wenn du keine extra CSS-datei mitliefern willst, kannst du den Stylesheet auch an den Anfang der HTML-Datei schreiben. Damit kannst du an einer zentralen Stelle die Formatierung anpassen und der Code wird auch schlanker.
<table>
<th><td>Überschtrift Spalte 1</td><td>Überschrift Spalte 2</td></th> <tr><td>1. Zeile 1. Spalte</td><td>1. Zeile 2. Spalte</td></tr> <tr><td>2. Zeile 1. Spalte</td><td>2. Zeile 2. Spalte</td></tr> </table> |
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Zitat:
Code:
<tr><th>Überschrift Spalte 1</th><th>Überschrift Spalte 2</th></tr>
|
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Es war nicht nur so, es ist sogar noch so. ;) Danke für die Korrektur.
|
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Dann bin ich doch noch nicht ganz verkalkt :lol:
|
Re: PDF-Datei aus dem Inhalt eines VirtualStringTree erzeuge
Hallo zusammen,
Also erstmal danke für die antworten, Zitat:
Hier mal mein aktueller Code und im Anhang das Ergebnis. Was ich noch nicht so richtig hinbekomme ist... 1. Die Farbe der Schriftart. 3. z.B. eine Leerzeile zwischen der Überschrift und der Tabellenüberschrift.
Delphi-Quellcode:
Vieleicht kann mir ja jemand sagen, woran das legen kann.
Procedure TForm1.HTMLErzeugen;
Var slHTML : TStringList; i : integer; begin QryHTML.Close; QryHTML.SQL.Text := 'SELECT * FROM MB100'; QryHTML.Open; slHTML := TStringList.Create; slHTML.Add('<html>'); slHTML.Add('<head>'); slHTML.Add('<link rel="stylesheet" type="text/css" href="VST.css"');//werde natürlich hier eine Css-Datei einfügen slHTML.Add('<td style="color:#ff0000;">Firma hartmann + uebach Nachrichtentechnik</td>'); slHTML.Add('</head>'); slHTML.Add('<body>'); slHTML.Add('<table border="0" style="border-collapse:separate;"'+ 'width="100%" style="'+ 'border-left:5px solid #ff0000;border-right:5px solid #ff0000;'+ 'border-top:5px solid #ff0000;border-bottom:5px solid #ff0000;>'); slHTML.Add('<caption style="caption-side:top;">Protokolldatei vom: '+DateTimeToStr(Now)+' </caption>'); slHTML.Add('<tr>'); slHTML.Add('<th align="left">ID</th>'); slHTML.Add('<th align="left">LfdNr</th>'); slHTML.Add('<th align="left">Datum</th>'); slHTML.Add('<th align="left">Uhrzeit</th>'); slHTML.Add('<th align="left">Ereignis</th>'); slHTML.Add('<th align="left">Teilnehmer</th>'); slHTML.Add('<th align="left">Bereich</th>'); slHTML.Add('<tr>'); //slHTML.Add('<tr class="' + Ereignis + '">'); // Stylesheet wird hier später eingefügt. for i := 0 to QryHTML.RecordCount do begin slHTML.Add('<td>'); // align="left">'); slHTML.Add(IntToStr(QryHTML.FieldByName('ID').AsInteger)); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(IntToStr(QryHTML.FieldByName('LfdNr').AsInteger)); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(DateToStr(QryHTML.FieldByName('Datum').AsDateTime)); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(DateToStr(QryHTML.FieldByName('Uhrzeit').AsDateTime)); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(QryHTML.FieldByName('Ereignis').AsString); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(QryHTML.FieldByName('Teilnehmer').AsString); slHTML.Add('</td>'); slHTML.Add('<td align="left">'); slHTML.Add(QryHTML.FieldByName('Bereich').AsString); slHTML.Add('</td>'); slHTML.Add('</tr>'); QryHTML.Next; end; slHTML.Add('</table>'); slHTML.Add('</body>'); slHTML.Add('</html>'); slHTML.SaveToFile('C:\Test.html'); slHTML.Free; end; Gruß Jens |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz