anchor.diff:          begin
           XRefObjets:= TPdfReference.CreateReference(Pred(FXRefObjets.Count));
           TPdfDictionary(TPdfXRef(FXRefObjets[NextOutline]).FObjet).AddElement('Next',XRefObjets);
  -        TPdfDictionary(TPdfXRef(FXRefObjets[PageOutline]).FObjet).AddElement('Prev',PrevOutline);
  +        XRefObjets:= TPdfReference.CreateReference(PrevOutline);
  +        TPdfDictionary(TPdfXRef(FXRefObjets[PageOutline]).FObjet).AddElement('Prev',XRefObjets);
           NextOutline:= PageOutline;
  -        PrevOutline:= XRefObjets;
  +        if CptPage< Pred(T_Section(Sections[CptSect]).Pages.Count)
  +        then
  +          PrevOutline:= Pred(FXRefObjets.Count);
           end;
         if CptPage= Pred(T_Section(Sections[CptSect]).Pages.Count)
         then
  
positive.code:       begin
        Dictionaire:= TPdfDictionary(TPdfDicElement(Dictionaire.FElement[Dictionaire.ElementParCle('Resources')]).FValue);
        Dictionaire:= TPdfDictionary(TPdfDicElement(Dictionaire.FElement[Dictionaire.ElementParCle('Font')]).FValue);
        Dictionaire.AddElement(TPdfName(Nom).FValue,XRefObjets);
        end;
    end;
  
negative.code: Nom:= TPdfName.CreateName('F'+IntToStr(NumFonte));
  Fontes.FObjet.AddElement('Name',Nom);
  // add font reference to all page dictionary
  for Cpt:= 1 to Pred(FXRefObjets.Count) do
    begin
    Dictionaire:= TPdfDictionary(TPdfXRef(FXRefObjets[Cpt]).FObjet);
  