6

I'm trying to design a logo using tikz although I'm a total beginner. I pretty much would like to show 2 capital letters each with a lowercase letter placed on it's vertical leg.

I tried

\documentclass[tikz]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
  \node [anchor=base, scale=5] (0,0) {EF} ;
  \node (s) [fill=white,scale=.8] at (-.9,.9) {e};
  \node [right=.95cm of s,fill=white,scale=.8] {f};
\end{tikzpicture}
\end{document}

which produces

imageEF

  1. Is there a way to precisely change the space between the two letters E and F? I'd like to have them almost touching each other.

    I suspect the best approach would be first to glue the lower case letter on top of it's capital letter and then place each entity to a specific distance of each other. But I don't know how to do that.

  2. Besides, how can I make sure to place the lowercase letters in the middle of the thick vertical leg of the capital letters?

  3. I would also like the box around the lowercase letters to be as small as possible. Could this box be a circle instead of a rectangle?

Rene
  • 125
  • 5

2 Answers2

8

You could try a few values until you get the desired results:

enter image description here

As requested in the comments, here is an example with opacity applied to the main text as well as well as the lower case inserted text:

enter image description here

References:

Notes:

  • A \kern was applied to get the F right just touching the E.
  • I would recommend using units of length that will scale with the fonts used: em for horizontal and ex for vertical.
  • An inner sep was applied to set the separation around the imbedded characters,
  • The shape=circle makes the nodes circular as desired.

Code:

\documentclass[tikz]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
  \node [anchor=base, scale=5] (0,0) {E\kern-0.1175em F} ;
  \node (s) [fill=white,scale=.8, inner sep=0.025pt, shape=circle] at (-2.15em,5.9ex) {e};
  \node [right=2.245em of s,fill=white,scale=.8, inner sep=0.15pt, shape=circle] {f};
\end{tikzpicture}
\end{document}

Code: with opacity applied

\documentclass[tikz]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
  \node [anchor=base, scale=5, , text opacity=0.6, color=brown] (0,0) {E\kern-0.1175em F} ;
  \node (s) [fill=white,scale=.8, inner sep=0.025pt, shape=circle] at (-2.15em,5.9ex) {e};
  \node [right=2.245em of s,fill=white,scale=.8, inner sep=0.15pt, shape=circle, fill opacity=0.8, text opacity=1] {f};
\end{tikzpicture}
\end{document}
Peter Grill
  • 223,288
  • How can I force the background to be transparent, both the main frame as well as the circles holding the lower case letter? – Rene Aug 13 '14 at 13:47
  • @Rene: See revised solution which now includes opacity. – Peter Grill Aug 13 '14 at 19:05
  • Yes but with such a solution the circle holding the lowercase letters cannot be fully transparent.Actually, I would want to have the whole background including the circle holding the lowercase letters (i.e., white part in your first solution) fully transparent. – Rene Aug 14 '14 at 08:44
  • @Rene: I think you just need to adjust the opacity level. If that is not what you want, please update the question with more details. – Peter Grill Aug 14 '14 at 09:13
2

This uses stacks instead of tikz. The inter-letter kerning, as well as the vertical and horizontal offset distances of the inset letters can be changed. The l and b indicate the insets are relative to the left-bottom of the base image.

\documentclass{article}
\usepackage{xcolor,stackengine,graphicx}
\begin{document}
\stackinset{l}{1.00pt}{b}{3.8pt}{\smash{\stackon[-1.5pt]{\scalebox{.33}
  {\textcolor{white}{$\bullet$}}}{\scalebox{.15}{\strut e}}}}{E}%
\kern-1pt%
\stackinset{l}{1.00pt}{b}{3.8pt}{\smash{\stackon[-1.65pt]{\scalebox{.33}
  {\textcolor{white}{$\bullet$}}}{\scalebox{.15}{\strut f\,}}}}{F}%
\end{document}

enter image description here

Here's an alternative interpretation of your request, using inverse colors rather than a circle or box.

\documentclass{article}
\usepackage{xcolor,stackengine,graphicx}
\begin{document}
\stackinset{l}{1.34pt}{b}{3.5pt}{\scalebox{.2}{\textcolor{white}{\strut e}}}{E}%
\kern-1pt%
\stackinset{l}{1.40pt}{b}{3.5pt}{\scalebox{.2}{\textcolor{white}{\strut f}}}{F}
\end{document}

enter image description here