I would like to rotate a print.
by my pgm I get this print:
and I would like this:
I don't want to change the whole program
is there any printer method or function in Printer class?
Thanks
mogrify.EXE -rotate 180 fileNNN.emf
#include "fivewin.ch"
FUNCTION Main()
LOCAL oPrn, oPen, oPen2, oFont, oFontV, oFontS, oFont14V, oBrush
LOCAL cSyntax := "Syntax :" + CRLF + ;
"RoundBox( nTop, nLeft, nBottom, nRight, nRndW, nRndH, oPen, onBack, aText, cUnits )"
LOCAL cText := "aText :" + CRLF + "{ cText, oFont, nClrText, [cAlign] }"
DEFINE BRUSH oBrush FILE "..\bitmaps\backgrnd\space.bmp"
PRINT oPrn PREVIEW
DEFINE PEN oPen WIDTH 3 COLOR CLR_HRED OF oPrn
DEFINE PEN oPen2 WIDTH 1 COLOR CLR_BLACK OF oPrn
DEFINE FONT oFontS NAME "ARIAL" SIZE 0, - 12 OF oPrn
DEFINE FONT oFont NAME "ARIAL" SIZE 0, - 20 OF oPrn
DEFINE FONT oFontV NAME "ARIAL" SIZE 0, - 20 BOLD NESCAPEMENT 900 OF oPrn
DEFINE FONT oFont14V NAME "ARIAL" SIZE 0, - 14 NESCAPEMENT 900 OF oPrn
PAGE
oPrn:RoundBox( 1.0, 1.0, 2.0, 7.5, 0.4, 0.4, oPen, CLR_YELLOW, ;
{ "HORIZONTAL" + CRLF + FWVERSION, { oFont, oFontS }, CLR_HRED }, "INCHES" )
oPrn:RoundBox( 2.2, 1.0, 4.2, 2.0, 0.2, 0.2, oPen, CLR_GRAY, ;
{ "VERTICAL" + CRLF + "TEXT", oFontV, CLR_YELLOW }, "INCHES" )
oPrn:RoundBox( 5.9, 1.5, 7.1, 2.1, 0.1, 0.1, oPen2, CLR_HGRAY, ;
{ "Faturas", oFont14V, CLR_BLACK }, "INCHES" )
oPrn:RoundBox( 7.1, 1.5, 8.3, 2.1, 0.1, 0.1, oPen2, CLR_HGRAY, ;
{ "Cálculo" + CRLF + "Imposto", oFont14V, CLR_BLACK }, "INCHES" )
oPrn:RoundBox( 8.3, 1.5, 10.2, 2.1, 0.1, 0.1, oPen2, CLR_HGRAY, ;
{ "Transportador", oFont14V, CLR_BLACK }, "INCHES" )
oPrn:RoundBox( 2.2, 3.0, 4.2, 7.5, 0.3, 0.3, oPen, oBrush, ;
{ cSyntax, oFont, CLR_BLACK }, "INCHES" )
oPrn:RoundBox( 9, 1, 5, 5, .5, .5, { CLR_MAGENTA, 3 }, oBrush, ;
{ "FIRST" + CRLF + "SECOND", oFont, CLR_WHITE, "B" }, ;
"INCHES" )
oPrn:RoundBox( 4.4, 3.0, 5.9, 7.5, 0.3, 0.3, oPen, CLR_WHITE, ;
{ cText, oFont, CLR_BLACK }, "INCHES" )
ENDPAGE
ENDPRINT
RETURN NIL
paquitohm wrote:What I would do is:
- Code: Select all Expand view
mogrify.EXE -rotate 180 fileNNN.emf
*mogrify.exe from ImageMagick graphic pack
I don't want to change the whole program
#include "fivewin.ch"
function Main()
local oPrn, oFont, n
PRINT oPrn PREVIEW
oPrn:SetPage( 9 ) // A4
DEFINE FONT oFont NAME "IMPACT" SIZE 0,-80 OF oPrn
PAGE
for n := 1 to 9
@ n, 1 PRINT TO oPrn TEXT NTOCMONTH( n ) SIZE 6,1 INCHES FONT oFont ALIGN ""
next
ENDPAGE
ENDPRINT
RELEASE FONT oFont
return nil
PRINT oPrn PREVIEW
PRINT oPrn FILE "t.png"
RotatePrint( "t.png" )
#include "fivewin.ch"
function Main()
local oPrn, oFont, n
// Original Print program
PRINT oPrn FILE "t.png" // add FILE "t.png"
oPrn:SetPage( 9 ) // A4
DEFINE FONT oFont NAME "IMPACT" SIZE 0,-80 OF oPrn
PAGE
for n := 1 to 9
@ n, 1 PRINT TO oPrn TEXT NTOCMONTH( n ) SIZE 6,1 INCHES FONT oFont ALIGN ""
next
ENDPAGE
ENDPRINT
RELEASE FONT oFont
// End: Original Print Program
RotatePrint( "t.png" )
return nil
function RotatePrint( cPreview )
local oPrn, hBmp, hBmpR
hBmp := FW_ReadImage( nil, cPreview )[1]
hBmpR := RotateBmp( hBmp, 180, CLR_WHITE )
palbmpfree( hBmp )
PRINT oPrn PREVIEW
oPrn:SetPage( 9 ) // A4
PAGE
@ 0,0 PRINT TO oPrn IMAGE hBmpR
ENDPAGE
ENDPRINT
return nil
mogrify.EXE -rotate 180 fileNNN.emf
Return to FiveWin for Harbour/xHarbour
Users browsing this forum: No registered users and 83 guests