home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / OCR.LZH / OCR12_F / DOCS / OCR.DOC next >
Text File  |  1994-05-17  |  36KB  |  791 lines

  1. OCR V1.2 (März 1994)
  2.  
  3.     ein Texterkennungs-Programm für  ATARI ST/STE/TT/Falcon
  4.     von Alexander Clauss, Stresemannstr. 44, 64297 Darmstadt
  5.  
  6.  
  7.  
  8.  
  9. Dieses Programm ist FREEWARE. Es darf kostenlos kopiert und benutzt
  10. werden. Eine Verbreitung über Mailboxen und PD-Serien ist erlaubt.
  11. Das Programm muß immer komplett weitergegeben werden. Das Verändern des
  12. Programms und der Anleitung ist nicht gestattet.
  13.  
  14. Wenn Ihnen das Programm gefällt und Sie es regelmäßig benutzen, sollten
  15. Sie dem Autor eine freiwillige(!!) Spende (ca. 20-30 DM) zukommen lassen
  16. oder mir zumindest eine Postkarte oder eine Nachricht per email schicken,
  17. damit ich weiß, ob überhaupt Interesse an diesem Programm besteht.
  18.  
  19. Neue Versionen gibt es direkt vom Autor (bitte Diskette und ausreichend
  20. frankierten Rückumschlag schicken), über FTP-Server (z.B.: ftp.uni-kl.de
  21. (/pub/atari/misc) oder ftp.isbiel.ch (atari/diverses)) oder in Mailboxen.
  22.  
  23. Wer eine Email-Adresse hat und sie mir mitteilt, bekommt eine Nachricht,
  24. wenn es eine neue Version von OCR gibt. Wer keine email-Adresse hat, kann
  25. mir auch einen frankierten Rückumschlag (bzw. eine an sich selbst
  26. adressierte Postkarte) schicken. Diejenigen werden dann per Post be-
  27. nachrichtigt.
  28.  
  29. WICHTIG: Ich bin natürlich auch an Fehlermeldungen und/oder
  30.          Verbesserungsvorschlägen interessiert.
  31.          Bei Fehlermeldungen bitte immer Rechnertyp, TOS-Version,
  32.          Autoordner-Programme und Accessories angeben. Wenn möglich,
  33.          bitte genau beschreiben, wie man den Fehler reproduzieren kann.
  34.  
  35.          Konstruktive Kritik und Vorschläge für zukünftige Versionen
  36.          sind ausdrücklich erwünscht!!!
  37.  
  38.  
  39. Meine Adresse
  40. -------------
  41.   Alexander Clauss
  42.   Stresemannstraße 44
  43.   D-64297 Darmstadt
  44.  
  45. email: aclauss@rbg.informatik.th-darmstadt.de
  46.  
  47. (Wer mich über die email-Adresse nicht (oder nicht mehr) erreichen kann,
  48. sollte es über die Post-Anschrift versuchen!)
  49.  
  50.  
  51. Bankverbindung (für freiwillige Spenden)
  52. --------------
  53.   Sparkasse Darmstadt
  54.       BLZ: 508 501 50
  55.   Kontonr: 0115032143
  56.  
  57. Geben Sie bitte auf der Überweisung Ihre Adresse und als Verwendungs-
  58. zweck 'OCR'+Versionsnummer an.
  59.  
  60.  
  61.  
  62.  
  63. System-Voraussetzungen
  64. ======================
  65. Dieses Programm läuft auf allen ATARI ST/STE/TT/Falcon Computern.
  66. Es funktioniert in jeder Grafikauflösung mit mindestens 600x200 Punkten
  67. und beliebiger Farbtiefe.
  68. 500 KBytes Speicher reichen aus, allerdings können dann keine größeren
  69. Bilder eingeladen werden. Zum vernünftigen Arbeiten sollten daher mind.
  70. 2 MByte - besser noch mehr - Speicher vorhanden sein.
  71. Einen (Handy-)Scanner benötigt man natürlich auch.
  72.  
  73.  
  74.  
  75.  
  76. Kurze Übersicht
  77. ===============
  78. Das Programm kann Texte in eingescannten Bildern erkennen und als
  79. ASCII-Texte speichern, die dann mit einem Editor bzw. mit einer Text-
  80. verarbeitung weiterverarbeitet werden können.
  81.  
  82. Für schwer erkennbare Zeichen können Korrekturregeln definiert werden.
  83.  
  84. Für verschiedene Schrifttypen können eigene Zeichensatz-Datenbänke
  85. angelegt werden.
  86.  
  87. Für Bilder aus Zeichenprogrammen (die Texte wurden mit dem System- bzw
  88. einem GDOS-Zeichensatz geschrieben) besitzt das Programm einen separaten
  89. Modus in dem besonders wenig Rechenzeit verbraucht wird.
  90.  
  91.  
  92.  
  93.  
  94. Erklärung der Programmfunktionen
  95. ================================
  96. Die Menüfunktionen können fast alle auch mit der Tastatur ausgelöst
  97. werden. Die entsprechenden Tastaturkommados werden im Folgenden in
  98. Klammern angegeben.
  99.  
  100.  
  101. Fenster
  102. =======
  103. Folgende Tastatureingaben beziehen sich auf die Fenster:
  104.   CTRL-U   Oberstes Fenster schließen.
  105.   CTRL-F   Das oberste Fenster wird auf die volle Größe gebracht, wenn
  106.            es schon diese Größe hat, wird es auf die ursprüngliche Größe
  107.            gebracht.
  108.   CTRL-W   Wechselt das aktive Fenster. (Das untere Programmfenster
  109.            wird zum obersten und umgekehrt)
  110.  
  111.   Cursortasten   Verschiebt den Fensterinhalt in die entsprechende
  112.                  Richtung zeilenweise.
  113.   SHIFT-Cursor   Verschiebt den Fensterinhalt seitenweise.
  114.  
  115.  
  116. Bild-Fenster
  117. ------------
  118. Hier wird das eingeladene bzw. eingescannte Bild angezeigt. Da diese
  119. Bilder oft sehr groß sind, kann man das Bild verkleinert anzeigen lassen
  120. (siehe Bildgröße).
  121. Man kann einen Block in diesem Fenster markieren, indem man mit gedrückter
  122. Maustaste eine Box aufzieht. Wenn der Block nicht ganz korrekt definiert
  123. wurde, kann man diesen auch nachträglich ändern. Man positioniert die
  124. Maus über eine der acht kleinen Boxen auf der Blockmarkierung; jetzt
  125. kann man mit gedrückter Maustaste die Blockgrenzen ändern.
  126.  
  127. Blöcke kann man löschen; dies ist wichtig um Linien, Bilder oder andere
  128. Bereiche zu eliminieren, die nicht als Text erkannt werden können.
  129.  
  130. Wenn ein Block markiert wurde, wird bei der Erkennung nur der markierte
  131. Bereich betrachtet; dies ist notwendig, wenn man mehrspaltige Texte
  132. bearbeiten will (Jede Spalte muß einzel markiert und erkannt werden).
  133.  
  134.  
  135. Text-Fenster
  136. ------------
  137. Hier wird der erkannte Text ausgegeben.
  138.  
  139. Auch in diesem Fenster kann man einen Block markieren. Mit gedrückter
  140. Maustaste überfährt man mit der Maus, den gewünschten Bereich. Alle
  141. markierten Text-Zeilen werden invertiert ausgegeben. Hält man eine der
  142. SHIFT-Tasten gedrückt, bevor man, wie oben erklärt, den Block definiert,
  143. wird ein eventuell schon markierter Block bis zur Mausposition vergrößert
  144. bzw. verkleinert.
  145.  
  146. Text-Blöcke kann man löschen und/oder ins Klemmbrett kopieren, auf diese
  147. Weise ist eine einfache Übernahme des Textes zu anderen Programmen (die
  148. das Klemmbrett unterstützen) möglich.
  149.  
  150.  
  151.  
  152.  
  153. OCR-Menü
  154. ========
  155.  
  156. Programminfo
  157. ------------
  158. Informationen über das Programm.
  159.  
  160.  
  161.  
  162.  
  163. Datei-Menü
  164. ==========
  165.  
  166. Bild laden  (CTRL-O)
  167. --------------------
  168. Läd ein Bild im IMG-Format (nur monochrom). Falls sich schon ein Bild im
  169. Speicher befindet, das verändert wurde, erscheint ein Warnhinweis und
  170. man hat dann folgende Möglichkeiten:
  171.   Speichern: Bevor das neue Bild geladen wird, wird das alte Bild ge-
  172.              speichert.
  173.   Laden:     Das neue Bild wird geladen (die Änderungen des alten Bildes
  174.              gehen verloren).
  175.   Abbruch:   Die ganze Aktion wird abgebrochen.
  176.  
  177. Bild speichern (CTRL-M)
  178. -----------------------
  179. Speichert das im Speicher befindliche Bild im IMG-Format.
  180.  
  181.  
  182. ASCII speichern (ALT-S)
  183. -----------------------
  184. Der erkannte Text wird im ASCII-Format gespeichert. Gibt man eine schon
  185. existierende Datei an, kann man den Text and diese Datei anhängen oder
  186. diese Datei überschreiben (dann geht der ursprüngliche Inhalt der Datei
  187. verloren).
  188.  
  189. ASCII löschen
  190. -------------
  191. Der erkannte Text wird gelöscht. Falls der Text noch nicht gespeichert
  192. wurde, fragt das Programm sicherheitshalber noch einmal nach:
  193.   Speichern: Bevor der Text gelöscht wird, wird er gespeichert.
  194.   Löschen:   Der Text wird gelöscht.
  195.   Abbruch:   Die ganze Aktion wird abgebrochen.
  196.  
  197.  
  198. Font laden (ALT-R)
  199. ------------------
  200. Eine Zeichensatz-Datenbank wird geladen. Falls sich im Speicher eine
  201. Zeichensatz-Datenbank befindet, die noch nicht gespeichert wurde, gibt
  202. das Programm eine Warnung aus; man hat jetzt folgende Möglichkeiten:
  203.   Speichern: Die alte Zeichensatz-Datenbank wird gespeichert bevor die
  204.              neue geladen wird.
  205.   Laden:     Die Zeichensatz-Datenbank wird geladen.
  206.   Abbruch:   Die ganze Aktion wird abgebrochen.
  207.  
  208. Font speichern (ALT-W)
  209. ----------------------
  210. Die Zeichensatz-Datenbank wird gespeichert.
  211.  
  212. Font löschen
  213. ------------
  214. Die Zeichensatz-Datenbank wird gelöscht. Falls die Zeichensatz-Datenbank
  215. noch nicht gespeichert wurde, gibt es eine Warnung und wieder die
  216. Möglichkeit die Datenbank vorher zu Speichern, bzw. die Aktion abzu-
  217. brechen. Wenn man eine neue Datenbank anlegen möchte, muß man die alte
  218. vorher aus dem Speicher entfernen.
  219.  
  220.  
  221. Programmende (CTRL-Q)
  222. ---------------------
  223. Hier kann man das Programm verlassen. Wenn irgendwelche Daten noch nicht
  224. gespeichert wurden, hat man jetzt noch die Möglichkeit dazu, denn es
  225. erscheint wieder ein entsprechener Warnhinweis.
  226.  
  227.  
  228.  
  229.  
  230. Bearbeiten-Menü
  231. ===============
  232.  
  233. Alles markieren (CTRL-A)
  234. ------------------------
  235. Das komplette Bild wird als Block markiert, wenn das Bild-Fenster zu-
  236. oberst liegt. Wenn das ASCII-Fenster oben liegt wird der komplette Text
  237. markiert.
  238.  
  239. Blockmarken löschen (CTRL-B)
  240. ----------------------------
  241. Löscht die Blockmarken im Bild-Fenster, falls es oben liegt; bzw. im
  242. ASCII-Fenster, falls dieses oben liegt.
  243.  
  244. Kopieren (CTRL-C)
  245. -----------------
  246. Kopiert den markierten Block des obersten Fensters in das Klemmbrett
  247.  
  248. Diese Funktion ist nur dann anwählbar, wenn man in 'Parameter'/'Allge-
  249. mein' die Klemmbrett-Unterstützung eingeschaltet hat.
  250.  
  251. Das Klemmbrett ist ein Verzeichnis auf der Festplatte/Diskette (meistens
  252. C:\CLIPBRD). Programme, die das Klemmbrett unterstützen, können auf
  253. einfache Weise Daten austauschen. Der Benutzer benutzt die Funktionen
  254. 'kopieren' oder 'ausschneiden' um (markierte) Daten in das Klemmbrett
  255. zu übertragen. Möchte man die Daten im Klemmbrett wieder verwenden
  256. (dabei ist es egal, ob dies aus dem gleichen Programm heraus geschieht,
  257. oder von einem anderen Programm) benutzt man die Funktion 'einfügen'.
  258.  
  259. Wie sieht das z.B. in der Praxis aus:
  260. Aus einem Programm 'SCANN.PRG' (Programmname erfunden) wird ein Artikel
  261. einer Zeitschrift eingescannt. Mit dem Menüpunkt 'kopieren' wird diese
  262. Grafik in das Klemmbrett kopiert. Jetzt wechselt man zum Programm
  263. 'OCR.PRG'; hier benutzt man die Funktion 'einfügen' um die Grafik aus dem
  264. Klemmbrett zu laden. Jetzt wandelt man mit Hilfe von 'OCR.PRG' die Grafik
  265. in einen Text um, und 'kopiert' ihn in das Klemmbrett. Nun wechselt man
  266. zu einer Textverarbeitung und läd dort den Text aus dem Klemmbrett mit
  267. 'einfügen'.
  268. Vorteil des Klemmbretts: Der Benutzer muß sich also keine Dateinamen
  269. aussuchen um die Zwischendateien zu speichern um sie im nächsten Programm
  270. wieder zu laden.
  271.  
  272. Ausschneiden (CTRL-X)
  273. ---------------------
  274. Der markierte Bereich des obersten Fensters wird in das Klemmbrett
  275. kopiert. Im Fenster wird dieser Bereich danach gelöscht.
  276.  
  277. Diese Funktion kopiert den markierten Bereich nur dann in das Klemmbrett,
  278. wenn man in 'Parameter'/'Allgemein' die Klemmbrett-Unterstützung einge-
  279. schaltet hat. Gelöscht wird der Bereich aber auf jeden Fall.
  280.  
  281. Einfügen (CTRL-V)
  282. -----------------
  283. Wenn sich im Klemmbrett ein IMG-Bild befindet wird dieses geladen.
  284.  
  285. Diese Funktion ist nur dann anwählbar, wenn man in 'Parameter'/'Allge-
  286. mein' die Klemmbrett-Unterstützung eingeschaltet hat.
  287.  
  288.  
  289. Bildgröße (CTRL-0,1,2,3,4)
  290. --------------------------
  291. Hier kann man das Bild verkleinert anzeigen lassen, damit man eine
  292. bessere Übersicht erhält. Unter MultiTOS oder auf dem Falcon ist die
  293. Bildgröße auch durch ein Submenü einstellbar, sonst erscheint eine
  294. Dialogbox.
  295. Folgende Größen sind möglich:
  296.    100% (CTRL-0):  Original Größe
  297.     50% (CTRL-1):  Breite und Höhe des Bildes haben nur noch die halbe
  298.                    Länge (1:2).
  299.     25% (CTRL-2):  1:4
  300.   12.5% (CTRL-3):  1:8
  301.   6.25% (CTRL-4):  1:16
  302.  
  303.  
  304. Textfenster öffnen (CTRL-T)
  305. ---------------------------
  306. Öffnet das Textfenster.
  307.  
  308.  
  309. Text erkennen (F1)
  310. ------------------
  311. Startet die Texterkennung. Wenn ein Block markiert wurde, wird nur
  312. dieser Blockinhalt zur Texterkennung benutzt; ist kein Block definiert,
  313. wird das komplette Bild zur Texterkennung verwendet. Bilder und Linien
  314. müßen eventuell vorher gelöscht werden, damit das Programm Textzeilen
  315. bzw. einzelne Buchstaben erkennen kann.
  316.  
  317. WICHTIG: Bitte achten Sie darauf, daß die richtige Zeichensatz-Datenbank
  318.          geladen wurde. Wenn noch keine passende Datenbank vorhanden
  319.          ist, sollte man mit 'Font löschen' die eventuell im Speicher
  320.          befindliche löschen (In 'Parameter'/'Font' sollte man jetzt
  321.          unbedingt die relevanten Scannereinstellungen ins Kommentarfeld
  322.          eintragen. Auch an die Leerzeichenbreite sollte man denken).
  323.  
  324. Das Programm sucht zunächst nach der ersten Zeile. Als Zeile wird
  325. erkannt, was durch mindestens eine leere (weiße) Linie oben und
  326. unten umgrenzt wird und mindestens 5 Pixel hoch ist (Ich nehme an, daß
  327. niemand auf die Idee kommt, solch kleine Buchstaben (<5 Pixel Höhe)
  328. erkennen zu wollen). Auf diese Weise kann das Programm unter Umständen
  329. Unterstreichungen automatisch ignorieren (wenn sich Unterlängen einiger
  330. Buchstaben aber auf gleicher Höhe wie die Unterstreichung befinden,
  331. funktioniert dies nicht mehr; in diesem Fall muß man die Unterstreichung
  332. löschen (Block ausschneiden)).
  333. Nach dem das Programm eine Zeile gefunden hat, werden die Buchstaben
  334. dieser Zeile separiert und mit den Buchstaben der Zeichensatz-Datenbank
  335. vergleichen. Das Zeichen aus der Datenbank, das die größte Ähnlichkeit
  336. mit dem zu erkennenden Zeichen hat, wird in den Text eingefügt. Findet
  337. sich in der Datenbank kein Zeichen, das eine ausreichende Ähnlichkeit
  338. hat, wird bei eingeschaltetem Lernmodus (siehe Parameter) der
  339. Benutzer nach dem Zeichen befragt, bei ausgeschaltetem Lernmodus wird
  340. ein, vom Benutzter bestimmbares, Ersatzzeichen in den Text eingefügt.
  341. Sowohl die Art des Vergleichs zwischen den Zeichen, als auch der Grad
  342. der Übereinstimmung, der mindestens nötig ist um ein Zeichen als
  343. 'erkannt' zu betrachten, läßt sich einstellen (siehe Parameter).
  344.  
  345. Bei eingeschaltetem Lernmodus, fragt das Programm in einer Dialogbox
  346. nach, wenn es ein Zeichen nicht mit ausreichender Sicherheit erkennen
  347. kann. Das Zeichen wird in der Dialogbox angezeigt und ausserdem im
  348. Bildfenster markiert. In der Dialogbox gibt man das (die) zu diesem
  349. Zeichen passende(n) ASCII-Zeichen ein. Man kann hier bis zu fünf ASCII-
  350. Zeichen eingeben, da es vorkommen kann, daß Zeichen beim Scannen zusam-
  351. menwachsen (Das Programm kann sie dann nicht trennen). Zusammenge-
  352. wachsene Zeichen (Ligaturen) können durchaus auch schon in der Vorlage
  353. vorkommen, dies wird gerne bei bestimmten Zeichenfolgen gemacht.
  354. In der Dialogbox kann man außerdem angeben, ob das zu erkennende Zeichen
  355. in die Zeichensatz-Datenbank aufgenommen, und ob das ASCII-Zeichen in
  356. den Text eingefügt werden soll. Diese beiden Einstellungen sind normal-
  357. erweise eingeschaltet. Wenn man aber weiß, daß das zu erkennende Zeichen
  358. so nicht (oder nie) mehr vorkommen wird (weil es beispielsweise durch
  359. Fehler beim Scannen, oder eine schlechte Scan-Vorlage verunstaltet ist)
  360. kann man verhindern, daß das Zeichen in der Zeichensatz-Datenbank ge-
  361. speichert wird. Verläßt man die Dialogbox mit 'OK' wird mit der Texter-
  362. kennung fortgefahren, 'Abbruch' bricht die Texterkennung ab.
  363. Man kann die Texterkennung auch dann abbrechen, wenn das Programm nicht
  364. wegen unbekannten Zeichen nachfragt (siehe nächster Punkt).
  365.  
  366. Texterkennung abbrechen (ESC)
  367. -----------------------------
  368. Hiermit kann man die Texterkennung abbrechen. Da das Programm aber nur
  369. am Ende jeder Zeile auf Tastendrücke bzw. auf eine Menüauswahl reagiert,
  370. kann es durchaus einige Sekunden dauern bis die Texterkennung abge-
  371. brochen wird.
  372.  
  373.  
  374.  
  375.  
  376. Parameter
  377. =========
  378.  
  379. Texterkennung (ALT-O)
  380. ---------------------
  381. Diese Einstellungen beeinflussen die Texterkennung.
  382.  
  383. Lernmodus:  Wird ein Zeichen nicht mit genügend hoher Übereinstimmung
  384.             erkannt, wird der Benutzer bei eingeschaltetem Lernmodus
  385.             befragt, bei ausgeschaltetem Lernmodus wird '?' in den Text
  386.             eingefügt.
  387. Übereinstimmung:  Hier gibt man an, wie groß die Übereinstimmung beim
  388.             Vergleich sein muß, um ein Zeichen als 'erkannt' zu be-
  389.             trachten.
  390. Akustisches Signal:  Wenn die Zeichensatz-Datenbank ziemlich vollständig
  391.             ist, wird das Programm sehr selten (wenn überhaupt) nach
  392.             einem Zeichen fragen. Man kann das Programm daher alleine
  393.             rechnen lassen; wenn dieser Knopf angewählt ist, macht das
  394.             Programm mit einem PING aufmerksam, wenn die Erkennung be-
  395.             endet ist oder das Programm nach einem Zeichen fragt.
  396.             (Dieser Ton kann auch mit dem Kontrollfeld abgeschaltet
  397.             werden! D.h.: Wenn man ihn im Kontrollfeld abgeschaltet hat,
  398.             wird man niemals einen Ton hören!)
  399.  
  400. Vergleich der Zeichen:  Das Programm vergleicht die Zeichen des Bildes
  401.             mit den Zeichen der Zeichensatz-Datenbank. Zum Vergleich
  402.             wird das zu erkennende Zeichen wie eine Schablone über die
  403.             Zeichen der Datenbank gelegt.  Wählt man 'schnell', wird
  404.             das Zeichen nur einmal mit jeden Zeichen aus der Datenbank
  405.             verglichen; bei 'mittel' und 'genau' wird das Zeichen zu-
  406.             sätzlich etwas verschoben mit den Zeichen aus der Datenbank
  407.             verglichen (Auf diese Weise können Ungenauigkeiten, die
  408.             durch das Scannen entstehen, ausgeglichen werden. Durch die
  409.             zusätzlichen Vergleiche wird dann natürlich mehr Rechenzeit
  410.             verbraucht, aber das Programm fragt nicht so oft nach unbe-
  411.             kannten Zeichen; die Trefferquote steigt an).
  412.  
  413. Qualität des Bildes:  Stammt das Bild aus einem Scanner, sollte man hier
  414.             unbedingt 'Scanner' auswählen. Kleine Unterschiede zwischen
  415.             den Zeichen, die durch das Scannen entstehen, werden in
  416.             dieser Einstellung herausgefiltert (Filter).
  417.             Hat man z.B. ein Bild aus einem Zeichenprogramm, werden die
  418.             darin vorkommenden Texte (Systemzeichensatz oder GDOS-
  419.             Zeichensätze) sehr wahrscheinlich ohne jegliche Störung sein
  420.             (im Gegensatz zu eingescannten Texten, die normalerweise
  421.             immer Störungen [z.B.unsaubere Ränder] enthalten).
  422.             In diesem Fall sollte man 'präzise' einstellen. Dann werden
  423.             ALLE Unterschiede zwischen den Zeichen beachtet. Wenn diese
  424.             Zeichensätze sehr klein sind, müssen tatsächlich ALLE Unter-
  425.             schiede beachtet werden (die oben genannten Filter lassen
  426.             sonst eventuell nicht mehr viel von den Zeichen übrig).
  427.             Diese Einstellung spart übrigens einige Rechenzeit.
  428.  
  429. Schräglage des Bildes: Hier kann man einstellen, ob das Programm auch
  430.             schräg eingescannte Vorlagen akzeptiert. Bei normalem Text
  431.             kann man diese Einstellung immer so wählen, daß auch eine
  432.             stärkere Schäglage akzeptiert wird. Es kann aber in seltenen
  433.             Fällen notwendig sein, eine schwache Schräglage einzustellen:
  434.             Bei Texten die kurze Absätze oder einzelne (freistehende)
  435.             kurze Zeilen enthalten, die sehr(!!!) weit eingerückt sind,
  436.             kann es passieren, daß das Programm diese Zeilen sonst
  437.             'übersieht'.
  438.             (Beispiel: Briefe mit oben rechts stehendem Absender (weit
  439.             eingerückt bezüglich dem restlichen Text))
  440.  
  441.  
  442. Font (ALT-F)
  443. ------------
  444. Hier erhält (bzw. bestimmt) man Informationen über die gerade im
  445. Speicher befindliche Zeichensatz-Datenbank.
  446.  
  447. Leerzeichen:
  448.   Breite:           Legt die Mindestbreite der Leerzeichen fest
  449.   variable Breite:  Falls in der Vorlage alle (Leer-)Zeichen gleich
  450.                     breit sind, muß dieser Knopf ausgeschaltet werden.
  451.                     Sonst sollte er eingeschaltet werden.
  452.  
  453. Kommentar:    Hier kann man beliebigen Text eingeben, der auch beim
  454.               Speichern der Datenbank mitgepeichert wird. Hier sollte
  455.               man notieren, um welchen Zeichensatz es sich handelt
  456.               (z.B. Herkunft: aus Zeitschrift XYZ) und mit welcher
  457.               Scannereinstellung (DPI, Kontrast, Helligkeit etc.) die
  458.               Zeichen entstanden sind. Somit kann man vor dem Scannen
  459.               von Text, den Scanner richtig einstellen (Weichen die
  460.               Scannereinstellungen zu stark ab, wird das Programm
  461.               unter Umständen nur noch wenige Zeichen erkennen).
  462.  
  463.  
  464. Font bearbeiten (ALT-E)
  465. -----------------------
  466. Hier kann man einige Änderungen an der Zeichensatz-Datenbank vornehmen.
  467.  
  468. Zeichensatz-Überblick:  Hier kann man durch die Zeichen blättern.
  469.               Ein Klick auf ein Zeichen, wählt dieses aus (siehe
  470.               nächsten Punkt).
  471. Ausgewähltes Zeichen:   Hier sind Änderungen an dem ausgewählten Zeichen
  472.               möglich.'Löschen' löscht dieses Zeichen aus der Datenbank,
  473.               in 'ASCII' kann man die zu dem Zeichen gehörenden ASCII-
  474.               Code (bis zu 5 ASCII-Zeichen) ändern/bestimmen.
  475. Zeichen suchen:  Man kann ASCII-Zeichen suchen. 'Suchen' sucht ab
  476.               Anfang, 'Suchen fortsetzen' sucht ab der aktuellen
  477.               Position. Ist das Suchen erfolgreich, wird das gefundene
  478.               Zeichen nach 'Ausgewähltes Zeichen' übertragen.
  479. Sortieren:    Die Zeichen der Datenbank werden sortiert.
  480. Statistik:    Man erhält eine Übersicht, welche Zeichen sich wie oft in
  481.               der Datenbank befinden. Es werden aber nur die wichtigsten
  482.               Zeichen angezeigt (Platzgründe).
  483.  
  484.  
  485. Korrektur (ALT-C)
  486. -----------------
  487. Die Texterkennung ist natürlich nicht perfekt. Es gibt Zeichen, die das
  488. Programm schwer (bzw. nicht) unterscheiden/erkennen kann. Bei einigen
  489. Zeichensätzen sind beispielsweise '1' und 'l' noch nicht mal mit dem
  490. Auge gut zu unterscheiden, wenn dann der Scanner noch einige Ungenauig-
  491. keiten 'einbaut' kann das Zeichen nicht mehr genau zugeordnet werden.
  492. Hier hilft nur noch eine Korrektur, die die Umgebung des Zeichens be-
  493. trachtet, und prüft ob in dieser Umgebung das eine oder andere Zeichen
  494. wahrscheinlicher ist (z.B. innerhalb von Ziffern wird sich kein 'l'
  495. sondern eine '1' befinden).
  496. Bestimmte Zeichen werden als mehrere einzelne Zeichen erkannt (z.B.
  497. <"> wird als zwei mal <'> erkannt).
  498.  
  499. In dieser Dialogbox können Korrekturregeln für diese Probleme fest-
  500. gelegt werden.
  501.  
  502. Ersetzungen:  Hier wird eingetragen, welche Zeichenkombinationen durch
  503.               eine andere ersetzt werden soll. (Man kann z.B. zwei
  504.               (Hoch-)Kommata in Anführungsstriche umwandeln)
  505. Korrekturen:  Wenn im zu erkennenden Text die Zeichen 1/l, l/I oder 0/O
  506.               sehr ähnlich sind, kann man automatische Korrekturen
  507.               einschalten.
  508.               ACHTUNG: Diese Korrekturen können im Einzelfall natürlich
  509.                        auch falsche Ergebnisse liefern!
  510.  
  511. Text formatieren:
  512.    Original Format:  Eine Zeile Text im Bild, wird zu einer Zeile ASCII-
  513.               Text. Leerzeichen am Zeilenanfang können ignoriert werden.
  514.    neu formatieren:  Der Text im Bild wird vollkommen neu formatiert.
  515.               Dabei wird die gewünschte Zeilenbreite beachtet. Dies ist
  516.               nützlich, wenn man Vorlagen hat, die aus engen Spalten
  517.               bestehen. In diesem Fall besitzt der Text meistens viele
  518.               getrennte Wörter. Bei eingeschalteter Trennungskorrektur
  519.               werden die Trennungsstriche automatisch entfernt. Es gibt
  520.               aber auch hier einige Ausnahmeregeln. (Übrigens wird 'k-k'
  521.               wieder zu 'ck' überführt). Diese Option ist natürlich nur
  522.               für Fließtext gedacht, für Programm-Listings, Tabellen etc.
  523.               ist diese Einstellung nicht geeignet. (Das Programm selbst
  524.               setzt keine neuen Trennstriche!)
  525.  
  526. Leerzeilen zwischen Erkennungs-Vorgängen:
  527.               Zwischen den Texten, die aus verschiedenen Erkennungs-
  528.               Vorgängen stammen, wird die angegebene Anzahl von Leer-
  529.               zeilen eingefügt.
  530.  
  531. Unbekanntes Zeichen:
  532.               Hier gibt man an, mit welchem Zeichen das Programm (bei
  533.               ausgeschaltetem Lernmodus) unbekannte Buchstaben kenn-
  534.               zeichnen soll.
  535.  
  536.  
  537. Allgemein (ALT-A)
  538. -----------------
  539. Dialoge: Die Dialogboxen können wahlweise in der Bildschirmmitte oder an
  540.          der Mausposition auftauchen. Der Punkt 'verschieben' bewirkt,
  541.          daß der durch die Dialogboxen verdeckte Teil des Bildschirms
  542.          gepuffert wird, und man die Dialogboxen verschieben kann
  543.          (klappt aber nur, wenn genug Speicher frei ist), wenn man auf
  544.          den Dialoghintergrund klickt. Hält man beim Verschieben eine 
  545.          SHIFT-Taste gedrückt, wird der Dialog unsichtbar verschoben;
  546.          auf diese Weise kann man auch bei kleinen Auflösungen 'hinter'
  547.          die Dialoge schauen.
  548.          (Hat man 'Let'em Fly', 'MultiDIAL' oder ähnliche Programme
  549.          sollte man diesen Knopf NICHT anwählen, denn diese Programme
  550.          erledigen das Verschieben wesentlich besser!).
  551.  
  552. Pfade & Dateien:
  553.          Klickt man auf die Pfad-Boxen, kann man im Fileselector ver-
  554.          schiedene Zugriffspfade bestimmen. Diese Pfade werden beim Pro-
  555.          grammstart automatisch voreingestellt, sodaß man beim Laden/
  556.          Speichern gleich im richtigen Verzeichnis landet.
  557.  
  558.          Klickt man auf die Standard-Datei-Boxen, kann man im Fileselector
  559.          Dateien aussuchen. Diese Dateien werden beim Programmstart auto-
  560.          matisch geladen. Wenn man immer die gleiche Zeichensatz-Datenbank
  561.          bzw. die gleichen Korrekturregeln benutzt, kann man sie somit
  562.          automatisch laden lassen.
  563.  
  564. Verschiedenes:
  565.          Wird der 'Text-Fenster'-Button angekreuzt, wird das Text-Fenster
  566.          nach dem Programmstart automatisch geöffnet.
  567.  
  568. Klemmbrett:
  569.          Hier kann man die Verwendung des Klemmbretts für die Funktionen
  570.          'kopieren', 'ausschneiden' und 'einfügen' getrennt für Grafik
  571.          (IMG-Fenster) und Text (Textfenster) ein.- bzw. ausschalten.
  572.  
  573.          Da das Programm Grafik in Text verwandelt, ist ein 'kopieren'
  574.          und/oder 'ausschneiden' von Text in das Klemmbrett sehr nützlich.
  575.          Das 'Ausschneiden' (=löschen) von Grafik in das Klemmbrett ist
  576.          aber wahrscheinlich nicht beabsichtigt, da normalerweise nur
  577.          Grafik-Blöcke gelöscht werden sollen, die die Texterkennung stören
  578.          würden. Schaltet man z.B. die Klemmbrett-Unterstützung für das
  579.          'Ausschneiden' von Grafik aus, spart man Zeit (die Grafik muß nicht
  580.          gespeichern werden) und es wird verhindert, daß ein zuvor auf das
  581.          Klemmbrett kopierter Text durch eine ausgeschnittene Grafik über-
  582.          schrieben wird.
  583.  
  584.  
  585. Nachfrage: Diese beiden Buttons entsprechen den Buttons im dem Dialog,
  586.          mit dem das Programm nach unbekannten Zeichen fragt. Hier kann
  587.          man angeben wie die Buttons in Nachfrage-Dialog voreingestellt
  588.          werden sollen. Hier kann man sich eine geeignete Voreinstellungen
  589.          wählen, sodaß man während des Erkennungsvorganges möglichst wenige
  590.          Einstellungen ändern muß.
  591.          Wenn die Zeichensatz-Datenbank schon (fast) komplett ist, fragt
  592.          das Programm meist nach Buchstaben die durch Scanfehler verun-
  593.          staltet wurden (diese Buchstaben sollen dann nicht in die Daten-
  594.          bank aufgenommen werden), daher ist es günstig die 'Aufnahme in
  595.          Datenbank' auszuschalten. Wurde eine Datenbank neu angelegt, ist
  596.          es günstiger 'Aufnahme in Datenbank' einzuschalten.
  597.  
  598.  
  599. sichern
  600. -------
  601. Die Einstellungen des Programms werden gesichert. Beim nächsten Pro-
  602. grammstart werden die Einstellungen auf die gesicherten Werte gesetzt.
  603. Gesichert werden:
  604.   * Alle Einstellungen der Dialogboxen 'Text erkennen' und
  605.     'Allgemeine Einstellungen'
  606.   * Fensterpositionen und Fenstergrößen der beiden Fenster
  607.  
  608.  
  609.  
  610.  
  611. Tips & Tricks
  612. =============
  613. Man sollte immer darauf achten, daß man beim Scannen die gleichen
  614. Scanner-Einstellungen benutzt, mit der auch die Zeichensatz-Datenbank
  615. aufgebaut wurde. Werden andere Einstellungen benutzt kann es passieren,
  616. daß die Zeichen dicker oder dünner ausfallen; das Programm wird dann
  617. Probleme haben, die Zeichen zu erkennen. Falls die Scan-Vorlagen
  618. allerdings sehr unterschiedliche Qualität haben, kann es dennoch nötig
  619. sein, andere Scanner-Einstellungen zu benutzen.
  620.  
  621. Für jeden unterschiedlichen Zeichensatztyp und für jede Größe sollte man
  622. eine eigene Zeichensatz-Datenbank aufbauen. Dadurch bleiben die Daten-
  623. bänke klein. Eine durch viele Zeichensatztypen aufgeblähte Datenbank
  624. verlangsamt den Erkennungsvorgang deutlich.
  625. Es ist in machen Fällen aber trotzdem nicht zu vermeiden, daß man mehrere
  626. Zeichensatztypen in einer Datenbank halten muß (z.B. wenn man oft Texte
  627. bearbeitet, die normale UND kursive Schrift enthalten).
  628. Damit man später noch weiß, welche Zeichensatz-Datei für welche Vorlage
  629. (und Scannereinstellung) geeignet ist, sollte man die Kommentarfelder in
  630. 'Einstellungen'/'Font' immer gewissenhaft ausfüllen.
  631.  
  632. Die Scannergebnisse sollten sauber und gleichmäßig sein. Kontrast und
  633. Helligkeit so einstellen, daß mehrere Zeichen nicht zusammenwachsen aber
  634. in den Zeichen selbst keine Lücken entstehen.
  635. Je niedriger die Scannerauflösung, desto weniger Platz benötigen die
  636. Zeichen in der Datenbank (entsprechend weniger Rechenzeit wird bei der
  637. Erkennung verbraucht). Allerdings besteht bei niedrigen Scannerauf-
  638. lösungen die Gefahr, daß mehrere Zeichen zusammenwachsen. Man muß etwas
  639. experimentieren um die ideale Auflösung zu finden.
  640.  
  641. Den Grad der Übereinstimmung beim Vergleich der Zeichen kann man bei
  642. hohen Scannerauflösungen bzw. guten Scannergebnissen niedrig einstellen.
  643. Sollten bei der Erkennung bestimmte Zeichen immer wieder falsch bestimmt
  644. werden, sollte man den Grad der Übereinstimmung etwas erhöhen. Bei hohem
  645. Grad, fragt das Programm etwas öfter nach.
  646.  
  647. Möchte man in den Dialogboxen Buchstaben eingeben, die nicht auf der
  648. Tastatur vorhanden sind, benötigt man entweder TOS 2.06/3.06 oder höher
  649. oder MultiTOS (man kann den ASCII-Code, bei gedrückt gehaltener
  650. ALTERNATE-Taste, über den Ziffernblock eingeben) oder Let'em Fly von
  651. Oliver Scheel (Nach betätigen von SHIFT-INSERT erhält man eine Übersicht
  652. über alle möglichen Zeichen) oder COMPOSE von Pascal Fellerich.
  653.  
  654. Besitzt man keine Festplatte, sollte man die Klemmbrett-Unterstützung
  655. ausschalten (siehe 'Parameter'/'Allgemein').
  656.  
  657. Auch wenn das Programm ab Version 1.2 (leicht) schräg eingescannte
  658. Vorlagen akzeptiert, sollte man darauf achten, die Vorlagen möglichst
  659. gerade einzuscannen.
  660.  
  661.  
  662.  
  663. Technisches
  664. ===========
  665. Das Programm unterstützt die erweiterten WM_ARROWED-Nachrichten und die
  666. WM_BOTTOMED-Nachricht von Winx 2.2.
  667.  
  668. Das Programm unterstützt außerdem den VSCR-Cookie. D.h. auch bei einer
  669. hohen virtuellen Grafikauflösung erscheinen Dialogboxen im gerade sicht-
  670. baren Bildausschnitt.
  671.  
  672. Auf dem Falcon (>=TOS 4.02) und unter MultiTOS werden die 3D-Effekte in
  673. den Dialogboxen benutzt. Die Bildgröße kann man dann auch über ein Sub-
  674. menü einstellen.
  675.  
  676. Speicherplatzverbrauch: Der meiste Speicher wird gewöhnlich von den
  677. eingescannten Bildern verbraucht. Dieser Speicherplatz wird außerdem
  678. zweimal benötigt: Das Bild muß einmal im Standardformat (die Text-
  679. Erkennung bezieht ihre Daten aus diesem Speicherbereich) und einmal
  680. im geräteabhängigem Format (dieses Format ist abhängig von der Grafik-
  681. karte und wird zur Anzeige auf dem Bildschirm benötigt) vorliegen.
  682. Beispiel:
  683.   Eine DIN A4 Seite Text (8x11 Zoll), mit 400 DPI eingescannt, benötigt
  684.   ca. 1.7 MBytes, das Programm benötigt diesen Platz zweimal: also
  685.   ca. 3.4 MBytes.
  686.  
  687.  
  688.  
  689. Bekannte Fehler und Unschönheiten
  690. =================================
  691. Das Programm kann in seltenen Fällen zwei Zeichen nicht trennen, obwohl
  692. sie nicht zusammengewachsen sind. Grund: Es gibt einige Buchstaben, die
  693. aus mehreren nicht zusammenhängenden Teilen bestehen (z.B. alle Buch-
  694. staben mit Punkt [i,j,ä usw.] oder ░,ñ usw.); das Programm versucht diese
  695. Buchstaben nicht in mehrere Teile zu trennen, mehrere sich überlappende
  696. Buchstaben sollten aber doch getrennt werden (aber diese Unterscheidung
  697. klappt nicht immer).
  698.  
  699. Bei großen Scannerauflösungen werden die Zeichen der Datenbank recht
  700. groß. Das Programm verbraucht dann sehr viel Rechenzeit.
  701.  
  702. Die Größe der Zeichen ist zur Zeit noch auf max. 96x96 Pixel beschränkt,
  703. daher sollte man die Scannerauflösung nicht zu hoch wählen. (Empfehlung:
  704. max. 400 DPI, dann können auch Ligaturen aus 2-3 Buchstaben noch in 96x96
  705. Pixeln untergebracht werden).
  706.  
  707. Aufgrund eines Fehlers im Betriebssystem (<=TOS 2.06) kann es bei der
  708. Anzeige eines großen Bildes zu Pixel-Müll kommen. Der Fehler steckt in
  709. der Funktion 'vr_trnfm()'. Hierfür gibt es einen Patch von Laurenz
  710. Prüßner, S. und W. Behne (veröffentlicht im ST-Magazin 9/91).
  711. Auf dem TT/Falcon oder bei installiertem NVDI (oder einem VDI-Treiber
  712. einer Grafikkarte) tritt dieser Fehler (hoffentlich) nicht mehr auf
  713. (der oben genannte Patch ist dann nicht nötig).
  714.  
  715.  
  716.  
  717. Zukunft
  718. =======
  719. Folgende Erweiterungen sind geplant (Vorschläge werden gerne aufgenommen):
  720.  
  721. * Nachfrage nach unbekannten Zeichen nachdem das komplette Bild (Block) be-
  722.   arbeitet wurde. Bei unvollständigen Datenbänken, könnte man das Programm
  723.   alleine rechnen lassen ohne gelegentlich Fragen beantworten zu müssen;
  724.   die kommen dann ganz am Schluß.
  725.  
  726. * Batch-Betrieb: Automatisches Abarbeiten mehrerer Vorlagen. (Voraussetzung
  727.   hierfür ist die Implementation des ersten Punktes)
  728.  
  729. * Änderungen (auf Pixelebene) der Zeichen in der Datenbank. (Um gößere
  730.   Scann-Fehler etwas auszugleichen)
  731.  
  732. * Mehrere Zeichensatz-Datenbänke gleichzeitig verwalten. Man könnte dann
  733.   auch bei Texten die verschiedene Schrifttypen oder -größen enthalten,
  734.   die Datenbänke so organisieren, daß sie nur einen Schrifttyp (Größe)
  735.   enthalten.
  736.  
  737.  
  738.  
  739. Sonstiges
  740. =========
  741. Ich empfehle, das Programm 'Let'em Fly' von Oliver Scheel zu
  742. installieren. Damit werden alle Dialogboxen verschiebbar, und man kann
  743. sie dann auch mit der Tastatur bedienen (u.a. bequeme Eingabe aller
  744. ASCII-Zeichen und erweiterte Editiermöglichkeiten in Edit-Felder).
  745.  
  746. Besonders unter Multitasking-Systemen (z.B. MultiTOS) sollte man auch
  747. 'MultiDialog' von Helmut Neukirchen installieren. Dieses Programm legt
  748. Dialogboxen in Fenster, so daß andere Prozesse nicht mehr durch Dialoge
  749. blockiert werden können.
  750.  
  751. Ausserdem empfehlenswert: Winx von Martin Osieka. Mit Hilfe dieses
  752. Programms kann man bis zu 40 Fenster gleichzeitig öffnen und es werden
  753. einige zusätzlichen Fensterfunktionen installiert.
  754.  
  755. Diese Programme gibt es in Mailboxen und auf FTP-Servern oder direkt
  756. von den Autoren.
  757.  
  758.  
  759.  
  760. Versionsübersicht
  761. =================
  762.  
  763. Version  Datum         Was hat sich geändert
  764. --------------------------------------------------------------------
  765. V1.2     08.03.1994    - Dialoge (verschiebbar) können unsichtbar
  766.                          verschoben werden (SHIFT-Taste gedrückt halten)
  767.                        - Erkennungsvorgang beschleunigt
  768.                        - Buchstaben-Trennung verbessert
  769.                        - Repräsentat für unbekanntes Zeichen kann
  770.                          vom Benutzer bestimmt werden
  771.                        - Fehler beim IMG-Laden behoben
  772.                        - Schräg eingescannte Vorlagen können jetzt
  773.                          auch bearbeitet werden.
  774.                        - Viele weitere Kleinigkeiten wurden einge-
  775.                          baut.
  776.  
  777. V1.1a    06.02.1994    - Überflüßige 'Redraws' entfernt
  778.                        - Fehler in Textblock-löschen entfernt
  779.                        - Fehler im Zeichenvergleich beseitigt
  780.  
  781. V1.1     04.02.1994    - Klemmbrett-Unterstützung
  782.                        - Redraw-Fehler beim Scrollen behoben
  783.  
  784. V1.0a    01.02.1994    - Redraw-Fehler im Grafik-Fenster entfernt
  785.                        - OCR versucht jetzt nicht mehr unter Mag!X 2.0
  786.                          ein Submenu zu installieren
  787.  
  788. V1.0     30.01.1994    - erste veröffentlichte Version
  789.  
  790.  
  791.