public void Postprocess(ReportPage page)
        {
            page.ExtractMacros();
            ObjectCollection allObjects = page.AllObjects;

            for (int i = 0; i < allObjects.Count; i++)
            {
                Base c = allObjects[i];
                if (c.Report == null)
                {
                    c.SetReport(page.Report);
                }
                c.ExtractMacros();

                if (c is BandBase)
                {
                    (c as BandBase).UpdateWidth();
                }

                if (c is TextObjectBase && (c as TextObjectBase).Duplicates != Duplicates.Show)
                {
                    ProcessDuplicates(c as TextObjectBase);
                }
            }

            CloseDuplicates();
        }