Fwms Printer

37
FWMsPrinter Colapse ALL Expand ALL Classe: FWMsPrinter Cria um objeto que permite visualizar e imprimir relatório. Hierarquia Construtores New New Método construtor da classe. Sintaxe FWMsPrinter(): New ( < cFilePrintert >, [ nDevice], [ lAdjustToLegacy], [ cPathInServer], [ lDisabeSetup ], [ lTReport], [ @oPrintSetup], [ cPrinter], [ lServer], [ lPDFAsPNG], [ lRaw], [ lViewPDF], [ nQtdCopy] ) --> oPrinter Parâmetros Nome Tipo Descrição Obrigatório Referência cFilePrintert Caracter Nome do arquivo de relatório a ser criado. X nDevice Numérico Tipos de Saída aceitos:IMP_SPOO L Envia para impressora.IMP_PD F Gera arquivo PDF à partir do relatório.Default é IMP_SPOOL

Transcript of Fwms Printer

Page 1: Fwms Printer

FWMsPrinter

Colapse ALLExpand ALLClasse: FWMsPrinter

Cria um objeto que permite visualizar eimprimir relatório.

Hierarquia

ConstrutoresNewNew

Método construtor da classe.

SintaxeFWMsPrinter(): New ( < cFilePrintert >, [ nDevice], [ lAdjustToLegacy], [ cPathInServer], [ lDisabeSetup ], [lTReport], [ @oPrintSetup], [ cPrinter], [ lServer], [ lPDFAsPNG], [ lRaw], [ lViewPDF], [ nQtdCopy] ) --> oPrinter

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

cFilePrintert Caracter Nome do arquivode relatório a sercriado.

X  

nDevice Numérico Tipos de Saídaaceitos:IMP_SPOOL Envia paraimpressora.IMP_PDF Gera arquivo PDFà partir dorelatório.Default éIMP_SPOOL

   

Page 2: Fwms Printer

lAdjustToLegacy Lógico Se .T. recalcula ascoordenadas paramanter o legado deproporções com aclasse TMSPrinter.Default é.T.IMPORTANTE:Este cálculos nãofuncionamcorretamentequando houverretângulos do tipoBOX e FILLRECTno relatório,podendo haverdistorções dealgumas pixels oque acarretará noencavalamento dosretângulos nomomento daimpressão.

   

cPathInServer Caracter Diretório onde oarquivo de relatórioserá salvo

   

lDisabeSetup Lógico Se .T. não exibe atela de Setup,ficando à cargo doprogramador definirquando e se seráfeita sua chamada.Default é .F.

   

lTReport Lógico Indica que a classefoi chamada peloTReport. Default é.F.

   

oPrintSetup Objeto ObjetoFWPrintSetupinstanciado pelousuário.

  X

cPrinter Caracter Impressora destino"forçada" pelousuário. Default é ""

   

lServer Lógico Indica impressãovia Server (.RELNão será copiadopara o Client).Default é .F.

   

Page 3: Fwms Printer

lPDFAsPNG Lógico .T. Indica que serágerado o PDF noformato PNG. ODefault é .T.

   

lRaw Lógico .T. indica impressãoRAW/PCL,enviando para odispositivo deimpressãocaracteresbinários(RAW) oucaracteresprogramáveisespecíficos daimpressora(PCL)

   

lViewPDF Lógico Quando o tipo deimpressão for PDF,define se arquivoserá exibido após aimpressão. Odefault é .T.

   

nQtdCopy Numérico Define a quantidadede cópias a seremimpressas quandoutilizado o metodode impressão iguala SPOOL.Recomendavel emcasos aonde autilização da classeFwMsPrinter se dapor meio deeventos sem aintervenção dousuario (JOBs /Schedule porexemplo)Obs:Aplica-se apenas aambientes quepossuam o fonteFwMsPrinter.prwcom data igual ousuperior a03/05/2012.

   

 

RetornooPrinter

()

Page 4: Fwms Printer

Retorna o objeto criado.

Observações

ExemploslAdjustToLegacy := .F. lDisableSetup :=.T.oPrinter := FWMSPrinter():New("Danfe.rel",IMP_PDF, lAdjustToLegacy, , lDisableSetup)//Ordem obrigátoria de configuração dorelatóriooPrinter:SetResolution(72)oPrinter:SetPortrait()oPrinter:SetPaperSize(DMPAPER_A4)oPrinter:SetMargin(60,60,60,60) // nEsquerda,nSuperior, nDireita, nInferioroPrinter:cPathPDF := "c:\directory\" // Casoseja utilizada impressão em IMP_PDF

MétodosBoxBox

Insere um retângulo no relatório.

SintaxeFWMsPrinter(): Box ( < nRow>, < nCol>, < nBottom>, < nRight>, [ cPixel] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Indica acoordenada verticalem pixels.

X  

nCol Numérico Indica acoordenadahorizontal empixels.

X  

Page 5: Fwms Printer

nBottom Numérico Indica a posição doobjeto em relaçãoao rodapé.

X  

nRight Numérico Indica a posição doobjeto à direita.

X  

cPixel Caracter Expessura da linhaem pixels. Default é"-2"

   

 

Observações

ExemplosoPrinter:Box( 130, 10, 600, 900, "-4")

CancelCancel

Define cancelamento do relatorio.

SintaxeFWMsPrinter(): Cancel ( ) -->

Observações

ExemplosoPrinter:Cancel()

CanceledCanceled

Retorna estado do relatório.

SintaxeFWMsPrinter(): Canceled ( ) --> lRet

Retorno

Page 6: Fwms Printer

lRet()Retorna se o relatório foi cancelado pelo método Cancel().

Observações

ExemplosoPrinter:Canceled()

Cmtr2PixCmtr2Pix

Devolve por referência, o valor convertido em pixels de uma coluna e uma linha.

SintaxeFWMsPrinter(): Cmtr2Pix ( [ nLinha], [ nCol] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nLinha Numérico Indica a linha queserá calculada.

   

nCol Numérico Indica a coluna queserá calculada.

   

 

Observações

ExemplosnCol1 := 10nRow1 := 10oPrinter:Cmtr2Pix(nCol1, nRow1)//Resultado//nCol1 :=1107.08955224//nRow1 := 1107.26600985

Code128C

Page 7: Fwms Printer

Code128C

Imprime codigo de barra no padrão Code128C

Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizamsistema operacional com o recurso de "Zoom" ou "Lupa" ativo.

SintaxeFWMsPrinter(): Code128C ( < nRow>, < nCol>, < cCodeBar>, < nSizeBar> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Posição relativa aotopo

X  

nCol Numérico Posição relativa àesquerda

X  

cCodeBar Caracter Texto a sertransformado emcódigo de barra

X  

nSizeBar Numérico Tamanho da fonte(código de barra)

X  

 

Observações 

Exemplos

Page 8: Fwms Printer

#Include "PROTHEUS.CH"#Include "RPTDEF.CH"#INCLUDE "TBICONN.CH"User FunctionCode128C()Local oPrinter PREPARE ENVIRONMENTEMPRESA "01" FILIAL "01"oPrinter :=FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)oPrinter:Setup()oPrinter:setDevice(IMP_PDF)oPrinter:cPathPDF :="C:\"oPrinter:Say(10,0,"Testepara Code128C") oPrinter:Code128c(100, 10,'1234567', 50) oPrinter:EndPage()oPrinter:Preview() FreeObj(oPrinter)oPrinter := NilRESETENVIRONMENTReturn

FwMsBar

FwMsBar

Imprime codigo de barras suportados pela função MsBar().

Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizamsistema operacional com o recurso de "Zoom" ou "Lupa" ativo.

 

Sintaxe

FWMsPrinter():FWMsBar(cTypeBar,nRow,nCol,cCode,oPrint,lCheck,Color,lHorz,nWidth,nHeigth,lBanner,cFont,cMode,lPrint,nPFWidth,nPFHeigth,lCmtr2Pix)-->

 

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cTypeBar Caracter Código do tipo docódigo de barras:

"EAN13", "EAN8","UPCA" , "SUP5" ,"CODE128",

"INT25","MAT25,"IND25","CODABAR","CODE3_9"

X  

Page 9: Fwms Printer

nRow Numérico Posição relativa àesquerda

X  

nCol Numérico Posição relativa aotopo

X  

cCode Caracter Texto a sertransformado emcódigo de barra

X  

oPrint Objeto Objeto Printer    

lCheck Lógico Se calcula o digitode controle. Defautl.T.

   

Color Numérico Numero da Cor,utilize a "color.ch".DefaultCLR_BLACK

   

lHorz Lógico Se imprime naHorizontal. Default.T.

   

nWidth Numérico Numero doTamanho da barra.Default 0.025

   

nHeigth Numérico Numero da Alturada barra. Default1.5

   

lBanner Lógico Se imprime a linhacom o códigoembaixo da barra.Default .T.

   

cFont Caracter Nome do Fonte aser utilizado.Defautl "Arial"

   

cMode Caracter Modo do codigo debarras CO. Default""

   

Page 10: Fwms Printer

lPrint Lógico Se executa ométodo Print() deoPrinter pelaMsBar. Default .T.

   

nPFWidth Numérico Número do índicede ajuste da largurada fonte. Default 1

   

nPFHeigth Numérico Número do índicede ajuste da alturada fonte. Default 1

   

lCmtr2Pix Lógico Utiliza o métodoCmtr2Pix() doobjetoPrinter.Default .T.

   

 

Observações

 Este método utiliza-se da mesma classe utilizada pela MsBar().

 

Exemplos

Page 11: Fwms Printer

#INCLUDE "RPTDEF.CH"#INCLUDE "FWPrintSetup.ch"#INCLUDE "protheus.ch"User Function totvsprt()Local lAdjustToLegacy := .F.Local lDisableSetup  := .T.Local oPrinterLocal cLocal          := "\spool"Local cCodINt25 := "34190184239878442204400130920002152710000053475"Local cCodEAN :=      "123456789012"oPrinter := FWMSPrinter():New("exemplo.rel", IMP_PDF, lAdjustToLegacy,cLocal,lDisableSetup, , , , , , .F., )oPrinter:FWMSBAR("INT25" /*cTypeBar*/,1/*nRow*/ ,1/*nCol*/,cCodINt25/*cCode*/,oPrinter/*oPrint*/,.T./*lCheck*/,/*Color*/,.T./*lHorz*/,0.02/*nWidth*/,0.8/*nHeigth*/,.T./*lBanner*/,"Arial"/*cFont*/,NIL/*cMode*/,.F./*lPrint*/,2/*nPFWidth*/,2/*nPFHeigth*/,.F./*lCmtr2Pix*/oPrinter:FWMSBAR("EAN13" /*cTypeBar*/,5/*nRow*/ ,1/*nCol*/ ,cCodEAN /*cCode*/,oPrinter/*oPrint*/,/*lCheck*/,/*Color*/,/*lHorz*/,/*nWidth*/,/*nHeigth*/,/*lBanner*/,/*cFont*/,/*cMode*/,.F./*lPrint*/,/*nPFWidth*/,/*nPFHeigth*/,/*lCmtr2Pix*/)oPrinter:Setup()if oPrinter:nModalResult == PD_OKoPrinter:Preview()EndIfReturn

DataMatrix

DataMatrix

Imprime codigo de barra no padrão DataMatrix

Obs: A utilização deste metodo não é homologado para a impressão de relatorios em ambientes que utilizamsistema operacional com o recurso de "Zoom" ou "Lupa" ativo.

SintaxeFWMsPrinter(): DataMatrix ( < nCol>, < nRow>, < cCodeBar>, < nSizeBar> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nCol Numérico Posição relativa àesquerda

X  

nRow Numérico Posição relativa aotopo

X  

Page 12: Fwms Printer

cCodeBar Caracter Texto a sercodificado

X  

nSizeBar Numérico Tamanho do codigode barras

X  

 

Observações  Esta opção esta disponivel para TotvsPrinter.exe emversões superiores à 1.3.0.  Para confirmação da versãoutilize na linha de comando:  .totvsprinter -v

Exemplos#Include "PROTHEUS.CH"#Include "RPTDEF.CH"#INCLUDE "TBICONN.CH"User FunctionDataMatrix()Local oPrinter PREPAREENVIRONMENT EMPRESA "99" FILIAL "01"oPrinter :=FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)oPrinter:Setup()oPrinter:setDevice(IMP_PDF)oPrinter:cPathPDF :="C:\"oPrinter:Say(180,0,"TesteparaDataMatrix")oPrinter:DataMatrix(0,300,"DataMatrix gerado com sucesso", 100) oPrinter:EndPage()oPrinter:Preview() FreeObj(oPrinter)oPrinter := NilRESETENVIRONMENTReturn

EllipseEllipse

Insere uma elipse no relatório.

SintaxeFWMsPrinter(): Ellipse ( < nLeft>, < nTop>, < nBottom>, < nRigth>, [ nColorIn], [ nColorOut], [ nLineType], [cPixel] ) -->

Page 13: Fwms Printer

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nLeft Numérico Indica acoordenada horizontal em pixels.

X  

nTop Numérico Indica acoordenada ao topoem pixels.

X  

nBottom Numérico Indica a posição doobjeto em relaçãoao rodapé.

X  

nRigth Numérico Indica a posição doobjeto à direita.

X  

nColorIn Numérico Cor dopreenchimento doelipse. DefaultCLR_BLACK.

   

nColorOut Numérico Cor da linha doelipse. DefaultCLR_BLACK

   

nLineType Numérico Estilo da linha.Default 0. Paramais informaçõessobre os tiposdisponíveis,consulte a áreaObservações.

   

cPixel Caracter Pixel no formatocaractere exemplo“02”, casonecessário us dedecimais utilize “-2”para 0,2 Pixels.

   

 

ObservaçõesnLineType

Tabelas com as opções de linha disponíveis.0 - Solid Line;

1 - Dash Line;

Page 14: Fwms Printer

1 - Dash Line;2 - Dash Dot Line;3 - Dash Dot Dot Line;4 - Dot Line;5 - Custom Dash Line

ExemplosoPrinter:Ellipse( 10, 10, 100, 100, CLR_BLACK,CLR_BLACK, 0, “-2”)

EndPageEndPage

Indica o fim da página.

SintaxeFWMsPrinter(): EndPage ( ) -->

Observações

ExemplosoPrinter:EndPage()

FillRectFillRect

Cria um objeto do tipo retângulo, que pode ser preenchido com uma determinada cor.

SintaxeFWMsPrinter(): FillRect ( < aCoords>, [ oBrush], [ cPixel] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

Page 15: Fwms Printer

aCoords Vetor Vetor decoordenadas{nTop,nLeft,nBottom,nRight}

X  

oBrush Objeto Indica o objeto dotipo TBrushutilizado para definira cor depreenchimento doshape eresponsável pelopreenchimento doretângulo.

   

cPixel Caracter Expessura da linhaem pixels. Default é"-2"

   

 

Observações

ExemplosoBrush1 := TBrush():New( ,CLR_YELLOW)oPrinter:Fillrect( {100, 10, 200,200 }, oBrush1, "-2")

GetFontWidthsGetFontWidths

Retorna a largura dos caracteres de uma determinada fonte

SintaxeFWMsPrinter(): GetFontWidths ( [ oFont], [ @aFontSize] ) --> aRet

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

oFont Objeto Objeto do tipo fonte    

Page 16: Fwms Printer

aFontSize Array of Record Vetor passado porreferencia querecebera a lista delargura da fonteselecionada

  X

 

RetornoaRet

()Vetor passado por referencia que recebera a lista de largura da fonte selecionada

ObservaçõesnullGetOrientationGetOrientation

Retorna a orientação (Retrato ou Paisagem) do objeto.

SintaxeFWMsPrinter(): GetOrientation ( ) --> nOrientation

RetornonOrientation

()Retorna orientação do relatório. Para mais informações sobre os retornos que podem ser apresentados,consulte a área Observações.

ObservaçõesnOrientation

Tabela com os valores de retorno.0 - Ainda não definido pelo usuário;1 - Portrait(retrato);2 - Landscape(paisagem)

ExemplosoPrinter:GetOrientation()

Page 17: Fwms Printer

GetTextHeightGetTextHeight

Retorna a altura do texto, conforme as características da fonte definida.

SintaxeFWMsPrinter(): GetTextHeight ( < cTexto>, < oFont> ) --> nHeight

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

cTexto Caracter Indica o texto queserá calculado.

X  

oFont Objeto Indica o objeto dotipo TFont, utilizadopara definir ascaracterísticas dafonte e realizar ocálculo.

X  

 

RetornonHeight

()Retorna a altura do texto.

Observações

ExemplosoFont1 := TFont():New( 'Courier New', , -18,.T.)nHeight := oPrinter:GetTextheight("Teste", oFont1)

GetTextWidthGetTextWidth

Retorna a largura do texto, conforme as características da fonte definida.

Page 18: Fwms Printer

SintaxeFWMsPrinter(): GetTextWidth ( < cTexto>, < oFont> ) --> nWidth

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

cTexto Caracter Indica o texto queserá calculado.

X  

oFont Objeto Indica o objeto dotipo TFont, utilizadopara definir ascaracterísticas dafonte e realizar ocálculo.

X  

 

RetornonWidth

()Retorna a largura do texto.

Observaçõesnull

ExemplosoFont1 := TFont():New( 'Courier New', , -18,.T.)nWidht := oPrinter:GetTextWidth( "Teste",oFont1)

GetViewPDFGetViewPDF

Quando o tipo de impressão for PDF, retorna se o arquivo será exibido após aimpressão.

Sintaxe

Page 19: Fwms Printer

FWMsPrinter(): GetViewPDF ( ) --> lViewPDF

RetornolViewPDF

(logico).T. para exibir o relatório após a impressão.

ObservaçõesEste método estará disponível em pacote de lib, no qual ofonte FWMSPrinter.PRW tenha a data superior ou igual a08/09/2011.

ExemplosoPrinter:GetViewPDF()

IsPrinterActiveIsPrinterActive

Retorna se a impressora está ativa.

SintaxeFWMsPrinter(): IsPrinterActive ( ) -->

Observações

ExemplosoPrinter:IsPrinterActive()

LineLine

Insere uma linha no relatório.

SintaxeFWMsPrinter(): Line ( < nTop>, < nLeft>, < nBottom>, < nRight>, [ nColor], [ cPixel] ) -->

Page 20: Fwms Printer

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nTop Numérico Indica acoordenada verticalem pixels.

X  

nLeft Numérico Indica acoordenadahorizontal empixels.

X  

nBottom Numérico Indica a posição doobjeto ao rodapé.

X  

nRight Numérico Indica a posição doobjeto à direita.

X  

nColor Numérico Cor da linha.Default é 0

   

cPixel Caracter Expessura da linhaem pixels. Default é"-2"

   

 

Observações

ExemplosoPrinter:Line( 130, 10, 130, 900, "-4")

nHorzResnHorzRes

Retorna a resolução horizontal da impressora configurada.

SintaxeFWMsPrinter(): nHorzRes ( ) --> nResult

RetornonResult

()

Page 21: Fwms Printer

Retorna a resolução horizontal da impressora configurada.

Observações

ExemplosoPrinter:nHorzRes()

nHorzSizenHorzSize

Retorno largura da página.

SintaxeFWMsPrinter(): nHorzSize ( ) --> nHorzSize

RetornonHorzSize

()Largura da página

Observaçõesnull

ExemplosoPrinter:nHorzSize()

nLogPixelXnLogPixelX

Retorna a resolução vertical, em pixels, da impressora configurada.

SintaxeFWMsPrinter(): nLogPixelX ( ) --> nResult

RetornonResult

()

Page 22: Fwms Printer

Retorna a resolução vertical em pixels da impressora configurada.

Observações

ExemplosoPrinter:nLogPixelX()

nLogPixelYnLogPixelY

Retorna a resolução horizontal, em pixels, da impressora configurada.

SintaxeFWMsPrinter(): nLogPixelY ( ) --> nResult

RetornonResult

()Retorna a resolução horizontal em pixels da impressora configurada.

Observações

ExemplosoPrinter:nLogPixelY()

nVertResnVertRes

Retorna a resolução vertical da impressora configurada.

SintaxeFWMsPrinter(): nVertRes ( ) --> nResult

RetornonResult

()Retorna a resolução vertical da impressora configurada.

Page 23: Fwms Printer

Observações

ExemplosoPrinter:nVertRes()

nVertSizenVertSize

Retorno altura da página.

SintaxeFWMsPrinter(): nVertSize ( ) --> nVertSize

RetornonVertSize

()Altura da página.

Observações

ExemplosoPrinter:nVertSize()

PaperSizePaperSize

Retorna o tamanho do papel.

SintaxeFWMsPrinter(): PaperSize ( ) --> nPaperSize

RetornonPaperSize

()Tamanho do papel.

Page 24: Fwms Printer

Observaçõesnull

ExemplosoPrinter:PaperSize()

PreviewPreview

Abre a janela de visualização do relatório.

SintaxeFWMsPrinter(): Preview ( ) -->

Observações

ExemplosoPrinter:Preview()

PrintPrint

Envia o relatório para impressora.

SintaxeFWMsPrinter(): Print ( ) -->

Observações

ExemplosoPrinter:Print()

PrinterNamePrinterName

Page 25: Fwms Printer

Retorna o nome da impressora.

SintaxeFWMsPrinter(): PrinterName ( ) --> cImpressora

RetornocImpressora

(caracter)Nome da impressora.

ObservaçõesA imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.

ExemplosoPrinter:PrinterName()

QRCodeQRCode

Imprime codigo de barra no padrão QRCode

SintaxeFWMsPrinter(): QRCode ( < nCol>, < nRow>, < cCodeBar>, < nSizeBar> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nCol Numérico Posição relativa àesquerda

X  

nRow Numérico Posição relativa aotopo

X  

cCodeBar Caracter Texto a sercodificado

X  

nSizeBar Numérico Tamanho do codigode barras

X  

 

Page 26: Fwms Printer

Observações Esta opção esta disponivel para TotvsPrinter.exe emversões superiores à 1.3.0.  Para confirmação da versãoutilize na linha de comando: .totvsprinter -v

Exemplos#Include "PROTHEUS.CH"#Include "RPTDEF.CH"#INCLUDE "TBICONN.CH"User FunctionQRCode()Local oPrinter PREPARE ENVIRONMENTEMPRESA "99" FILIAL "01"oPrinter :=FWMSPrinter():New('teste',6,.F.,,.T.,,,,,.F.)oPrinter:Setup()oPrinter:setDevice(IMP_PDF)oPrinter:cPathPDF :="C:\"oPrinter:Say(40,0,"Testepara QRCode")oPrinter:QRCode(0,150,"QR Codegerado com sucesso", 100) oPrinter:EndPage()oPrinter:Preview() FreeObj(oPrinter)oPrinter := NilRESETENVIRONMENTReturn

SaySay

Insere um texto no relatório.

SintaxeFWMsPrinter(): Say ( < nRow>, < nCol>, < cText>, [ oFont], [ nWidth], [ nClrText], [ nAngle] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Indica acoordenada verticalem pixels oucaracteres.

X  

Page 27: Fwms Printer

nCol Numérico Indica acoordenadahorizontal em pixelsou caracteres.

X  

cText Caracter Texto a serimpresso.

X  

oFont Objeto Indica o objeto dotipo TFont utilizadopara definir ascaracterísticas dafonte aplicada naexibição doconteúdo docontrole visual.

   

nWidth Nulo Indica a largura empixels do objeto.

   

nClrText Numérico Indica a cor dotexto do objeto.

   

nAngle Numérico Ângulo de rotaçãodo texto.

   

 

ObservaçõesA imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.

ExemplosoFont1 := TFont():New( "Courier New", , -18,.T.)oPrinter:Say( 10, 10, "texto paravisualização", oFont1, 1400, CLR_HRED)

SayAlignSayAlign

Cria um objeto do tipo texto, permitindo alinhamento Horizontal e Vertical.

SintaxeFWMsPrinter(): SayAlign ( < nRow>, < nCol>, < cText>, [ oFont], [ nWidth], [ nHeigth], [ nClrText], [ nAlignHorz], [nAlignVert ] ) -->

Page 28: Fwms Printer

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Indica acoordenada verticalem pixels oucaracteres.

X  

nCol Numérico Indica acoordenadahorizontal em pixelsou caracteres.

X  

cText Caracter Indica o texto queserá impresso.

X  

oFont Objeto Indica o objeto dotipo TFont utilizadopara definir ascaracterísticas dafonte aplicada naexibição doconteúdo docontrole visual.

   

nWidth Numérico Indica a largura empixels do objeto.

   

nHeigth Numérico Indica a altura empixels do objeto.

   

nClrText Numérico Indica a cor dotexto do objeto.

   

nAlignHorz Numérico AlinhamentoHorizontal. Paramais informaçõessobre osalinhamentosdisponíveis,consulte a áreaObservações.

   

nAlignVert Numérico AlinhamentoVertical. Para maisinformações sobreos alinhamentosdisponíveis,consulte a áreaObservações.

   

 

Page 29: Fwms Printer

ObservaçõesnAlignHorz

Tabela de códigos de alinhamento horizontal.0 - Alinhamento à esquerda;1 - Alinhamento à direita;2 - Alinhamento centralizado

 

nAlignVert

Tabela de códigos de alinhamento vertical.0 - Alinhamento centralizado;1 - Alinhamento superior;2 - Alinhamento inferior

ExemplosoFont1 := TFont():New('Couriernew',,-18,.T.)oPrinter:SayAlign( 10,10,"Textopara visualização",oFont1,1400, 200, CLR_HRED,0, 2 )

SayBitmapSayBitmap

Insere uma imagem no relatório.

SintaxeFWMsPrinter(): SayBitmap ( < nRow>, < nCol>, < cBitmap>, [ nWidth], [ nHeight] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nRow Numérico Indica acoordenada verticalem pixels oucaracteres.

X  

Page 30: Fwms Printer

nCol Numérico Indica acoordenadahorizontal em pixelsou caracteres.

X  

cBitmap Caracter Indica o diretório eo nome, comextensão BMP(Bitmap), daimagem.

X  

nWidth Numérico Indica a largura empixels do objeto.Default é 100.

   

nHeight Numérico Indica a altura empixels do objeto.Default é 100.

   

 

ObservaçõesA imagem é ajustada para preencher todo o espaço definido entre a altura e largura do objeto.

ExemplosoPrinter:SayBitmap( 100, 200,"C:\Dir\totvs.bmp", 800, 800)

SetDeviceSetDevice

Seleciona o dispositivo de impressao

SintaxeFWMsPrinter(): SetDevice ( < nDevice> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

Page 31: Fwms Printer

nDevice Numérico Tipos de Saídaaceitos:IMP_SPOOL Enviapara impressora.IMP_PDF Geraarquivo PDF à partirdo relatório. Defaulté IMP_SPOOL

X  

 

Observaçõesnull

ExemplosoPrint:SetDevice(IMP_SPOOL)

SetFontSetFont

Define o fonte a ser utilizado no relatório.

SintaxeFWMsPrinter(): SetFont ( < oFont> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

oFont Objeto Objeto do tipoTFont.

X  

 

Observaçõesnull

Exemplos

Page 32: Fwms Printer

oFont1 := TFont():New('Couriernew',,-18,.T.)oPrinter:SetFont(oFont1)

SetLandscapeSetLandscape

Define a orientação do relatório como paisagem (Landscape).

SintaxeFWMsPrinter(): SetLandscape ( ) -->

Observações

ExemplosoPrinter:SetLandscape()

SetMarginSetMargin

Define a margem do relatório.

SintaxeFWMsPrinter(): SetMargin ( < nLeft>, < nTop>, < nRight>, < nBottom> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nLeft Numérico Margem esquerda X  

nTop Numérico Margem superior X  

nRight Numérico Margem direita X  

nBottom Numérico Margem inferior X  

 

Page 33: Fwms Printer

Observaçõesnull

ExemplosoPrinter:SetMargin(10,10,10,10)

SetPaperSizeSetPaperSize

Define o tamanho que será adotado pela página a ser impressa.

SintaxeFWMsPrinter(): SetPaperSize ( < nPaperSize>, [ nHeight], [ nWidth] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nPaperSize Numérico Indica o tamanhoque será utilizadono papel. Para maisinformações dostipos de tamanhodisponíveis,consulte a áreaObservações.

X  

nHeight Numérico Altura da página.    

nWidth Numérico Largura da página.    

 

ObservaçõesnPaperSize

0 - Tamanho customizavel pelo usuario, informado em nHeight/nWidth. Aplicavel apenas em impressoesdo tipo PDF.1 - Letter   216mm x 279mm  637 x 8233 - Tabloid  279mm x 432mm  823 x 12757 - Executive 184mm x 267mm  543 x 7888 - A3     297mm x 420mm  876 x 12409 - A4     210mm x 297mm  620 x 876

Page 34: Fwms Printer

ExemplosoPrinter:setPaperSize(9)

SetPortraitSetPortrait

Define a orientação do relatório como retrato (Portrait).

SintaxeFWMsPrinter(): SetPortrait ( ) -->

Observações

ExemplosoPrinter:SetPortrait()

SetResolutionSetResolution

Define resolução do relatório.

SintaxeFWMsPrinter(): SetResolution ( [ nResolution] ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

nResolution Numérico Resolução dorelatório. Default é72

   

 

Observações

Page 35: Fwms Printer

Atualmente a versão da Totvsprinter somente trabalhacom o valor fixo de 72. Portanto não deve setar outrovalor.

ExemplosoPrinter:Resolution()

SetupSetup

Apresenta a janela de configuração de impressoras.

SintaxeFWMsPrinter(): Setup ( ) -->

Observações

ExemplosoPrinter:Setup()

SetViewPDFSetViewPDF

Quando o tipo de impressão for PDF, define se o arquivo será exibido após a impressão.

SintaxeFWMsPrinter(): SetViewPDF ( < lViewPDF> ) -->

Parâmetros 

Nome Tipo Descrição Obrigatório Referência

lViewPDF Lógico .T. para exibir oPDF após aimpressão.

X  

 

Page 36: Fwms Printer

ObservaçõesEste método estará disponível em pacote de lib, no qual ofonte FWMSPrinter.PRW tenha a data superior ou igual a08/09/2011.

Exemplos// para não apresentar o PDF após a geração dorelatório.oPrinter:SetViewPDF(.F.)

StartPageStartPage

Inicia a impressão de uma nova página

SintaxeFWMsPrinter(): StartPage ( ) -->

Observações

ExemplosoPrinter:StartPage()

Propriedade 

Propriedade Descrição Tipo

aImages Lista de imagens do relatório. Vetor

cFileName Nome do arquivo a ser gerado. Caracter

cFilePrint Arquivo que conterá o binário dorelatório.

Caracter

cPathPDF Path do arquivo PDF. Caracter

cPathPrint Nome do diretório onde o relatórioserá gerado.

Caracter

Page 37: Fwms Printer

cPrinter Nome da impressora paraimpressão do relatório.

Caracter

cSession Informações de configuração daimpressora.

Caracter

IsFirstPage Determina se é a primeira páginado relatório.

Array of Record

lCanceled Define se o relatório foi cancelado. Lógico

lInJob Determina se o relatório está sendoexecutado via Job.

Lógico

lServer Indica impressão via Server (.RELNão será copiado para o Client).

Lógico

lTReport Indica que o relatório foi chamadopelo TReport.

Lógico

lViewPDF Indica se o arquivo será exibidoapós a impressão em PDF.

Lógico

nDevice Dispositivo de impressão. Numérico

nModalResult Retorna o ModalResult do Setup,para que o usuário trate ainformação

Numérico

nPageCount Quantidade de páginas do relatório. Numérico

nPageHeight Altura da página. Numérico

nPageWidth Largura da página. Numérico

nPaperSize Tamanho da folha do relatório. Numérico

oFontAtu Fonte do relatório. Objeto

oPrint Objeto de impressão. Objeto

 

Observações