Now, consider that if you decide to use utf-16 to publish your Japanese text as an HTML document (whose syntax is entirely ascii based), you might lose its "saving advantage" and could easily end up with text that is actually larger in utf-16 than in utf-8.
Also take a look at this: http://programmers.stackexchange.com/questions/102205/should...
Example: The Korean text of the Universal Declaration of Human Rights [1] is 8.1KB in EUC-KR and 11.2KB in UTF-8. When compressed with bzip2, it's only 3.1KB and 3.2KB, respectively. I assume Japanese would behave similarly.
[1] http://www.ohchr.org/EN/UDHR/Pages/Language.aspx?LangID=kkn
So basically it's not fixed width in any meaningful way.
There is no such thing as "UTF-32 character".
Abstract character is not code point.
UTF-32 _is_ fixed width because it's defined on code points, not glyphs, not characters.