OK so lese ich die Bilder ein und male die Untereinander, das klappt auch ich weiß nur nicht wie ich da eine weitere Seite erstelle wenn es nicht mehr auf eine passt?
die Daten kommen aus einer Datatable
'Textblock:
Dim x, y As Single
x = Druckbereich.Left
y = Druckbereich.Top + TitelBox.Height + 75 ' Y_Start
'Dim sf As StringFormat = StringFormat.GenericTypographic
sf.Alignment = StringAlignment.Near
sf.LineAlignment = StringAlignment.Near
Dim Stempel, EintragA, EintragB, EintragC, EintragD As String
Dim minSize As SizeF = g.MeasureString("Belegnummer:", FontBold, _
Druckbereich.Size)
Dim minBreite = minSize.Width + 140
Dim minHöhe = minSize.Height
Dim x2Pos As Single = x + minBreite + 8
Dim line_x2 As Single = Druckbereich.Width + Druckbereich.Left
EintragA = "Belegnummer:"
EintragC = "Ablesewert:"
Try
For i As Integer = 0 To DS.tabelle.Rows.Count - 1
Dim row As DataRow = DS.tabelle.Rows(i)
Dim bildpfad As String = row("Pfad").ToString
Dim Ablesedate As Date = row("Ablesedatum").ToString
Stempel = Format(Ablesedate, "ddd-dd.MM.yyyy HH:mm")
EintragB = row("ID").ToString
EintragD = row("S1258882").ToString
'Bildpfad prüfen
If IsBildPfad(bildpfad) = True Then
Dim img As Bitmap = GetZoomImage(Image.FromFile(testBild), _
New Size(120, 120), _
Drawing2D.InterpolationMode.HighQualityBicubic)
Dim r As New Rectangle(50, y * (i + 1), img.Width + 3, _
img.Height + 3)
g.DrawImage(img, 50, y * (i + 1))
g.DrawRectangle(pen_big, r)
g.DrawString("Beleg vom: " & Stempel, New Font("arial", 8), _
Brushes.Black, New Point(50, y * (i + 1) + img.Height + _
14))
g.DrawString(EintragA, FontBold, Brushes.Black, x + 135, y _
* (i + 1), sf)
g.DrawString(EintragB, FontRegular, Brushes.Black, x2Pos, y _
* (i + 1), sf)
g.DrawString(EintragC, FontBold, Brushes.Black, x + 135, y _
* (i + 1) + minHöhe, sf)
g.DrawString(EintragD, FontRegular, Brushes.Black, x2Pos, y _
* (i + 1) + minHöhe, sf)
'Abschlusslinie
g.DrawLine(p1, 50, y * (i + 1) + img.Height + 12, 718, y * ( _
i + 1) + img.Height + 12)
Else
Dim bild As Bitmap = GetZoomImage(Image.FromFile(keinBild), _
New Size(120, 120), _
Drawing2D.InterpolationMode.HighQualityBicubic)
Dim r As New Rectangle(50, y * (i + 1), bild.Width + 3, _
bild.Height + 3)
g.DrawImage(bild, 50, y * (i + 1))
g.DrawRectangle(pen_big, r)
g.DrawString("kein Beleg: " & Stempel, New Font("arial", _
8), Brushes.Black, New Point(50, y * (i + 1) + _
bild.Height + 14))
g.DrawString(EintragA, FontBold, Brushes.Black, x + 135, y _
* (i + 1), sf)
g.DrawString(EintragB, FontRegular, Brushes.Black, x2Pos, y _
* (i + 1), sf)
g.DrawString(EintragC, FontBold, Brushes.Black, x + 135, y _
* (i + 1) + minHöhe, sf)
g.DrawString(EintragD, FontRegular, Brushes.Black, x2Pos, y _
* (i + 1) + minHöhe, sf)
'Abschlusslinie
g.DrawLine(p1, 50, y * (i + 1) + bild.Height + 12, 718, y * _
(i + 1) + bild.Height + 12)
End If
Next i
Catch ex As Exception
End Try |