Seite 1 von 1

Grafikformat TIF

Verfasst: Fr, 26. Mai 2006 17:45
von Wolfgang Ciriack
Kann mir jemand sagen, wie ich tif-Dateien anzeigen kann ?

Verfasst: Sa, 27. Mai 2006 14:53
von Tom
Hallo, Wolfgang.

Im Moment am einfachsten mit irgendeinem ActiveX-Control (suchen!), aber es ist bei der DevCon auf der Prioritätenliste stark nach oben geschoben worden.

Verfasst: Sa, 27. Mai 2006 15:06
von brandelh
Hallo,

der Internet Explorer soll jede Menge Dateien anzeigen können und leicht als ActiveX einbindbar sein. Da gibt es doch ein HTTP Beispiel - meine ich mich erinnern zu können. Statt einer HTML Seite einfach die TIF Datei mit Pfad angeben ...

Verfasst: Sa, 27. Mai 2006 19:25
von Wolfgang Ciriack
ok, dann werde ich mich mal auf die Suche begeben und meine ersten Versuche mit ActiveX machen...

Verfasst: So, 28. Mai 2006 1:19
von brandelh
Hallo,

übrigens, wenn du die Bilder nur überhaupt anzeigen willst, könntest du natürlich auch einen RunShell Befehl nutzen ...

Verfasst: So, 28. Mai 2006 9:52
von Wolfgang Ciriack
Hallo Hubert,
nein, ich habe ein Browse, in dem die gesannten tif-Dateien mit Dateinamen angezeigt werden, nach der OCR-Erkennung existiert zu jeder Grafikdatei auch eine gleichnamige Textdatei. Ich extrahiere aus der Textdatei eine bestimmte (Lieferschein-) Nummer. Nun kann es aber vorkommen, das diese Nummer durch das OCR-Programm nicht richtig (oder gar nicht) erkannt wurde. Somit möchte ich den entsprehenden Bereich der Grafikdatei neben dem Browse anzeigen, damit man diese Nummer per Hand dem Dokument zuweisen kann, d.h. ich muss bei Click auf die Browse-Zeile die entsprechende Grafik anzeigen.

Verfasst: So, 28. Mai 2006 11:01
von brandelh
Hi,

beim XbpBitmap kamen bei 1.9 neue Parameter, die könnten nützlich sein:
:getIPicture() --> oPicture
Gibt die Grafik als Automation-Objekt der Klasse IPicture zurück.
:setIPicture( <oPicture> ) --> lSuccess
Initialisiert ein Bitmap-Objekt mit den Grafikdaten eines IPicture Automation-Objekts.
mit dem COM Browser habe ich jetzt auf den ersten Blick nichts gefunden. Dennoch denke ich, dass es besser wäre das TIF über RUNSHELL an ein beliebiges Grafikprogramm zu übergeben und anzeigen zu lassen.
So hätte der Anwender mehr Übersicht und du nicht das Problem herauszufinden wo genau jetzt diese Nummer liegt und wie du den Bildschirmausschnitt definieren kannst, der angezeigt werden soll.

Verfasst: So, 28. Mai 2006 12:59
von Wolfgang Ciriack
Hallo Hubert,
ich habe das Problem gelöst. Habe mir einfach ein Shareware Viewer OCX heruntergeladen, das war mittels eXPress und Xbase 1.9 innerhalb von einer Stunde eingebunden. Funktioniert jetzt so wie ich es brauche.
Wenn jemand interessiert ist, kann ich ihm den Code gerne mailen.

Hätte nicht gedacht, dass das mit ActiveX so einfach zu integrieren ist.

Verfasst: So, 28. Mai 2006 15:00
von brandelh
Hallo,

wie heißt denn der Viewer ?
Bzw. von wo hast du ihn her ?

Verfasst: So, 28. Mai 2006 18:10
von Wolfgang Ciriack
Er heißt X360 Tiff & Fax Viewer und ich habe ihn unter

http://www.freedownloadscenter.com/Prog ... X_OCX.html

heruntergeladen. Er kostet ca. 60 $.

Folgende Methoden habe ich benutzt:

Code: Alles auswählen


@ 3,1 DCBROWSE oBrowseBilder ;
      DATA aFiles ;
      SIZE 20,23 ;
      POINTER nPointer ;
      CURSORMODE XBPBRW_CURSOR_ROW ;
      ITEMMARKED {|| iif(nPointer<>nView, (oTifView:LoadImage(scanfolder+"\"+aFiles[nPointer][2]), nView:=nPointer, oTifView:ZoomToFitByWidth()),NIL) } ;
      ITEMSELECTED {|| EditLfsNr(@aFiles[nPointer][3],@aFiles[nPointer][5]), oBrowseBilder:RefreshCurrent() } ;
      PRESENTATION aPresPar1 ;
      FIT ;
      EVAL {|o| o:ItemRbDown:={|aMPos,aLC,oBr| ActRbMenu(aMPos,aLC,oBr,oPopupMenu)} } ;
      NOHSCROLL 

@ 3,64 DCSTATIC TYPE XBPSTATIC_TYPE_RECESSEDBOX ;
     OBJECT oBild ;
     SIZE 50,23

DCACTIVEXCONTROL oTifview ;
      CLSID "TIFFVIEWER.TiffViewerCtrl.1" ;
      PARENT oBild 

@27,67.00 DCPUSHBUTTON CAPTION "Zoom -" ;
      SIZE 8,1 ;
      ACTION {|| oTifview:XZoomValue:=max(nZoom-0.2,0.2), oTifview:Zoom() } ;
      TABGROUP XBP_WITHIN_GROUP ;
      TABSTOP 

@27,76.00 DCPUSHBUTTON CAPTION "Passend" ;
      SIZE 8,1 ;
      ACTION {|| oTifView:ZoomToFitByWidth() } ;
      TABGROUP XBP_WITHIN_GROUP ;
      TABSTOP 

@27,85.00 DCPUSHBUTTON CAPTION "Zoom +" ;
      SIZE 8,1 ;
      ACTION {|| oTifview:XZoomValue:=nZoom+0.2, oTifview:Zoom() } ;
      TABGROUP XBP_WITHIN_GROUP ;
      TABSTOP 

......