Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I made a logo for the math software Maxima with Tikz, using the contour package and transparency, but the contour seems to show up "behind" the letters in addition to around them. This shows up when using transparency. How to avoid the contour behind letters?

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage[outline]{contour}
\begin{document}
  \scalebox{20} {
    \begin{tikzpicture}
      \draw node [rectangle,
                  rounded corners=2.55mm,
                  draw=white,
                  very thin,
                  fill=blue!10!white,
                  inner sep=2.55mm,
                  anchor=north east] (logo) {};
      \contourlength{0.05mm};
      \node (xi)    [ left=-3.7mm of logo] {
                        \large\bf\color{blue!20!white}\contour{white}{$\zeta$}};
      \contourlength{0.05mm};
      \node (sigma) [right=-4.7mm of logo] {
                        \large\bf\color{blue!20!white}\contour{white}{$\Sigma$}};
      \contourlength{0.15mm};
      \node (M)     [opacity=.6] at (logo) {
                        \bf\color{red!50!white}\contour{white}{M}};
    \end{tikzpicture}
  }
\end{document}

enter image description here

share|improve this question

1 Answer 1

up vote 7 down vote accepted

Use transparency groups to set the opacity. This ensures that the elements in the transparency group are opaque to each other and the opacity is only set when they are rendered on to the canvas.

\documentclass{article}
%\url{http://tex.stackexchange.com/q/140437/86}
\usepackage{tikz}
\usepackage[outline]{contour}
\begin{document}
  \scalebox{20} {
    \begin{tikzpicture}
  \fill[blue!10!white] (0,0) circle[radius=2.55mm];
      \contourlength{0.05mm};
      \node (xi) at (-1.15mm,0) {
                        \large\bf\color{blue!20!white}\contour{white}{$\zeta$}};
      \contourlength{0.05mm};
      \node (sigma) at (.6mm,0) {
                        \large\bf\color{blue!20!white}\contour{white}{$\Sigma$}};
  \begin{scope}[transparency group,opacity=.6]
      \contourlength{0.15mm};
      \node (M) at (0,0) {
                        \bf\color{red!50!white}\contour{white}{M}};
  \end{scope}
    \end{tikzpicture}
  }
\end{document}

I think that your way of drawing a circle is one of the most complicated that I've seen! So I redrew it as a circle. Since your positioning was in terms of the node, either I had to do the coordinates by hand or put in a blank node to position from. I elected to do the former since it seemed that there was a fair amount of manual adjustment going on to get those exact lengths. I think I got the positions pretty accurate.

Maxima logo

share|improve this answer
    
Excellent! I didn't know about transparency groups. I agree that my circle definition is strange, but I do it that way because I need the rectangular upper east anchor in a scope outside the logo, a trick I actually read in the manual v2.10 page 65. –  Jostein Trondal Oct 24 '13 at 13:32
1  
"Though this be madness, yet there is method to it." You could achieve the same effect by \coordinate (top right) at (2.55mm,2.55mm); –  Loop Space Oct 24 '13 at 13:34

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.