Beispiel #1
0
        internal TPdfStream(Stream aDataStream, TPdfSignature aSignature)
        {
            EndTextData = TPdfBaseRecord.Coder.GetBytes(TPdfTokens.GetString(TPdfToken.CommandEndText) + TPdfTokens.NewLine);

            Signature = aSignature;
            if (Signature != null)
            {
                if (Signature.SignerFactory != null)
                {
                    Signer = Signature.SignerFactory.CreateSigner();
                }
                else
                {
                    PdfMessages.ThrowException(PdfErr.ErrUnassingedSignerFactory);
                }
            }

            if (Signer == null)
            {
                FDataStream = aDataStream;
            }
            else
            {
                FDataStream = new TSignedStream(aDataStream, Signer);                                                  //When signing we use a special stream that will compute the hash.
            }
            SignedStream = FDataStream as TSignedStream;
        }
Beispiel #2
0
 internal TSignedStream(Stream aDataStream, TPdfSigner aSigner)
 {
     FDataStream  = aDataStream;
     Signer       = aSigner;
     HelperStream = null;
     SignOffset   = 0;
 }