2013-03-11 2 views
0

내가 어도비 Acrobat 및/또는 리더서명 PDF 문서는 바이트 배열

에서 무엇입니까 특정 오류에서 스트리밍 "문서는이 서명을 저지하려고 시도하는 중 오류가 발생했습니다 서명 할 수 없습니다.이 문서는 있었다 이 파일은 전체 저장으로 저장해야합니다. "

서명하려는 PDF가 데이터베이스에 저장된 이진 데이터의 IFrame에 표시되는 바이트 배열에서 만들어집니다.

  byte[] stream = (from m in db.pdf_store 
          where m.pdf_id == uid 
          select m.pdf_binary).First().ToArray(); 
      Response.ContentType = "application/pdf"; 
      Response.AddHeader("Content-Disposition", "Inline"); 
      Response.OutputStream.Write(stream, 0, stream.Length); 
      Response.Flush(); 
      Response.End(); 

이 코드는 Internet Explorer에 서명 필드를 표시하고 PDF를 표시하는 데 적합합니다. 서명 상자를 클릭하고 서명 패드를 사용하여 문서에 서명 할 수 있지만 수락을 클릭하면 위의 오류가 나타납니다.

저는 이것이 실제 파일이 아닌 PDF와 관련이 있다고 생각합니다. 모든 제안이나 도움을 주시면 감사하겠습니다.

답변

0

발견 된 문제. 나는 Itextsharp를 사용하여 PDF를 수정하려고했다. 사용자 권한을 유지하기 위해 추가 모드를 사용해야한다는 것을 알았습니다. 바이트 배열을 만들 때 Itextsharp에 추가 모드를 사용하려면 GetBuffer 대신 ToArray를 사용해야합니다.