76

How can I make change a text background in LaTeX? For example using Latex code

\textsc{Extra Curricular Achievements}\

I get enter image description here

However, I want the background of this heading to be changed so that it looks like this:- enter image description here

I want the background to be extended to the right upto line break. Please ignore the underline in the previous image. Thanks.

40

I prefer using tcolorbox thinking that in future you may want the background to be fashionable. I have given many options (which are not needed for this particular case) in the tcbset so that you can play with them to suit your needs.

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

\tcbset{
    frame code={}
    center title,
    left=0pt,
    right=0pt,
    top=0pt,
    bottom=0pt,
    colback=gray!70,
    colframe=white,
    width=\dimexpr\textwidth\relax,
    enlarge left by=0mm,
    boxsep=5pt,
    arc=0pt,outer arc=0pt,
    }

\begin{document}
\begin{tcolorbox}
\textsc{Extra Curricular Achievements}
\end{tcolorbox}
\end{document}

enter image description here

Here is another option using framed package.

\documentclass{article}
\usepackage{xcolor}
\usepackage{framed}
\definecolor{shadecolor}{RGB}{180,180,180}
\begin{document}
\begin{snugshade*}
\noindent\textsc{Extra Curricular Achievements}
\end{snugshade*}
\end{document}

enter image description here

Without extra packages:

\documentclass{article}
\usepackage{xcolor}
\definecolor{shadecolor}{RGB}{150,150,150}
\begin{document}
\noindent\colorbox{shadecolor}
{\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\textsc{Extra Curricular Achievements}}}

\end{document}

enter image description here

And convert it in to a macro:

\documentclass{article}
\usepackage{xcolor}
\definecolor{shadecolor}{RGB}{150,150,150}
\newcommand{\mybox}[1]{\par\noindent\colorbox{shadecolor}
{\parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1}}}
\begin{document}
\mybox{\textsc{Extra Curricular Achievements}}

\end{document}
  • Thanks .. btw using the tcbset approach, what can be done to remove the surrouding box . – sairajat Oct 7 '13 at 8:14
  • @sairajat Sorry which box? I don't follow. – user11232 Oct 7 '13 at 10:37
  • the surrounding purple colored box . sorry for late reply. did it myself . Thanks anyways .. :) – sairajat Oct 13 '13 at 5:30
  • @sairajat Never mind. That is my style of putting a picture on this site. If you run my code, you won't get it :-) – user11232 Oct 13 '13 at 13:47
147

I know this question has been answered very extensively. But not what I wanted or thought was the question based on the title. Therefore if others get in here looking for a possibility for colouring behind a word than this snippet is much easier:

\colorbox{blue!30}{blue}

or

\textcolor{blue!30}{blue}

resulting in:

Color result of the above commands

This is possible by only adding \usepackage{xcolor}. Just some extra info :)

Colour Several Lines It is correct that the above methods does not work for several lines, if you to be more than one line you can do:

{\color{green} the text you want to write}

This can however also be wrapped in a function so it is easier to use several places during edits, e.g., for colouring new text or whatever:

\newcommand{\added}[1]{{\color{green}[added]:#1}}

  • 16
    text inside \colorbox can not be split into several lines if it is too long. So the macro is most suited for coloring a few words. If you want to color several sentences which spread across several lines, it is better to use soul – jdhao Nov 22 '16 at 12:31
  • 2
    The given link have some illustrating examples about how to use the soul package. – jdhao Nov 22 '16 at 14:18
  • 2
    sorry for off-topic, but hard to resist: I like how LaTeX is not easy at all -- you need to use soul to put some colour behind some text. – xealits Jan 26 '17 at 15:34
  • 3
    Exactly what I needed, no immense amount of packages, no huge newcommands, simply the colorbox. Thanks mate! – Dennis May 12 '17 at 13:33
  • 5
    This example would have taken me fewer seconds to parse if you replaced the text "{blue}" with some other text. :) – CPBL Nov 9 '17 at 2:46

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.