<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-us">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta name="keywords" content="unicode, variant glyphs">
<meta name="description" content="Describes and displays standardized variant glyphs">
<title>Standardized Variants</title>
<link rel="stylesheet" type="text/css" href="http://www.unicode.org/reports/reports.css">
</head>

<body bgcolor="#ffffff">

<table class="header">
  <tr>
    <td class="icon"><a href="http://www.unicode.org">
    <img align="middle" alt="[Unicode]" border="0" src="http://www.unicode.org/webscripts/logo60s2.gif" width="34" height="33"></a>&nbsp;&nbsp;<a class="bar" href="http://www.unicode.org/ucd">Unicode 
    Character Database</a></td>
  </tr>
  <tr>
    <td class="gray">&nbsp;</td>
  </tr>
</table>
<blockquote>
  <h1>Standardized Variants</h1>
  <table class="wide">
    <tr>
      <td valign="top" width="144">Revision</td>
      <td valign="top">@revision@</td>
    </tr>
    <tr>
      <td valign="top" width="144">Authors</td>
      <td valign="top">Members of the Editorial Committee</td>
    </tr>
    <tr>
      <td valign="top" width="144">Date</td>
      <td valign="top">@date@</td>
    </tr>
    <tr>
      <td valign="top" width="144">This Version</td>
      <td valign="top"><a href="http://www.unicode.org/Public/@updateDirectory@/@filename@.html">
      http://www.unicode.org/Public/@updateDirectory@/@filename@.html</a></td>
    </tr>
    <tr>
      <td valign="top" width="144">Previous Version</td>
      <td valign="top"><a href="http://www.unicode.org/Public/4.1.0/ucd/StandardizedVariants.html">
      http://www.unicode.org/Public/4.1.0/ucd/StandardizedVariants.html</a></td>
    </tr>
    <tr>
      <td valign="top" width="144">Latest Version</td>
      <td valign="top"><a href="http://www.unicode.org/Public/UNIDATA/StandardizedVariants.html">
      http://www.unicode.org/Public/UNIDATA/StandardizedVariants.html</a></td>
    </tr>
  </table>
  <h3><br>
  <i>Summary</i></h3>
  <blockquote>
    <p>This file provides a visual display of the standard variant sequences derived from 
    StandardizedVariants.txt.</p>
  </blockquote>
  <h3><i>Status</i></h3>
  <blockquote>
    <p><i>This file and the files described herein are part of the Unicode Character Database and 
    are governed by the terms of use at <a href="http://www.unicode.org/terms_of_use.html">
    http://www.unicode.org/terms_of_use.html</a>.</i></p>
  </blockquote>
  <hr width="50%">
  <h2>Introduction</h2>
  <p>The tables here <i>exhaustively</i> lists the valid, registered combinations of base character 
  plus variation indicator. All combinations not listed in StandardizedVariants.txt are unspecified 
  and are reserved for future standardization; no conformant process may interpret them as 
  standardized variants. Variation selectors and their use are described in The Unicode Standard.</p>
  <p>These mathematical variants are all produced with the addition of Variation Selector 1 (VS1 or 
  U+FE00) to mathematical operator base characters. There is no variation according to context. The 
  Mongolian variants use the Mongolian Variant Selectors, and may vary according to context. That 
  is, if a contextual shape is not listed below, then the variation sequence has an unmodified 
  appearance. At this time no Han variants exist.</p>
  <blockquote>
    <p><a name="fonts"><b>Note: </b></a>The glyphs used to show the variations are often derived 
    from different physical fonts than the representative glyphs in the standard. They may therefore 
    exhibit minor differences in size, proportion, or weight <i>unrelated</i> to the intentional 
    difference in feature that is the defining element of the variation. Such minor differences 
    should be ignored. Likewise, in some cases the existing representative fonts may not yet contain 
    newly encoded characters and hence some representative glyphs shown in these tables may have a 
    slightly different style than others.</p>
  </blockquote>
  <p>@table@</p>
  <hr width="50%">
  <div align="center">
    <center>
    <table cellspacing="0" cellpadding="0" border="0">
      <tr>
        <td><a href="http://www.unicode.org/unicode/copyright.html">
        <img src="http://www.unicode.org/img/hb_notice.gif" border="0" alt="Access to Copyright and terms of use" width="216" height="50"></a></td>
      </tr>
    </table>
    <script language="Javascript" type="text/javascript" src="http://www.unicode.org/webscripts/lastModified.js">
    </script>
    </center>
  </div>
</blockquote>

</body>

</html>
