I am trying to format a legal document so that it follows this format.

  Article 1.

1.01 First section

  bla bla bla

1.02 Second section

  bla bla bla


I tried using this to get things working the way I wanted:

\usepackage{etoolbox}  %needed to make chapters continuous on page
%% Need with {etoolbox} package

% change % chapter to article and center it
\titleformat{\chapter}[hang]{\LARGE\bfseries\centering}{\chaptertitlename\ \thechapter}{0.125in}{\LARGE}

%Format section numbering

% Set section number depth to level 3

Now, the problem is how to get a leading zero in the section and then have it increment correctly. Once I reach the 10 level, the section is shown as: "1.010", which is wrong. It should read "1.10". I can accomplish this in MS Word; however, I can find no way to do it in LaTeX. Does anyone have a solution?


1 Answer 1


The kernel macro \two@digits is what you're looking for. It produces the number given as its argument with a padding zero, if needed.


Surrounding the code with \makeatletter and \makeatother is necessary when using kernel macros with @ in their name.

The redefinition of \thesubsubsection seems in line with that of \thesubsection.

Thanks to Qrrbrbirlbel for having suggested \value instead of \arabic, which is indeed better because it stops expansion in search for digit, because \two@digits uses \number.

  • Is \arabic safe or should \value used instead? Commented Mar 9, 2013 at 23:48
  • @Qrrbrbirlbel You're right; I forgot about \number and so \value is better.
    – egreg
    Commented Mar 10, 2013 at 0:06
  • @Qrrbrbirlbel \value or \two@digits{\@arabic\c@subsection}
    – yannisl
    Commented Mar 10, 2013 at 1:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .