I would like to have a universal callout style that works with boundaries, transparency, multiple pointers, and different sizes of pointers. Something similar to this solution.
Kpym's solution works very good with multiple pointers. Example:
\documentclass[border=5mm]{standalone}
\usepackage{standalone}
\usepackage{tikz}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usetikzlibrary{
decorations.pathreplacing,
shadows.blur}
\definecolor{left} {HTML}{001528}
\tikzset{
add path/.style = {
decoration={show path construction,
moveto code={
\xdef\savedpath{\savedpath (\tikzinputsegmentfirst)}
},
lineto code={
\xdef\savedpath{\savedpath -- (\tikzinputsegmentlast)}
},
curveto code={
\xdef\savedpath{\savedpath .. controls (\tikzinputsegmentsupporta) and
(\tikzinputsegmentsupportb) ..(\tikzinputsegmentlast)}
},
closepath code={
\xdef\savedpath{\savedpath -- cycle}}},decorate},store path/.style = {add
path},
store path/.prefix code={\xdef\savedpath{}},
callouts/.style={
store path,
append after command={
foreach \target in {#1}{
($(callout)!2pt!-90:\target$)--\target --($(callout)!2pt!90:\target$)
} \savedpath},
alias=callout},
custom style/.style={fill=black!20,text=,},}
\begin{document}
\begin{tikzpicture}
\path[custom style] (7.5,-11)
node[rounded corners,align=left,callouts={(9,-12),(9,-10)}]{blah, blah};
\end{tikzpicture}
\end{document}
However, as soon as you try to change the custom style to a callout with transparency and boundaries the result is very ugly.
\documentclass[border=5mm]{standalone}
\usepackage{standalone}
\usepackage{tikz}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usetikzlibrary{
decorations.pathreplacing,
shadows.blur}
\definecolor{left} {HTML}{001528}
\tikzset{
add path/.style = {
decoration={show path construction,
moveto code={
\xdef\savedpath{\savedpath (\tikzinputsegmentfirst)}
},
lineto code={
\xdef\savedpath{\savedpath -- (\tikzinputsegmentlast)}
},
curveto code={
\xdef\savedpath{\savedpath .. controls (\tikzinputsegmentsupporta) and
(\tikzinputsegmentsupportb) ..(\tikzinputsegmentlast)}
},
closepath code={
\xdef\savedpath{\savedpath -- cycle}}},decorate},store path/.style = {add
path},
store path/.prefix code={\xdef\savedpath{}},
callouts/.style={
store path,
append after command={
foreach \target in {#1}{
($(callout)!2pt!-90:\target$)--\target --($(callout)!2pt!90:\target$)
} \savedpath},
alias=callout},
custom style/.style={fill=black!20,text=,},}
\begin{document}
\begin{tikzpicture}
\path[custom style] (7.5,-11)
node[rounded corners,align=left,callouts={(9,-12),(9,-10)}]{blah, blah};
\end{tikzpicture}
\end{document}
Question: As described above my question is if there is a similar solution with transparancy, boundaries, and different sizes of pointers.



https://tex.stackexchange.com/questions/187165/callout-with-multiple-pointers-how-to-design-it/361532#361532– Zarko Sep 07 '18 at 20:10