My use case is drawing a ticked box in line with normal text like this: "Hello ☒ World." (unicode example, your mileage may vary). One solution I managed to come up with is the following rather verbose expression.
Hello \tikz{
\node[draw,rectangle,minimum size=1.5ex] {};
\node[draw,cross out,minimum size=1.5ex] {};
} World.
Is there a more elegant way to describe this picture, for example by having the two shapes superimposed on one node?
Alternatively, is there any cross out path operation akin to rectangle, allowing something like the following?
\tikz \draw rectangle (1.5ex,1.5ex) cross out (0,0);
(N.B. This issue is mostly of aesthetic and academic nature, since the first example does indeed work as expected.)
Clarification: This is single-use so creating a new command is not what I'm after (thanks Peter).





/tikz/path picturedoes not exist. Shame. Still, good to know that technique. – Fritz Mar 08 '12 at 17:23\tikz \node[squarecross] {};. There are others methods but you need in each way to define something in a style. 2.00 !! it's not serious ! :) Do you have a good reason to not update ? you need to update because there are a lot of interesting improvements. – Alain Matthes Mar 08 '12 at 17:57\tikzsetnot being in the text. It's verbose however, if you think in terms of Code Golf. ;-) – Fritz Mar 08 '12 at 18:42\node[rectangle,cross out]{};. Later I noticed that this can not work because when you write\node[rectangle,circle](test){};, you don't know if(test.north west)is on the circle or on the rectangle. If your answer included something like "No you can't have multiple shapes but this is how you can draw your own shape.", I would happily accept it, so that future visitors can see how to do it. :-) – Fritz Mar 21 '12 at 17:36\pgfdeclareshape. – Alain Matthes Mar 21 '12 at 17:54($(path picture bounding box.south west)+(-0.1,-0.1)$) -- ($(path picture bounding box.north east)+(0.1,0.1)$)will still draw only to the drawn node border. Can this be circumvented? – Raphael Aug 27 '12 at 18:21