.\"##
.\" $XConsortium: p294,v 5.2 94/04/17 20:57:51 rws Exp $
.\"##
.\"## 
$XMCOPY
.\"## Copyright (c) 1990, 1991 by Sun Microsystems, Inc. 
.\"## 
.\"##                         All Rights Reserved
.\"## 
.\"## Permission to use, copy, modify, and distribute this software and its 
.\"## documentation for any purpose and without fee is hereby granted, 
.\"## provided that the above copyright notice appear in all copies and that
.\"## both that copyright notice and this permission notice appear in 
.\"## supporting documentation, and that the name of Sun Microsystems,
.\"## not be used in advertising or publicity 
.\"## pertaining to distribution of the software without specific, written 
.\"## prior permission.  
.\"## 
.\"## SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 
.\"## INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
.\"## EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
.\"## CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
.\"## USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
.\"## OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\"## PERFORMANCE OF THIS SOFTWARE.
.TH "SET CHARACTER SPACING" 3P "29 February 1991"
.SH NAME
SET CHARACTER SPACING \- create structure element to set the \fIcurrent 
character spacing\fP attribute
.IX "Aspect Source Flags" "SET CHARACTER SPACING"
.IX "Text Attributes" "SET CHARACTER SPACING"
.IX "Attributes, Text Attributes" "SET CHARACTER SPACING"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pset_char_space ( spacing )
Pfloat	spacing;	\fIcharacter spacing\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, STOP, *)
.SH DESCRIPTION
.SS Purpose
\s-2SET CHARACTER SPACING\s+2 creates a structure element
containing a value for the current character spacing attribute, 
which controls how much space is inserted between characters in a
text string.  
.LP
When the character spacing Aspect Source Flag (\s-2ASF\s+2)
is set to \s-2INDIVIDUAL\s+2,
this attribute applies to the following output primitives:
.RS
.ta 0.2i +0.2i +0.2i +0.2i +0.2i +0.2i +0.2i +0.2i
.LP
\(bu
.SM TEXT
.LP
\(bu
.SM "TEXT 3"
.LP
\(bu
.SM "ANNOTATION TEXT RELATIVE"
.LP
\(bu
.SM "ANNOTATION TEXT RELATIVE 3"
.ta
.RE
.SS C Input Parameter
.IP \fIspacing\fP
The character spacing, specified as a real
fraction of the font's nominal character height.
.SS Execution
.LP
If the current edit mode is \s-2INSERT\s+2, then 
a \s-2SET CHARACTER SPACING\s+2 element is inserted in the currently open
structure after the element pointed to by the current element pointer.  If
the edit mode is \s-2REPLACE\s+2, then the new \s-2SET CHARACTER SPACING\s+2
element
replaces the element pointed to by the element pointer.  In either case, the
element pointer is updated to point to the new element.
.LP
When the \s-2SET CHARACTER SPACING\s+2 element is traversed, the current
character spacing entry in the traversal state list is set to
character spacing.  
When the current character spacing \s-2ASF\s+2 
is set to \s-2INDIVIDUAL\s+2, the character spacing 
is applied to text strings in 
output primitives that follow in the structure network.
.LP
The character spacing attribute specifies the amount of space to be
inserted between the character bodies in the text primitives.  
A positive value inserts additional space between 
characters, and a negative value causes the character bodies to
overlap.  The default value is 0.0:  the character bodies
are placed adjacent to one another, with no additional space
beyond that in the font design.  
(A character's body is the rectangle that encloses the
limits of the character.)  
.LP
When the character spacing \s-2ASF\s+2 is set to \s-2BUNDLED\s+2, 
the character spacing will be taken from the
workstation's representation indicated by the current text index.  
In this case, the spacing set with \s-2SET
CHARACTER SPACING\s+2 has no effect.  
.SH ERRORS
.IP 005
Ignoring function, function requires state 
(\s-2PHOP\s+2, \s-2*\s+2, \s-2STOP\s+2, \s-2*\s+2)
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "SET CHARACTER EXPANSION FACTOR (3P)"
.SM "SET CHARACTER HEIGHT (3P)"
.SM "SET INDIVIDUAL ASF (3P)"
.SM "SET TEXT REPRESENTATION (3P)"
.fi
