コード例 #1
0
        public PdfValue                    ReadValue()
        {
            PdfValue token = ReadToken();

            switch (token.Type)
            {
            case PdfValueType.DictionaryBegin:      return(new PdfDictionary(this));

            case PdfValueType.ArrayBegin:           return(new PdfArray(this));

            case PdfValueType.Null:                 return(token);

            case PdfValueType.Boolean:              return(token);

            case PdfValueType.Integer:              return(token);

            case PdfValueType.Number:               return(token);

            case PdfValueType.Name:                 return(token);

            case PdfValueType.String:               return(token);

            default:
                throw new PdfException("Unexpected token " + token.Type.ToString() + " in stream.");
            }
        }
コード例 #2
0
        public PdfValue                    ReadToken(PdfValueType expectedType)
        {
            PdfValue token = ReadToken();

            if (token.Type != expectedType)
            {
                throw new PdfExceptionReader("PDF stream corrupt: expect '" + expectedType.ToString() + "' read '" + token.Type.ToString() + "'");
            }

            return(token);
        }
コード例 #3
0
 internal void                WriteObj(PdfDocumentWriter document, PdfWriterReference reference, PdfValue obj)
 {
     WriteInteger(reference.Id);
     WriteInteger(0);
     WriteObjBegin();
     obj.pdfWriteToDocument(document, this);
     WriteObjEnd();
 }
コード例 #4
0
 internal void                WriteReference(PdfDocumentWriter document, PdfValue value)
 {
     WriteReference(document.AddObj(value));
 }
コード例 #5
0
 public PdfResourceEntry(string cls, string name, PdfValue resource)
 {
     this.Class    = cls;
     this.Name     = name;
     this.Resource = resource;
 }
コード例 #6
0
 public void                Add(string cls, string name, PdfValue resource)
 {
     Add(new PdfResourceEntry(cls, name, resource));
 }