Die Meldung kam schon im Beispiel aus der Frage selbst und liegt daran, dass an der Stelle kein `+0.1pt` erlaubt ist. Wie der Erklärung zu `tikzpicutre` in Abschnitt 12.2.1 der Anleitung zu entnehmen ist, schaltet TikZ für `tikzpicture` temporär den Font auf `\nullfont` um, damit alle Textausgaben außerhalb von den Stellen, an denen sie erlaubt sind, zu unterbinden. unterbunden werden. So würde beispielsweise mit:
\pgfsetlinewidth{0.4pt}
\pgfpathmoveto{\pgfqpoint{0pt}{0pt}}Butter
\pgfpathlineto{\pgfqpoint{\LineSpace+0.1pt}{\LineSpace+0.1pt}}
\pgfusepath{stroke}
ebenfalls kein `Butter` ausgegeben, sondern in der `log`-Datei:
Missing character: There is no B in font nullfont!
Missing character: There is no u in font nullfont!
Missing character: There is no t in font nullfont!
Missing character: There is no t in font nullfont!
Missing character: There is no e in font nullfont!
Missing character: There is no r in font nullfont!
gemeldet.
Beseitigen kann man das einfach, indem man das wirkungslose `+0.1pt` an der Stelle weglässt oder beispielsweise
\documentclass[12pt]{article}
\usepackage{tikz}
\usetikzlibrary{patterns}
\makeatletter
\pgfdeclarepatternformonly[\LineSpace]{my north east lines}{\pgfqpoint{-1pt}{-1pt}}{\pgfpoint{\LineSpace+0.2pt}{\LineSpace+0.2pt}}{\pgfqpoint{\LineSpace}{\LineSpace}}%
{
\pgfsetcolor{\tikz@pattern@color}
\pgfsetlinewidth{0.4pt}
\pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
\pgfpathlineto{\pgfqpoint{\dimexpr\LineSpace+0.1pt}{\dimexpr\LineSpace+0.1pt}}
\pgfusepath{stroke}
}
\newdimen\LineSpace
\tikzset{
line space/.code={\LineSpace=#1},
line space=3pt
}
\makeatother
\begin{document}
\begin{tikzpicture}
\draw[red,fill,pattern color=blue,line space=10pt,pattern=my north east lines] (0,0) rectangle (2,3);
\end{tikzpicture}
\end{document}
verwendet. Besser wäre vermutlich, die Coordinaten erst mit `\pgfmathparse` zu berechnen und einer Variablen zuzuweisen und dann diese zu verwenden. Aber ich kenne mich mit TikZ nicht so besonders aus.