11

I'm working with tcolorbox, I saw the pdf here and I want to reproduce the little green box in this image:

enter image description here

Can anyone help me please?

15

This is a \newtcbox called mylib and defined in tcolorbox.tex:

\documentclass{article}
\usepackage[many]{tcolorbox}

\newtcbox{\mylib}{enhanced,nobeforeafter,tcbox raise base,boxrule=0.4pt,top=0mm,bottom=0mm,
  right=0mm,left=4mm,arc=1pt,boxsep=2pt,before upper={\vphantom{dlg}},
  colframe=green!50!black,coltext=green!25!black,colback=green!10!white,
  overlay={\begin{tcbclipinterior}\fill[green!75!blue!50!white] (frame.south west)
    rectangle node[text=white,font=\sffamily\bfseries\tiny,rotate=90] {LIB} ([xshift=4mm]frame.north west);\end{tcbclipinterior}}}


\begin{document}

\mylib{test}

\end{document}

enter image description here

6

This pice of code also works with the \tikzexternalize flag.

\documentclass{standalone}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage{tikz}
\usetikzlibrary{positioning,shapes,shadows,arrows}
\usepackage{lipsum}

\newcommand{\mylib}[1]{
    \tikz[baseline=-0.5ex]{ 
        \tikzset{lib/.style={
            rectangle split,
            rectangle split parts=2,
            rectangle split horizontal,
            rectangle split part fill={green!75!blue!50!white,green!10!white},
            rectangle split draw splits=false,
            rounded corners=2pt,
            rectangle split part align={right,right},
            draw=green!50!black,
            minimum height=16pt}
        }
        \node[lib] (var){
        \nodepart[text=green!25!black]{two}#1};
        \node[text=white,font=\sffamily\bfseries\tiny,rotate=90] at ([xshift=6pt]var.west) {LIB};
    }
}
\begin{document}
\mylib{test}
\mylib{v}
\mylib{longvar}
\end{document}

enter image description here

  • Nice solution. A minor detail: In the original, there is no green line between LIB and the library name. – jarauh Nov 13 '15 at 11:52
  • To erase line between LIB and library name you just need to add option rectangle split draw splits=false to lib/. style. – Zarko Nov 13 '15 at 12:35
  • @Zarko thank you for the hint. I've edited the post. – CDieck Nov 13 '15 at 13:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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