<html>
<header>
<title>
  FreeType&nbsp;2 Project Files for VS.NET&nbsp;2010 or newer
</title>

<body>
<h1>
  FreeType&nbsp;2 Project Files for VS.NET&nbsp;2010 or newer
</h1>

<p>This directory contains a project file for Visual C++ (VS.NET&nbsp;2010
or newer), named <tt>freetype.vcxproj</tt>, and Visual Studio, called
<tt>freetype.sln</tt>.  It compiles the following libraries from the
FreeType 2.6 sources:</p>

<ul>
  <pre>
freetype26.lib     - release build
freetype26d.lib    - debug build
freetype26ST.lib   - release build; single threaded
freetype26STd.lib  - debug build;   single threaded
freetype26MT.lib   - release build; multi-threaded
freetype26MTd.lib  - debug build;   multi-threaded</pre>
</ul>

<p>Both Win32 and x64 builds are supported.</p>

<p>Be sure to extract the files with the Windows (CR+LF) line endings.  ZIP
archives are already stored this way, so no further action is required.  If
you use some <tt>.tar.*z</tt> archives, be sure to configure your extracting
tool to convert the line endings.  For example, with <a
href="http://www.winzip.com">WinZip</a>, you should activate the <em>TAR
file smart CR/LF Conversion</em> option.  Alternatively, you may consider
using the <tt>unix2dos</tt> or <tt>u2d</tt> utilities that are floating
around, which specifically deal with this particular problem.

<p>Build directories are placed in the top-level <tt>objs\vc2010</tt>
directory.</p>

<p>Customization of the FreeType library is done by editing the
<tt>ftoptions.h</tt> header file in the top-level <tt>devel</tt> path.
Alternatively, you may copy the file to another directory and change the
include directory in <tt>freetype.users.props</tt>.</p>

<p>To configure library dependencies like <em>zlib</em> and <em>libpng</em>,
edit the <tt>freetype.users.props</tt> file in this directory.  It also
simplifies automated (command-line) builds using <a
href="http://msdn.microsoft.com/library/dd393574%28v=vs.100%29.aspx">msbuild</a>.</p>

</body>
</html>
