1

I'm trying to create a language as a world-building aspect of my project, and I have the intention of having an m with a caron above it as one of the characters in this language. I'm using WPF. I tried Segoe UI, Calibri, Cambria Math, Global Serif, Times New Roman... None of them work. Is there one which does?

Following the advice given by this answer Best way to add accent to letter? I tried this:

string result = 'm'.ToString()
result += "\u02C7";
result.Normalize();

The charon is not displayed above the m, but to its right instead, like so:

Davi
  • 398
  • 2
  • 12
  • Are you asking if there is an existing unicode character that looks like what you're talking about? If so, check out: https://www.rapidtables.com/code/text/unicode-characters.html Or are you asking if you can construct some arbitrary character? If so, no; unicode is a standard. Depending on how you're displaying, you may be able to make it kind of work how you're expecting, by printing 2 characters on top of each other – Jonathan Aug 13 '19 at 23:00
  • `02c7` is not a combining character. Try [`u30c`](https://www.fileformat.info/info/unicode/char/030c/index.htm) instead – stuartd Aug 13 '19 at 23:09
  • I was asking about Unicode's combining characters used to create arbitrary characters, but displaying the characters on top of each other will solve my problem. I didn't think of that. Thank you @Jonathan – Davi Aug 13 '19 at 23:12
  • @stuartd Works perfectly! Thank you very much! – Davi Aug 13 '19 at 23:15

1 Answers1

3

You need to use U+030C COMBINING CARON, not U+02C7 CARON:

string result = 'm'.ToString()
result += "\u030C";

or:

string result = "m" + "\u030C";

or simply:

string result = "m\u030C";

or directly:

string result = "m̌"; // "\u006D\u030C"
Sub Nemo
  • 46
  • 1