Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - TOTVS Backoffice (Linha Protheus) - ADVPL - É possível imprimir imagem pela função SetPrint?

Tempo aproximado para leitura: 00:02:00 min


Dúvida
É possível imprimir imagem pela função SetPrint?


Ambiente
Cross Segmentos - Backoffice (Linha Protheus) – ADVPL – A partir da versão 12.1.2310


Solução
Informamos que a função SetPrint não realiza a impressão de imagens no relatório, para isso temos a função FWMSPrinter com o método SayBitmap para imprimir a imagem desejada.

Exemplo:

#Include "PROTHEUS.CH"
#Include "RPTDEF.CH"
#INCLUDE "TBICONN.CH"
#INCLUDE "FWPrintSetup.ch"

User Function tstimplc()
Local oPrinter
Local cPath := "c:\teste\" //local do .rel
//Local cPath := "l:/home/evandro/tmp/" -> Linux
Local nSize
 
RpcSetEnv('99','01','','') 

//oPrinter := FWMSPrinter():New('teste.pdf',IMP_SPOOL,.F.,cPath,.F.,,,"PDFCreator",.T.,.F.,,.F.)
oPrinter := FWMSPrinter():New('teste.pdf',IMP_PDF,.F.,cPath,.T.,,,,.T.,.F.,,.T.)
oFont1 := TFont():New('Courier new',,-18,.T.)
oPrinter:SetParm( "-RFS")
//oPrinter:setDevice(IMP_PDF)
oPrinter:cPathPDF := cPath //diretorio na rede do pdf
//oPrinter:SetPortrait() //retrato
//oPrinter:SetLandscape() //paisagem 
oPrinter:SetPaperSize(0, 300, 400) //Tamanho da folha
//oPrinter:Setup()

cTxt := " €€€€ ££££ Lorem ipsum dolor sit amet. Qui laudantium obcaecati a dolores fugit quo dolor iure aut blanditiis facere."
cTxt2 :="Rem odio nulla et perspiciatis explicabo et nisi facere cum dolor repudiandae nam incidunt dolorem et galisum distinctio qui soluta incidunt."

nSize := oPrinter:GetTextWidth(cTxt, oFont1,2)

oPrinter:SayAlign( 02/*linha*/,10/*coluna*/,cTxt/*texto*/,oFont1/*fonte*/,550/*Largura*/,;
200/*Altura*/, CLR_HRED/*Cor*/, 3/*AlinhamentoH*/, 2/*AlinhamentoV*/ )

oPrinter:SayAlign( 80/*linha*/,10/*coluna*/,cTxt2/*texto*/,oFont1/*fonte*/,550/*Largura*/,;
200/*Altura*/, CLR_HRED/*Cor*/, 3/*AlinhamentoH*/, 2/*AlinhamentoV*/ )
oPrinter:Line( 960, 10, 960, 900, ,"-2")

oPrinter:SayBitmap( 70 , 10 , "\imp\clipng.png" , 550 , 200 )

oPrinter:EndPage()
oPrinter:Preview()
FreeObj(oPrinter)
oPrinter := Nil

Return

Saiba mais

Cross Segmento - TOTVS Backoffice Linha Protheus - ADVPL - Classe FWMSPrinter
FWMsPrinter

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _