Width Property
Width Property |
Gets or sets the y-axis dimension, or width, of the pen tip when drawing ink.
Declaration
[C++]
[C++]
[propget] HRESULT get_Width([out, retval] float *CurrentWidth);
[propput] HRESULT put_Width([in] float NewWidth);
[Microsoft® Visual Basic® 6.0]
[Visual Basic]
Public Property Get Width() As Single
Public Property Let Width( _
ByVal NewWidth As Single)
Property Value
float The y-axis dimension, or width, of the pen tip in HIMETRIC units when drawing ink.
The default pen width is 53 (in HIMETRIC units).
This property is read/write.
Return Value
HRESULT value | Description |
---|---|
S_OK | Success. |
E_POINTER | Parameter pointer is NULL or invalid. |
E_INK_EXCEPTION | An exception occurs inside the method. |
E_INVALIDARG | The width of the pen is less than 0. |
E_UNEXPECTED | Unexpected parameter or property type. |
Remarks
If the tablet reports pen pressure, the actual width of the ink varies depending on the amount of pressure applied to the drawing surface. When maximum pressure is applied, the width is 3/2 times the Width property. When minimum pressure is applied, the width is 1/2 the Width value. By default, pressure from the pen is reported. To specify that pressure should not be reported (that the width of ink does not change), use the IgnorePressure property.
If the tablet reports pen pressure (if the IgnorePressure property is false), the actual width of the ink varies depending on the amount of pressure applied to the drawing surface. When maximum pressure is applied, the width is 150% of the value of the Width property. When minimum pressure is applied, the width is 50% of the value of the Width property. By default, pressure from the pen is reported. To specify that pressure should not be reported (that the width of ink does not change), set the IgnorePressure property to true.
Precision is limited to one one-thousandth of a HIMETRIC unit (three digits to the right of the decimal point). For example, if you specify a value of 2.0006, the most precise measurement is 2.001.
Example
[Visual Basic 6.0]
This Visual Basic 6.0 example shows menu handlers that change the Width property of a InkDrawingAttributes object.
[Visual Basic]
Dim theInkCollector As InkCollector
'...
Private Sub MenuInkWidthThin_Click()
MenuInkWidthThin.Checked = _
Not MenuInkWidthThin.Checked
MenuInkWidthThick.Checked = False
theInkCollector.DefaultDrawingAttributes.Width = 10
End Sub
'...
Private Sub MenuInkWidthThick_Click()
MenuInkWidthThick.Checked = _
Not MenuInkWidthThick.Checked
MenuInkWidthThin.Checked = False
theInkCollector.DefaultDrawingAttributes.Width = 200
End Sub