title: Can .NET convert Unicode to ASCII to remove "smart quotes", etc?
body: <p>Some of our users use e-mail clients that can't cope with Unicode, even when the encoding, etc. are properly set in the mail headers.</p>
  
  <p>I'd like to 'normalise' the content they're receiving. The biggest problem we have is users copy'n'pasting content from Microsoft Word into our web application, which then forwards that content by e-mail - including fractions, smart quotes, and all the other extended Unicode characters that Word helpfully inserts for you.</p>
  
  <p>I'm guessing there is no definitely solution for this, but before I sit down and start writing great big lookup tables, is there some built-in method that'll get me started?</p>
  
  <p>There's basically three phases involved. </p>
  
  <p>First, stripping accents from otherwise-normal letters - solution to this <a href="https://stackoverflow.com/questions/2624646/convert-unicode-char-to-closest-most-similar-char-in-ascii-net">is here</a></p>
  
  <pre><code>This paragraph contains “smart quotes” and áccénts and ½ of the problem is fractions
  </code></pre>
  
  <p>goes to</p>
  
  <pre><code>This paragraph contains “smart quotes” and accents and ½ of the problem is fractions
  </code></pre>
  
  <p>Second, replacing single Unicode characters with their ASCII equivalent, to give:</p>
  
  <pre><code>This paragraph contains "smart quotes" and accents and ½ of the problem is fractions
  </code></pre>
  
  <p>This is the part where I'm hoping there's a solution before I implement my own. Finally, replacing specific characters with a suitable ASCII sequence - ½ to 1/2, and so on - which I'm pretty sure isn't natively supported by any kind of Unicode magic, but somebody might have written a suitable lookup table I can re-use.</p>
  
  <p>Any ideas?</p>