590

I want to type up some spells from the RPG Call of Cthulhu and give them to my players. I could just type them up in Word or LaTeX, but that seems too...neat. I'd like to make these things look like they were scrawled by a gibbering madman, unhinged by the horrors he has witnessed. Bonus points if you can add any traces of H. P. Lovecraft's Cthulhu Mythos.

Less poetically: Typefaces to make it look scrawled or handwritten, preferably with a quill or calligraphy pen. Ways to make the word spacing less regular (Abuse microtype in some way?) and ways to put in drop caps are the kind of things I'm looking for.

Bonus points if you can tell me how to typeset an elder sign.

Alright, editing this to be more specific:

  • A font to make it look handwritten or calligraphic. I was under the (mistaken) impression that fonts in LaTeX were restricted to a few packages on CTAN, so I was hoping for a suggestion for a good one. I can find one in a free typeface repository somewhere, though if anyone has suggestions I'd love to hear them.
  • Dropcaps.
  • Possibly adding a texture or such to make it look like it is written on parchment?
  • Changing the size of the writing at various points, preferably randomly
  • Changing interword spacing randomly.
31
  • 177
    Is “use Comic Sans” a valid answer?
    – Caramdir
    Commented Sep 24, 2011 at 21:20
  • 252
    Googling "crazy latex" did not return what I expected.
    – Benjamin
    Commented Sep 25, 2011 at 3:40
  • 110
    If you're not focusing entirely on LaTeX, you can d͔͖̗͇͒ͫ̒͒͝o̸̬̠̟͎̥̬̙ͥͨ͑̅͂̅ ̸͚̞̫͕͇̠̊́̔ͩͪ̏ś̥̋̇o̷̺ͩm̭̙̥̩̜ͩ̚e͌͌̈ ̖̙̪̯̣͎͒ͅa̡̖͊̄̆m̸̱̎̊̈ͭ͊ͅà̙̺̱̻͖͕̫̏͒̍̾̚z̎͐̔i̛̹̺̩̬n̼̙̩̣ͤͦ́ͬ͒ͩg̈́͑ͥ҉̹͈ ̞̯̯̫̪̥̰̽̇t͎̹̲̆̽͂̂ͧ̑h̩̓͛i̵͈̰̗ͤͅṉ̘ͮͥ̆̄g̳͈͔̜͚̦̯͒̓͛͊ͦ͗̀s͒̑ͩ̉҉̯̮̫̣͓̼ ͚̯͖̻̥͙̻͋̓ͯ̊̋w̮̤͕͖̲̐̒̂͗͋̓iͬ̉̽ṭ͎̹̜͙̮͑ͭ͋h̼͎̾ͬͫ͑̀ ̣͍͔̳ͬͥ̽̏̇͗ͧu̢̽̽ͨ̍̈́n̤͈̗̼̘͕̂ͪi͎͚c̜̪͕͍̭ͬͩ͞ͅo̲̫͆ͥ̑ͮ̂͑d̂̿͞e̮̙̹̞ͣ͌̐ͫ!̣̪͇̫̝͗̅ͦ͛̕ͅ (Added as a comment since the question is protected.) Tool for generating such text is here: textozor.com/zalgo-text
    – Fake Name
    Commented Sep 25, 2011 at 11:32
  • 39
    For extra fun, you could add some coffee stains, in case your madman fancies this noble beverage.
    – doncherry
    Commented Sep 25, 2011 at 12:31
  • 30
    Epic question title is epic. Commented Sep 25, 2011 at 22:04

8 Answers 8

474

(Improved answer thanks to Bruno's help on his code)

I've implemented some of the things I mentioned in my earlier answer, but I felt this was different enough to get a separate answer.

Once again, tex.sx provided me with a couple of things I needed for this. Bruno Le Floch wrote some code that rotates arguments at a random angle and helped shortening it for this answer. Martin Scharrer showed how to execute a command for every word. Thanks to both of them.

Starting at the top of the code, here's what I did to change the design:

  • default font size 17 via extarticle document class
  • double line spacing
  • define a command \eldersign that inserts an elder sign, sized in relation to the current font size. You need to find an elder sign that you can use, I put in the placeholder eldersignimagefile. I recommend using a PNG image or some other format providing background transparency.
  • change the default font to Teen Spirit – you can use any font you like, there certainly are better ones on the Internet. Use them with XeLaTeX and fontspec, as I described in my other answer. (I haven't tested Bruno's and Martin's code with XeLaTeX though.) With a different font, you might want to choose a different font size and different rotation angles.
  • remove page number
  • free parchment background image that I found at http://www.alfredom.com/art/free-6.htm, here named backgroundimagefile
  • centered everything
  • changed the text color to MidnightBlue (svgnames color scheme)

Whenever you want to typeset text crazily, you have to pass it as an argument to \cthulhu. For an elder sign, just use \eldersign. You might want to adapt your image to suit the text color.

DISCLAIMER

This is just hacked together and you will very likely run into problems once you start using it more extensively. Take it as inspiration. It was fun for me putting it together. Feel free to make suggestions on how to improve this.

\documentclass[17pt]{extarticle}% This is a document class providing more font size options

\usepackage[svgnames]{xcolor}
\usepackage{graphicx}
\usepackage{emerald}% font package
\usepackage[doublespacing]{setspace}% line spacing
\usepackage[T1]{fontenc}
\usepackage{wallpaper}

% thanks to Bruno Le Floch: https://tex.stackexchange.com/q/9331/4012
% and in his comments to https://tex.stackexchange.com/a/29458/4012
\usepackage{rotating}
\usepackage[first=-6,last=6]{lcg}% you can play around with these values
\makeatletter
\newcommand{\globalrand}{\rand\global\cr@nd\cr@nd}
\makeatother

\newcommand{\randomrotation}[1]{\globalrand\turnbox{\value{rand}}{#1}\phantom{#1}}

% thanks to Martin Scharrer: https://tex.stackexchange.com/q/11598/4012
\makeatletter
\def\cthulhu#1{%
    \@cthulhu#1 \@empty
}
\def\@cthulhu#1 #2{%
   \randomrotation{#1}\space
   \ifx #2\@empty\else
    \expandafter\@cthulhu
   \fi
   #2%
}
\makeatother
% ----------

\newcommand{\eldersign}{\raisebox{-.5\height}{\includegraphics[height=3ex]{eldersignimagefile}}}

\renewcommand*{\rmdefault}{fts}

\begin{document}\pagestyle{empty}\CenterWallPaper{}{backgroundimagefile}

\centering% that madman wouldn't justify his writings
\color{MidnightBlue}% my pick for "looks like ink"

\cthulhu{Hello, I am crazy. I am a Cthulhu worshipping gibbering madman, unhinged by
the horrors I have witnessed. I am a Cthulhu worshipping gibbering madman, unhinged by
the horrors I have witnessed. I am a Cthulhu worshipping gibbering madman, unhinged by 
the horrors I have witnessed. I am a Cthulhu worshipping gibbering madman, unhinged by 
the horrors I have witnessed. I am a Cthulhu worshipping gibbering madman, unhinged by 
the horrors I have witnessed.} \eldersign

\end{document}

picture of the output

On the other points you mentioned: I don't think Dropcaps would look good here; they convey something of a plannedness which wouldn't be in the style of my madman. As for font size changes and random word spacing, I don't know how to do that automarandomly.

18
  • 33
    WOW, that looks perfect. I might muck about with the font and such, but that looks far better than I had hoped! I think you are right on the drop caps for this purpose, I'll find an excuse to use them another time.
    – Canageek
    Commented Sep 25, 2011 at 16:04
  • 1
    You don't really need the whole \easteregg command. Something like \newcommand{\randomrotation}[1] {\globalrand \rescalebox{\value{rand}} {\globalrand \turnbox{\value{rand}}{#1}\protect\phantom{#1}}} should be enough (not sure about the rescalebox part, but something like this ought to work). Commented Sep 26, 2011 at 18:04
  • 1
    @BrunoLeFloch: Thanks for the suggestion. Unfortunately, I don't know enough LaTeX to understand how your code works, thus I haven't been able to incorporate your suggestion in my solution without getting numerous errors. It'd be great if you could say what exactly I have to replace with with what else in order for the document to compile and to work.
    – doncherry
    Commented Sep 27, 2011 at 16:42
  • 1
    \newcommand{\randomrotation}{}\easteregg\randomrotation => \newcommand{\randomrotation}[1]{\globalrand\turnbox{\value{rand}}{#1}}. Maybe you'll need to \protect either \globalrand or \turnbox, I don't remember why I had that in my original code. I think the rescaling requires more work, that was probably the cause of many errors. Commented Sep 27, 2011 at 21:11
  • 24
    Also, this should be turned into a document class, and included in default latex distributions. I'm very tempted to apply this to my thesis. The content wouldn't be entirely unsuitable...
    – naught101
    Commented Oct 2, 2012 at 7:18
156

Going straight to the source, the H.P. Lovecraft Society offers a number of fonts (some free, some for sale), including Lovecraft Cursive (unfortunately not part of the free set). The whole set of 50 fonts is available for $35.00 and contains more than 80 beautifully rendered digital props.

A quick Google search for "free handwriting fonts" finds this site: Fontspace, and the following font Signerica looks like it might meet your needs. Compile with XeLateX or LuaLateX:

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont{Signerica Medium}
\begin{document}
Some text written by a crazed madman.
\end{document}

output of code

Since I have no idea what an elder sign is, I guess I don't get any bonus points.

6
  • 3
    en.wikipedia.org/wiki/Elder_Sign The version on the left is used to end articles in at least one Cthulhu magazine, and I was hoping I wasn't the only Lovecraft/gaming fan to use LaTeX- I've already got a package to typeset dice.
    – Canageek
    Commented Sep 24, 2011 at 21:37
  • 1
    Thank you as well for the first link- HPLHS-Blackletter looks quite interesting for future use.
    – Canageek
    Commented Sep 24, 2011 at 21:40
  • 30
    That is a very calm, professional, psychopath handwriting. Mad, angry but disciplined! :)
    – percusse
    Commented Sep 26, 2011 at 12:32
  • 14
    @percusse The scariest kind. May also write drug prescriptions.
    – Alan Munn
    Commented Sep 26, 2011 at 12:40
  • 5
    "HPLHS-Blackletter is an irregular hand-drawn textura font based on the lettering of French heraldic engraver Charles Demengeot. It is appropriate for old occult tomes where you want a written-by-insane-monks kind of feeling. Available for FREE in the HPLHS font pack." Commented Nov 2, 2014 at 21:03
129

My humble attempt (thanks to xelatex):

My code to question #29402 on TeX.SX

I'm sorry, friends. TeX.SX seems to forbid answers with more than 30,000 characters. Mine was 50,138 - say again?! - so I had to paste the code on GitHub. Just because it was a TikZ-Cthulhu... :-P

The output:

output

I used the following font: YouMurderer BB

2
  • 6
    What did you use to produce the TikZ code?? (I'm assuming that you didn't type that all yourself) Commented Sep 26, 2011 at 18:06
  • 38
    @Bruno: You are right. :-) First, I looked for a nice "cthulhu" raster linear drawing. Then I used a tool called potrace to transform it into a vector format. I got a nice cthulhu.eps file from the original image. Then I imported the eps file in inkscape and used a plugin called inkscape2tikz for exporting all paths as TikZ/PGF paths. It generates a big code. :-) Commented Sep 26, 2011 at 18:18
106

I recently had occasion to want to have paths in TikZ that corresponded to characters in some font, so I figured out a process whereby I could convert a font to a family of PGF paths which could then be used in TikZ pictures as node shapes. This allows for fancy font effects and doing things to letters that are a little .. unusual. Out of pure curiosity, I tried putting the random steps decoration on the letters and the effect reminded me of this question.

So here's the cheery sticker that any self-respecting madman would have above his or her workplace:

madman bumper sticker

Believe it or not, the font used there is the famous STIX font. Not sure the original designers would approve, though. It is also properly kerned and the lines are automatically broken (though I didn't try to implement any fancy line-breaking algorithm).

Here's the code that produced that:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes.letters,positioning,decorations.pathmorphing}

\pgfmathsetmacro{\emcm}{1em/1cm}
\tikzset{
  letter/.cd,
  load font={stikz}{normal},
  size=4,
  encoding=name,
}

\begin{document}
\madman[transform canvas={scale=\emcm/2},letter/sentence width=4\textwidth]{%
Just because I{quotesingle}m a crazed madman doesn{quotesingle}t mean I have to work here{comma} but it helps{period}%
}
\end{document}

The astute who know their PGF manual well will already know that the library shapes.letters is not on the official list. You can get it from the TeX-SX Launchpad site: run tex pgflibraryshapes.letters.dtx to generate the library. You also need the file stikz-normal-paths.tex.

(The user commands might change - this is a new library.)

1
  • 5
    Very nice! May we have some documentation, pretty please? Commented Apr 10, 2012 at 19:53
60

The four fonts are, respectively, Zothique Demo, Zombified, Arthur, and Daemonesque. I provide a secondary zoom on the Daemonesque, which looks to have been constructed by H. Bosch himself.

I see that the fonts are currently available at the following sites:

http://www.urbanfonts.com/fonts/Zothique_Demo.htm

http://www.fontspace.com/sinister-fonts/zombified

http://fontparadise.com/fonts.php?SearchFor=arthur&type=search

http://fontparadise.com/fonts.php?SearchFor=daemonesque&type=search

However, when I downloaded them years ago, I had acquired Zothique Demo and Zombified at a this site, which is no longer in business:

http://fonts.lordkyl.net/fonts.php?category=34

enter image description here

enter image description here

1
  • 18
    I am a Cthulu [sic] worshipping madman, which accounts for my inability to spell. Commented Mar 11, 2013 at 12:16
32

If you want to dabble with Knuth's own punk font, check out this file for a demonstration based on an opentype (re)implementation, called punknova, of what is probably Knuth's most-ignored (or most-disregarded?!) font. :-)

If you want to stick with something that can be processed by "ordinary" (i.e., pdf-) latex, as opposed to xelatex and lualatex, check out http://www.ctan.org/pkg/punk-latex for some details.

That said, I have no knowledge whatsoever of Cthulhu, and hence I have no idea if punk is even remotely akin to what you may be looking for! :-)

23
% Compile with XeLaTeX
\documentclass{article}

\usepackage{fontspec}

\setmainfont{Comic Sans MS}

\begin{document}

I'm a Cthulhu worshipping gibbering madman, unhinged by the horrors I have witnessed.

\end{document}

On a more serious note, you can find a number of fonts to consider at The LaTeX Font Catalogue, Calligraphical and Handwritten fonts. If they don't seem crazy enough, you can get any font you like anywhere on the Internet, e.g. at the pages Mico recommended, and use them with XeLaTeX, just like in my above sample.

For really basic irregular word spacing, you could use "manual" spaces like ~ and \,, but there certainly are automated and more sophisticated ways of doing that.

For drop caps, use the package lettrine. Special initial fonts are at the Font Calalogoue, too.

The elder sign is probably best included as an image, using the package graphicx. If you specify the image width or height using em (width) or ex (height) as a unit, the image will be sized relatively to the current font size.

3
  • Just seeing that pretty much all my ideas have already been discussed in the comments while I was writing up my answer ... :(
    – doncherry
    Commented Sep 24, 2011 at 21:35
  • You are the first one to suggest anything related to drop caps.
    – Canageek
    Commented Sep 24, 2011 at 21:52
  • 1
    If you use a Unicode-based TeX engine, you can additionally take advantage of a number of space characters (about 10) with varying widths, e.g. en space, three-per-em space, thin space etc. (I'm not saying that you can type these with Unicode only.) You could, for example, from time to time insert a hair space or thin space inside a word and then probably protect this word with e.g. \mbox. More on Unicode spaces: http://en.wikipedia.org/wiki/Space_(punctuation)#Spaces_in_Unicode
    – jemp
    Commented Sep 25, 2011 at 17:13
7

For really crazy writing, I suggest The Written Word. Or its companion The Printed Word

1
  • 2
    Yeah, but I don't think you could still read it....
    – Canageek
    Commented Apr 24, 2014 at 0:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .