Здравствуйте, уважаемые форумчане! Давно назрела задача вычислить длину строки в points.
Например, есть код
Sub LTextPt()
Dim x As Double, y As Double, dwidth As Double, dheight As Double
x = 200: y = 200: dwidth = 50: dheight = 50
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, x, y, _
dwidth, dheight).Select
Selection.Characters.Text = "qwertyuiopasdfghjklzxcvbnmWINKLEWXZA"
With Selection.Characters(Start:=1, Length:=3).Font
.Name = "Times New Roman"
.FontStyle = "обычный"
.Size = 14
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = True
End With
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Line.Visible = msoFalse
End Sub
Как можно вычислить длину строки (в points)
qwertyuiopasdfghjklzxcvbnmWINKLEWXZA
или в простейшем случае ширину символа?
Читал книгу Дан Эпплам Win32API и Visual Basic Глава 11. Текст и шрифты, но функции WinAPI и как ими воспользоваться еще для меня непосильно.
Например,
GetTextExtentPoint32
GetTextMetrics
и т.п.
Буду очень благодарен за помощь.
Например, есть код
Sub LTextPt()
Dim x As Double, y As Double, dwidth As Double, dheight As Double
x = 200: y = 200: dwidth = 50: dheight = 50
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, x, y, _
dwidth, dheight).Select
Selection.Characters.Text = "qwertyuiopasdfghjklzxcvbnmWINKLEWXZA"
With Selection.Characters(Start:=1, Length:=3).Font
.Name = "Times New Roman"
.FontStyle = "обычный"
.Size = 14
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = True
End With
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Line.Visible = msoFalse
End Sub
Как можно вычислить длину строки (в points)
qwertyuiopasdfghjklzxcvbnmWINKLEWXZA
или в простейшем случае ширину символа?
Читал книгу Дан Эпплам Win32API и Visual Basic Глава 11. Текст и шрифты, но функции WinAPI и как ими воспользоваться еще для меня непосильно.
Например,
GetTextExtentPoint32
GetTextMetrics
и т.п.
Буду очень благодарен за помощь.