Amigos,
Como posso criar com TCPDF um cartão para imprimir em PDF com PVC. nas medidas do PVC.
aguardo
Amigos,
Como posso criar com TCPDF um cartão para imprimir em PDF com PVC. nas medidas do PVC.
aguardo
Crie uma aplicação PdfReport
Em Configuração:
Orientação: Paisagem
Tipo: Registro por página
Ud Medida: Milimetros
Formato PDF: Customizado
Altura: 55
Largura: 88
Destino: Browser
Qtde Paginas: 2
Em SQL faça o SELECT pegando os campos que deseja na carteirinha.
Em LayOut PDF > Interface
Defina os campos para textos fixos como Campo: Texto Pré Definido
E as variáveis como campos de variáveis.
Defina também as posições para todos os campos preenchendo PosX e PosY
Faça isso para as DUAS páginas
Em LayOut PDF Código > Selecione LayOut no select e insira o seguinte código abaixo:
$pdf->SetLineWidth(0.5);
$x=27; # posição X
$y=27; # posição Y
$w=28;# largura
$h=6; # altura
$raio=2;
$r=2;
$cantoID = 0;
$cantoIE = 90;
$cantoSE = 180;
$cantoSD = 270;
$x+=$raio;
$y+=$raio;
$pdf->Line($x,$y-$raio,$x+$w-($raio*2),$y-$raio);
$pdf->Line($x,$y-$raio+$h,$x+$w-($raio*2),$y-$raio+$h);
$pdf->Line($x-$raio,$y,$x-$raio,$y-($raio*2)+$h);
$pdf->Line($x-$raio+$w,$y,$x-$raio+$w,$y-($raio*2)+$h);
for($cantoSE=180; $cantoSE<270; $cantoSE+=$r)
{
$Xse =((cos($cantoSEpi()/180))$raio)+$x;
$Yse =((sin($cantoSEpi()/180))$raio)+$y;
$X1se =((cos(($cantoSE+$r)pi()/180))$raio)+$x;
$Y1se =((sin(($cantoSE+$r)pi()/180))$raio)+$y;
$pdf->Line($Xse,$Yse,$X1se,$Y1se);
}
$x+=$w-$raio-$raio;
for($cantoSD=270; $cantoSD<360; $cantoSD+=$r)
{
$Xsd =((cos($cantoSDpi()/180))$raio)+$x;
$Ysd =((sin($cantoSDpi()/180))$raio)+$y;
$X1sd =((cos(($cantoSD+$r)pi()/180))$raio)+$x;
$Y1sd =((sin(($cantoSD+$r)pi()/180))$raio)+$y;
$pdf->Line($Xsd,$Ysd,$X1sd,$Y1sd);
}
$y+=$h-$raio-$raio;
for($cantoID=0; $cantoID<90; $cantoID+=$r)
{
$Xid =((cos($cantoIDpi()/180))$raio)+$x;
$Yid =((sin($cantoIDpi()/180))$raio)+$y;
$X1id =((cos(($cantoID+$r)pi()/180))$raio)+$x;
$Y1id =((sin(($cantoID+$r)pi()/180))$raio)+$y;
$pdf->Line($Xid,$Yid,$X1id,$Y1id);
}
$x-=$w-$raio-$raio;
for($cantoIE=90; $cantoIE<180; $cantoIE+=$r)
{
$Xie =((cos($cantoIEpi()/180))$raio)+$x;
$Yie =((sin($cantoIEpi()/180))$raio)+$y;
$X1ie =((cos(($cantoIE+$r)pi()/180))$raio)+$x;
$Y1ie =((sin(($cantoIE+$r)pi()/180))$raio)+$y;
$pdf->Line($Xie,$Yie,$X1ie,$Y1ie);
}
$x=57;
$y=27;
$w=28;
$h=6;
$raio=2;
$r=2;
$cantoID = 0;
$cantoIE = 90;
$cantoSE = 180;
$cantoSD = 270;
$x+=$raio;
$y+=$raio;
$pdf->Line($x,$y-$raio,$x+$w-($raio*2),$y-$raio);
$pdf->Line($x,$y-$raio+$h,$x+$w-($raio*2),$y-$raio+$h);
$pdf->Line($x-$raio,$y,$x-$raio,$y-($raio*2)+$h);
$pdf->Line($x-$raio+$w,$y,$x-$raio+$w,$y-($raio*2)+$h);
for($cantoSE=180; $cantoSE<270; $cantoSE+=$r)
{
$Xse =((cos($cantoSEpi()/180))$raio)+$x;
$Yse =((sin($cantoSEpi()/180))$raio)+$y;
$X1se =((cos(($cantoSE+$r)pi()/180))$raio)+$x;
$Y1se =((sin(($cantoSE+$r)pi()/180))$raio)+$y;
$pdf->Line($Xse,$Yse,$X1se,$Y1se);
}
$x+=$w-$raio-$raio;
for($cantoSD=270; $cantoSD<360; $cantoSD+=$r)
{
$Xsd =((cos($cantoSDpi()/180))$raio)+$x;
$Ysd =((sin($cantoSDpi()/180))$raio)+$y;
$X1sd =((cos(($cantoSD+$r)pi()/180))$raio)+$x;
$Y1sd =((sin(($cantoSD+$r)pi()/180))$raio)+$y;
$pdf->Line($Xsd,$Ysd,$X1sd,$Y1sd);
}
$y+=$h-$raio-$raio;
for($cantoID=0; $cantoID<90; $cantoID+=$r)
{
$Xid =((cos($cantoIDpi()/180))$raio)+$x;
$Yid =((sin($cantoIDpi()/180))$raio)+$y;
$X1id =((cos(($cantoID+$r)pi()/180))$raio)+$x;
$Y1id =((sin(($cantoID+$r)pi()/180))$raio)+$y;
$pdf->Line($Xid,$Yid,$X1id,$Y1id);
}
$x-=$w-$raio-$raio;
for($cantoIE=90; $cantoIE<180; $cantoIE+=$r)
{
$Xie =((cos($cantoIEpi()/180))$raio)+$x;
$Yie =((sin($cantoIEpi()/180))$raio)+$y;
$X1ie =((cos(($cantoIE+$r)pi()/180))$raio)+$x;
$Y1ie =((sin(($cantoIE+$r)pi()/180))$raio)+$y;
$pdf->Line($Xie,$Yie,$X1ie,$Y1ie);
}
O resultado está nesse link: https://dl.dropboxusercontent.com/u/65102648/sapoclub.png
Tentei incluir aqui, mas não foi permitido, diz q a pasta CMOD não tem permissão blá, blá, blá…
Não inclui o verso, mas é simples também.
** Para cada retângulo com canto arredondado, repeti o código, pois não consegui fazê-lo com Include ou chamando a Biblioteca, se alguém souber, posta aí.
Qquer dúvida, é só chamar.