[Blindtlk] Use of the SVGDraw01 drawing program in STEM courses

Chris Nusbaum dotkid.nusbaum at gmail.com
Mon Sep 19 20:38:54 UTC 2011


Hi Joseph,

Well, would it only work with JAWS? I didn't see that in the 
email.  What screen reader are you using?

 Chris Nusbaum

"The real problem of blindness is not the loss of eyesight.  The 
real problem is the misunderstanding and lack of education that 
exists.  If a blind person has the proper training and 
opportunity, blindness can be reduced to a mere physical 
nuisance." -- Kenneth Jernigan (President of the National 
Federation of the Blind, 1968-1986.)

  Visit the I C.A.N.  Foundation online at: 
www.icanfoundation.info for
information on our foundation and how it helps blind and visually
impaired children in MD say "I can!"


Sent from my BrailleNote

----- Original Message -----
From: "T.  Joseph Carter" <tjcarter at spiritsubstance.com
To: Blind Talk Mailing List <blindtlk at nfbnet.org
Date sent: Sun, 18 Sep 2011 22:27:29 -0700
Subject: Re: [Blindtlk] Use of the SVGDraw01 drawing program in 
STEM courses

Didn't I say on this very list, not so terribly long ago, that 
SVG
could allow a blind person to design graphics if only someone 
would
write the software to let them easily define them?

I probably can't be much help testing it out, since my computers 
are
fruit-flavored and it'll be a cold day someplace generally not 
cold
before I even consider paying $1200+ for JAWS!

Still, I'm pretty excited by Dick Baldwin's efforts which surely
must've preceded my comments by many months.

Joseph


On Sun, Sep 18, 2011 at 10:01:41PM -0500, David Andrews wrote:

From: Richard Baldwin <baldwin at dickbaldwin.com
Date: Sat, 17 Sep 2011 16:29:46 -0500
To: BlindMath Mailing List <blindmath at nfbnet.org
Subject: [Blindmath] Use of the SVGDraw01 drawing program in STEM 
courses

This message is intended mainly for teachers of blind or visually 
impaired
students in STEM courses.  Of course, this is a public forum and 
everyone is
welcome to read the message and provide comments as appropriate.

Having been the sighted teacher of a blind student for several 
years, I
firmly believe that making it possible for blind and visually 
impaired
people, and particularly blind and visually impaired students in 
STEM
courses, to communicate using accurate printed and tactile 
graphics will
improve the quality of life and the likelihood of academic 
success for those
students.

I have written a computer program that makes it possible, for the 
first time
in history, for blind and visually impaired people to create such 
graphics
in an accessible and user-friendly way.

Version 0.0.8 of my drawing program for blind students is now 
posted and
available for free and immediate download at:

http://www.austincc.edu/baldwin/SWT-SVG/SVGDraw01.zip

Three components are necessary to accomplish the goal of 
widespread graphics
communication among blind and visually impaired students and 
their teachers:

   - Availability of a robust and universally accepted graphics 
standard.
   - Availability of a robust, accessible, and user-friendly 
drawing program
   that allows blind people to take advantage of the SVG 
standard.
   - Availability of high-quality, economical, and readily 
available
   graphics embossing equipment.

A robust graphics standard - SVG

A robust and universally accepted graphics standard is already 
available in
the form of Scalable Vector Graphics (SVG).  See Scalable Vector 
Graphics
(SVG) 1.1 (Second Edition) <http://www.w3.org/TR/SVG/
An accessible and user-friendly drawing program - SVGDraw01

I have written and provided, free of charge, a drawing program 
that blind
and visually impaired people can use to draw pictures.  To the 
best of my
knowledge, no other existing program provides that capability.  
(If such a
program exists, it is a well-kept secret.) Thus, for the first 
time in
history, your students can express themselves using graphics.

While many drawing programs exist, they are written for use by 
sighted
people and not for use by blind people.  My program is designed 
and written
specifically for use by blind and visually impaired people.

Even though my program is still under development, it already 
provides the
capability for STEM students to create graphics that mirror many 
of the
figures and diagrams typically found in STEM textbooks.
A graph board on steroids

As a teacher of blind or visually impaired students, you might 
think of this
program as bringing the old-fashioned graph board into the 
computer age.
Students and others using this program can create both printed 
and tactile
graphics using many of the same thought processes that they would 
use when
constructing a "drawing" on a graph board using pushpins, rubber 
bands, a
protractor, and a measuring stick.

For example, one student might use this program to create and 
send an SVG
file to a friend with the message "Take a look at the cool floor 
plan of my
new apartment."

Another student might use this program to create and send an SVG 
file to a
college professor with the message "This is a free body diagram 
showing the
magnitude and directions of forces F21 and F23 caused by the 
interactions
among charges q1, q2, and q3."
Getting an immediate visual output

I will be adding new capabilities over time.  However, I probably 
won't add
capabilities that would not be useful to blind and visually 
impaired users.
For example, the program does not, by default, produce an 
immediate visual
output.  The primary output is intended to be a printer, a 
graphics embosser,
or both.  But, if you are sighted, or if you are blind and using 
the vOICe
sonification software to view the progress of your drawing, you 
can use a
procedure described in the attached file to view your drawing as 
it
progresses.
 High-quality, economical, and readily-available graphics 
embossing
equipment

This is the area where we fall short relative to achieving our 
widespread
graphics communications goal.  Although high-quality embossing 
equipment is
available in the marketplace, it is not economical (by computer 
standards)
nor is it readily available for the personal use of most blind 
students.

I view this as a supply and demand problem.  Prior to the release 
of my
program, there were no robust, accessible, and user-friendly 
tools that made
it possible for blind people to create  accurate graphics for use 
with a
high-quality embosser.  Thus, the demand for such embossing 
equipment has
been very limited.  My hope is that by making it possible for all 
blind
people to create accurate graphics, the demand for such embossing 
equipment
will go up and the costs for the equipment will come down.

Even today, however, many schools, colleges, and other 
organizations own
high-quality graphics embossing equipment that they can make 
available to
their blind and visually impaired clientele on some basis.  In 
those cases,
there is no reason for blind people to hold back from learning to
communicate using graphics.

My drawing program is freely available for you and your students 
to use.  As
a teacher, it is up to you to connect your blind and visually 
impaired
students to those available hardware embossing resources.

The attached HTML file is the User-Instruction file for my 
drawing program
named SVGDraw01.

Richard Baldwin
Professor of Computer Information Technology
Austin Community College
baldwin at austincc.edu
http://www.austincc.edu/baldwin/

Content-Type: text/html; charset=US-ASCII; 
name="Instructions.htm"
Content-Disposition: attachment; filename="Instructions.htm"
X-Attachment-Id: f_gsp41hv40

            Brief instructions for using the program named 
SVGDraw01

   Updated 09/17/11

   At any time, you can tab down to the button labeled "Press 
this button to
   return to the Action List," and use that button to abandon 
this
   Instructional document and return to the Action List.  Do not 
press the Esc
   key.

Index

     * [1]Purpose

          * [2]A robust graphics standard - SVG
          * [3]An accessible and user-friendly drawing program 
SVGDraw01
          * [4]High-quality, economical, and readily-available 
graphics
            embossing equipment

     * [5]A note about drawing orientation
     * [6]Program startup
     * [7]General user instructions

          * [8]Selecting actions from the Action List
          * [9]Performing the action
          * [10]Pressing the Esc key
          * [11]Text field objects
          * [12]Checkbox objects
          * [13]Button objects
          * [14]Message box objects
          * [15]Polylines, polygons, and paths
          * [16]The name and path of the output file
          * [17]Rotation, translation, and scaling
          * [18]A note about page size

     * [19]Action items

          * [20]User instructions
          * [21]Open existing drawing
          * [22]Start a new drawing
          * [23]Draw a line
          * [24]Draw a rectangle
          * [25]Draw a circle
          * [26]Draw an ellipse
          * [27]Draw a polyline, a polygon, or a path

               * [28]A csv file
               * [29]A path file
               * [30]Sample files

          * [31]Draw line of text
          * [32]Rotate shapes
          * [33]Translate shapes
          * [34]Scale shapes
          * [35]Delete shapes
          * [36]Stop program
          * [37]Write drawing file

     * [38]Please provide feedback

Purpose

   Select [39]A note about drawing orientation to skip this 
section and go
   directly to the next major section.

   I firmly believe that making it possible for blind and 
visually impaired
   people, and particularly blind and visually impaired students 
in Science,
   Technology, Engineering, and Mathematics (STEM) to communicate 
using
   accurate printed and tactile graphics will improve the quality 
of life for
   those people.  The purpose of this program is to make it 
possible for blind
   and visually impaired people to create such graphics in an 
accessible and
   user-friendly way.

   Three components are necessary to accomplish that [40]goal:

     * Availability of a robust and universally accepted 
[41]graphics
       standard.
     * Availability of an accessible and user-friendly 
[42]drawing program
       that allows blind people to take advantage of that 
standard.
     * Availability of high-quality, economical, and readily 
available
       graphics [43]embossing equipment.

  A robust graphics standard - SVG

   A robust and universally accepted graphics standard is already 
available
   in the form of Scalable Vector Graphics (SVG).  See 
[44]Scalable Vector
   Graphics (SVG) 1.1 (Second Edition)

  An accessible and user-friendly drawing program - SVGDraw01

   This program is my attempt to provide, free of charge, a 
drawing program
   that makes it possible for blind and visually impaired people 
to take
   advantage of many of the capabilities of SVG.  Even though the 
program is
   still under development, it already makes it possible for STEM 
students to
   create graphics that mirror many of the figures and diagrams 
typically
   found in STEM textbooks.

    A graph board on steroids

   One might think of this program as bringing the old-fashioned 
graph board
   that uses pushpins and rubber bands to convey graphic 
information into the
   computer age.  Students and others using this program can 
create both
   printed and tactile graphics using much the same thought 
processes that
   they would use when constructing a "drawing" on a graph board 
using
   pushpins, rubber bands, a protractor, and a measuring stick.

   For example, one person might use this program to create and 
send an SVG
   file to a friend with the message "Take a look at the cool 
floor plan of
   my new apartment."

   Another person might use this program to create and send an 
SVG file to a
   college professor with the message "This is a free body 
diagram showing
   the magnitude and directions of forces F21 and F23 caused by 
the
   interactions among charges q1, q2, and q3."

    Getting an immediate visual output

   I will be adding new capabilities over time.  However, I 
probably won't add
   capabilities that would not be useful to blind users.  For 
example, the
   program does not, by default, produce a visual output.  But, 
if you are
   sighted, or if you are a blind user using the vOICe 
sonification software
   to view the progress of your drawing, you can use the 
following procedure
   to create a visual output.

   Start the program and select the following two actions in 
sequence in the
   Action List:

    1.  "Start a new drawing"
    2.  "Write drawing file"

   Provide the requested information for both actions including 
the path and
   file name for the output SVG file.

   Then open the output SVG file in Firefox or IE9 (earlier 
versions of IE
   won't work) .  You should see an empty drawing in the browser 
window.

   Return to the Action List and start drawing shapes.  Each time 
you want to
   see an updated drawing, select and process "Write drawing 
file" and then
   refresh your browser.  Your updated drawing should appear in 
the browser
   window.  You should be able to continue adding shapes and 
viewing them so
   long as you don't select "Open existing drawing" or "Start a 
new drawing."

  High-quality, economical, and readily-available graphics 
embossing equipment

   This is the area where we fall short relative to achieving the
   [45]communications goal.  Although high-quality embossing 
equipment is
   available, it is neither economical nor readily available for 
the majority
   of blind people.

   I view this as something of a supply and demand problem.  
Prior to the
   release of the developmental versions of this program, to the 
best of my
   knowledge, there have been no readily-available tools that 
make it
   possible for blind people to create  accurate graphics for use 
with a
   high-quality embosser.  Thus, the demand for such equipment 
has been very
   limited.  My hope is that by making it possible for all blind 
people to
   create accurate graphics, the demand for such equipment will 
go up and the
   costs for the equipment will come down.

   Even today, however, many schools, colleges, and other 
organizations own
   high-quality graphics embossing equipment that they can make 
available to
   their clientele on some basis.  In those cases, there is no 
reason for
   blind people to hold back from learning to communicate using 
accurate
   graphics.

A note about drawing orientation

   In most STEM courses , you typically learn to draw graphs and 
other
   diagrams with the 0,0 origin in the lower-left corner of the 
drawing.
   Positive values along the y-axis go up the page and positive 
values along
   the x-axis go to the right.

   Unfortunately, in SVG, and most other computer graphics 
programming
   systems, the situation is reversed insofar as the y-axis is 
concerned.  In
   SVG, and in this program as well, the 0,0 origin is at the 
top-left corner
   of the drawing and positive values along the y-axis go down 
the page.

   This not only has an impact on the physical locations of shape 
objects in
   your drawings, it also has an impact on the orientation of 
those objects.
   for example, this causes the reference corner for a rectangle 
to be the
   upper-left corner.  It causes the location of the y-coordinate 
values for
   all shapes to be measured down from the top of the drawing 
instead of up
   from the bottom of the drawing.

   Note, however, that it does not change the fact that the 
reference
   location for a line of text is at the lower-left corner of the 
first
   character in the line.

   At some point, I may attempt to correct this issue 
arithmetically.  In the
   meantime, however, you will simply need to get used to an 
upside-down
   coordinate system, and unfortunately, you may need to refer 
your teacher
   or professor to this section in this document.

Program startup

   When the program starts, you will land in an Action List that 
provides the
   following actions:

     * [46]User instructions - opens this HTML file containing 
instructions
       in a browser window.
     * [47]Open existing drawing - opens a drawing file that was 
previously
       created and saved using SVGDraw01.
     * [48]Start a new drawing - starts fresh and creates a new 
drawing.
     * [49]Draw a line - draw a straight line segment between two 
specified
       points.
     * [50]Draw a rectangle - draw a rectangle at a specified 
location with a
       specified width and height.
     * [51]Draw a circle - draw a circle at a specified location 
with a
       specified radius.
     * [52]Draw an ellipse - draw an ellipse at a specified 
location with
       specified width and height.
     * [53]Draw a polyline, a polygon, or a path - draw a 
polyline, a
       polygon, or a path based on csv data or path data that is 
imported
       into the program.
     * [54]Draw a line of text - draw a line of text at a 
specified location
       with a specified point size and other parameters as well.
     * [55]Rotate shapes - rotate any one or more shapes by a 
specified angle
       in degrees clockwise around a specified center of 
rotation.  See
       [56]Rotation, translation, and scaling below for cautions 
regarding
       the use of this action.
     * [57]Translate shapes - translate any one or more shapes by 
a specified
       distance along both the x-axis and the y-axis.  See 
[58]Rotation,
       translation, and scaling below.
     * [59]Scale shapes - Multiply the coordinate values that 
make up one or
       more shapes by a scale factor to enlarge or shrink the 
shape.  See
       [60]Rotation, translation, and scaling below.
     * [61]Delete shapes - delete one or more shapes from the 
current
       drawing.
     * [62]Stop program - just what it says.  Be sure to write 
your drawing
       into an output file before selecting this action.
     * [63]Write drawing file - write the current drawing into an 
SVG file.

   The first action that you select should be "User 
Instructions", "Open
   existing drawing", or "Start a new drawing." You should always 
select
   either "Open existing drawing" or "Start a new drawing" and 
provide the
   requested information before selecting any of the actions 
below those two
   with the possible exception of the action titled "Stop 
program."

General user instructions

   If you are reading this document from inside the program, you 
must have
   already opened this HTML document in an SWT browser widget.  
If so, keep
   reading.

   On the other hand, you may also have opened this document in a 
standard
   browser without running the program named SVGDraw01.  If so, 
keep reading.

  Selecting actions from the Action List

   With the exception of the action named "Stop program", when 
you select an
   item in the Action List and press the Enter key, an action 
page will open
   containing labels, text fields, check boxes, radio buttons, 
push buttons,
   and other Graphical User Input (GUI) objects.  That action 
page will
   enable you to provide the information needed and to perform 
the steps
   necessary to execute that action.

   Navigate down through those GUI objects with the tab key.  
Navigate up
   through the objects with the shift-tab key combination.

   Navigate through radio buttons and the items in lists using 
the arrow
   keys.  Press the tab key to escape from a set of radio buttons 
or from a
   list without making a selection.

  Performing the action

   With the exception of the action labeled "Stop the program," 
there is a
   button on each Action Page that you must press to cause the 
action to be
   performed.  If you tab past that button and return to the 
Action List, the
   selected action will not have been performed.

  Pressing the Esc key

   If you press the Esc key when any read/write object on any 
page has the
   focus, the current action will be abandoned and focus will 
return to the
   Action List where you can select another action.

   This html viewer is a read-only object and does not behave 
well if you
   press the Esc key.  If you do accidentally press the Esc key 
while reading
   this document, use the tab key to work your way back to the 
Action List.

   A few of the other objects are read-only objects and do not 
respond at all
   to the Esc key.  They only respond to the tab key.

  Text field objects

   Press the tab key to accept the default value in a text field.  
To change
   the value in the field, type the new value and press the tab 
key.
   Normally, it should not be necessary for you to delete the 
current
   contents of a text field in order to change it.  However, you 
may find
   situations where it is necessary for you to delete the current 
contents so
   be on the lookout for those situations.

  Checkbox objects

   You must press the space bar to check or uncheck a check box.  
(The Enter
   key won't do the job.)

  Button objects

   You can press either the space bar or the Enter key to 
activate a button
   when it has the focus.

  Message box objects

   A message box will appear to announce the completion of those 
actions
   where completion is not obvious such as writing the output 
file, for
   example.

   Most errors will also result in the appearance of a message 
box.  In most
   cases, you can press either the space bar or the Enter key to 
dismiss a
   message box.  However, in some cases you must select one of 
two buttons
   labeled Yes and No.

   If you discover errors that do not result in a message box, 
please let me
   know.

  Polylines, polygons, and paths

   The polyline, the polygon, and the path are by far the most 
versatile
   shapes that you can draw with this program.  For example, if 
you need to
   plot a function such as y = x^2, the polyline shape or the 
path shape are
   probably your best choices.

   I will explain how to draw these three types of shapes in more 
detail
   [64]later.

  The name and path of the output file

   When you select "Write Drawing File" in the Action List, you 
will be
   prompted to enter a file name for the output file.  If you are 
running the
   program from an executable jar file, you should provide both a 
path and a
   file name, or you probably won't be able to find your output 
file on your
   disk.

  Rotation, translation, and scaling

   These three features, which fall in the general category of 
SVG
   transforms, are relatively easy to use as long as you don't 
combine them
   on a single shape.  However, once you combine them, the topic 
of SVG
   transforms becomes an advanced topic and will probably require 
outside
   study on your part for proper use.

   Among other things, when you apply a combination of rotation, 
translation,
   and/or scaling transforms, the order in which you perform the 
operations
   is critically important to the outcome.  A good understanding 
of the use of
   transforms in SVG is needed in order to understand those 
outcomes.

  A note about page size

   Your printer is probably not capable of printing from the 
extreme left
   edge to the extreme right edge, or from the extreme top edge 
to the
   extreme bottom edge of the largest paper size that it is 
advertised to
   accommodate.  For example my HP Deskjet 6940 printer 
advertises "Borderless
   Printing up to 8.5 x 24 in." However, the largest rectangle 
that it will
   actually print is 8.14 x 10.63 inches on a sheet of paper that 
is 8.5
   inches wide and 11 inches high.  Therefore, you should 
probably allow for
   some loss of print width and print height on the right side 
and the bottom
   of the page.

   If you plan to emboss your drawing on a tactile graphics 
embosser, you may
   also need to purposely leave a margin on both sides of your 
drawing to
   accommodate the width of the mechanical embossing mechanism.  
Check the
   specifications of the embosser that you plan to use to 
determine what
   those margins need to be..

Action items

   As mentioned earlier, when you first start the program you 
will land in an
   [65]Action List that allows you to select and perform any one 
of more than
   one dozen different drawing actions.  I will discuss each of 
those actions
   in this section so that you will know what to expect when you 
select one
   of them.

  User instructions

   If you select "User instructions" in the Action List and press 
the Enter
   key, you will land on a page containing a button labeled 
"Press this
   button to open instructions in a browser." When you press that 
button,
   this HTML document will open in a separate browser window.  
Note that the
   browser window is an SWT Widget, and may appear to be 
different in some
   respects from your standard browser.  However, you should be 
able to
   navigate and read the document just like you would read any 
other HTML
   document in a browser window.

   When you get to the end of the document, pressing the tab key 
will land
   you on a button labeled "Press this button to return to the 
Action List."
   As the name implies, pressing the button will cause the 
browser window to
   close and focus will return to the Action List where you can 
make another
   selection.

   Almost every page has an "Action" button near the end.  If you 
simply tab
   past that button and don't press it, focus will return to the 
Action List
   and the action will not be performed

  Open existing drawing

   Selecting this Action and pressing the Enter key will land you 
on a page
   from which you can open a previously-saved drawing file that 
was created
   using this program.

   (SVG drawing files created using other program may or may not 
work, so
   don't be surprised if you open a drawing file that was created 
using a
   different program and you experience errors.)

   Be aware that any work that you may have been doing on a new 
drawing will
   be lost unless you save that work by selecting [66]Write 
drawing file
   before executing this action.

   The Action page for this Action is relatively simple.  You 
will be
   presented with a text field and asked to "Enter name and path 
of drawing
   file to open." The existing drawing will have an extension of 
.svg.  Once
   you have entered the requested information, press the tab key 
and you will
   land on a button labeled "Press to open drawing file."

   Pressing that button will cause a Message Box to pop up 
containing
   information about the search for the existing drawing file.  
Press the OK
   button on that Message Box and the search will begin.  You may 
have to be
   very patient at this point.  Sometimes it takes a quite a 
while on my
   computer for the program to find and open the existing drawing 
file.

   If the file is not found, a Message Box will pop up with that 
information.
   Press OK to dismiss the Message Box and focus will return to 
the Action
   List.

   If the file is found and opened, a Message Box will pop up 
with that
   information as well.  When you press the OK button on that 
Message Box,
   focus will return to the Action List.

  Start a new drawing

   Select this action to start a new drawing.  When you select 
this action and
   press the Enter key, you will land on a page from which you 
can provide
   the information required for a new drawing.

   The first two text fields allow you to enter a title and a 
description for
   your new drawing.  If you simply tab past those two fields, a 
default title
   and a default description will be recorded for your new 
drawing.

   You will be asked to enter the width and height in inches of 
your new
   drawing in the next two text fields.  If you simply tab past 
those two
   fields, default values will be assigned for width and height.

    A very important point

   This is where I need to explain a very important point.  You 
specify the
   width and height of your new drawing in inches, such as 8.5 
inches and 11
   inches.  However, just enter the numbers.  Don't enter the 
units.  The units
   of inches are understood by the program.

   After you establish the width and height of your new drawing 
in inches by
   executing this action, you will be asked later to provide 
coordinate
   and/or dimensional information for many other actions.  In 
those cases, you
   will provide the information in units of 0.01 inch, or 100 
units per inch.
   For example, if you later decide to draw a rectangle that is 
8.5 inches
   wide and 11 inches high, you will specify the width as 850 and 
you will
   specify the height as 1100.

    The Action button

   Like most other Action pages, this page has an Action button 
near the end
   that is labeled "Press to start drawing." When you press that 
button, a
   Message Box will pop up to acknowledge that the new drawing is 
started.
   Pressing the OK button on the Message Box will return the 
focus to the
   Action List.

  Draw a line

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw a line segment between any two points 
in your
   drawing.

    The title and description fields

   On this page, as on may other pages, the first two fields 
allow you to
   enter a title and description for the line object.  If you tab 
through
   these two fields, a default title and a default description 
will be
   assigned to the object.  Because this is essentially the same 
on all pages,
   I won't mention it with respect to Action pages that I discuss 
in the
   remaining sections of this document.

    Coordinate-value fields

   You will be asked to enter the x and y coordinate values for 
one end of
   the line in the next two fields.  As usual, the fields already 
contain
   default values that you can accept by simply tabbing through 
the fields.

   You will then be asked to enter the x and y coordinate values 
for the
   other end of the line in the next two fields.

    Stroke width and opacity

   You will be asked to enter the stroke width and opacity in the 
next two
   fields.  You will encounter these same two fields on many 
action pages and
   the meaning will always be the same.  Therefore, I will 
explain the meaning
   here and then ignore it for the remainder of this document.

      The stroke width

   The stroke width is the width or thickness of the line that 
will be drawn.
   If you are planning to emboss the drawing, the stroke width 
should
   probably be at least as wide as the distance between two dots 
on the
   embosser.  If the embosser supports 20 dots per inch, the 
stroke width
   should probably be at least 5, which represents 0.05 inch or 
the distance
   between the dots on a 20 dot per inch embosser.

   If the embosser supports 16 dots per inch, the stroke width 
should
   probably be at least 6.25, which represents 0.0625 inch or the 
distance
   between the dots at 16 dots per inch.

   You may find that those values aren't sufficient to provide 
high-quality
   embossing and you may may need to make the stroke width even 
wider than
   the values suggested above.

      The opacity

   If we were talking about color, opacity would be a complicated 
topic.
   However, since we are only talking about white, black, and 
gray, the
   concept of opacity is fairly simple.

   You will be asked to enter a value between 0 and 1 for the 
stroke opacity.
   The line will be drawn pure black for a value of 1.

   The line will essentially not be drawn and therefore will be 
invisible for
   a value of 0.

   The line will be drawn with a shade of gray that is half way 
between
   between white and black for a value of 0.5.

   The greater the opacity value, the darker will be the line.  
The smaller
   the opacity value, the lighter will be the line.

   On an embosser with variable dot height, a value of 1 will 
produce dots
   with the maximum height.  For lower stroke opacity values, the 
height of
   the dots will be lower.

   (Also see [67]The fill checkbox and fill opacity later.)

  Draw a rectangle

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw a rectangle whose sides are parallel 
to the
   horizontal and vertical axes.  If you need a rectangle whose 
sides are not
   parallel to the horizontal and vertical axes, you can draw it 
with this
   action and then [68]rotate it later or draw it as a 
[69]polygon or as a
   [70]path.

   Using this action, you specify the x and y coordinates of the 
upper-left
   corner of the rectangle and the width and the height of the 
rectangle.  As
   before, you also specify the stroke width and the stroke 
opacity.

    The fill checkbox and fill opacity

   This action, along with several of the other actions to be 
discussed
   later, introduces a new parameter - fill.  I will explain it 
here and then
   ignore it when discussing actions in subsequent sections.

   Because this is a closed geometric shape, you can cause it to 
be filled
   with a color ranging from black through gray to white.

   Before you reach the action button while navigating down this 
action page,
   you will come to a checkbox labeled "Check this box for black 
fill." You
   can check (and uncheck) the box by pressing the space bar 
while the
   checkbox has the focus.

   If you check the box, a new text field will be exposed between 
the
   checkbox and the action button.  You will be asked to "Enter 
value between
   0 and 1 for fill opacity." Opacity has the same meaning here 
that it has
   for stroke opacity discussed earlier, except that this time it 
doesn't
   simply apply to a line.  Rather, it applies to an entire area 
defined by a
   line.

   A word of caution is in order here.  I have been told that if 
you plan to
   emboss your graphic using an embosser with variable dot 
height, you should
   avoid filling large areas with large opacity values.  I have 
been told that
   this can cause undesirable paper buckling when the embosser 
attempts to
   emboss a large area with high dots.  It was suggested that low 
opacity
   values should be used when filling.

    The Action button for the rectangle

   Finally, you will come to an action button labeled "Press to 
draw
   rectangle." As usual, pressing the button will cause the 
rectangle object
   to become a part of your drawing and focus will return to the 
Action List.

  Draw a circle

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw a circle at a given location with a 
given radius.

   You won't find anything new on this page.  You will be asked 
to enter the x
   and y coordinates for the circle along with the radius of the 
circle.

  Draw an ellipse

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw an ellipse at a given location with a 
given radius
   along the horizontal axis and a different radius along the 
vertical axis.
   As with the rectangle, you may need to [71]rotate the shape 
later if the
   default orientation is not what you need.

   In case you aren't familiar with this shape, an ellipse is 
like a squashed
   circle.  It is a smooth closed shape, but its radius may be 
larger along
   one axis than it is along the other axis.

   Once again, you won't find anything new on this action page.  
This page is
   much like the page for drawing a circle except that on this 
page, you will
   be asked to provide both a horizontal radius and a vertical 
radius.  If you
   enter the same value for both of the radii, you will end up 
with a circle.

  Draw a polyline, a polygon, or a path

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw a polyline, a polygon, or a path.

    Polyline and polygon

   For either a polyline or a polygon, you provide the x and y 
coordinate
   values for a set of points.  (I will provide and example 
later.) The points
   are connected by straight line segments in the order that you 
define the
   points.  The only difference between the two is that when you 
draw a
   polygon, the last point is automatically connected to the 
first point
   creating a closed shape.

    A path

   A path is a different kind of animal altogether.  It can be 
used to draw
   something as simple as a straight line segment, and can also 
be used to
   draw something as complex as a cubic Bezier curve or an 
elliptical arc.

   To use this feature of the program, you will probably need to 
first study
   SVG paths.  The best material that I have found on the topic 
is a tutorial
   located at 
[72]https://developer.mozilla.org/en/SVG/Tutorial/Paths.
   Hopefully, it will be sufficiently accessible that you can 
read it.

   To draw a path, you provide a string of characters consisting 
of both SVG
   path commands and coordinate information.  I will provide an 
example later.

    The action page

   The action page for this action is relatively straightforward.  
The first
   new thing on the page is a set of three radio buttons by which 
you specify
   that you want to draw one of the following three shapes:

     * Polyline
     * Polygon
     * Path

   Then you are asked to provide the name and path of a file to 
import that
   contains the information from which the shape will be drawn.  
When you
   enter that information and press the tab key, you land on a 
button labeled
   "Press this button to import data file."

   If you selected either the Polyline or the Polygon radio 
button, you will
   need to provide a [73]csv file containing the data.  This file 
must have an
   extension of .csv or it will be rejected.

   If you selected the Path radio button, you will need to 
provide a [74]path
   file containing the data.  This file must have an extension of 
.pth or it
   will be rejected.

    A csv file

   A csv file is a simple text file containing x,y coordinate 
value pairs
   with no spaces and with each value followed by a comma.  You 
can put one or
   more values on each line so long as you are careful to follow 
each value
   with a comma.  You can omit the comma at the end of the line 
if you wish.
   As mentioned above, the file must have an extension of .csv or 
it will be
   rejected.

   Here are the contents of a simple csv file that can be used to 
draw either
   a polyline or a polygon

 200,200
 600,200
 400,400

   If you were to use this data to draw a polyline, the program 
would draw
   two sides of a triangle.  If you were to use it to draw a 
polygon, the
   program would draw all three sides of the same triangle.

    A path file

   A path file contains the actual SVG code for the path that you 
want to
   draw.  For example, a file containing the following characters 
will cause a
   cubic Bezier curve to be drawn:

 M130 110 C 120 140, 180 140, 170 110

   You will find an explanation of this SVG code in the section 
on Bezier
   curves at 
[75]https://developer.mozilla.org/en/SVG/Tutorial/Paths.

    Sample files

   The executable jar file containing this program contains some 
sample csv
   files and some sample path files in a folder named Samples.  
You can
   extract those files using a program like WinZip and use them 
to experiment
   with the data import feature for drawing polylines, polygons, 
and paths.

   Many programs, including Microsoft Excel, produce csv files as 
a standard
   output.  You can also create your own csv files using a text 
editor.

   I have never seen a program that produces path files as a 
standard output
   format.  Therefore, if you use them, you will probably need to 
create them
   using a text editor.  Although that may sound like a daunting 
task, you may
   find it worth your while because you can squeeze a lot of 
graphic
   information into a path file once you understand SVG paths.

   For example, assume that you frequently need to draw curves in 
a Cartesian
   coordinate system with an x-axis, a y-axis, and tic marks 
along each axis,
   or maybe you need to draw grid lines instead of tic marks.  
You could
   create a path file for that basic structure.  Then whenever 
you need to
   draw a graph, you could begin by importing the path file for 
the axes and
   then draw your data points within those axes.

  Draw line of text

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can draw a single line of text at a given 
location with a
   given font face (such as Arial) and a given point size.  You 
have three
   choices for the font style (normal, italic, or oblique).  You 
also have
   four choices for the font weight (normal, bold, bolder, or 
lighter).

   If you have worked through the discussions of the action pages 
in the
   previous sections of this document, you shouldn't find 
anything new on
   this action page.

   The starting x and y coordinate values specify the location of 
the
   lower-left corner of a rectangle that fully encloses the first 
character
   in the line of text.

   A point size of 72 will probably produce an upper-case "T" 
that is
   approximately one-half inch from top to bottom on your 
printer.  Other
   point sizes produce text that is proportionally larger or 
smaller.

  Rotate shapes

   The first few actions in the [76]Action List discussed earlier 
deal with
   getting instructions and either starting a new drawing or 
opening an
   existing drawing.  After that, the next several actions in the 
[77]Action
   List, which were also discussed earlier, deal with drawing 
specific shapes
   such as lines, rectangles, circles, paths, etc.

   Beginning with this section, the next several actions in the 
[78]Action
   List deal with actions that you can perform on shapes that you 
have
   already drawn.  The first of these actions is the  "Rotate 
shapes" action.

   Selecting the "Rotate shapes" action and pressing the Enter 
key will land
   you on a page from which you can select one or more existing 
shapes and
   cause them to be rotated about a specific point by a specific 
angle in
   degrees clockwise.  (Negative angles rotate 
counter-clockwise.)

    The action page

   The action page for this action is relatively straightforward.  
First you
   press a button labeled "Press to get list of shapes in your 
drawing" to
   populate a physical list with identifying information about 
each shape
   that you have thus far created in your drawing.  You can 
navigate up and
   down that list using the arrow keys.

   Each shape in the list is identified as follows:

 Title {Description} [Unique identifier]

   The first two items in the identifying information are the 
title and
   description that you assigned to the shape when you created 
it, or a
   default title and description if you didn't enter a title or 
description.

   The third item is a unique identifier that was created by the 
program when
   the shape was created.  This identifier can be used to 
differentiate among
   different shapes having the same titles and descriptions.

    Embedded instructions

   Instructions are embedded among the GUI components on many of 
the action
   pages.  On this page, after you press the button to populate 
the list, you
   will see the following instructions:

   "When you press the tab key, you will land in a Combo List Box 
containing
   one item for each shape in your drawing.  You can mark a shape 
for rotation
   by selecting the shape using the arrow keys and then pressing 
the 'r' key.
   Press the tab key to move out of the Combo List Box."

   After using the arrow keys and the 'r' key to mark all of the 
shapes that
   you want to rotate around a common point, you can press the 
tab key, enter
   the coordinates of the common rotation point, and enter the 
rotation angle
   in degrees clockwise.

   Finally, you can press a button labeled "Press to rotate 
shapes" to cause
   the rotation to be performed.  This is the point where your 
drawing is
   actually modified.  If you tab past this button and return the 
focus to the
   Action List, your drawing will not have been modified.

   Before using the rotation feature, you should read the 
cautions in the
   [79]Rotation, translation, and scaling section.

  Translate shapes

   Selecting the "Translate shapes" action and pressing the Enter 
key will
   land you on a page from which you can select one or more 
existing shapes
   and cause them to be translated (moved) by specific distances 
along the
   horizontal and vertical axes.

   The procedure for performing this action is essentially the 
same as the
   procedure for rotating shapes.  The differences are:

     * In this case, you specify translation distances instead of 
the
       rotation point and rotation angle required by rotation.
     * In this case, you mark the shapes that are to be 
translated using the
       't' key instead of the 'r' key.

   If you understand how to rotate shapes, you should have no 
problem using
   this action to translate shapes.

   Once again, however, before using the translation feature, you 
should read
   the cautions in the [80]Rotation, translation, and scaling 
section.

  Scale shapes

   Selecting the "Scale shapes" action and pressing the Enter key 
will land
   you on a page from which you can select one or more existing 
shapes and
   cause them to be scaled (made larger or smaller) by applying 
specific
   multiplicative scale factors along the horizontal and vertical 
axes.

   The procedure for performing this action is essentially the 
same as the
   procedure for rotating shapes.  The differences are:

     * In this case, you specify multiplicative scale factors 
instead of the
       rotation point and rotation angle required by rotation.
     * In this case, you mark the shapes that are to be scaled 
using the 's'
       key instead of the 'r' key.

   If you understand how to rotate shapes, you should have no 
problem using
   this action to scale shapes.

   Before using the scaling feature, you should read the cautions 
in the
   [81]Rotation, translation, and scaling section.

  Delete shapes

   Selecting the "Delete shapes" action and pressing the Enter 
key will land
   you on a page from which you can select one or more existing 
shapes and
   cause them to be deleted from your drawing.

   The procedure for deleting shapes is similar to but simpler 
than the
   procedure for rotating shapes.  The differences are:

     * In this case, there are no coordinate values to be 
provided.  Instead,
       you simply mark the shapes that are to be deleted and 
press the button
       labeled "Press to delete shapes."
     * In this case, you mark the shapes that are to be deleted 
by pressing
       the 'Delete' key.  Note, however, that the shapes are not 
actually
       deleted from your drawing until you press the button 
labeled "Press to
       delete shapes" later.  Once again, if you tab past that 
button and
       return the focus to the Action List, the shapes that you 
marked will
       not be deleted from your drawing.

   If you understand how to rotate shapes, you should have no 
problem using
   this action to delete shapes.

  Stop program

   As the name implies, selecting the "Stop program" action and 
pressing the
   Enter key will cause the program to be terminated.  Make sure 
that you have
   performed the [82]Write drawing file action before performing 
this action
   if you want to save your drawing.

  Write drawing file

   Selecting this action and pressing the Enter key will land you 
on a page
   from which you can save your drawing with a specific file and 
path name.
   The extension .svg will be automatically appended to the file 
name that
   you specify so you should not include it when you enter the 
path and file
   name.

   Each time you perform this action, the current state of your 
drawing will
   be saved in the specified file.  It might be a good idea to 
perform this
   action often while creating a drawing so that if you make a 
mistake (or
   you have a power failure), you can re-open the most recent 
good version of
   the drawing file.

Please provide feedback

   Please let me know if you find errors in these instructions, 
or you find
   areas that deserve a more thorough explanation.

   I would also like to hear about it if there are features that 
you would
   like to see added to this program.

   Dick Baldwin
   baldwin at dickbaldwin.com

References

   Visible links
   1.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Purpose
   2.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_robust_graphics_standardSVG
   3.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#An_accessible_and_userfriendly_drawing_program
   4.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#High-quality,_economical,_and_readilyavailable
_graphics_embossing_equipment
   5.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Orientation
   6.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Program_startup
   7.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#User_instructions
   8.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Selecting_action_items
   9.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Performing_the_action
  10.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Pressing_the_Esc_key
  11.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Text_field_objects
  12.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Checkbox_objects
  13.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Button_objects
  14.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Message_box_objects
  15.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Polylines_and_polygons
  16.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#The_name_and_path_of_the_output_file
  17.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  18.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_note_about_page_size
  19.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Specific_user_instructions
  20.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#userInstructions2
  21.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Open_existing_drawing
  22.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Start_a_new_drawing
  23.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_line
  24.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_rectangle
  25.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_circle
  26.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_an_ellipse
  27.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_polyline,_a_polygon,_or_a_path
  28.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_csv_file
  29.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_path_file
  30.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Sample_csv_files
  31.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_line_of_text
  32.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotate_shapes
  33.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Translate_shapes
  34.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Scale_shapes
  35.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Delete_shapes
  36.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Stop_program
  37.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Write_drawing_file
  38.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Please_provide_feedback
  39.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Orientation
  40.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#to_communicate
  41.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_robust_graphics_standardSVG
  42.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#An_accessible_and_userfriendly_drawing_program
  43.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#High-quality,_economical,_and_readilyavailable
_graphics_embossing_equipment
  44.  http://www.w3.org/TR/SVG/
  45.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#to_communicate
  46.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#userInstructions2
  47.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Open_existing_drawing
  48.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Start_a_new_drawing
  49.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_line
  50.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_rectangle
  51.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_circle
  52.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_an_ellipse
  53.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_polyline,_a_polygon,_or_a_path
  54.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_line_of_text
  55.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotate_shapes
  56.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  57.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Translate_shapes
  58.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  59.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Scale_shapes
  60.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  61.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Delete_shapes
  62.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Stop_program
  63.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Write_drawing_file
  64.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_polyline,_a_polygon,_or_a_path
  65.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#actionItemListInToc
  66.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Write_drawing_file
  67.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#The_fill_checkbox_and_fill_opacity
  68.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotate_shapes
  69.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_polyline,_a_polygon,_or_a_path
  70.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Draw_a_polyline,_a_polygon,_or_a_path
  71.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotate_shapes
  72.  https://developer.mozilla.org/en/SVG/Tutorial/Paths
  73.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_csv_file
  74.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#A_path_file
  75.  https://developer.mozilla.org/en/SVG/Tutorial/Paths
  76.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Specific_user_instructions
  77.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Specific_user_instructions
  78.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Specific_user_instructions
  79.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  80.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  81.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Rotation_translation_and_scaling
  82.  
file:///var/folders/PO/POq4Tg5bH%2byUDGqlRkdWZ%2b%2b%2b%2bTI/-Tmp
-/Instructions.htm#Write_drawing_file

_______________________________________________
blindtlk mailing list
blindtlk at nfbnet.org
http://nfbnet.org/mailman/listinfo/blindtlk_nfbnet.org
To unsubscribe, change your list options or get your account info 
for blindtlk:
http://nfbnet.org/mailman/options/blindtlk_nfbnet.org/tjcarter%40
spiritsubstance.com


_______________________________________________
blindtlk mailing list
blindtlk at nfbnet.org
http://nfbnet.org/mailman/listinfo/blindtlk_nfbnet.org
To unsubscribe, change your list options or get your account info 
for blindtlk:
http://nfbnet.org/mailman/options/blindtlk_nfbnet.org/dotkid.nusb
aum%40gmail.com




More information about the BlindTlk mailing list