# Full-width characters with latex

I'm actually writing some article about vaporwave and aesthetic for a school project. As I used to write all kind of report with latex, I wanted to write this with latex as well.

In this article, I have to explain the conecpt of "aesthetic art" and furthermore, I would like to show the famous "full width font" (which consists in writing only using unicode full width characters).

For example, Ａｅｓｔｈｅｔｉｃ instead of Aesthetic.

I'm using overleaf right now, and I can't write full width unicode in it (Package ucs Error: Unknown Unicode character), but I bet this is not linked to overleaf.

I looked on the web for some packages allowing the use of full width characters, but with no result.

Do you know any workaround to do this ? Or is latex not the good choice to do that ?

Thank you,

B.O

• You're getting a lot of different answers because there are a lot of different approaches. The trick is to think about what you want in your output: if it's those Unicode characters (Ａ, ｅ, etc.) from a particular font, then you have to decide which font you'd like, load that font, and either use a Unicode-aware engine like XeTeX/LuaTeX, or define the Unicode characters to pick up the corresponding glyphs from that font. If you'd just like to simulate the full-width nature using characters from a “regular” font, three of the four answers so far are about that. Jun 22 '17 at 21:27
• I've tested writing some full width character on a word processor, and the text looks like the same when I change the font. I think what I want in output is juste the unciode characters in any font. Jun 23 '17 at 11:44
• In your word processor, put the cursor between the fullwidth characters (or select one of those characters), and see which font is being used. Then specify that font. (TeX is more precise about typesetting, so it doesn't do things like "any font"—you need to specify a font.) Jun 23 '17 at 15:27

If you load an asian font via the CJK package and use xelatex you can insert real fullwith characters into your document:

\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
\begin{document}
\symbol{65313}\symbol{65317}\symbol{65331}\symbol{65332}\symbol{65320}\symbol{65317}\symbol{65332}\symbol{65321}\symbol{65315} not aesthetic
\end{document}


Once you have loaded CJK and the asian font you could also copy-paste fullwidth characters taken from the web. In my case it screwed TeXStudio so I used the character codes.

For a fullwidth characters map see: http://xahlee.info/comp/unicode_full-width_chars.html

• Yes, that's i'm looking for ! But is there any way to type plain "full width" text instead of using the \sybmol command ? Jun 23 '17 at 11:46
• you can copy paste the plain fullwidth and it produces the same output as the symbol commands. However when I copypasted the plain fullwidth characters in TeXStudio it screwed the text editor. Maybe it will work with another text editor or overleaf, just try it Jun 23 '17 at 11:53

One option is to use the soul package:

\documentclass{article}
\usepackage{soul}
\begin{document}

Some text \so{Aesthetic} and some other text ...

\end{document}​


If you happen to be using the microtype package, then you can exploit its letterspacing features to achieve the same result.

\documentclass{article}
\usepackage{microtype}
\begin{document}

Some text \textls[250]{Aesthetic} and some other text ...

\end{document}​

• If you add \textsf on the outside of \so then the output gets closer to OP's stated goal.
– JPi
Jun 22 '17 at 13:45
• This technic seems only to simulate the spacing between the characters. That's a good one but i'm really looking for the "style" of the full width characters, wich seems to be independant of the font. Jun 23 '17 at 11:45

Without packages:

\documentclass{article}
\font\Fulwidth=cmss12
\letterspacefont\fw\Fulwidth 500
\begin{document}
Some {\fw Aesthetic} text.
\end{document}

• That's fine, but I wanted to display the unicode character, because they have a specific look. Jun 23 '17 at 11:47

I'm not sure what the “famous full width font” is, but you can easily emulate that output.

\documentclass{article}
\usepackage{xparse}

\ExplSyntaxOn
\NewDocumentCommand{\fullwidth}{O{1em}m}
{
\tl_map_inline:nn { #2 } { \makebox[#1]{##1} }
}
\NewDocumentCommand{\checkfw}{O{1em}m}
{
\group_begin:
\setlength{\fboxsep}{-\fboxrule}
\tl_map_inline:nn { #2 } { \framebox[#1]{\phantom{##1}} }
\group_end:
}
\ExplSyntaxOff

\begin{document}

For example, \fullwidth{Aesthetic} instead of Aesthetic

For example, \checkfw{Aesthetic} instead of Aesthetic

For example, \fullwidth[1.2em]{Aesthetic} instead of Aesthetic

For example, \checkfw[1.2em]{Aesthetic} instead of Aesthetic

\end{document}


The \checkfw macro is just for showing that each character is centered within a box of a fixed width.

• That's fine, but I wanted to display the unicode character, because they have a specific look. Jun 23 '17 at 11:47
• @B.Oudot Unicode characters don't have a “specific look”: Unicode doesn't encode glyphs, but abstract character entities. Jun 23 '17 at 11:52