Das Forentreffen 2018 findet am 20./21. April in Dresden statt. Weitere Infos hier
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

Topdown-Lib Ressource drucken?

Moderator: Moderatoren

Antworten
Benutzeravatar
Christof
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 240
Registriert: Mo, 01. Okt 2007 17:14
Wohnort: Bedburg

Topdown-Lib Ressource drucken?

Beitrag von Christof » Di, 30. Okt 2007 21:23

Hallo Leute,

ich habe mit dem Drucksystem der Topdown-Lib einen Ausdruck realisiert. Funktioniert auch.

Mit dem Befehl:
prImage(nRow,nCol,cPathname,nRowHt,nColWd,[nColWdPt],;
[nXadj],[nYadj],[aSourceRect],[nRasterOp],[nCompress])
kann man ein Bild drucken, das als Datei vorliegt.

Ich möchte nun im Seitenkopf ein Logo unterbringen, dieses aber nicht als Grafikdatei im Verzeichnis ablegen, sondern als Ressource in die EXE-Datei einbinden, so dass ich mit der entsprechenden Ziffer darauf zugreifen kann.

Gibt's einen Weg dies zwischen 'StartDoc()' und 'EndDoc()' zu drucken?

Danke für jede Hilfe.

Gruß
Christof

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10562
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Topdown-Lib Ressource drucken?

Beitrag von AUGE_OHR » Mi, 31. Okt 2007 0:02

hi,
Christof hat geschrieben: ich habe mit dem Drucksystem der Topdown-Lib einen Ausdruck realisiert. Funktioniert auch.
Ich habe nur die älter Version, welche hast du ?
Christof hat geschrieben: Mit dem Befehl:
prImage(nRow,nCol,cPathname,nRowHt,nColWd,[nColWdPt],;
[nXadj],[nYadj],[aSourceRect],[nRasterOp],[nCompress])
kann man ein Bild drucken, das als Datei vorliegt.
Du meinst die METHOD tdcPrn2:prImage()
in C:\TOPDOWN\appfram\tdcPrn2.prg
Christof hat geschrieben: Ich möchte nun im Seitenkopf ein Logo unterbringen, dieses aber nicht als Grafikdatei im Verzeichnis ablegen, sondern als Ressource in die EXE-Datei einbinden, so dass ich mit der entsprechenden Ziffer darauf zugreifen kann.
dafür wäre die METHOD :Load zuständig. In meiner älteren Version von
TopDown werden aber die BMP, GIF, JPG und PNG über :LoadFile geladen,
welches als 3st. Parameter ( cPathname ) das File enthält.

Du müsstes also den Source von C:\TOPDOWN\appfram\tdcPrn2.prg modifizieren (Backup !) damit er die als Resource lädt.
Christof hat geschrieben: Gibt's einen Weg dies zwischen 'StartDoc()' und 'EndDoc()' zu drucken?
klar, dazu musst du dir C:\TOPDOWN\appfram\tdcPrv2.prg ansehen.
Das ist das Printdemo No.2 als Formular sehen kannst. Von dort wird
ja auch die :prImage() METHOD aufgerufen :)

gruss by OHR
Jimmy

Benutzeravatar
Christof
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 240
Registriert: Mo, 01. Okt 2007 17:14
Wohnort: Bedburg

Beitrag von Christof » Mi, 31. Okt 2007 7:57

Hallo Jimmy,

ich habe die Version 5.2 vom Jannuar 2006.

Hört sich ja gar nicht so schwer an, was Du da schreibst. Werde ich mal ausprobieren. Melde mich dann.

Erstmal DANKE.

Gruß
Christof

Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1820
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Kontaktdaten:

Beitrag von Rolf Ramacher » Mi, 31. Okt 2007 8:59

Hallo Christoph,

druckt du direktauf einen Standarddrucker oder kann der Drucker ausgewählt werden. ?

Dieses Thema hatte ich auch schon einmal vor ein paar Jahren. Wir hatten dann folgende Lösung.

Es gibt ein Programm namens FinePrint. Dieser installiert sich als Drucker-treiber. Hier kannst du dann auch Grafiken als Logo mit einbinden und noch dirverse andere Dinge.

Von da aus kannst du auf jeden anderen Drucker drucken.
Vielleicht wäre das ja etwas. Dann brauchst du nichts zu programmieren.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de

Benutzeravatar
Christof
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 240
Registriert: Mo, 01. Okt 2007 17:14
Wohnort: Bedburg

Beitrag von Christof » Mi, 31. Okt 2007 10:35

Hallo Rolf,

hört sich auch interessant an. Ich glaube aber nicht, dass unsere Kunden gewillt sind so ohne weiteres einen neuen Druckertreiber zu installieren. Idee werde ich aber mal im Hinterkopf behalten.

Danke und Gruß
Christof

Benutzeravatar
Christof
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 240
Registriert: Mo, 01. Okt 2007 17:14
Wohnort: Bedburg

Beitrag von Christof » Mi, 31. Okt 2007 10:38

Hallo Jimmy,

Dein Hinweis war klasse. Ich habe in der 'tdcPrn3.prg' (ist wohl die neuere Version) einfach noch folgendes eingefügt:

...
******* what kind of file?
IF valtype(cPathname)="N"
::oImg := xbpBitmap():new():create(::oPS)

lRetval := ::oImg:load(,cPathname)
IF lRetval

******* draw the image
::oImg:draw(::oPS,{aLL[1],aLL[2],aUR[1],aUR[2]},;
aSourceRect,nRasterOp,nCompress)
::oImg:destroy()
::oImg := nil
ENDIF
ELSE
IF upper(right(cPathname,3)) $ 'BMP GIF JPG PNG'
...

Jetzt kann ich als 'cPathname' auch einfach eine Ressourcennummer angeben und diese drucken lassen.

Danke und Gruß
Christof

Antworten