In order to produce correct input to LaTeX, the slopes of lines and the diameters of circles are restricted to those that LaTeX supports.
The following commands are available under the File menu:
The following commands are available under the Edit menu:
The Draw menu allows to select the drawing mode. The currently selected mode is indicated by a check mark.
The first entry, Pick, switches to the pick mode. This allows that already drawn items can be selected and modified. To select an item move the pointer over it and press the left mouse button. Currently, an item can be selected when the pointer is over its rectangular bounding box. Press the left mouse button repeatedly to cycle through the possible items for the current pointer position. (NOTE: To select a text you must carefully point at the anchor point of the text.)
When an item is selected, it can be modified by placing the pointer over the grips. To move the item, press the middle mouse button and drag the item to the desired new location. To change the size or direction of an object, press the left mouse button and drag the grip to the desired new location.
When drawing a Line or Vector, press the left mouse button to place the starting point of the line or vector. Then press the left mouse button again to place the end point. This is now the starting point of a new line. To finish the line, press the middle or right mouse button.
For a Bezier first place the starting point, then the end point, then the curvature of the curve using the left mouse button. Then start with the next bezier.
For the Framed Box Text and the Dashed Box Text place two opposite corners of the box. Then a popup appears where the text can be typed in and the alignment of the text within the box and the shadow style of the box can be selected. After pressing Ok or Cancel, draw the next box.
For a Text simply choose the location. Then a popup appears where the text can be entered and the alignment can be specified.
For a Circle Outline and a Filled Circle first specify the center, then the size.
For a Filled Rectangle and a Rounded Rectangle specify two opposite corners.
Pressing the Options button pops up a window containing several toggle buttons. With these, some features can be switched on and off (these features can also be controlled with X Resources):
When the Shift button is pressed, a window pops up with which the drawing can be shifted in the drawing area. There are 4 buttons with arrows for the 4 directions and a small button between them which centers the drawing. The amount how far to shift the drawing can be specified in the text entry field below the arrow buttons. The inital value in this field can be controlled by the resource initOffset where the value is understood in units of \unitlength.
When the Zoom button is pressed, a window pops up where the current zoom factor (as a percent value) can be specified. The factor is limited to the range 25 through 400. The inital zoom value can be controlled by the resource initZoomFactor. The button shows the current zoom factor. (The center button of the Shift popup is useful to place the drawing in the middle of the drawing area again.)
This program uses the X Toolkit and Athena widgets. The class name for the application is XTeXcad. It understands all of the core resource names and classes and all of the standard X Toolkit command line options. The following standard X Toolkit command line arguments are commonly used with xtexcad:
In addition, the following application specific resources can be used to customize xtexcad:
xtexcad can read not only files saved by itself but also by other means, for example hand written files. For a file to be understood by xtexcad it must contain the following: Optionally, a \unitlength=TeX dimension command, a \begin{picture} phrase (without white space after \begin) with or without the optional argument, zero or more \put, \qbezier, or \bezier commands, and an \end{picture} phrase (without white space after \end). Everything before \begin{picture} (except \unitlength) and after \end{picture} is ignored. The \qbezier command can come with or without the optional argument. Its value, however, is ignored and will not be written to the file any more when the file is saved.
A file created by xtexcad always assigns a value to \unitlength. The whole file is inside a group (curly braces) so that this assignment is local. For a newly created file, the value of \unitlength will be taken from the resource defaultUnitLength whose default is 1.0pt. If a file is loaded in, which assigns a value to \unitlength, this value will be preserved. This means that if you find that the picture is too large or too small for the LaTeX document, you can manually scale it by editing the \unitlength in the resulting file. If you later edit the file with xtexcad, it will not destroy this change, and the picture will appear scaled accordingly in the drawing area of xtexcad, since 1pt corresponds to 1 screen pixel (at zoom 100).
Leslie Lamport: LaTeX: A Document Preparation System, Goossens et al.: The LaTeX companion.
Modifying objects lacks some features like cross hair. It is also very unfriendly with servers that do not support backingstore. The grips should be transparent.
The shadow style is currently ignored.
Some aspects (the shadow-part of the text placement popup) may not work when linked with X11R4 libraries because the Toggle widget changed its behavior from R4 to R5.
The optional argument of the \qbezier command is ignored and does not get saved to the file when a picture is loaded and saved later.
Redrawing after modifying an item is worse than bad.
Internally, all units are translated to TeX points (pt) , and 1 screen pixel (at zoom 100) is taken to be approximately 1pt. However, this may result in rounding and positioning errors if \unitlength is not a proper multiple of 1pt.
Sometimes, especially when drawing very short lines, it is possible to produce unsupported LaTeX-slopes of lines and vectors. Working with a large zoom factor helps. Also, for some \unitlengths the minimum line length computed is too short.
Copyright 1991 by Klaus Zitzmann, 1993-1996 by Johannes Sixt. The file selection widget is copyrighted by J.K.Wight <J.K.Wight@newcastle.ac.uk> which itself uses code written by Byron Rakitzis <byron@netapp.com> (the regexp package).
Johannes Sixt <Johannes.Sixt@telecom.at> rewrote much of that version and produced this version of XTeXcad. Most of the changes from 2.3 to 2.4 are due to Notker Amann <amann@isr.uni-stuttgart.de>.