code: public void addPageLabel(int page, int numberStyle, String text, int firstPage) {
          if (page < 1 || firstPage < 1)
              throw new IllegalArgumentException("In a page label the page numbers must be greater or equal to 1.");
          PdfDictionary dic = new PdfDictionary();
          if (numberStyle >= 0 && numberStyle < numberingStyle.length)
              dic.put(PdfName.S, numberingStyle[numberStyle]);
          if (text != null)
              dic.put(PdfName.P, new PdfString(text, PdfObject.TEXT_UNICODE));
          if (firstPage != 1)
              dic.put(PdfName.ST, new PdfNumber(firstPage));
          map.put(Integer.valueOf(page - 1), dic);
      }
docs: Adds or replaces a page label.
  @param page the real page to start the numbering. First page is 1
  @param numberStyle the numbering style such as LOWERCASE_ROMAN_NUMERALS
  @param text the text to prefix the number. Can be <CODE>null</CODE> or empty
  @param firstPage the first logical page number