summaryrefslogtreecommitdiff
path: root/html/en/history.html
diff options
context:
space:
mode:
Diffstat (limited to 'html/en/history.html')
-rw-r--r--html/en/history.html932
1 files changed, 932 insertions, 0 deletions
diff --git a/html/en/history.html b/html/en/history.html
new file mode 100644
index 0000000..6042519
--- /dev/null
+++ b/html/en/history.html
@@ -0,0 +1,932 @@
+<html>
+
+<head>
+<meta http-equiv="content-type" content>
+<meta http-equiv="Content-Language" content="en-us">
+<title>History</title>
+<link rel="stylesheet" type="text/css" href="../style.css">
+</head>
+
+<body>
+
+<h1>History of Changes</h1>
+<h3>Version 5.1 (14/Oct/2008)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> CD_DEBUG driver.</li>
+ <li><span style="color: #0000FF">New:</span> the &quot;imlua_cd&quot; library moved
+ from IM to CD under the name &quot;cdluaim&quot;. Only the initialization function
+ name is changed.</li>
+ <li><span style="color: #0000FF">New:</span> cdluacontextplus library so the
+ &quot;ContextPlus&quot; base drivers (GDI+ and XRender) can be dinamically loaded
+ using require.</li>
+ <li><span style="color: #008000">Changed:</span>
+ <strong>
+ <span style="color: #FF0000">IMPORTANT</span></strong> - the &quot;cdiup&quot; and &quot;cdluaiup&quot;
+ libraries moved from CD to IUP under the name &quot;iupcd&quot; and &quot;iupluacd&quot;. But
+ headers and documentation remains on the CD package. Function names were NOT
+ changed. This change eliminates a cross-dependency that IUP and CD had, now
+ only IUP depends on CD.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ <strong>
+ <span style="color: #FF0000">IMPORTANT</span></strong> - renamed &quot;cdgliplus&quot;
+ and &quot;cdxrender&quot; libraries to &quot;cdcontextplus&quot;.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ <strong>
+ <span style="color: #FF0000">IMPORTANT</span></strong> - removed the FreeType
+ library files from the main library. They now are available as an additional
+ library that can be replaced by other FreeType distributions. This will
+ avoid conflicts when using CD and GTK.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ <strong>
+ <span style="color: #FF0000">IMPORTANT</span></strong> - removed the PDFLib
+ library files from the cdpdf library. They now are available as an
+ additional library that can be replaced by other PDFLib distributions.</li>
+ <li><span style="color: #008000">Changed:</span>
+ Makefiles for UNIX now uses a compact version of Tecmake that does not need
+ any installation, just type &quot;make&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> All dll8 and dll9 DLLs now
+ have a Manifest file that specifies the correct MSVCR*.DLL.</li>
+ <li><span style="color: #008000">Changed:</span> improved CDLua parameter
+ checking and error report.</li>
+ <li><span style="color: #008000">Changed:</span> improved compatibility for
+ font names in X and Win32.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ Copyright notice modified to reflect the registration at INPI (National
+ Institute of Intellectual Property in Brazil). License continues under the
+ same terms.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ improved pattern and stipple resize in <strong>wdCanvasPattern</strong> and
+ <strong>wdCanvasStipple</strong>.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ pattern creation in Win32 to a more faster method.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ optimized font search in X-Windows base driver for size variations.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ the number of bits per pixel returned by the CD_PRINTER driver when the
+ printer is a PDF Writer was 1, now we add a workaround to return 24.</li>
+ <li><span style="color: #0000FF"><span style="color: #008000">Changed</span>:</span>
+ improved the color convertion when drawing a RGB image in a CD_PRINTER
+ canvas with 1 bpp (usually a laser printer).</li>
+ <li><span style="color: #008000">Changed</span>: (UNDONE from 5.0) in Lua
+ canvases are NOT
+ garbage collected anymore. Since there can be different Lua canvases pointing
+ to the same canvas.</li>
+ <li><span style="color: #008000">Changed</span>: font map in simulation
+ driver is not case sensitive anymore.</li>
+ <li><span style="color: #008000">Changed</span>: premake files are used now
+ only internally and were removed from the distribution.</li>
+ <li><span style="color: #FF0000">Fixed:</span> added missing
+ CD_NO_OLD_INTERFACE definition on Linux makefiles.</li>
+ <li><span style="color: #FF0000">Fixed:</span> attributes not being
+ preserved after changing clipping or adding a new page in CD_PDF.</li>
+ <li><span style="color: #FF0000">Fixed:</span> polygon clipping in
+ CD_IMAGERGB driver when polygon is larger than the canvas.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>cdCanvasVertex</strong>
+ when adding two reference points with the same coordinates in a bezier.</li>
+ <li><span style="color: #FF0000">Fixed:</span> client image zoom in
+ CD_IMAGERGB driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> text draw position and
+ gettextsize in Xrender base driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> double buffer driver invalid
+ memory access when using the Xrender base driver.</li>
+</ul>
+<h3>Version 5.0 (26/Nov/2007)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> attributes &quot;OPAQUE&quot;, &quot;PATTERN&quot;
+ and &quot;PDF&quot;&nbsp;in the CD_PDF driver.</li>
+ <li><span style="color: #0000FF">New:</span> XRender base driver.</li>
+ <li><span style="color: #008000">Changed:</span> PDF Lite library updated to
+ version &quot;7.0.2&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> FreeType library updated to
+ version &quot;2.3.5&quot;.</li>
+ <li><span style="color: #008000">Changed</span>: now using &quot;(char*)CD_QUERY&quot;
+ as the parameter in <b>cdCanvasNativeFont</b>, it returns the current selected font in
+ the common format definition.</li>
+ <li><span style="color: #008000">Changed</span>: avoid setting X-Windows color
+ background when calling <b>cdCanvasClear</b> for NativeWindow driver. Now all
+ X-Windows drivers will use only XFillRectangle.</li>
+ <li><span style="color: #008000">Changed</span>: in Lua canvases are now
+ garbage collected.</li>
+ <li><span style="color: #008000">Changed:</span> metatable names in Lua are
+ now the same as the C struct names.</li>
+ <li><span style="color: #FF0000">Fixed:</span> function cdlua_checkcanvas that
+ affects the creation of the cd.DBUFFER canvas. Thanks to Martin Saerbeck.</li>
+ <li><span style="color: #FF0000">Fixed:</span> vertical text alignment in PDF
+ and PS
+ drivers.</li>
+ <li><span style="color: #FF0000">Fixed:</span> ascent and descent font
+ dimensions in PDF driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> check for mark size and font
+ size when given size is 0.</li>
+</ul>
+<h3>Version 5.0 RC2 (09/Apr/2007)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> function <b>cdCanvasInvertYAxis</b> that
+ will invert the given y coordinate even if the canvas is not internally
+ inverted.</li>
+ <li><span style="color: #008000">Changed:</span> PDF Lite library updated to
+ version &quot;7.0.0p3&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> FreeType library updated to
+ version &quot;2.2.1&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> In the new API <strong>
+ cdCanvasFont</strong> you can specify partial parameters using NULL, -1 and 0
+ for typeface, style and size. When these parameters are specified the current
+ font parameter is used. For example, <b>cdCanvasFont(NULL, -1, 10)</b> will only
+ change the font size.</li>
+</ul>
+<h3>Version 5.0 RC1 (08/Mar/2007)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> attribute HATCHBOXSIZE in CD_PDF
+ driver, to control the hatch spacing.</li>
+ <li><span style="color: #0000FF">New:</span> attribute ADDFONTMAP in
+ simulation base driver to accept a map between a font name and a font file
+ name.</li>
+ <li><span style="color: #0000FF">New:</span> Pango Font Description string is
+ now accepted in <strong>NativeFont</strong> and replace the previous CD format is most
+ drivers.<br>
+ <strong>
+ <span style="color: #FF0000">INCOMPATIBILITY</span> -</strong>
+ If style is not used, most drivers had a format compatible with the new
+ format. But please check your <strong>NativeFont</strong> usage. The IUP
+ format is still supported.</li>
+ <li><span style="color: #0000FF">New:</span> API using canvas as a parameter.
+ Old API still exists. Library is backward compatible with previous versions,
+ but the documentation shows only the new names.
+ The new functions add a &quot;Canvas&quot; to the function prefix, for ex: the <strong>
+ cdLine</strong> equivalent is <strong>cdCanvasLine</strong>. For these
+ functions <strong>cdActivate</strong> is not required. But <strong>
+ cdCanvasActivate</strong> exists for special cases where the canvas must be
+ updated if an external factor was changed, like a window resize.
+ To facilitate the migration to the new API use the definition CD_NO_OLD_INTERFACE
+ to exclude the old API definitions and check if you are using only the new
+ functions.</li>
+ <li><span style="color: #0000FF">New:</span> support for primitives using
+ &quot;double&quot; floating point precision and not related to WC functions.</li>
+ <li><span style="color: #0000FF">New:</span> &quot;cd_canvas.hpp&quot; header file which
+ defines a C++ class cdCanvasC that wraps the cdCanvas structure API.</li>
+ <li><span style="color: #0000FF">New:</span> ROTATE attribute in CD_PDF
+ driver.</li>
+ <li><span style="color: #0000FF">New:</span> binding Lua of the CD_PDF driver.</li>
+ <li><span style="color: #0000FF">New:</span> support for alpha channel in
+ CD_IMAGERGB driver. Also support for alpha in color coding in the CD_IMAGERGB
+ driver primitives.</li>
+ <li><span style="color: #0000FF">New:</span> attribute ANTIALIAS in the
+ CD_IMAGERGB driver. Text is always antialiased as before.</li>
+ <li><span style="color: #0000FF">New: </span>implemented <strong>Chord</strong> primitive in
+ simulation base
+ driver.</li>
+ <li><span style="color: #0000FF">New: </span>implemented CD_WINDING fill mode
+ in the simulation base driver.</li>
+ <li><span style="color: #0000FF">New: </span>implemented complex clipping
+ regions in CD_IMAGERGB driver. Fixed polygon clipping and other clipping
+ errors in the CD_IMAGERGB driver.</li>
+ <li><span style="color: #0000FF">New:</span> driver CD_DBUFFERRGB that uses
+ the CD_IMAGERGB driver for double buffer, and can be a double buffer for any
+ other driver (CD_DBUFFER works only for Window based drivers). </li>
+ <li><span style="color: #0000FF">New:</span> CD_PICTURE driver to store
+ primitives and attributes in memory that can be played and resized in any
+ other driver.</li>
+ <li><span style="color: #0000FF">New:</span> functions to set color foreground
+ and background without query support (cdCanvasSetForeground and
+ cdCanvasSetBackground). CD_QUERY conflicts with color RGBA=(255,255,255,255)
+ (full transparent white).</li>
+ <li><span style="color: #0000FF">New:</span> support for generic canvas
+ transformations using <strong>Transform</strong>, <strong>TransformTranslate</strong>,
+ <strong>TransformRotate</strong> and <strong>TransformScale</strong> functions.</li>
+ <li><span style="color: #0000FF">New:</span> attribute &quot;GDI+&quot; for all GDI+
+ based drivers that returns &quot;1&quot;. So it can be detected if the driver uses the
+ GDI+ base driver.</li>
+ <li><span style="color: #008000">Changed:</span> <strong>
+ <span style="color: #FF0000">INCOMPATIBILITY</span></strong> - removed
+ clipping simulation from the simulation base driver. It is not possible
+ anymore to simulate clipping, only primitives can be simulated.</li>
+ <li><span style="color: #008000">Changed:</span> canvas internal pointer allocation so it can be checked for valid canvas in
+ all external API function calls.</li>
+ <li><span style="color: #008000">Changed:</span> <strong>NativeFont</strong>(&quot;-d&quot;) to set also the foreground color from the color in the dialog, and
+ initialize the font in the dialog with the current selected font.</li>
+ <li><span style="color: #008000">Changed:</span> In the new API <strong>
+ cdCanvasFont</strong> changed the typeface parameter type from a small set of
+ integer values to a more flexible string.</li>
+ <li><span style="color: #008000">Changed:</span> all accented characters are
+ now available in the default vector text font.</li>
+ <li><span style="color: #008000">Changed:</span> all functions in the API now
+ use &quot;const&quot; when applicable.</li>
+ <li><span style="color: #008000">Changed:</span> server image defintion from
+ &quot;void*&quot; to &quot;cdImage*&quot;. This will affect C++ applications that must update
+ their code.</li>
+ <li><span style="color: #008000">Changed:</span> removed <strong>cdGetClipPoly</strong>
+ and <strong>wdGetClipPoly</strong> functions.</li>
+ <li><span style="color: #008000">Changed:</span> <strong>UpdateYAxis</strong>
+ now also returns the changed value.</li>
+ <li><span style="color: #008000">Changed:</span> <strong>
+ <span style="color: #FF0000">INCOMPATIBILITY</span> - cdCallback</strong>
+ definition used in <strong>RegisterCallback</strong>, called from <strong>Play</strong>. Replaced the &quot;cdContext*&quot; by a &quot;cdCanvas*&quot;.
+ If you do not use the pointer it can be simply ignored.</li>
+ <li><span style="color: #008000">Changed:</span> WC functions now are only
+ client functions of the CD API.</li>
+ <li><span style="color: #008000">Changed:</span> removed old support for
+ Windows 9x.</li>
+ <li><span style="color: #008000">Changed:</span> removed the <strong>cdInitGdiPlusIUP</strong> function and the &quot;<strong>cdiupgdiplus</strong>&quot;
+ library. They are not necessary anymore. Althougth the CD_IUP driver still
+ works with GDI+ support.</li>
+ <li><span style="color: #008000">Changed:</span> improved speed and precision
+ of the bezier polygon of the simulation base driver.</li>
+ <li><span style="color: #008000">Changed:</span> renamed distribution folder
+ name from &quot;cd/data&quot; to &quot;cd/etc&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> CD Lua for Lua 3 library name
+ changed to include &quot;3&quot; as a suffix.</li>
+ <li><span style="color: #FF0000">Fixed:</span> conversion from ANSI to ASCII
+ in vector text fonts. </li>
+ <li><span style="color: #FF0000">Fixed:</span> Sector primitive in simulation
+ base
+ driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> deactivation of internal canvas in Double Buffer driver over a Native Windows driver for Win32.</li>
+ <li><span style="color: #FF0000">Fixed:</span> EPS compatibility in PostScript driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the default values in <strong>cdCreateCanvas</strong> for CD_DGN, CD_DXF and CD_CGM.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>Play</strong> for CD_EMF when data contains poly-polygons or poly-polylines.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>LineWidth</strong> in
+ WC when updating the
+ size in pixels.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>TextSize</strong> and
+ <strong>FontDim</strong> in driver DXF.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>Font</strong> in the
+ X-Windows base driver, size parameter was incorrectly passed to the X-Windows.
+ <span style="color: #FF0000"><strong>WARNING</strong></span>: the result font
+ will have a size different than previous CD versions in X-Windows. </li>
+ <li><span style="color: #FF0000">Fixed:</span> <strong>Flush</strong> in
+ CD_DBUFFER driver, it was affected by the write mode state of the
+ buffered canvas.</li>
+ <li><span style="color: #FF0000">Fixed:</span> WC tranformation update when
+ the Window is invalid. Thanks to Marian Trifon.</li>
+ <li><span style="color: #FF0000">Fixed:</span> polygon filling in simulation
+ base driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> invalid resample in <strong>
+ PutImageRect</strong>* in GDI+ base driver cause a band with a mix of the
+ background color appear on right and bottom when image is zoomed in (larger
+ than original size).</li>
+</ul>
+<h3>Version 4.4 (12/Dec/2005)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> CDLua for Lua 5. The CDLua for Lua 3 is now also totally compatible with the &quot;cd.&quot; name space used in the
+ CDLUA for Lua 5. So the documentation now reflects only the new nomenclature although the old CDLua 3 names are still
+ valid<font color="#FF0000">.</font></li>
+ <li><span style="color: #0000FF">New:</span> attribute <font face="Courier New">&quot;WINDOWRGN&quot;</font> for the Native Windows and IUP drivers to set the shape
+ of a window to the current complex clipping region.</li>
+ <li><span style="color: #0000FF">New:</span> <b><font face="Courier New">cdlua_close</font></b> function to release the memory allocated by the <b>
+ <font face="Courier New">cdlua_open</font></b>.</li>
+ <li><span style="color: #0000FF">New:</span> <font face="Courier New">&quot;ROTATE&quot;</font> attribute for PS driver, GDI+ base driver and GDI base driver.</li>
+ <li><span style="color: #0000FF">New:</span> <font face="Courier New">CD_FILLSPLINE</font> and <font face="Courier New">CD_SPLINE</font> parameters for
+ cdBegin in GDI+ base driver.</li>
+ <li><span style="color: #0000FF">New:</span> support for complex regions for clipping using: <b><font face="Courier New">cdBox</font></b>, <b>
+ <font face="Courier New">cdSector</font></b>, <b><font face="Courier New">Polygons</font></b> and <b>
+ <font face="Courier New">cdText</font></b>. New: parameter <font face="Courier New">CD_REGION</font> for <b>
+ <font face="Courier New">cdBegin</font></b> to create the region, new parameter <font face="Courier New">CD_CLIPREGION</font>
+ for <b><font face="Courier New">cdClip</font></b> to select the region for clipping.
+ New: funtions to control regions:
+ <b><font face="Courier New">cdPointInRegion</font></b>, <b><font face="Courier New">cdOffsetRegion</font></b>, <b>
+ <font face="Courier New">cdRegionBox</font></b> and&nbsp; <b><font face="Courier New">cdRegionCombineMode</font></b>.
+ Valid only for the Windows GDI, GDI+ and X-Windows base drivers and their derived drives.</li>
+ <li><span style="color: #0000FF">New:</span> mode for <b><font face="Courier New">cdBegin</font></b>, <font face="Courier New">CD_BEZIER</font>.</li>
+ <li><span style="color: #0000FF">New:</span> filled primitive <b><font face="Courier New">cdChord</font></b>.</li>
+ <li><span style="color: #0000FF">New:</span> polygon fill rule control using <b><font face="Courier New">cdFillMode</font></b> with
+ <font face="Courier New">CD_EVENODD</font> (the default) and <font face="Courier New">CD_WINDING</font> parameters.</li>
+ <li><span style="color: #0000FF">New:</span> line cap and line join styles using <b><font face="Courier New">cdLineCap</font></b> and <b>
+ <font face="Courier New">cdLineJoin</font></b>.</li>
+ <li><span style="color: #0000FF">New:</span> typeface <font face="Courier New">CD_NATIVE</font> to indicate that a native font has been selected.</li>
+ <li><span style="color: #0000FF">New:</span> custom line style using <b><font face="Courier New">cdLineStyleDashes</font></b> and <b>
+ <font face="Courier New">cdLineStyle</font></b>(<font face="Courier New">CD_CUSTOM</font>). This replaces the
+ attribute &quot;<font face="Courier New">USERLINESTYLE</font>&quot;.<br>
+ (All New:, when not specified the divers, are valid for all the drivers, except DXF, DGN e CGM.)</li>
+ <li><span style="color: #0000FF">New:</span> text utility function <b><font face="Courier New">cdTextBounds</font></b> that returns the oriented bounding
+ rectangle<font color="#FF0000">.</font> </li>
+ <li><span style="color: #0000FF">New:</span> <font face="Courier New">&quot;IMAGEFORMAT&quot;</font> and <font face="Courier New">&quot;IMAGEALPHA&quot;</font> attributes for
+ the Windows base driver.</li>
+ <li><span style="color: #0000FF">New:</span> In GDI+, the <font face="Courier New">CD_CLIPBOARD</font> driver supports EMF and BMP formats.</li>
+ <li><span style="color: #0000FF">New:</span> function <b><font face="Courier New">cdReleaseState</font></b> to release the memory allocated by a state.
+ The <b><font face="Courier New">cdRestoreState</font></b> does not release the memory anymore so it can be used
+ several times for the same state.</li>
+ <li><span style="color: #FF0000">Fixed:</span> Invalid cdKillImage in X-Windows when active canvas is not the canvas where the image was created.</li>
+ <li><span style="color: #FF0000">Fixed:</span> Text clipping for <font face="Courier New">CD_IMAGERGB</font> driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> fixed size in milimeter of <b><font face="Courier New">cdGetScreenSize</font></b> in Win32.</li>
+ <li><span style="color: #FF0000">Fixed:</span> fixed size of the EMF picture.</li>
+ <li><span style="color: #FF0000">Fixed:</span> fixed the parse of filenames with spaces for all file based drivers. The filename must be inside
+ double quotes (&quot;) if it has spaces.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <b><font face="Courier New">cdSetAttribute</font></b> in Lua now can set nil values.</li>
+ <li><span style="color: #FF0000">Fixed:</span> fixed <b><font face="Courier New">cdSector</font></b> when interior style is <font face="Courier New">
+ CD_HOLLOW</font>, to include two lines connecting to the center point.</li>
+ <li><span style="color: #FF0000">Fixed:</span> In GDI+, the NATIVEWINDOW driver ignored other data pointer configurations in <b>
+ <font face="Courier New">cdCreateCanvas</font></b>.</li>
+ <li><span style="color: #FF0000">Fixed:</span> In GDI+, <b><font face="Courier New">cdStipple</font></b> was not updated when the foreground or
+ background colors where changed.</li>
+ <li><span style="color: #FF0000">Fixed:</span> In GDI+, <b><font face="Courier New">cdSector</font></b> and <b><font face="Courier New">cdArc</font></b>
+ have incorrect angles.</li>
+ <li><span style="color: #FF0000">Fixed:</span> &quot;simple.c&quot; and &quot;simple.zip&quot; were outdated. Now new makefiles were added.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in Windows base driver small incompatibility in cdNativeFont with the IUP FONT attribute.</li>
+ <li><span style="color: #008000">Changed:</span> Optimization flags now are ON when building the library in all platforms.</li>
+ <li><span style="color: #008000">Changed:</span> Upgraded Freetype to version 2.1.10. The CD library file size increased because of this. But we gain
+ a better text rendering for images.</li>
+ <li><span style="color: #008000">Changed:</span> Better organization of the documentation.</li>
+ <li><span style="color: #008000">Changed:</span> In Windows the NATIVEWINDOW driver now accepts a NULL pointer to draw in the entire screen.</li>
+ <li><span style="color: #008000">Changed:</span> Optimized <b><font face="Courier New">cdPutImageRGBARect</font></b> in Windows base driver.</li>
+ <li><span style="color: #008000">Changed:</span> Now by default CD will not print X-Windows messages. To enable you must set the CD_XERROR environment
+ variable.</li>
+ <li><span style="color: #008000">Changed:</span> The default fill rule for polygons in CD_PS is now the Even-Odd rule. Matching the other drivers.</li>
+ <li><span style="color: #008000">Changed:</span> Line Styles in GDI+ was corrected again to match GDI line styles when line width is not 1.</li>
+ <li><span style="color: #008000">Changed:</span> The native WC support in GDI+ was removed because of alignment and size problems, simulation will be used.</li>
+ <li><span style="color: #008000">Changed:</span> the EMF drivers now ignore the resolution parameter. For EMFs, the resolution is always the screen
+ resolution.</li>
+ <li><span style="color: #008000">Changed:</span> the value of following attributes were changed to strings <font face="Courier New">&quot;IMAGEMASK&quot;</font>,
+ <font face="Courier New">&quot;IMAGEPOINTS&quot;</font>, <font face="Courier New">&quot;ROTATE&quot;</font>, <font face="Courier New">
+ &quot;GRADIENTCOLOR&quot;</font>, <font face="Courier New">&quot;IMAGETRANSP&quot;</font> and&nbsp; <font face="Courier New">&quot;IMAGEFORMAT&quot;</font>.
+ </li>
+ <li><span style="color: #008000">Changed:</span> in GDI+ base driver, the <b><font face="Courier New">cdBegin</font></b> modes <font face="Courier New">
+ CD_IMAGEWARP</font> and <font face="Courier New">CD_GRADIENT</font> were moved to attributes <font face="Courier New">
+ &quot;IMAGEPOINTS&quot;</font> and <font face="Courier New">&quot;LINEGRADIENT&quot;</font>. Mode <font face="Courier New">CD_PATHGRADIENT</font>
+ was renamed to <font face="Courier New">CD_FILLGRADIENT</font>, and <font face="Courier New">&quot;PATHGRADIENT&quot;</font>
+ attribute was renamed to <font face="Courier New">&quot;GRADIENTCOLOR&quot;</font>. Their definition was also changed.</li>
+ <li><span style="color: #008000">Changed:</span> <b><font face="Courier New">cdImageEx</font></b> was renamed to <b><font face="Courier New">cdBitmap</font></b>,
+ and now supports only client images. This will cause a conflict with a macro definition in <font face="Courier New">
+ &quot;im_image.h&quot;</font> header of the IM toolkit. Include this header before <font face="Courier New">&quot;cd.h&quot;</font> and
+ inbetween set <font face="Courier New">&quot;#undef cdPutBitmap&quot;</font>. The IM macro will be changed in the next IM
+ version.</li>
+ <li><span style="color: #008000">Changed:</span> <b><font face="Courier New">cdText</font></b> is not dependent on the <b><font face="Courier New">
+ cdBackOpacity</font></b> anymore. Text now is always transparent. If you need a box under the text use <b>
+ <font face="Courier New">cdTextBox</font></b> to calculate the dimensions for <b><font face="Courier New">cdBox</font></b>.</li>
+</ul>
+<h3>Version 4.3.3 (25/Aug/2004)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> &quot;USERLINESTYLE&quot; attribute for the base GDI and X11 drivers.</li>
+ <li><span style="color: #0000FF">New:</span> &quot;GC&quot; attribute for the base X11 driver.</li>
+ <li><span style="color: #008000">Changed:</span> in the Native Window driver for the Windows system, the creation using a HDC can have an addicional
+ parameter for the canvas size.</li>
+ <li><span style="color: #008000">Changed:</span> in cdTextSize for the GDI+ base driver we now compensates the height in -10% to match the GDI height.</li>
+ <li><span style="color: #008000">Changed:</span> The GDI+ printer driver now returns the HDC attribute.</li>
+ <li><span style="color: #FF0000">Fixed:</span> fixed a bug in <b><font face="Courier New">cdNativeFont</font></b> for the GDI+ base driver.</li>
+ <li><span style="color: #FF0000">Fixed:</span> again fixed a rounding error in <b><font face="Courier New">cdPutImage*</font></b> for big zooms.</li>
+</ul>
+<h3>Version 4.3.2 (14/Apr/2004)</h3>
+<ul>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 and X-Win drivers the <font face="Courier New"><b>cdPutImageRGB</b></font> and
+ <font face="Courier New"><b>cdPutImageMap</b></font> functions when zooming bigger then the canvas where incorrectly
+ positioning the image by some pixels because of round errors.</li>
+</ul>
+<h3>Version 4.3.1 (07/Nov/2003)</h3>
+<ul>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 driver the clipping of <font face="Courier New"><b>cdPutImage*</b></font> functions when
+ zooming was wrong. In the DoubleBuffer driver the main canvas <font face="Courier New"><b>cdOrigin</b></font> can be
+ used to move the image in the swap operation (<font face="Courier New"><b>cdFlush</b></font>). In the GDI+
+ DoubleBuffer driver there was an error in the <font face="Courier New"><b>cdFlush</b></font> when some primitive used
+ world coordinates directly in the main canvas.</li>
+</ul>
+<h3>Version 4.3 (06/Mar/2003)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> the function <font face="Courier New"><b>cdlua_getcanvas</b></font> retreives the pointer of a canvas created
+ in Lua.</li>
+ <li><span style="color: #0000FF">New:</span> in Win32 the function <font face="Courier New"><b>cdUseContextPlus</b></font> change the behavior of the
+ Windows drivers NativeWindow, IUP, Image, Printer, EMF and Double Buffer to make them use the GDI+ for drawing. GDI+
+ does not have support for XOR Write Mode, but it has other resources like: transparency, anti-aliasing, gradient
+ filling, bezier lines and filled cardinal splines. WC functions are directly implemented in the base driver. Two new
+ functions were created to support transparency in the CD color coding: <font face="Courier New"><b>cdEncodeAlpha</b></font>
+ and <font face="Courier New"><b>cdDecodeAlpha.</b></font>Check the documentation for more information.</li>
+ <li><span style="color: #008000">Changed:</span> the Lua binding is now distributed in the same package. There is only one version number.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the PS header had same flaws, the character &quot;:&quot; was missing in some DCS attributes.</li>
+ <li><span style="color: #FF0000">Fixed:</span> screen resolution was wrong in the Win32 driver, this afects the size of the canvas in milimeters.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 driver the creation of a polygon for clipping does not activate the clipping.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 driver the function <font face="Courier New"><b>cdNativeFont</b></font> using &quot;-d&quot;
+ parameter need some ajusts. Also the returned string does not contains all the used parameters.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 driver the function <font face="Courier New"><b>cdPutImageRectRGBA</b></font> had a
+ positioning error.</li>
+</ul>
+<h3>Version 4.2 (20/July/2001)</h3>
+<ul>
+ <li><span style="color: #008000">Changed:</span> in driver Win32, <font face="Courier New"><b>cdNativeFont</b></font> accepts parameter
+ <font face="Courier New">&quot;-d&quot;</font> on the font name to show the font-selection dialog.</li>
+ <li><span style="color: #008000">Changed:</span> the whole code can now be compiled as C++.</li>
+ <li><span style="color: #008000">Changed:</span> functions <font face="Courier New"><b>wdPattern</b></font> and <b><font face="Courier New">wdStipple</font></b>
+ were changed to make pattern deformation more uniform.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Clipboard driver on Win32, when parameter <font face="Courier New">&quot;-b&quot;</font> was used the
+ image was not correctly copied.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in certain moments, color vectors were being allocated with size 4 and should be
+ <font face="Courier New">&quot;sizeof(long)&quot;</font>. This was done to improve the compatibility with 64-bit systems.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <font face="Courier New"><b>cdPutImageRectRGB</b></font> in driver ImageRGB had a memory-invasion
+ error in some cases when the image was placed in a negative coordinate.</li>
+</ul>
+<h3>Version 4.1.10 (04/May/2000)</h3>
+<ul>
+ <li><span style="color: #008000">Changed:</span> the driver Native Windows in Win32 now also accepts an already created HDC handle as a parameter.</li>
+ <li><span style="color: #008000">Changed:</span> in the <font face="Courier New"><strong>cdPutImageMap</strong></font>* functions, in case the color
+ vector is null, a vector with 256 gray shades in assumed.</li>
+ <li><span style="color: #FF0000">Fixed:</span> <font face="Courier New"><b>cdRegisterAttribute</b></font> was not verifying whether the attribute had
+ already been registered.</li>
+ <li><span style="color: #FF0000">Fixed:</span> function <font face="Courier New"><b>cdArc</b></font> in the simulation driver (includes <strong>
+ ImageRGB</strong>) was returning without drawing anything in an incorrect test.</li>
+ <li><span style="color: #FF0000">Fixed:</span> function <font face="Courier New"><b>cdTextBox</b></font> was returning incorrect values when the text
+ had an orientation different from the default one in some alignment instances.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in function <font face="Courier New"><b>cdRGB2Map</b></font> there was a memory invasion.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the vector text simulation was not freeing the memory used for fonts loaded from files.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Doubled Buffer driver in X-Windows there was an invalid memory liberation.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Lua binding, in several functions receiving or returning tables, the first index was being
+ considered as 0, but in Lua they must be 1. This correction includes <font face="Courier New"><strong>
+ cdVectorTextTransform</strong>, <strong>cdGetVectorTextBounds</strong>, <strong>wdGetVectorTextBounds</strong>,
+ <strong>cdGetClipPoly</strong> </font>and<font face="Courier New"> <strong>wdGetClipPoly</strong></font>.</li>
+ <li><span style="color: #FF0000">Fixed:</span> when the PS driver generated EPS, it did not correctly add the description of the bounding box (a line
+ break was missing).</li>
+ <li><span style="color: #FF0000">Fixed:</span> the vector text drawing functions did not take into account the fact that the default font and the GKS
+ fonts were in ASCII standard. Now a conversion from ANSI to ASCII is made before these fonts are used for drawing.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the X-Win driver, an error in the X-Vertex library caused the texts in 90/270 degrees to be drawn
+ incorrectly.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the X-Win driver, the <font face="Courier New"><strong>cdPutImageMap</strong></font> functions were
+ generating a memory invasion when the X was in 16 bits.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Win32 driver, very large non-filled polygons were not being drawn in Windows 9x. To correct
+ that, they were divided into smaller polygons.</li>
+</ul>
+<h3>Version 4.1 (24/Nov/99)</h3>
+<ul>
+ <li><span style="color: #0000FF">New:</span> new basic Windows driver attributes that allow controling the internal simulation of pattern/stipple, XOR
+ text, and filled polygon (&quot;<font face="Courier New">SIMXORTEXT</font>&quot;, &quot;<font face="Courier New">SIMPATTERN8X8</font>&quot;,
+ &quot;<font face="Courier New">PENFILLPOLY</font>&quot;). New: attribute for returning the HDC of the Windows canvas.</li>
+ <li><span style="color: #0000FF">New:</span> the PS driver accepts landscape orientation as a parameter.
+ New: &quot;<font face="Courier New">POLYHOLE</font>&quot;
+ attribute allows controling the number of holes in a closed polygon. New: &quot;<font face="Courier New">-1</font>&quot;
+ parameter forces a level 1 Postscript. New: &quot;<font face="Courier New">-g</font>&quot; parameter adds comments to the PS file
+ in order to better explain what is done. New: &quot;<font face="Courier New">CMD</font>&quot; attribute saves a string to the
+ file.</li>
+ <li><span style="color: #0000FF">New:</span> new environment variable, <font face="Courier New">CD_QUIET</font>, does not display in <em>stdout</em> the
+ library's version information.</li>
+ <li><span style="color: #0000FF">New:</span> two new exclusive functions for the Native Window driver: <font face="Courier New"><b>cdGetScreenColorPlanes</b></font>
+ and <font face="Courier New"><b>cdGetScreenSize</b></font>.</li>
+ <li><span style="color: #0000FF">New:</span> new CD_DBUFFER driver implements a <em>double buffer</em> using a server image.</li>
+ <li><span style="color: #0000FF">New:</span> new attributes in the ImageRGB driver: &quot;<font face="Courier New">REDIMAGE</font>&quot;, &quot;<font face="Courier New">GREENIMAGE</font>&quot;
+ and &quot;<font face="Courier New">BLUEIMAGE</font>&quot;.</li>
+ <li><span style="color: #0000FF">New:</span> new functions <font face="Courier New"><b>wdGetVectorTextBounds</b></font> and <font face="Courier New"><b>
+ cdGetVectorTextBounds</b></font> to obtain the bounding box of the vector text.</li>
+ <li><span style="color: #0000FF">New:</span> new <font face="Courier New"><b>wdGetFont</b></font> function. It is equivalent to <font face="Courier New">
+ <strong>cdGetFont</strong></font>, but the returned size is in millimeters.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the management of WD functions was incomplete for functions <font face="Courier New"><strong>cdPixel</strong>,
+ <strong>cdVertex</strong> </font>and<font face="Courier New"> <strong>cdPutImage</strong></font>*. This resulted in a
+ wrong or out of the canvas positioning. It only affects drivers PS and METAFILE.</li>
+ <li><span style="color: #FF0000">Fixed:</span> function <font face="Courier New"><b>cdActivate</b></font> in Lua was not returning the correct
+ values.</li>
+ <li><span style="color: #FF0000">Fixed:</span> when the image was partially out of the window, above or below, functions <font face="Courier New">
+ <strong>cdPutImageMap</strong></font> and <font face="Courier New"><strong>RGB</strong></font> were drawing a wrong
+ portion of the image.</li>
+ <li><span style="color: #FF0000">Fixed:</span>&nbsp;in the CGM driver, after opening the file of the <font face="Courier New"><strong>cdPlay</strong></font>
+ function, the check to see if the opening had been successful was not being done.</li>
+ <li><span style="color: #FF0000">Fixed:</span> when the active canvas was already <font face="Courier New">NULL</font>, the activation of a
+ <font face="Courier New">NULL</font> canvas was generating a memory invasion.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the creation of EPS, the PS driver was adding a wrong call to <font face="Courier New">
+ setpagedevice</font>. The <font face="Courier New"><strong>cdPutImageMap</strong></font> function was modifying the
+ wrong PS parameter in the file. The margin clipping was not saved when the drawing's clipping area was changed. The
+ clipping area, when drawing in WD, was being incorrectly modified.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the IMAGERGB driver, functions <font face="Courier New"><b>cdRedImage</b>, <b>cdBlueImage</b>
+ </font>and<font face="Courier New"> <b>cdGreenImage</b></font> were returning invalid pointers.</li>
+ <li><span style="color: #FF0000">Fixed:</span> when initializing text simulation functions, the opened font file was not being closed. This affected
+ all CD drivers, but was only apparent in the application that opened and closed many drivers.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the approximate computation of the text size was not accepting sizes in pixels.</li>
+ <li><span style="color: #FF0000">Fixed:</span> the creation of the IMAGERGB driver in Lua was incorrect when the resolution parameter (which is
+ optional) was not specified.</li>
+ <li><span style="color: #FF0000">Fixed:</span> functions <font face="Courier New"><b>cdGetClipPoly</b></font> and <font face="Courier New"><b>
+ wdGetClipPoly</b></font> in Lua were causing memory invasion.</li>
+ <li><span style="color: #008000">Changed:</span> in the PS driver, when the Map image is actually a grayscale, function <font face="Courier New">
+ <strong>cdPutImageMap</strong></font> uses an 8 bit image, thus saving memory. Level 2 Postscript functions
+ <font face="Courier New">rectfill, rectstroke</font> and <font face="Courier New">rectclip</font> are now used. The
+ comments in DCS were updated to DCS version 3 and were increased to improve the document's portability.</li>
+ <li><span style="color: #008000">Changed:</span> in driver X-Windows, the text drawing attribute was implemented with any orientation.</li>
+ <li><span style="color: #008000">Changed:</span> function <font face="Courier New"><b>cdVersion</b></font> in Lua now behaves just like in C. A global Lua
+ variable, <font face="Courier New"><b>CDLUA_VERSION</b></font>, was created containing the version of the Lua binding
+ library - for example: &quot;CDLua 1.3.0&quot;.</li>
+ <li><span style="color: #008000">Changed:</span> function <font face="Courier New"><b>cdVectorTextTransform</b></font> now returns the previsous
+ transformation matrix.</li>
+</ul>
+<h3>Version 4.0.1 (05/Mar/99)</h3>
+<ul>
+ <li><span style="color: #FF0000">Fixed:</span> in the Windows driver, the polygon simulation with pattern was corrected to polygons with repeated
+ points.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the Windows driver, function <font face="Courier New"><strong>cdNativeFont</strong></font> was
+ corrected for IUP fonts. It was affecting the Matrix's visualization.</li>
+ <li><span style="color: #FF0000">Fixed:</span> function <font face="Courier New"><strong>cdNativeFont</strong></font> was wrongly testing its input
+ parameter and always returning.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the drivers IUP and Native Window, the <font face="Courier New"><strong>cdGetCanvasSize</strong></font>
+ function was corrected. When the window size was changed, the values in millimeters were not updated to
+ <font face="Courier New"><strong>cdActivate</strong></font>.</li>
+ <li><span style="color: #FF0000">Fixed:</span> in the CGM driver, function <font face="Courier New"><strong>cdPlay</strong></font> was generating
+ problems in reading and displaying cell arrays. When the <font face="Courier New"><strong>cdCreateCanvas</strong></font>
+ function used the default values for dimensions and resolution, it generated files with errors.</li>
+ <li><span style="color: #008000">Changed:</span> in the X-Windows driver, function <font face="Courier New"><strong>cdPixel</strong></font> was
+ optimized. It now compares the color to the foreground color and reuses the value.</li>
+</ul>
+<h3>Version 4.0 (18/Feb/99)</h3>
+<ul>
+ <li><b>Summary</b>: (necessary due to the great number of changes).<br>
+ - Update of the Lua binding.<br>
+ - Several changes in the internal structure (most bringing benefits only to the driver developer).<br>
+ - Countless corrections. <br>
+ - Small changes in the functions <font face="Courier New"><b>cdHatch</b>, <b>cdScrollImage</b>, <b>cdFont</b> </font>
+ and<font face="Courier New"> <b>cdPlay</b></font>. <br>
+ - Optimization of functions&nbsp; <font face="Courier New"><b>wdVectorFont</b></font> and <font face="Courier New"><b>
+ cdMark</b></font>. <br>
+ - New: functions: <br>
+&nbsp;&nbsp; <font face="Courier New"><b>cdCreateCanvasf, cdGetContext,</b> <strong>cdContextCaps</strong>, <strong>
+ cdSaveState, cdRestoreState</strong>, <strong>&nbsp; cdSetAttribute, cdGetAttribute</strong><br>
+ <b>&nbsp;cdOrigin, cdRect, wdRect, cdGetFont,</b> <strong>cdGetStipple</strong>, <strong>cdGetPattern</strong>, <strong>
+ cdTextBox</strong><br>
+ <b>&nbsp;cdPutImageRectRGB</b>, <b>cdPutImageRectRGBA</b>, <b>cdPutImageRectMap,</b> <br>
+ <b>&nbsp;cdCreateImageEx</b>, <b>cdKillImageEx</b>, <b>cdPutImageEx</b>, <b>cdGetImageEx</b></font>. <br>
+ - New: WD functions: <font face="Courier New"><b>wdHardcopy, wdPattern, wdStipple, wdPixel, wdPutImageRect,
+ wdPutImageRectRGB</b>, <b>wdPutImageRectRGBA</b> </font>and<font face="Courier New"> <b>wdPutImageRectMap</b></font>.
+ <br>
+ - New: vector text functions: <font face="Courier New"><strong>cdVectorFont, cdVectorTextDirection,
+ cdVectorTextTransform, cdVectorTextSize, cdGetVectorTextSize, cdVectorCharSize, cdVectorText </strong></font>and<font face="Courier New"><strong>
+ cdMultiLineVectorText</strong></font>.<br>
+ - <font face="Courier New"><b>wdActivate</b></font> is no longer necessary. <br>
+ <b>-</b> Driver IMAGERGB complete.<br>
+ - Driver SIMULATE no longer exists; now function <font face="Courier New"><strong>cdSimulate</strong></font> must be
+ used. <br>
+ - New: driver DIRECTDRAW. <br>
+ - Policy change of <font face="Courier New"><b>cdPalette</b></font> in the X-Windows driver<br>
+ - IUP driver is now in a separate library.</li>
+</ul>
+<p>IMPORTANT NOTE: This version is not totally compatible to the previous one. The applications using the driver IUP
+must be relinked, as this driver is now in a separate library, &quot;<strong>cdiup</strong>&quot;. The Lua applications must also
+be modified to include a call to function <font face="Courier New"><strong>cdluaiup_open</strong></font> after
+<font face="Courier New"><strong>cdlua_open</strong></font>, and must be linked with the &quot;<strong>cdluaiup</strong>&quot;
+library. The SIMULATE driver no longer exists, therefore the applications that used it must be modified to use the new
+function, <font face="Courier New"><strong>cdSimulate</strong></font>, without the need for creating a new driver.</p>
+<ul>
+ <li>Changed: the internal structure of the library was changed once again. One of the purposes is to make the
+ drivers become independent from the function table. With this change, adding a new function to the function table does
+ not imply editing the old drivers. We also allowed the drivers not to implement functions that do not make sense in
+ their context. Another modification simplifying the work in the drivers was to bring the attribute query mechanism to
+ the library's control part, freeing the drivers from this obligation. Taking the chance, we determined that a change
+ in an attribute to a value equal to the current one will not be effective, thus saving calls to the driver. Now, the
+ value of an attribute is changed even if the driver function is not implemented, as the driver can query this
+ attribute later on. The management of default values of the attributes is also done by the library's control part. All
+ these changes prepare the library to a new philosophy: before, if a driver did not contain a certain feature, it
+ simply did nothing. The new philosophy will be: if a driver does not contain a certain feature, then the simulation of
+ this feature will be activated.</li>
+ <li>Changed: when a canvas which is already active is activated again, an internal driver function is now called,
+ notifying an update instead of an activation.</li>
+ <li>Changed: the use of the CD canvas with a IUP canvas is better described in the manual, showing the various
+ ways of treating the canvas creation prooblem.</li>
+ <li>Changed: all functions in the control module now have <font face="Courier New">ASSERT</font> directives. Thus,
+ using the library with depuration information, one can better detect simple errors.</li>
+ <li>Changed: in order to use the IUP driver, it must be linked with the &quot;<strong>cdiup</strong>&quot; library, apart
+ from the &quot;<strong>cd</strong>&quot; library (<font face="Courier New">cdiup.lib</font> in Windows, <font face="Courier New">
+ cdiuplib.a</font> in UNIX).</li>
+ <li>Changed: the IMAGERGB driver is now implemented using the simulation functions.</li>
+ <li>Changed: the <font face="Courier New"><b>cdMark</b></font> function is back to the function table, so that the
+ drivers in which the primitive can be implemented can profit from it.</li>
+ <li>Changed: in order to assure that the use of server images is done only between canvases of the same driver, or
+ of the same basic driver, an internal structure was defined for the server image containing the functions of the
+ driver from which the image was created. Thus, if the <font face="Courier New"><b>cdKillImage</b></font> function is
+ called with an active canvas of a different kind from that in which the image was created, the
+ <font face="Courier New"><b>KillImage</b></font> function of the correct driver will be called.</li>
+ <li>Changed: in the X-Windows driver, the XV code was used to optimize functions <font face="Courier New"><strong>
+ cdPutImageRectRGB</strong></font> and <font face="Courier New"><strong>cdPutImageRectMap</strong></font>.</li>
+ <li>Changed: the Lua binding was updated. Now the user guide contains Lua function together with C functions.</li>
+ <li>Changed: in the X-Windows driver, <font face="Courier New"><b>cdPalette</b></font>'s policy was changed to fulfill
+ the requirements of some applications, which wanted to force a palette. Please see the function's documentation in the
+ driver.</li>
+ <li>Changed: the CGM driver used to always store the <font face="Courier New"><strong>cdForeground</strong></font>
+ attribute before drawing a primitive; now it stores the attribute only when it is changed. The
+ <font face="Courier New"><strong>cdBackOpacity</strong></font> function was not implemented. The
+ <font face="Courier New"><strong>cdFlush</strong></font> function was not preserving the canvas attributes. Now when
+ the canvas size is not specified in the <font face="Courier New"><strong>cdCreateCanvas</strong></font> function, the
+ VDC Extension saved to the file is the figure's bounding rectangle. The patterns and/or stipples selected were being
+ stored in a way so that only the first one was valid.</li>
+ <li>Changed: the documentation of the old DOS driver was removed from the user guide.</li>
+ <li>Changed: the default resolution for drivers DGN, DXF, METAFILE, CGM and ImageRGB is no longer 1 but 3.8 points per
+ mm (96 DPI).</li>
+ <li>Changed: in the <font face="Courier New"><b>cdInteriorStyle</b></font> function, if stipple or pattern are not
+ defined, the state of the attribute is not modified. There is no longer a default 32x32 pattern or stipple.</li>
+ <li>Changed: in functions <font face="Courier New"><b>cdFontDim</b></font> and <font face="Courier New"><b>cdTextSize</b></font>,
+ if the driver does not support this kind of query, the values are estimated.</li>
+ <li>Changed: function <font face="Courier New"><b>cdHatch</b></font> now returns the previous value.</li>
+ <li>Changed: function <font face="Courier New"><b>cdScrollImage</b></font> is now called <font face="Courier New"><b>
+ cdScrollArea</b></font>, better reflecting its functionality, since it does not require any explicitly defined image
+ to be performed. The old function is maintained to assure compatibility with old applications.</li>
+ <li>Changed: the <font face="Courier New"><b>cdPlay</b></font> function now accepts all window parameters null. In this
+ case, the primitives in the file are interpreted without scaling.</li>
+ <li>Changed: <font face="Courier New"><b>cdFont</b></font>now accepts font sizes in pixels when negative values are
+ used as a parameter.</li>
+ <li>Changed: the WD functions were included in the library's function table, so that the drivers can use floating point
+ precision when storing primitives. Presently, only the drivers PS and METAFILE have this resource directly
+ implemented. With this change, the <font face="Courier New"><b>wdActivate</b></font> function became obsolete and is
+ no longer necessary. For purposes of compatibility with other applications, it was maintained only as a call to
+ function <font face="Courier New"><b>cdActivate</b></font>.</li>
+ <li>Changed: drivers EMF and WMF now accept the resolution as a parameter.</li>
+ <li>New: internal modification of the Windows driver to allow the creation of the DirectDraw driver.</li>
+ <li>New: DirectDraw driver to accelerate video access to high-performance applications.</li>
+ <li>New: function <font face="Courier New"><b>cdInteriorStyle</b></font> now accepts style <font face="Courier New">
+ CD_HOLLOW</font>. When this style is defined, the <font face="Courier New"><b>cdBox</b></font> and
+ <font face="Courier New"><b>cdSector</b></font> functions behave like their equivalents <font face="Courier New"><b>
+ cdRect</b></font> and <font face="Courier New"><b>cdArc</b></font>, and the polygons with the <font face="Courier New">
+ CD_FILL</font> style behave like <font face="Courier New">CD_CLOSED_LINES</font>.</li>
+ <li>New: new functions:<br>
+ - <font face="Courier New"><b>cdCreateCanvasf</b></font> accepts parameters equivalent to <font face="Courier New"><b>
+ sprintf</b></font>, helping in the creation of some canvases.<br>
+ - <font face="Courier New"><b>cdOrigin</b></font> allows translating the origin - for instance, to the center of the
+ canvas.<br>
+ - <font face="Courier New"><b>cdGetContext</b></font> returns the context of a given canvas; it can be compared with
+ predefined contexts, such as &quot;<font face="Courier New">CD_PS</font>&quot;.<br>
+ - <strong><font face="Courier New">cdSaveState</font> </strong>and<strong> <font face="Courier New">cdRestoreState</font></strong>
+ allow saving and restoring the state of attributes of the active canvas.<br>
+ <strong>- <font face="Courier New">cdSetAttribute</font> </strong>and<strong> <font face="Courier New">cdGetAttribute</font></strong>
+ allow passing customized attributes to the driver, which are ignored if the driver does not have the attribute
+ defined.<br>
+ - <font face="Courier New"><strong>cdContextCaps</strong></font> returns a combination of several flags informing the
+ available resources of the canvas in that context.<br>
+ - Driver SIMULATE no longer exists. Now function <font face="Courier New"><strong>cdSimulate</strong></font> must be
+ used. The simulation can be activated and deactivated at any moment.<br>
+ - <font face="Courier New"><b>cdRect</b></font> and <font face="Courier New"><b>wdRect</b></font> allow drawing a box
+ with no filling.<br>
+ - <font face="Courier New"><b>cdGetFont</b></font> returns the values of the font modified by function
+ <font face="Courier New"><b>cdFont</b></font> and ignores those modified by <font face="Courier New"><b>cdNativeFont</b></font>.<br>
+ - <font face="Courier New"><strong>cdTextBox</strong></font> returns the horizontal bounding rectangle of the text
+ box, even if it is bended.<br>
+ - <font face="Courier New"><strong>cdGetStipple</strong></font> and <font face="Courier New"><strong>cdGetPattern</strong></font>
+ return current stipple and pattern. With these functions and with function <font face="Courier New"><strong>cdGetFont</strong></font>,
+ one can now totally change and restore the attributes of a given canvas.<br>
+ - <font face="Courier New"><b>wdPattern</b></font> and <font face="Courier New"><b>wdStipple</b></font> allow
+ specifying the style in world coordinates. The size of the image is modified to the specified size in millimeters.<br>
+ - functions&nbsp; <font face="Courier New"><b>cdPutImageRectRGB</b>, <b>cdPutImageRectRGBA</b> and <b>
+ cdPutImageRectMap</b></font> allow specifying a rectangle in the image to be used for the drawing instead of the whole
+ image.<br>
+ - <font face="Courier New"><b>wdPixel, wdPutImageRect</b>,<b> wdPutImageRectRGB</b>, <b>wdPutImageRectRGBA</b> </font>
+ and<font face="Courier New"> <b>wdPutImageRectMap</b></font> are equivalent to <font face="Courier New"><b>cdPixel</b>,<b>
+ cdPutImageRect</b>,<b> cdPutImageRectRGB</b>, <b>cdPutImageRectRGBA</b> </font>and<font face="Courier New"> <b>
+ cdPutImageRectMap</b></font>, respectively, but the target coordinates are specified in world coordinates.<br>
+ - New: vector text functions: <font face="Courier New"><strong>cdVectorFont</strong>,<strong> cdVectorTextDirection</strong>,<strong>
+ cdVectorTextTransform</strong>,<strong> cdVectorTextSize</strong>,<strong> cdGetVectorTextSize</strong>,<strong>
+ cdVectorCharSize</strong>,<strong> cdVectorText</strong>,<strong> cdMultiLineVectorText</strong></font>. The vector
+ text can now be used without the need of world coordinates. Functions <strong><font face="Courier New">wdVectorFont</font>
+ </strong>and<strong> <font face="Courier New">wdVectorTextTransform</font></strong> have become obsolete, though they
+ still exist for compatibility reasons.<br>
+ - <font face="Courier New"><strong>wdHarcopy</strong></font> helps drawing WD primitives in devices, adjusting Window
+ and Viewport.<br>
+ - Auxiliary functions were created to manipulate all sorts of images in a single way, being either client, RGB, RGBA,
+ MAP, or server images: <font face="Courier New"><b>cdCreateImageEx</b>, <b>cdKillImageEx</b>, <b>cdPutImageEx</b>, <b>
+ cdGetImageEx</b></font>, etc.</li>
+</ul>
+<ul>
+ <li>Fixed: the documentation of function <font face="Courier New"><b>cdFont</b></font> was confusing, causing
+ errors in the conversion from pixels to points.</li>
+ <li>Fixed: function <font face="Courier New"><b>wdFont</b></font> was making a wrong conversion of the font size
+ parameter from millimeters to points.</li>
+ <li>Fixed: functions&nbsp; <font face="Courier New"><b>wdVectorText</b></font> and <font face="Courier New"><b>
+ wdMultiLineVectorText</b></font> were generating an extra polygon when the text contained blank spaces in certain
+ positions.</li>
+ <li>Fixed: the PS driver was not prepared for marked texts. Function <font face="Courier New"><strong>cdFlush</strong></font>
+ did not preserve current attributes. The interior style was affecting line drawing. The text alignment now takes into
+ account an estimation for the baseline. Function <font face="Courier New"><strong>cdTextOrientation</strong></font>
+ was implemented. The world coordinate functions were implemented directly in the driver. Hatch and stipple interior
+ styles were implemented, but they are still only opaque.</li>
+ <li>Fixed: in the X-Windows driver, function <font face="Courier New"><b>cdGetColorPlanes</b></font> was
+ returning 8 bpp even if the canvas was 24 bbp when the default visualization was different from the canvas'
+ visualization in that X server. Text position on the screen was above the one entered. Function
+ <font face="Courier New"><b>cdFont</b></font> was looping in certain conditions. Function <font face="Courier New"><b>
+ cdEnd</b></font> in the X-Windows driver in the AIX system was generating an error and aborting the program if only
+ one point of the polygon was specified. Dashed lines were always opaque, ignoring the <font face="Courier New">
+ <strong>cdBackOpacity</strong></font> attribute.</li>
+ <li>Fixed: in the Clipboard driver for X-Windows, a parameter was missing which prevented it from working
+ properly. Before the update, it used that of the IUP/Native Window active canvas.</li>
+ <li>Fixed: in the Windows driver, the text position on the screen was above the position provided. Filled
+ polygons had a one pixel error to the right and below due to the small <font face="Courier New">NULL</font> used.
+ Fillings with hatch, pattern and stipple still contain errors. The internal simulation of polygons filled with pattern
+ and stipple was also corrected; they had one additional pixel to the right and below. Text alignment treatment was
+ improved.</li>
+ <li>Fixed: driver WMF now has text alignment.</li>
+ <li>Fixed: in the PRINTER (Windows) driver, function<font face="Courier New"><strong> cdFlush</strong></font> was
+ not preserving current attributes.</li>
+ <li>Fixed: in the CGM driver, the text align interpretation was corrected. The <font face="Courier New"><strong>
+ cdMark</strong></font> function is implemented directly in the driver. Function <font face="Courier New"><strong>
+ cdBackOpacity</strong></font> was implemented. Mark interpretation was also corrected.</li>
+ <li>OPTIMIZATION: function <font face="Courier New"><b>wdVectorFont</b></font> only loads the new font if it is
+ different from the current one.</li>
+ <li>OPTIMIZATION: function <font face="Courier New"><b>cdMark</b></font> now modifies fill and line attributes only if
+ they are different from the one needed to draw the mark.</li>
+</ul>
+<h3>Version 3.6 (05/May/98)</h3>
+<ul>
+ <li>Fixed: / Win32: every time the clipping region changed the old region was not deleted.</li>
+ <li>New: new function <font face="Courier New"><strong>cdRGB2Map</strong></font>, which converts an RGB image into a
+ 256 indexed-colors image. It is the same algorithm used in the IM library - in fact, it is the same code.</li>
+ <li>Changed: the <font face="Courier New"><strong>cdMark</strong></font> function now uses the <strong>
+ <font face="Courier New">cdPixel</font></strong> function when drawing a mark of 1 pixel size.</li>
+ <li>Changed: / Win32: the <font face="Courier New"><strong>cdPixel</strong></font> function now uses the <strong>
+ <font face="Courier New">SetPixelV</font></strong> function when not under Win32s. This function is faster than the
+ <strong><font face="Courier New">SetPixel</font></strong> function because it does not return the old value.</li>
+ <li>Changed: / Win32: the polygon used for clipping is now optimized to not include 3 points that are in the same
+ horizontal or vertical line.</li>
+ <li>Fixed: / WD: the <font face="Courier New"><strong>wdVectorText</strong></font> function was not drawing
+ correctly when extended characters (&gt;128) were used.</li>
+ <li>Fixed: / X: the <font face="Courier New"><strong>cdPalette</strong></font> function and the color management
+ for canvases with only 256 colors were wrong. Each canvas had its own management, now all canvases in the same
+ aplication use the same management.</li>
+ <li>Fixed: / X: several resource and memory leaks were corrected.</li>
+ <li>Fixed: / IMAGERGB: functions <font face="Courier New"><strong>cdRedImage</strong></font>,
+ <font face="Courier New"><strong>cdGreenImage</strong></font> and <font face="Courier New"><strong>cdBlueImage</strong></font>
+ were not returning the correct pointer.</li>
+ <li>Fixed: / SunOS: drivers IMAGERGB, SIMULATE and NATIVEWINDOW use&nbsp; the &quot;%p&quot; format string, but in the SunOS
+ they use &quot;%d&quot; because of an internal bug of the run time library of this OS.</li>
+ <li>Changed: / IUP: driver IUP sets the <strong><font face="Courier New">cdCanvas</font></strong> function as an
+ attribute of the <strong><font face="Courier New">IupCanvas</font></strong> passed as a parameter using the name
+ &quot;_CD_CANVAS&quot;.</li>
+ <li>MANUAL: the manual appearance was changed to match the new Tecgraf standard.</li>
+</ul>
+<h3>Version 3.5 (07/Jan/98)</h3>
+<ul>
+ <li>New: the <font face="Courier New"><strong>cdTextDirection</strong></font> function allows raster text to be drawn
+ in any direction. Up to now it is implemented only in the basic Win32 driver.</li>
+ <li>Fixed: / X / NativeWindow: the canvas was not created if the screen was 0.</li>
+ <li>Fixed: / Win32 / NativeWindow: now the driver considers the existence of non owner-draw device contexts.</li>
+ <li>Fixed: / Win32: function <font face="Courier New"><strong>cdClipArea</strong></font> was not including
+ <font face="Courier New">xmax</font> and <font face="Courier New">xmin</font> in the clipping area.</li>
+ <li>Changed: the <font face="Courier New"><strong>cdCallback</strong></font> typedef was defined, being useful for
+ type casting when calling the <font face="Courier New"><strong>cdRegisterCallback</strong></font> function.</li>
+ <li>Fixed: / Win32: a compatibility problem with the <font face="Courier New"><strong>cdNativeFont</strong></font>
+ string and the <font face="Courier New">WINFONT IUP</font> attribute was corrected.</li>
+ <li>Changed: / Win32: the <font face="Courier New"><strong>cdPutImageRGB</strong></font> and
+ <font face="Courier New"><strong>cdPutImageMap</strong></font> functions use a cache memory for best performance.</li>
+ <li>Fixed: text size estimation for the CGM and PS drivers now uses Courier
+ New: as the &quot;System&quot; font. As it was,
+ it was causing a memory invasion.</li>
+</ul>
+<h3>Version 3.4 (12/Nov/97)</h3>
+<ul>
+ <li>Changed: / X: memory use of the <font face="Courier New"><strong>cdPutImageRGB</strong></font>,
+ <font face="Courier New"><strong>cdPutImageRGBA</strong></font> and <font face="Courier New"><strong>cdPutImageMap</strong></font>
+ functions was optimized, as well as the performance of the <font face="Courier New"><strong>cdPutImageMap</strong></font>
+ function.</li>
+ <li>Changed: / X and Win32: when the canvas has bpp &lt;= 8, function <strong><font face="Courier New">cdPutImageRGB</font>
+ </strong>converts the image into Map before displaying it.</li>
+ <li>Changed: / X and Win32: if a font's parameters are the same as the current parameters, the
+ <font face="Courier New"><strong>cdFont</strong></font> function does nothing.</li>
+ <li>DOC / PS: the &quot;-d&quot; parameter for the EPS option was not documented.</li>
+ <li>Fixed: / PS: parameters &quot;-w&quot; and &quot;-h&quot; were incorrectly interpreted.</li>
+ <li>Fixed: / X: the internal function names were generating an error in the VMS plataform.</li>
+ <li>Fixed: / X: the <font face="Courier New"><strong>cdKillCanvas</strong></font> function was freeing some
+ pointers of the active canvas.</li>
+ <li>Changed: / Win32: the <font face="Courier New"><strong>cdVertex</strong></font> function now ignores duplicate
+ points.</li>
+ <li>Changed: / Win32: the <font face="Courier New"><strong>cdNativeFont</strong></font> function also accepts the
+ font string of the <font face="Courier New">WINFONT IUP</font> attribute.</li>
+ <li>Fixed: / DXF: corrections in color conversion and in the <strong><font face="Courier New">cdArc</font></strong>
+ function for small radius were made, and an unnecessary identation was removed.</li>
+</ul>
+<h3>Version 3.3 (19/Sep/97)</h3>
+<ul>
+ <li>Changed: / X: the <strong><font face="Courier New">cdFont</font></strong> function now has a better heuristic
+ to find a closer font if the requested font does not match an available one.</li>
+ <li>Changed: / X: the <strong><font face="Courier New">cdPattern</font></strong> and <strong>
+ <font face="Courier New">cdStipple</font></strong> functions now use a bitmap cache to store the <em>pixmap</em> and
+ do not recreate it if the size is not changed.</li>
+ <li>Fixed: / X and Win32: the <strong><font face="Courier New">cdPutImageRect</font></strong> function was placing
+ the bitmap in a wrong position.</li>
+ <li>Fixed: / Win32: the <strong><font face="Courier New">cdCreateImage</font></strong> function did not return
+ <font face="Courier New">NULL</font> when the creating failed.</li>
+ <li>Changed: / Win32: the <font face="Courier New"><strong>cdPutImageRGB</strong></font>, <font face="Courier New">
+ <strong>cdPutImageRGBA</strong></font> and <font face="Courier New"><strong>cdPutImageMap</strong></font> functions
+ were largely optimized when the picture displayed is larger than the screen.</li>
+ <li>Changed: / WMF: using the <font face="Courier New"><strong>cdPlay</strong></font> function we discovered that
+ the size of the picture was incorrect in the header file, so we first had to calculate the bounding box and then
+ interpret the picture.</li>
+ <li>Changed: / PS and CGM: now the <font face="Courier New"><strong>cdFontDim</strong></font> and
+ <font face="Courier New"><strong>cdTextSize</strong></font> functions return approximate dimensions, instead of
+ nothing.</li>
+ <li>Fixed: / PS: the default font was not being set when the canvas was created.</li>
+ <li>Fixed: / PS: text alignment was incorrect in the vertical direction.</li>
+ <li>Fixed: / SIM: the clipping algorithm of the <font face="Courier New"><strong>cdPixel</strong></font> function
+ of the Simulation driver was corrected.</li>
+ <li>Fixed: / CD: now you can activate a <font face="Courier New">NULL</font> canvas. When you get the active
+ canvas and restore it, if it was <font face="Courier New">NULL</font> the <strong><font face="Courier New">cdActivate</font></strong>
+ function was accessing an invalid pointer.</li>
+ <li>MANUAL: several changes were made on the online manual structure, and were added to the CDLua page.</li>
+</ul>
+<h3>Version 3.2</h3>
+<ul>
+ <li>A problem in the <font face="Courier New"><strong>cdFlush</strong></font> function in the Postscript driver was
+ corrected. It was not setting the scale.</li>
+ <li>Functions <font face="Courier New"><strong>wdFontDim</strong></font> and <font face="Courier New"><strong>
+ wdTextSize</strong></font> now check if the return pointers are not <font face="Courier New">NULL</font>.</li>
+ <li>An internal function in the DGN driver was drawing an ellipse with two times the axis size.</li>
+ <li>The <font face="Courier New"><strong>cdFont</strong></font> function was corrected to store the font names in the
+ CGM driver.</li>
+</ul>
+<h3>Version 3.1</h3>
+<ul>
+ <li>Several minor bugs in the Win32 Printer driver and in the Postscript driver were corrected. The EPS mode of the PS
+ driver now generates a &quot;showpage&quot; PS function so it can be printed.</li>
+ <li>The Clipboard driver was implemented in Motif. The <font face="Courier New"><strong>cdPlay</strong></font>
+ function was implemented in the Motif and Win32 Clipboard drivers.</li>
+ <li>The <font face="Courier New"><strong>cdRegisterCallback</strong></font> function was added to allow the
+ customization of the <font face="Courier New"><strong>cdPlay</strong></font> function's behavior.</li>
+ <li>The <font face="Courier New"><strong>wdVectorTextTransform</strong></font> function allows a 2D transformation
+ applied to any vector text.</li>
+ <li>Now the Simulation driver has several levels of simulation, and the simulation was improved with pattern and
+ clipping simulation.</li>
+</ul>
+<h3>Version 3.0</h3>
+<ul>
+ <li>The library's architecture underwent several changes. The function tables are no longer public, only the drivers
+ know its structure. This means that we have eliminated the need to recompile applications that use the dynamic library
+ when we change something in the function table. There are some other benefits, like the fact that the Windows DLL can
+ now be implemented and that it is more simple to explain the library to new users, so they will not be confused by the
+ <font face="Courier New">cdprivat.h</font> header.</li>
+ <li>Corrections to the text alignment of the <font face="Courier New"><strong>wdVectortext</strong></font> function
+ were made.</li>
+ <li>Memory allocation of the <font face="Courier New"><strong>cdPattern</strong></font> and <font face="Courier New">
+ <strong>cdStipple</strong></font> functions in the basic Windows driver was corrected.</li>
+ <li>Memory release of the <font face="Courier New"><strong>cdKillCanvas</strong></font> function in the basic Windows
+ driver was corrected.</li>
+ <li>The <font face="Courier New"><strong>cdPattern</strong></font> function was implemented in the Postscript driver,
+ and the <font face="Courier New"><strong>cdPutImageRGB</strong></font> and <font face="Courier New"><strong>
+ cdPutImageMap</strong></font> functions now write color images.</li>
+ <li>The <font face="Courier New"><strong>cdPattern</strong></font> function was corrected in the basic X-Windows
+ driver for use with clipping.</li>
+ <li>The compiler directive <font face="Courier New">#include&lt;<strong>malloc.h</strong>&gt;</font> was changed to
+ <font face="Courier New">#include&lt;<strong>stdlib.h</strong>&gt;</font> in several modules for better compatibility with
+ other compilers.</li>
+ <li>The <font face="Courier New"><strong>cdPlay</strong></font> function now accepts the viewport rectangle where the
+ drawing will be rendered.</li>
+ <li>Several navigation changes were made to the user guide pages.</li>
+ <li>A <strong>new</strong> CD_SIMULATE driver was created. Use it to replace some primitives and to handle attributes
+ of another driver. It can be used with any other driver. Basically, it substitutes the interior style of dependent
+ primitives: box, sector and filled polygons. It also substitutes the clipping methods of these primitives.</li>
+ <li>The Windows DLL version of the library was created.</li>
+</ul>
+<h3>Version 2.2.1</h3>
+<ul>
+ <li>Interrnal macros that affect <font face="Courier New"><strong>wdArc</strong></font> and <font face="Courier New">
+ <strong>wdSector</strong></font> were corrected.</li>
+ <li>The CGM driver now supports some client image functions.</li>
+ <li>Hatch styles in the Image RGB driver were corrected.</li>
+</ul>
+<h3>Version 2.2.0</h3>
+
+ <p><strong>New: Functions:</strong></p>
+
+ <p><font face="Courier New"><strong>cdVersion</strong></font> - returns the current library version.<br>
+ <font face="Courier New"><strong>cdNativeFont</strong></font> - sets a native font.<br>
+ <font face="Courier New"><strong>cdPutImageRect</strong></font> - same as <strong><font face="Courier New">
+ cdPutImage</font></strong> but you may specify a part of the image.<br>
+ <font face="Courier New"><strong>cdPutImageRGBA</strong></font> - <strong><font face="Courier New">cdPutImageRGB</font></strong>
+ with transparency.<br>
+ <font face="Courier New"><strong>wdFont</strong></font> - <strong><font face="Courier New">cdFont</font></strong>
+ for the WD client, the size parameter is in millimeters.</p>
+
+ <p><strong>New: Drivers:</strong></p>
+
+ <p><strong>NativeWindow</strong> - now the library can work with other Interface libraries.<br>
+ <strong>DGN</strong> - MicroStation Design File.<br>
+ <strong>EMF</strong> - Windows Enhanced Metafile.<br>
+ <strong>CD Metafile</strong> - our own metafile.<br>
+ <strong>Client Image RGB</strong> - now you can write in an RGB image.</p>
+
+
+<ul>
+ <li><strong>DGN</strong>, <strong>CGM</strong> and <strong>DXF</strong> file-based drivers now have a default size in
+ pixels (<strong>INT_MAX</strong> = 2.147.483.647) and are optional. In fact the size is irrelevant in these file
+ formats. The <font face="Courier New"><strong>cdCreateCanvas</strong></font> data string may contain the size in
+ millimeters and the resolution in pixels per millimeters. Both are real values. The default resolution is 1.</li>
+ <li>The <font face="Courier New"><strong>cdPlay</strong></font> function now works on the CGM and on the CD Metafile
+ drivers.</li>
+ <li>The interior style attributes were implemented in the <strong>CGM</strong> driver.</li>
+ <li>On the Clipboard driver: limitations are considered if creating a WMF under Win32s.</li>
+ <li>Now the Printer Driver shows the Printer's Dialog Box (Win32 &amp; Mac) if the parameter &quot;-d&quot; is specified.</li>
+ <li>On the PS driver: all the dimensions in the Data parameter string are now in millimeters.</li>
+ <li>On the WMF driver: several functions were disabled because of WMF limitations. Picture size was corrected.</li>
+ <li>On the basic X-Windows driver: <font face="Courier New"><strong>cdLineWidth</strong>(1)</font> uses
+ <font face="Courier New">width 0</font> for better performance. Stipple was being incorrectly interpreted.
+ <font face="Courier New"><strong>cdGetImageRGB</strong></font> was swapping red and blue channels on true color
+ canvas.</li>
+ <li>The clipping region now can be a polygon on some systems/drivers (Win32, Mac, X-Win and PS). Use
+ <font face="Courier New"><strong>cdClip</strong>(CD_CLIPPOLYGON)</font> to use the polygon defined by a
+ <font face="Courier New"><strong>cdBegin</strong>(CD_CLIP)</font>,<font face="Courier New"> <strong>cdVertex</strong>(...)</font>,<font face="Courier New">
+ <strong>cdEnd</strong>()</font> sequence.</li>
+ <li>The functions <strong><font face="Courier New">wdMM2Pixel</font></strong> and <strong><font face="Courier New">
+ wdPixel2MM</font></strong> became <font face="Courier New"><strong>cdMM2Pixel</strong></font> and
+ <font face="Courier New"><strong>cdPixel2MM</strong></font>, respectively.</li>
+ <li>Minor bugs in the <font face="Courier New"><strong>wdFontDim</strong></font>, <font face="Courier New"><strong>
+ wdLineWidth</strong></font> and <font face="Courier New"><strong>wdMarkSize</strong></font> functions were corrected.</li>
+ <li><font face="Courier New"><strong>wdVectorCharSize</strong></font> now returns the previous value.</li>
+</ul>
+<h3>Up to Version 2.1</h3>
+<ul>
+ <li>The <font face="Courier New"><strong>cdActiveCanvas</strong></font>, <font face="Courier New"><strong>cdPlay</strong></font>
+ and the <font face="Courier New"><strong>wdVectorFont</strong></font> functions were added, and the
+ <font face="Courier New"><strong>cdKillCanvas</strong></font> function was corrected when destroying the current
+ canvas.</li>
+ <li>The <font face="Courier New"><strong>cdMark</strong></font> function no longer depends on line style, line width
+ and interior style attributes, and it is the same for all drivers because it is implemented only with CD functions.</li>
+ <li>The <font face="Courier New"><strong>wdLineWidth</strong></font> and <font face="Courier New"><strong>wdMarkSize</strong></font>
+ functions now use millimeters.</li>
+ <li>The functions <font face="Courier New"><strong>cdEncodeColor</strong></font> and <font face="Courier New"><strong>
+ cdDecodeColor</strong></font> now can be called without an active canvas. The DXF driver was added.</li>
+ <li>WD can now access files with vector font definitions.</li>
+ <li>Minor bugs in the <font face="Courier New"><strong>wdTextSize</strong></font> function were corrected.</li>
+</ul>
+
+</body>
+
+</html> \ No newline at end of file