Public Sub PulsPdf_Click() ' Il file .pdf prodotto viene poi mostrato sul display
'----------------------------------------------------------------------------
FaiPdf(Foglio.Text)
Shell("Exec = libreoffice/home/piero/MovvAnomStmp")
End
Public Sub PulStampa_Click() ' Il file .pdf prodotto viene poi stampato
Dim hStampa As Process
'---------------------------------ù
FaiPdf(Foglio.Text)
hStampa = Shell("lpr -o media=A4 " & User.home & "/MovvAnomStmp")
End
Private Sub FaiPdf($Testo As String)
Dim pdf As ListAnom
'-------------------------------------------
With pdf = New ListAnom("L", "mm", "A4") 'formato della pagina: A4 orizzontale
.Open()
.AliasNbPages()
.Data($Testo)
.Output(User.Home & "/MovvAnomStmp", False)
End With
End
Inherits PdfWriter
Private iNumPag As Integer
Public Sub Header() 'intestazione di pagina (valida per tutte le pagine)
End
Public Function Data($TstMultiRg As String) 'corpo di una o più pagine
Dim bEsito As Boolean
Dim bBlu As Boolean
Dim i As Integer = (-1)
Dim ill As Integer
Dim iLun As Integer
Dim iTotRg As Integer
Dim $DxSx As String
Dim $StriMia As String
Dim $RgStmp As New String[]
'---------------------------------------------------------
Me.AddPage()
Me.SetX(0)
Me.SetY(10)
Me.Ln()
$RgStmp = Split($TstMultiRg, "\n")
Me.SetFont("Times", "", 10)
For Each $RgStmp
Inc i
Me.MultiRiga(0, 0, $RgStmp[i], False, "L", False)
Me.MultiRect([0, 0])
Me.Lnm()
Next
End
Public Function Footer()
Dim $FinePag As String = "- Pag. "
'------------------------------------------------------------------
iNumPag += 1
$FinePag &= Str(iNumPag) & " -"
Me.SetXY(100, -270)
Me.SetFont("Times", "", 10)
Me.SetLineWidth(0)
Me.Cell(0, 0, $FinePag, False, 0, "L", False)
Me.Ln()
End
Public Sub Header() 'intestazione di pagina (valida per tutte le pagine)
End
Public Function Data($TstMultiRg As String) 'corpo di una o più pagine
Dim bEsito As Boolean
Dim bBlu As Boolean
Dim i As Integer
Dim ill As Integer
Dim iLun As Integer
Dim iTotRg As Integer
Dim $DxSx As String
Dim $RgProva As String = "1...+...10....+...20....+...30....+...40....+...50....+...60....+...70....+...80....+...90....+..100....+..110....+..120....+..130....+..140....+..150....+..160....+..170....+..180....+..190....+..200"
Dim $StriMia As String
Dim $RgStmp As New String[]
'---------------------------------------------------------
Me.SetX(0)
Me.SetY(10)
Me.Ln()
$RgStmp = Split($TstMultiRg, "\n")
Me.SetX(5)
Me.SetY(10)
Me.SetFont("Times", "", 10)
i = (-1)
For Each $RgStmp
Inc i
Me.MultiRiga(200, 4, $RgStmp[i], False, "L", False)
Me.Lnm()
Next
Me.MultiRiga(200, 4, $RgProva, False, "L", False)
Me.Lnm()
End
Public Function Footer()
Dim $FinePag As String = "- Pag. "
'------------------------------------------------------------------
iNumPag += 1
$FinePag &= Str(iNumPag) & " -"
Me.SetXY(100, -10)
Me.SetFont("Times", "", 10)
Me.SetLineWidth(0)
Me.Cell(30, 4, $FinePag, False, 0, "L", False)
Me.Ln()
End
Me.SetX(0)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(1)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(2)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(3)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(4)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(5)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Me.SetX(15)
Me.Cell(200, 4, $RgProva, False, 1, "L", False)
Me.Ln()
Nell'esempio ho incollato un testo già formattato, quindi non ho messo multicell nel ciclo for, vedrai tu col tuo programma come devi fare.
Spero di esserti stato utile, ciao :2birre:
$RgStmp = Split($TstMultiRg, "\n")
Me.SetX(5)
Me.SetFont("Times", "", 10)
i = (-1)
For Each $RgStmp
Inc i
Me.Multicell(200, 2, $RgStmp[i], False, "L", False)
Me.Ln()
Me.SetX(5)
Next