Unit UTTF2Vct

UTTF2Vct.pas (was UTTFToVector.pas; changed for 8.3 compatibility ) TTF to Vector converter Copyright (c) 1996-97 by Marco Cocco. All rights reseved. Copyright (c) 1996-97 by D3K Artisan Of Ware. All rights reseved. Please send comments to d3k@italymail.com mcocco@hotmail.com URL: http://free.websight.com/Cocco2/ Do you need additional features ? Feel free to ask for it! ****************************************************************************** * Permission to use, copy, modify, and distribute this software and its * * documentation without fee for any non-commerical purpose is hereby granted,* * provided that the above copyright notice appears on all copies and that * * both that copyright notice and this permission notice appear in all * * supporting documentation. * * * * NO REPRESENTATIONS ARE MADE ABOUT THE SUITABILITY OF THIS SOFTWARE FOR ANY * * PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. * * NEITHER MARCO COCCO OR D3K SHALL BE LIABLE FOR ANY DAMAGES SUFFERED BY * * THE USE OF THIS SOFTWARE. * ****************************************************************************** * D3K - Artisan Of Ware - A Marco Cocco's Company * * Casella Postale 99 - 09047 Selargius (CA) - ITALY * ****************************************************************************** History ------------------------------------------------------------------ 17/Dec/1996 v1.00 Start of implementation 19/Dec/1996 v1.01 Added some sparse comments 20/Dec/1996 v1.02 Added support for Delphi 1.0/Win3.x 20/Dec/1996 v2.00 Converterd from pure class to component 20/Dec/1996 v2.01 Added support for UNICODE (Delphi 2.0 only) 03/Jan/1997 v2.02 Coordinate scaling causing runtime errors has been fixed. Bug in memory allocation has been fixed (Delphi 1.0). Now works even with R+, Q+ 04/Jan/1997 v2.03 Added automatic conversion of glyphs to a GDI region (useful for clipping & special effects) 14/Jan/1997 v2.04 Some minor changes 15/Jan/1997 v2.05 Some minor changes To do: - Test for new routines added in v2.03 - Glyph scaling to caller defined dimensions (!) - Baseline coordinate retrieval (!) - UNICODE tests (need WinNT to do this) (!) - Increase performance and spline precision (?) - Triangle subdivision for texture mapping (?) - Char to char morphing (?) - 3D Extrusion (?) (!) = to do as soon as possible (?) = may be

Classes

TStrokeCollection -
TTTFToVectorConverter -

Functions

Register - Release the strokes

Types

PFontStroke
TEnumStrokesCallback
TFontStroke

Constants

Variables


Functions


procedure Register;

Release the strokes

Types


PFontStroke = ^TFontStroke
Font stroke: a Font Stroke is the "basic" element of a character glyph, that is a glyph is a sequence of connected strokes (lines). First point of first stroke connects to last point of last stroke. All strokes with equal GlyphNumber value come from the same glyph. Strokes of the same glyph are stored sequentially, i.e. stroke 0, stroke 1, ... stoke n-1.
TEnumStrokesCallback = function( Idx: integer; const Stroke: TFontStroke ): boolean of object
Note: Strokes[i].Pt2=Strokes[i+1].Pt1 (also Strokes[i].Pt1=Strokes[i-1].Pt2) when Strokes[i].GlyphNumber = Strokes[i+1].GlyphNumber
TFontStroke = record
GlyphNumber : integer;
Pt1 : TPoint;
Pt2 : TPoint;
end;

Constants


Variables