<< Chapter < Page Chapter >> Page >

Set the stroke-width

The line thickness is controlled by the value of the stroke-width attribute in the SVG element that causes the geometrical object to be drawn.

Listing 18 contains a series of Java statements that set new values for the stroke-width attribute for each of a variety of objects. Since the statements are allessentially the same, I will discuss only the first one.

Listing 18 . Set the stroke-width attribute value.
SvgLib21.setStrokeWidth( border,//name of the object of interest0.03 //new value for the stroke-width attribute );SvgLib21.setStrokeWidth(floor,0.1);SvgLib21.setStrokeWidth(wall,0.1); SvgLib21.setStrokeWidth(tableTop,0.03);SvgLib21.setStrokeWidth(tableLeg,0.03); SvgLib21.setStrokeWidth(massC,0.05);SvgLib21.setStrokeWidth(massB,0.05); SvgLib21.setStrokeWidth(massA,0.05);SvgLib21.setStrokeWidth(pullySupport,0.05); SvgLib21.setStrokeWidth(pulleyWheel,0.05);SvgLib21.setStrokeWidth(cordR,0.03); SvgLib21.setStrokeWidth(cordQ,0.03);SvgLib21.setStrokeWidth(cordP1,0.03); SvgLib21.setStrokeWidth(cordP2,0.03);

What are you allowed to change?

There are only two things that you can change in a call to the setStrokeWidth method as shown in Listing 18 :

  • The name of the Java object of interest ( border for the first call in Listing 18 ).
  • The new value for the stroke-width attribute in the SVG element that corresponds to the specified Java object (0.03 for the first call in Listing 18) .

Recall that border is the name of the Java object that is used to draw a rectangular border on the canvas (see Listing 5 ).

Recall also that the initial default value of the stroke-width attribute for the rect element was equal to "1" (see Listing 6 ).

To see the effect of the first call to the setStrokeWidth method in Listing 18 , go back and take a look at the final SVG output code in Listing 1 . Pay particular attention to the first rect element.

Modified stroke-width attribute value

I have reproduced that rect element in Listing 19 for convenient viewing.

Listing 19 . Modified stroke-width attribute value.
<rect fill="none" stroke="black" stroke-width="3"x="1" y="1" width="987" height="762"><title>rectangle</title></rect>

As mentioned earlier, the default value for the stroke-width attribute of the rect element shown in Listing 6 was "1". However, after I added the first call to the setStrokeWidth method in Listing 18 and re-ran the program, the attribute value was changed to "3" corresponding approximately to a line thickness of 0.03inch.

If you compare the parameter values to the remaining calls to the setStrokeWidth method in Listing 18 with the final values of the stroke-width attribute values in Listing 1 , they should all correspond accordingly.

Draw text

All that we have left to do in this program is to draw some text and write the output SVG file.

The Java code in Listing 20 can be used to draw one line of text.

Listing 20 . Draw text.
//Draw text Element textA = SvgLib21.makeText(svg, ns,2.5, //x-coordinate of beginning of text 3.3, //y-coordinate of beginning of text"arial",//font-family (optionally "") 32, //font size in points"Friction free table." //text to be drawn );

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Accessible physics concepts for blind students. OpenStax CNX. Oct 02, 2015 Download for free at https://legacy.cnx.org/content/col11294/1.36
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Accessible physics concepts for blind students' conversation and receive update notifications?

Ask