iTextSharp.text.pdf.PdfReader.ReadOneObjStm C# (CSharp) Метод

ReadOneObjStm() защищенный Метод

protected ReadOneObjStm ( PRStream stream, int idx ) : PdfObject
stream PRStream
idx int
Результат PdfObject
        protected internal PdfObject ReadOneObjStm(PRStream stream, int idx) {
            int first = stream.GetAsNumber(PdfName.FIRST).IntValue;
            byte[] b = GetStreamBytes(stream, tokens.File);
            PRTokeniser saveTokens = tokens;
            tokens = new PRTokeniser(b);
            try {
                int address = 0;
                bool ok = true;
                ++idx;
                for (int k = 0; k < idx; ++k) {
                    ok = tokens.NextToken();
                    if (!ok)
                        break;
                    if (tokens.TokenType != PRTokeniser.TK_NUMBER) {
                        ok = false;
                        break;
                    }
                    ok = tokens.NextToken();
                    if (!ok)
                        break;
                    if (tokens.TokenType != PRTokeniser.TK_NUMBER) {
                        ok = false;
                        break;
                    }
                    address = tokens.IntValue + first;
                }
                if (!ok)
                    throw new InvalidPdfException("Error reading ObjStm");
                tokens.Seek(address);
                return ReadPRObject();
            }
            finally {
                tokens = saveTokens;
            }
        }