iTextSharp.text.pdf.PdfStamperImp.FindAllObjects C# (CSharp) Метод

FindAllObjects() статический приватный Метод

static private FindAllObjects ( PdfReader reader, PdfObject obj, IntHashtable hits ) : void
reader PdfReader
obj PdfObject
hits IntHashtable
Результат void
        internal static void FindAllObjects(PdfReader reader, PdfObject obj, IntHashtable hits)
        {
            if (obj == null)
                return;
            switch (obj.Type) {
                case PdfObject.INDIRECT:
                    PRIndirectReference iref = (PRIndirectReference)obj;
                    if (reader != iref.Reader)
                        return;
                    if (hits.ContainsKey(iref.Number))
                        return;
                    hits[iref.Number] = 1;
                    FindAllObjects(reader, PdfReader.GetPdfObject(obj), hits);
                    return;
                case PdfObject.ARRAY:
                    PdfArray a = (PdfArray)obj;
                    for (int k = 0; k < a.Size; ++k) {
                        FindAllObjects(reader, a[k], hits);
                    }
                    return;
                case PdfObject.DICTIONARY:
                case PdfObject.STREAM:
                    PdfDictionary dic = (PdfDictionary)obj;
                    foreach (PdfName name in dic.Keys) {
                        FindAllObjects(reader, dic.Get(name), hits);
                    }
                    return;
            }
        }