# [Tex/LaTex] RGB colour macro: is it possible to divide by 255 in Latex

colormacros

I'm fiddling with source code display (Objective-C) and the listings package. I want to colour comments the same green that appears in XCode. I determined that it has an RGB value of 67, 133, 34. To use this I need to divide by 255 since this is the format/value range of input parameters to

\definecolor{green}{rgb}{0.34,0.52,0.14}


Is there any way to write a macro in latex that divides by 255? Thanks.

In response to comment:

If I do

\usepackage{listings} % For source code display.
\usepackage{courier} % For source code display.
\usepackage{xcolor}

\lstset{basicstyle=\footnotesize\ttfamily}
\lstset{language=[Objective]C}
\definecolor{green}{rgb}{67,133,34}


\usepackage{listings} % For source code display.
\usepackage{courier} % For source code display.
\usepackage{color}

\lstset{basicstyle=\footnotesize\ttfamily}
\lstset{language=[Objective]C}
\definecolor{green}{rgb}{0.34,0.52,0.14}


the comment in my source code listing vanishes.

With the package xcolor you can define colors using the range 0–255 with the RGB color model:

\definecolor{mygreen}{RGB}{67,133,34}


(notice the uppercase letters). A more complicated way using color would be

\documentclass{article}
\usepackage{color}
\makeatletter
\newcommand{\defineRGBcolor}[2]{%
\begingroup
\def\color@values{\@gobble}%
\@for\next:=#2\do{%
\count0=\next\relax
\multiply\count0 100
\divide\count0 255
\edef\color@values{\color@values,0.\number\count0}%
}%
\edef\x{\endgroup\noexpand\definecolor{#1}{rgb}{\color@values}}\x
}
\makeatother
\defineRGBcolor{agreen}{67, 133, 34}
\definecolor{bgreen}{rgb}{0.26,0.52,0.13}
\begin{document}
\textcolor{agreen}{ABCDEF}

\textcolor{bgreen}{ABCDEF}
\end{document}


The rgb value 0.26,0.52,0.13 is what really corresponds to 67,133,34 dividing by 255.