View Full Version : [VB.NET] Spaziatura tra caratteri nella stampa
Buonasera,
nel mio programma effettuo la stampa senza crystal report quindi io vorrei stampare una stringa con lo spazio tra i caratteri cioè:
Dim s as string = "SOLE"
Dim Font4 As New Font("Arial", 10)
e.Graphics.DrawString(s, Font4, Brushes.Black, 50,50 )
questo codice stampa a video "SOLE" io invece vorrei stampare "S O L E"
qualcuno sa se c'è qualche metodo per non inserire spazi tra i caratteri in manuale?
grazie in anticipo :help:
Puoi costruire tu stesso un metodo per farlo, non è difficile, qualcosa di simile :
Private Sub DisegnaStringa(ByRef G As Graphics, ByVal S As String, ByVal F As Font, _
ByVal B As Brush, ByVal spaziatura As Integer, _
ByVal x As Integer, ByVal y As Integer)
For i As Integer = 0 To S.Length - 1
G.DrawString(S(i), F, B, x + i * spaziatura, y)
Next
End Sub
Con spaziatura = 0 tutte le lettere vengono scritte nello stesso punto, quindi sovrapposte. Crescendo con la spaziatura si ottengono tutte le posizioni possibili... E' una cosa base, ovviamente, ma lavorandoci sopra si può costruire il proprio ""DisegnaStringa" ottimizzato per ogni situazione... ;)
Marco grazie per il consiglio farò come mi hai detto tu :D però è rimasto solo un'altro dubbio cioè:
drawstring(ByRef G As Graphics, ByVal S As String, ByVal F As Font, _
ByVal B As Brush, _
ByVal x As Integer, ByVal y As Integer)
x e y che sarebbero le coordinate dove vado a disegnare la stringa, di che unità di misura sono? (non sono riuscito a capire)
per esempio se io voglio stampare su un foglio A4 la stringa "SOLE" con x=3cm e y=10cm come devo fare la conversione in punti,pixel,pollici ecc...ecc...
grazie in anticipo :cool:
ho risolto con:
'Imposto l'unità di misura in millimetri
e.Graphics.PageUnit = GraphicsUnit.Millimeter
Grazieeeeeeeeeeeeeeeeee :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.