Entwickler-Ecke

Sonstiges (Delphi) - Text scannen,formatierte Worte in Datei speichern


klabri - So 19.12.10 18:19
Titel: Text scannen,formatierte Worte in Datei speichern
Hallo,

meine Frage : wie kann ich einen Text nach formatierten Worten (fettgedruckt) durchsuchen?

Ich habe einen englischen Text ,indem (unbekannte) Worte fettgedruckt sind . Diese fettgedruckten Worte soll das Programm suchen,finden und in eine Datei speichern.

Ich habe nur Programme gefunden, die nach einem vorgegebenen Wort suchen ,aber keines, was einen Text Zeile für Zeile nach "Fettdruck" durchsucht oder nach "Wort formatiert" oder nach " kursiv" usw.

>Suche in Zeile x nach Worten,die die Eigenschaft "formatiert" haben( egal, ob fett gedruckt, kursiv ,unterstrichen .


Moderiert von user profile iconMartok: Topic aus Datenbanken verschoben am So 19.12.2010 um 18:15
Moderiert von user profile iconNarses: Beitragsformatierung überarbeitet.


platzwart - So 19.12.10 19:08

Suchst du sowas:

Font.Style = Eigenschaft des Textes (Fett/Kursiv/Unterstrichen)
fsBold/fsIalic/fsUnderline


Delete - So 19.12.10 19:38

Ich glaube er hat einen eingescannten Text vorliegen. Leider sagt er nicht, ob als Grafik oder schon als formatierte Textdatei zum Beispiel im RTF-Format. Wobei ich mir die Frage stelle, ob ein Texterkennungsprogramm überhaupt die Textformatierung berücksichtigen kann.


klabri - So 19.12.10 19:49

also, [fsBold,fsItalic,fsUnderline],dass sind schon mal die Eigenschaften,davon
würde im Text dann nach Worten mit der Eigenschaft [fsBold] gesucht.

Das hab ich gerade noch gefunden ,für ein RichEdit-Textfeld
RichEdit1.SelAttributes.Style:=[fsBold,.....];

jetzt bin ich schon mal soweit :
1:< suche in Zeile [n]
2:<Suche nach Worten,die die Eigenschaft [fsBold] haben<
3:<Wort gefunden: Speichern in Datei<
4:<Eigenschaft trifft in Zeile n auf kein Wort zu
5:< nächste Zeile Zeile[n+1]<
6:< wiederhole 1,2,3,4,5

vom Ablauf hab ich so eine grobe Vorstellung,jetzt fehlen mir nur noch die
konkreten Befehle und da stehe ich ,weil ich nicht sehr viel mit Delphi mache, im
Dunkeln.
-mit einer Schleife den Text Zeile für Zeile durchlaufen,
-das einzelne Wort auf die Eigenschaft [fsBold] prüfen
,vielleicht mit einer Variablen 'gefunden' ,boolean, gefunden:=true/false,
-wenn 'false' nächstes Wort, wenn false und Zeilenende Zeile[n+1]
..........
also, für jeden Hinweis bin ich DANKBAR !!


klabri - Mo 20.12.10 18:30

also,bei dem Text handelt es sich um eine ganz normale Textdatei.
Ich werd mal probieren , die Worte,die ich sonst fettgedruck gekennzeichnet habe
,einfach mit einem anderen Zeichen (* z.Bsp) zu kennzeichnen und dann eine ganz
normale Suchroutine nehmen.


Delete - Mo 20.12.10 18:39

Wenn es eine ganz normale Textdatei ist, dann gibt es keine Zeichenformatierung.