Dear Sirs
How Can I print Labels same as attached photo using Fivewin ?
Same as link
https://imgur.com/tsmrFkm
Mr.Rao Can you provide me example for the same ?
Regards
Dagia Yunus
dagiayunus wrote:Dear Silvio
I am still getting this error
Compile using xmate 1.5
Error: Unresolved external '_HB_FUN_FW_GT' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_NEW' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_STABILIZE' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_SAYDATA' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Warning: Public symbol '_HB_FUN_TLITEM' defined in both module C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\LITEM.OBJ and C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
dagiayunus wrote:Dear Sirs
How Can I print Labels same as attached photo using Fivewin ?
Same as link
https://imgur.com/tsmrFkm
Mr.Rao Can you provide me example for the same ?
Regards
Dagia Yunus
#include "fivewin.ch"
REQUEST DBFCDX
//----------------------------------------------------------------------------//
function Main()
local oPrn, nPgWidth, nPgHeight
local nTop, nLeft, nWidth, nHeight
local nRow, nRows, nCol, nCols
local nPrintHeight, nPrintWidth, nTopMargin, nLeftMargin
local nGutter
local oFont, oBold, oPen
USE CUSTOMER NEW SHARED VIA "DBFCDX"
SET FILTER TO RECNO() > 99 .AND. RECNO() < 141
GO TOP
PRINT oPrn PREVIEW
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14 OF oPrn
DEFINE FONT oBold NAME "VERDANA" SIZE 0,-25 BOLD OF oPrn
DEFINE PEN oPen STYLE PS_DASH OF oPrn
nPgWidth := oPrn:PageWidth( "CM" )
nPgHeight := oPrn:PageHeight( "CM" )
// label dimensions
nWidth := 4 //cm
nHeight := 3
nGutter := 1 // cm gap between labels
nRows := Int( ( nPgHeight - 2 ) / ( nHeight + nGutter ) )
nCols := Int( ( nPgWidth - 2 ) / ( nWidth + nGutter ) )
nPrintHeight := nRows * ( nHeight + nGutter ) - nGutter
nPrintWidth := nCols * ( nWidth + nGutter ) - nGutter
nTopMargin := ( nPgHeight - nPrintHeight ) / 2
nLeftMargin := ( nPgWidth - nPrintWidth ) / 2
do while !Eof()
PAGE
nTop := nTopMargin
for nRow := 1 to nRows
nLeft := nLeftMargin
for nCol := 1 to nCols
if nRow > 1
oPrn:Line( nTop - nGutter/2, nLeftMargin, nTop - nGutter/2, ;
nLeftMargin + nPrintWidth, oPen, "CM" )
endif
OneLabel( oPrn, nTop, nLeft, nWidth, nHeight, oFont, oBold )
nLeft += ( nWidth + nGutter )
SKIP
if Eof()
EXIT
endif
next
nTop += ( nHeight + nGutter )
if Eof()
EXIt
endif
next
nTop -= nGutter
for nCol := 1 to nCols - 1
oPrn:Line( nTopMargin, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, ;
nTop, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, oPen, "CM" )
next
ENDPAGE
enddo
ENDPRINT
RELEASE FONT oFont, oBold
RELEASE PEN oPen
return nil
//----------------------------------------------------------------------------//
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
field ID, FIRST, LAST, CITY
oPrn:Box( nRow, nCol, nRow + nHeight, nCol + nWidth, { CLR_HRED, 2 }, nil, nil, "CM" )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
@ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
@ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil
//----------------------------------------------------------------------------//
#include "fivewin.ch"
REQUEST DBFCDX
//----------------------------------------------------------------------------//
function Main()
local oPrn, nPgWidth, nPgHeight
local nTop, nLeft, nWidth, nHeight
local nRow, nRows, nCol, nCols
local nPrintHeight, nPrintWidth, nTopMargin, nLeftMargin
local nGutter
local oFont, oBold, oPen
USE CUSTOMER NEW SHARED VIA "DBFCDX"
SET FILTER TO RECNO() > 99 .AND. RECNO() < 141
GO TOP
PRINT oPrn PREVIEW
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14 OF oPrn
DEFINE FONT oBold NAME "VERDANA" SIZE 0,-25 BOLD OF oPrn
DEFINE PEN oPen STYLE PS_DASH OF oPrn
nPgWidth := 21 //oPrn:PageWidth( "CM" )
nPgHeight := 29.7 //oPrn:PageHeight( "CM" )
// label dimensions
nWidth := 4 //cm
nHeight := 3
nGutter := 1 // cm gap between labels
nRows := Int( ( nPgHeight - 2 ) / ( nHeight + nGutter ) )
nCols := Int( ( nPgWidth - 2 ) / ( nWidth + nGutter ) )
nPrintHeight := nRows * ( nHeight + nGutter ) - nGutter
nPrintWidth := nCols * ( nWidth + nGutter ) - nGutter
nTopMargin := ( nPgHeight - nPrintHeight ) / 2
nLeftMargin := ( nPgWidth - nPrintWidth ) / 2
do while !Eof()
PAGE
nTop := nTopMargin
for nRow := 1 to nRows
nLeft := nLeftMargin
for nCol := 1 to nCols
if nRow > 1
oPrn:cmLine( nTop - nGutter/2, nLeftMargin, nTop - nGutter/2, ;
nLeftMargin + nPrintWidth, oPen )
endif
OneLabel( oPrn, nTop, nLeft, nWidth, nHeight, oFont, oBold )
nLeft += ( nWidth + nGutter )
SKIP
if Eof()
EXIT
endif
next
nTop += ( nHeight + nGutter )
if Eof()
EXIt
endif
next
nTop -= nGutter
for nCol := 1 to nCols - 1
oPrn:cmLine( nTopMargin, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, ;
nTop, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, oPen )
next
ENDPAGE
enddo
ENDPRINT
RELEASE FONT oFont, oBold
RELEASE PEN oPen
return nil
//----------------------------------------------------------------------------//
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
field ID, FIRST, LAST, CITY
oPrn:cmBox( nRow, nCol, nRow + nHeight, nCol + nWidth )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
@ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
@ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil
//----------------------------------------------------------------------------//
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
local nWid
field ID, FIRST, LAST, CITY
oPrn:cmBox( nRow, nCol, nRow + nHeight, nCol + nWidth )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
cText := TRIM(FIRST)
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) AS BARCODE TYPE "EAN13" ;
SIZE nWidth, nHeight-1 CM BARSIZE nWid
@ nRow+2, nCol PRINT TO oPrn TEXT cText cm SIZE nWid ALIGN "S" FONT oFont
* @ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
* SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
* @ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
* @ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil
Return to FiveWin for Harbour/xHarbour
Users browsing this forum: Marc Venken and 46 guests