I am trying to understand how the WordSpace factor of fontspecs's \addfontfeatures works. The word space is decreasing when I lower it, but not increasing when I increase the factor again:
\documentclass{article}
\usepackage{fontspec}
\setromanfont{Latin Modern Roman}
\begin{document}
Ein paar Wörter.
{\addfontfeatures{WordSpace=0.9,LetterSpace=0}Ein paar Wörter.}
{\addfontfeatures{WordSpace=0.7,LetterSpace=0}Ein paar Wörter.}
{\addfontfeatures{WordSpace=0.3,LetterSpace=0}Ein paar Wörter.}
{\addfontfeatures{WordSpace=0.7,LetterSpace=0}Ein paar Wörter.}
{\addfontfeatures{WordSpace=0.9,LetterSpace=0}Ein paar Wörter.}
Ein paar Wörter.
\end{document}
My application for it is to selectively squeeze some lines of verse to avoid a line break, or a paragraph in order to avoid widows and orphans, but I became aware of the fact that I cannot really control the factor and thus keep getting smaller word space. How do I increase the word space factor again?
EDIT: As suggested by egreg \spaceskip looks like a good way of doing this indeed. Just that I also have to take care of any \textsl and similar passages contained in the stretch of text to be adjusted, and that when reducing the inter word space quite a bit also the extra spaces after punctuation should be adjusted, via \xspaceskip.



\spaceskipinstead of settingWordSpace. See http://tex.stackexchange.com/questions/256025/local-application-of-addfontfeature-and-wordspace-x – egreg Oct 21 '15 at 19:35