<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-4188</id>
	<title>Nabble - iTextSharp</title>
	<updated>2009-11-10T06:01:23Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/iTextSharp-f4188.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextSharp-f4188.html" />
	<subtitle type="html">iText# (iTextSharp) is a port of the iText open source java library written entirely in C# for the .NET platform. iText# is a library that allows you to generate PDF files on the fly. It is implemented as an assembly. iTextSharp home is &lt;a href=&quot;http://sourceforge.net/projects/itextsharp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26283888</id>
	<title>Re: Using itextshart with Portuguese Citizen Card</title>
	<published>2009-11-10T06:01:23Z</published>
	<updated>2009-11-10T06:01:23Z</updated>
	<author>
		<name>migueldias</name>
	</author>
	<content type="html">Can someone please tell how to get information about the private key ? I can't get it well and i have the same problem...
&lt;br&gt;&lt;br&gt;&lt;quote author=&quot;Mário Santos&quot;&gt;&lt;br&gt;I've solved my problem! I was getting the signing certificate without any information about the private key so I couldn't get the example provided by Paulo working. 
&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Mário Santos wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;I've trying to sign a Pdf with the Portuguese Citizen Card, using iTextSharp (trabalho fantástico Paulo!) but after signing, Acrobat Reader cannot validate the hash. The hash algorithm appears as unknown and the Certificate button is disabled.
&lt;br&gt;&lt;br&gt;I'm using PdfName.ADOBE_PPKLITE, PdfName.ADBE_X509_RSA_SHA1 for filter and subfilter and I'm setting the Cert property of the PdfSignature to the certificate of the signer.
&lt;br&gt;&lt;br&gt;The signing itself is performed by the Citizen Card smart card through the Crypto API using SHA1 for the hash algorithm and RSA for encrypting the hash.
&lt;br&gt;&lt;br&gt;Has anyone done something like this successfully?
&lt;br&gt;&lt;br&gt;thanks a lot!
&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;/quote&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Using-itextshart-with-Portuguese-Citizen-Card-tp21602776p26283888.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26262193</id>
	<title>Pdfwriter</title>
	<published>2009-11-08T23:25:29Z</published>
	<updated>2009-11-08T23:25:29Z</updated>
	<author>
		<name>HuaMin</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;I've got the following issue with the line in bold below. 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Font times = new Font(bfTimes, 22, Font.BOLD, Color.BLACK);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string newFile = @&amp;quot;c:\file1.pdf&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Document doc = new Document();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(newFile, FileMode.Create));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // Metadata
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; doc.AddTitle(&amp;quot;File of &amp;quot; + Session[&amp;quot;sv_nm&amp;quot;]);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // Add content
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; doc.Open();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; doc.Close();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfEncryptor.Encrypt(new PdfReader(newFile),new FileStream
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (newFile, FileMode.Open), PdfWriter.STRENGTH128BITS, pswd, null, PdfWriter.AllowScreenReaders);
&lt;br&gt;&lt;br&gt;&lt;br&gt;IOException was unhandled by user code
&lt;br&gt;The process cannot access the file 'c:\file1.pdf' because it is being used by another process.
&lt;br&gt;&lt;br&gt;&lt;br&gt;--------------------------------------------------------------------------------
&lt;br&gt;Many Thanks &amp; Best Regards, HuaMin Chen&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Pdfwriter-tp26262193p26262193.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26214389</id>
	<title>Table issue</title>
	<published>2009-11-05T05:27:22Z</published>
	<updated>2009-11-05T05:27:22Z</updated>
	<author>
		<name>swati jain</name>
	</author>
	<content type="html">&lt;br&gt;&lt;br&gt;Hi Paulo,
&lt;br&gt;&lt;br&gt;I have to display some 50 tables on pdf (with itextsharp)
&lt;br&gt;for that i am using for loop.
&lt;br&gt;&lt;br&gt;but sometimes while displaying table . header comes on first page and remaining part comes on next &amp;nbsp;page
&lt;br&gt;&lt;br&gt;How i can avoid it &lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextSharp-mailing-list-is-closing-tp25541314p26214389.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26134028</id>
	<title>Re: About compact Edition</title>
	<published>2009-10-30T10:29:38Z</published>
	<updated>2009-10-30T10:29:38Z</updated>
	<author>
		<name>vovka</name>
	</author>
	<content type="html">Julian,
&lt;br&gt;&lt;br&gt;Please provide me with information on how to get source code with the patch.
&lt;br&gt;Any information on how to start working to port to compact framework.
&lt;br&gt;&lt;br&gt;Thank you very much!
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Julián Ocampo wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;Hello!
&lt;br&gt;Paulo. I'm working succesfully in the compact framerwork.
&lt;br&gt;&lt;br&gt;thank you very much!
&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/About-compact-Edition-tp20190843p26134028.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26078216</id>
	<title>Can't save PDF after filling in form fields with iTextSharp</title>
	<published>2009-10-27T06:59:03Z</published>
	<updated>2009-10-27T06:59:03Z</updated>
	<author>
		<name>Hogler</name>
	</author>
	<content type="html">Hi!
&lt;br&gt;&lt;br&gt;Working on a project using itextsharp and vb.net where I want to produce a partially filled out PDF with editable forms and the option to sign with a digital signature. 
&lt;br&gt;&lt;br&gt;I had it working just fine until last week when I started getting an error when trying to save the final document in Adobe Reader. The message says:
&lt;br&gt;&amp;quot;The document could not be saved. There was a problem reading this document (26). &amp;quot;
&lt;br&gt;&lt;br&gt;I have a template PDF with forms and extended features enabled which I want to make an editable copy of with some of the forms filled out with data from database. The idea is to be able to take the pre-filled document out on a laptop to be filled out completely and signed offline. 
&lt;br&gt;&lt;br&gt;The problem seems to occur as soon as I open the document with PdfStamper, set the value of a field and then close the document, using the code below. I even tried it with a blank PDF with just one field called &amp;quot;test&amp;quot; and still get the same error. &amp;nbsp;
&lt;br&gt;' --
&lt;br&gt;Dim reader As PdfReader = New PdfReader(sDocTemplate)
&lt;br&gt;Dim stamper As New PdfStamper(reader, New FileStream(sOutputFile, FileMode.Append))
&lt;br&gt;stamper.AcroFields.SetField(&amp;quot;test&amp;quot;, &amp;quot;hello&amp;quot;)
&lt;br&gt;stamper.Close()
&lt;br&gt;' --
&lt;br&gt;&lt;br&gt;When I open the produced PDF there is a small window saying something about the document being damaged and repaired, then it opens and everything seems fine. The forms contain the proper data and everything, but when trying to save it the mentioned error message is displayed. 
&lt;br&gt;&lt;br&gt;As I said, it was working fine right up until this error appeared out of the blue. I haven't updated any relevant software that I know of and I think I've eliminated all sources of error right down to itextsharp when testing with a blank pdf.
&lt;br&gt;&lt;br&gt;Any ideas of what could be wrong would be highly appreciated! 
&lt;br&gt;&lt;br&gt;/ Fredrik&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Can%27t-save-PDF-after-filling-in-form-fields-with-iTextSharp-tp26078216p26078216.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26032620</id>
	<title>Re: convert RTF into PDF in iTextSharp using .NET Windows</title>
	<published>2009-10-23T13:14:12Z</published>
	<updated>2009-10-23T13:14:12Z</updated>
	<author>
		<name>rickm81</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;Using iTextSharp for C# in Visual Studio 2008 .NET is it possible to read in formatted rich text data from an external source and export the formatted data on a page within a PDF Document?
&lt;br&gt;&lt;br&gt;If this is not possible are there any alternative methods to reading in rich text and exporting the data with the same formatting in a PDF Document (RTF=&amp;gt;XML=&amp;gt;PDF) ? Any additional information would be appreciated. Thanks!
&lt;br&gt;&lt;br&gt;Rick
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Howard Shank wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;It is not possible to do at this time with iText. The functionality is incomplete.
&lt;br&gt;&lt;br&gt;Howard Shank
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;________________________________
&lt;br&gt;From: B BABU &amp;lt;rajbabu_73@yahoo.co.in&amp;gt;
&lt;br&gt;To: itextsharp-questions@lists.sourceforge.net
&lt;br&gt;Sent: Thursday, July 30, 2009 3:44:47 AM
&lt;br&gt;Subject: [itextsharp-questions] convert RTF into PDF in iTextSharp using .NET Windows
&lt;br&gt;&lt;br&gt;&lt;br&gt;Hello, 
&lt;br&gt;&lt;br&gt;How to convert RTF into PDF in iTextSharp using .NET Windows Application with Open Source Code in VB.NET ? 
&lt;br&gt;&lt;br&gt;Regards
&lt;br&gt;Rajbabu
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;________________________________
&lt;br&gt;&amp;nbsp;Looking for local information? Find it on Yahoo! Local
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with 
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/convert-RTF-into-PDF-in-iTextSharp-using-.NET-Windows-tp24733711p26032620.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25947300</id>
	<title>Re: iTextSharp on 64-bit Windows Server 2003</title>
	<published>2009-10-18T07:54:01Z</published>
	<updated>2009-10-18T07:54:01Z</updated>
	<author>
		<name>Xarx</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;the library works on 64-bit, the problem was elsewhere. The information shown by CheckAsm or Dependency Walker was misleading.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Martin.
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextSharp-on-64-bit-Windows-Server-2003-tp25824443p25947300.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25932354</id>
	<title>Conditional Stamp</title>
	<published>2009-10-16T14:06:39Z</published>
	<updated>2009-10-19T07:37:53Z</updated>
	<author>
		<name>ndpace</name>
	</author>
	<content type="html">I am a newbie and currently have the code at the bottom that adds a watermark to teh PDF the user is viewing.
&lt;br&gt;I need to know who to make the code not show the watermark. &amp;nbsp;I dont know how to set newdoc without WATERMARKDOCUMENT.
&lt;br&gt;&lt;br&gt;Thanks in advance for any help.
&lt;br&gt;&amp;nbsp;--------------------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Dim pdfDoc As PdfDocument = New PdfDocument(filePath)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim newDoc As Byte() = pdfDoc.WatermarkDocument()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim pdfFileName As String = filePath.Substring(filePath.LastIndexOf(&amp;quot;\&amp;quot;) + 1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; SendPdfToUser(pdfFileName, newDoc)
&lt;br&gt;------------------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; Private Sub SendPdfToUser(ByVal filename As String, ByVal fileBytes As Byte())
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.Clear()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.ContentType = &amp;quot;application/pdf&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.AppendHeader(&amp;quot;content-disposition&amp;quot;, &amp;quot;attachment; filename=&amp;quot; + filename)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.BinaryWrite(fileBytes)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.Flush()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Context.Response.End()&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Conditional-Stamp-tp25932354p25932354.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25907262</id>
	<title>PDFA creation problems (Transfer Cuvre used)</title>
	<published>2009-10-15T04:57:30Z</published>
	<updated>2009-10-15T04:57:30Z</updated>
	<author>
		<name>rENEGADEsvn</name>
	</author>
	<content type="html">Hi all, 
&lt;br&gt;&lt;br&gt;I'm having problems creating PDFA-s (but only some of them).
&lt;br&gt;&lt;br&gt;I used the code from this link for creation.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://blog.rubypdf.com/2007/08/10/itext-and-itextsharp-support-pdfa-1-now/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blog.rubypdf.com/2007/08/10/itext-and-itextsharp-support-pdfa-1-now/&lt;/a&gt;&lt;br&gt;&lt;br&gt;And it works great for most of the time. But I am experiencing some difficulties for a slightly diffrent original PDF.
&lt;br&gt;&lt;br&gt;Adobe's (Professional 8 &amp; 9) preflight gives out the same message:
&lt;br&gt;&lt;br&gt;Transfer curve used:
&lt;br&gt;&lt;br&gt;Transfer curves are prohibited in PDF/X files. Use Acrobat Distiller 5's &amp;quot;Apply transfer curves&amp;quot; to avoid transfer curves in PDF files without compromising page contents.
&lt;br&gt;&lt;br&gt;Creating the pdfa using Adobe works ok since it automatically applies the transfer curves.
&lt;br&gt;&lt;br&gt;So here is my main question: Can iTextSharp be used to apply the transfer curves.
&lt;br&gt;&lt;br&gt;I would like to thank you for any reply
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/PDFA-creation-problems-%28Transfer-Cuvre-used%29-tp25907262p25907262.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25824443</id>
	<title>iTextSharp on 64-bit Windows Server 2003</title>
	<published>2009-10-09T09:50:02Z</published>
	<updated>2009-10-09T09:50:02Z</updated>
	<author>
		<name>Xarx</name>
	</author>
	<content type="html">Hello.
&lt;br&gt;&lt;br&gt;I'm unable to get itextsharp.dll working on an x64 Windows Server 2003. The same binary works fine on any of our 32-bit systems.
&lt;br&gt;&lt;br&gt;Details:
&lt;br&gt;Though the itextsharp.dll library seems to be a good assembly on 32-bit systems, on a 64-bit system it seems corrupted. I've tried to check its consistency with at least two tools,
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://checkasm.booring.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://checkasm.booring.net/&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://www.assemblyinspector.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.assemblyinspector.com/&lt;/a&gt;&lt;br&gt;&lt;br&gt;and both report the assembly has an incorrect format. I've tried building itextsharp.dll with VS2008 with all 3 possible target platforms (Any, x64, x86; all for .NET 2.0), but the result is still the same. I also downloaded the itextsharp.dll binary from sourceforge.net with the same result.
&lt;br&gt;&lt;br&gt;.NET 2.0 (and now even .NET 3.5) framework is installed on the machine. All dependencies of itextsharp.dll seem to be satisfied, none is missing. It seems to me that the library is wrongly built, but I've been unable to fix it.
&lt;br&gt;&lt;br&gt;Can anyone help me?
&lt;br&gt;&lt;br&gt;Thank you,
&lt;br&gt;Martin.
&lt;br&gt;&lt;br&gt;P.S. My original problem was that we have a C++/CLR COM library dependent on the itextsharp.dll. But regasm.exe refuses to register it on the 64-bit platform. The error message is:
&lt;br&gt;&lt;br&gt;RegAsm : error RA0000 : Could not load file or assembly 'PdfServiceLib, Version=1.0.3568.31893, Culture=neutral, PublicKeyToken=null' or one of its dependencies. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem. (Exception from HRESULT: 0x800736B1)
&lt;br&gt;&lt;br&gt;I suspect itextsharp.dll to be the main reason.
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextSharp-on-64-bit-Windows-Server-2003-tp25824443p25824443.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25822166</id>
	<title>smartcard and ocsp</title>
	<published>2009-10-09T07:30:17Z</published>
	<updated>2009-10-13T13:22:17Z</updated>
	<author>
		<name>dziedrius</name>
	</author>
	<content type="html">Hi, 
&lt;br&gt;i need to sign pdf with timestamp and ocsp, but as long as i add second digest in this line:
&lt;br&gt;&lt;br&gt;pdfPkcs7.GetEncodedPKCS7(sha.Hash, cal, tsc, ocsp);
&lt;br&gt;&lt;br&gt;, acrobat reader says &amp;quot;document altered&amp;quot;. If the line is like this:
&lt;br&gt;&lt;br&gt;pdfPkcs7.GetEncodedPKCS7(null, cal, tsc, ocsp);
&lt;br&gt;&lt;br&gt;acrobat reader is happy, but naturaly ocsp isn't added.
&lt;br&gt;may be someone notices something wrong in my code?
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; public X509Certificate2 GetCertificate()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var st = new X509Store(parameters.CertificateStore, parameters.CertificateLocation);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.Open(OpenFlags.ReadOnly);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var col = st.Certificates;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; X509Certificate2 card = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var sel = X509Certificate2UI.SelectFromCollection(col, parameters.ChooseCertificateTitle, parameters.ChooseCertificateMessage, X509SelectionFlag.SingleSelection);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (sel.Count &amp;gt; 0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var en = sel.GetEnumerator();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; en.MoveNext();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; card = en.Current;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.Close();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return card;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; static public byte[] SignMessage(Byte[] msg, X509Certificate2 signerCert, bool detached)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var contentInfo = new ContentInfo(msg);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var signedCms = new SignedCms(contentInfo, detached);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var cmsSigner = new CmsSigner(signerCert)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; IncludeOption = X509IncludeOption.EndCertOnly
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; };
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signedCms.ComputeSignature(cmsSigner, false);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return signedCms.Encode();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; public void SignDetached(string inputFileName, string outputFileName)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var certificate = GetCertificate();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var chain = GetChain(certificate);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pdfReader = new PdfReader(inputFileName);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pdfStamper = PdfStamper.CreateSignature(pdfReader, new FileStream(outputFileName, FileMode.Create), '\0');
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var signatureAppearance = pdfStamper.SignatureAppearance;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pageSize = pdfReader.GetPageSizeWithRotation(1);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.SetVisibleSignature(new Rectangle(pageSize.Width - 200, pageSize.Height - 20, pageSize.Width, pageSize.Height), 1, null);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.SignDate = DateTime.Now;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.SetCrypto(null, chain, null, null);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.Reason = parameters.SignReason;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.Location = parameters.SignLocation;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.Acro6Layers = true;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.Render = PdfSignatureAppearance.SignatureRender.NameAndDescription;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var dic = new PdfSignature(PdfName.ADOBE_PPKLITE, PdfName.ADBE_PKCS7_DETACHED)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Date = new PdfDate(signatureAppearance.SignDate),
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Name = PdfPKCS7.GetSubjectFields(chain[0]).GetField(&amp;quot;CN&amp;quot;)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; };
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (signatureAppearance.Reason != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Reason = signatureAppearance.Reason;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (signatureAppearance.Location != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Location = signatureAppearance.Location;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.CryptoDictionary = dic;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; const int csize = 15000;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var exc = new Hashtable();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; exc[PdfName.CONTENTS] = csize * 2 + 2;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.PreClose(exc);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var sha = new SHA1CryptoServiceProvider();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var s = signatureAppearance.RangeStream;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var memoryStream = new MemoryStream();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int read;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var buffer = new byte[8192];
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while ((read = s.Read(buffer, 0, 8192)) &amp;gt; 0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; memoryStream.Write(buffer, 0, read);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sha.ComputeHash(memoryStream.ToArray());
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pk2 = SignMessage(memoryStream.ToArray(), certificate, true);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pdfPkcs7forDigests = new PdfPKCS7(pk2);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var digest = pdfPkcs7forDigests.Digest;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var rsaData = pdfPkcs7forDigests.RsaData;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var pdfPkcs7 = new PdfPKCS7(null, chain, null, &amp;quot;SHA1&amp;quot;, true);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pdfPkcs7.SetExternalDigest(digest, rsaData, &amp;quot;RSA&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var tsc = new TSAClientBouncyCastle(parameters.TimeStampServerUrl, null, null);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var cal = DateTime.Now;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] ocsp = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (chain.Length &amp;gt;= 2)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var url = PdfPKCS7.GetOCSPURL(chain[0]);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!string.IsNullOrEmpty(url))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ocsp = new OcspClientBouncyCastle(chain[0], chain[1], url).GetEncoded();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var sh = pdfPkcs7.GetAuthenticatedAttributeBytes(sha.Hash, cal, null);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pdfPkcs7.Update(sh, 0, sh.Length);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var encodedSig = pdfPkcs7.GetEncodedPKCS7(sha.Hash, cal, tsc, ocsp);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (csize + 2 &amp;lt; encodedSig.Length)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw new Exception(&amp;quot;Not enough space&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var outc = new byte[csize];
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var dic2 = new PdfDictionary();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Array.Copy(encodedSig, 0, outc, 0, encodedSig.Length);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic2.Put(PdfName.CONTENTS, new PdfString(outc).SetHexWriting(true));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; signatureAppearance.Close(dic2);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; private static X509Certificate[] GetChain(X509Certificate2 certificate2)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var chain = new X509Chain();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; chain.Build(certificate2);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var orgChain = new List&amp;lt;X509Certificate&amp;gt;();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; foreach (var cert in chain.ChainElements)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; orgChain.Add(GetBouncyCastleCertificate(cert.Certificate));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return orgChain.ToArray();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; private static X509Certificate GetBouncyCastleCertificate(X509Certificate2 certificate)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var certificateMemoryStream = new MemoryStream(certificate.RawData);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return new X509Certificate(
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; X509CertificateStructure.GetInstance(new Asn1InputStream(certificateMemoryStream).ReadObject()));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/smartcard-and-ocsp-tp25822166p25822166.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25818318</id>
	<title>paragraph in columntext showing extra space before first line</title>
	<published>2009-10-09T02:42:43Z</published>
	<updated>2009-10-09T02:42:43Z</updated>
	<author>
		<name>rajeshkatkam</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;I am converting HTML of label into PDF with HTMLWorker. When i added a paragraph to columntext the space before first line is more than the space exist in label. ColumnText height and width is same as Label dimensions.
&lt;br&gt;&lt;br&gt;Which is causing the extra space, is it paragraph or ColumnText ?
&lt;br&gt;How to remove the space from it?
&lt;br&gt;&lt;br&gt;Thanks in advance.
&lt;br&gt;Rajesh Katkam
&lt;br&gt;&amp;nbsp;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/paragraph-in-columntext-showing-extra-space-before-first-line-tp25818318p25818318.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25799033</id>
	<title>Cell width for table</title>
	<published>2009-10-07T23:25:22Z</published>
	<updated>2009-10-07T23:25:22Z</updated>
	<author>
		<name>HB Shah</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I have changed iTextSharp Source to use some style tag. Now I have table with two rows.
&lt;br&gt;1st row contains two cols with colspan=2 in second col(1st-30,2nd-70).
&lt;br&gt;2nd row contains three cols with 1st having same width as in 1st row,(cols-1st-30, 2nd-20, 3rd-50)
&lt;br&gt;&lt;br&gt;Is there way to get result like this in pdf? 
&lt;br&gt;&lt;br&gt;I have seen forum &lt;a href=&quot;http://www.nabble.com/HTMLWorker---Table-formatting-td6994137.html#a7016815&quot; target=&quot;_top&quot;&gt;HTMLWorker---Table-formatting&lt;/a&gt;&amp;nbsp;that has same issue, but not able to get answer.
&lt;br&gt;&lt;br&gt;Please help me out
&lt;br&gt;&lt;br&gt;Thanks &amp; Regards,
&lt;br&gt;HB SHah&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Cell-width-for-table-tp25799033p25799033.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25798753</id>
	<title>Re: Font problem</title>
	<published>2009-10-07T22:54:05Z</published>
	<updated>2009-10-07T22:54:05Z</updated>
	<author>
		<name>raj231362</name>
	</author>
	<content type="html">&lt;br&gt;use BaseFont.NOT_EMBEDDED
&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Suheb Ahmad wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;Dear all,
&lt;br&gt;&lt;br&gt;I am trying to create a pdf file from an image and setting a hidden text behind the image at defined location.
&lt;br&gt;All things are working well but the font does not appears good. 
&lt;br&gt;&lt;br&gt;i am using following code:-
&lt;br&gt;&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts&amp;quot;);
&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts\Arial.ttf&amp;quot;);
&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts\Times New Roman.ttf&amp;quot;);
&lt;br&gt;&lt;br&gt;chunk = new Chunk(&amp;quot;New Zealand Trained Nurses' Association&amp;quot;, FontFactory.GetFont(&amp;quot;Times New Roman&amp;quot;, &amp;quot;Cp1252&amp;quot;, BaseFont.EMBEDDED, 20, 0, iTextSharp.text.Color.RED));
&lt;br&gt;chunk.SetTextRenderMode(PdfContentByte.TEXT_RENDER_MODE_FILL, 0, iTextSharp.text.Color.MAGENTA);
&lt;br&gt;rect = new iTextSharp.text.Rectangle(184, 1063, 376, 1063);
&lt;br&gt;ct.SetSimpleColumn(rect.Left, rect.Bottom, rect.Right, rect.Top, 0, 0);
&lt;br&gt;ct.AddText(chunk);
&lt;br&gt;ct.Go();
&lt;br&gt;&lt;br&gt;&lt;br&gt;The font i passed in chunk '&lt;b&gt;Times New Roman&lt;/b&gt;' &amp;nbsp;but when i copy the text from the pdf file and paste it in Microsoft Word it shows the font '&lt;b&gt;TimesNewRomanPSMT&lt;/b&gt;' while the font size and color are same as i passed in chunk.
&lt;br&gt;&lt;br&gt;Can some one tell me where i made mistake. &amp;nbsp;
&lt;br&gt;&lt;br&gt;Thanks in Advance
&lt;br&gt;&lt;br&gt;Suheb Ahmad
&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Font-problem-tp25781136p25798753.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25797207</id>
	<title>Duplicate a PDF Page</title>
	<published>2009-10-07T18:37:56Z</published>
	<updated>2009-10-07T18:37:56Z</updated>
	<author>
		<name>jsun</name>
	</author>
	<content type="html">I have a one-page PDF form with space for three dependents. &amp;nbsp;My client wants to be able to duplicate a page for each additional three dependent. &amp;nbsp;So I need to append the the first page to the end of the PDF file as many times as needed.
&lt;br&gt;&lt;br&gt;Please help with some code.
&lt;br&gt;&lt;br&gt;Thank you very much &lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Duplicate-a-PDF-Page-tp25797207p25797207.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25781136</id>
	<title>Font problem</title>
	<published>2009-10-06T23:22:49Z</published>
	<updated>2009-10-06T23:22:49Z</updated>
	<author>
		<name>Suheb Ahmad</name>
	</author>
	<content type="html">Dear all,
&lt;br&gt;&lt;br&gt;I am trying to create a pdf file from an image and setting a hidden text behind the image at defined location.
&lt;br&gt;All things are working well but the font does not appears good. 
&lt;br&gt;&lt;br&gt;i am using following code:-
&lt;br&gt;&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts&amp;quot;);
&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts\Arial.ttf&amp;quot;);
&lt;br&gt;FontFactory.RegisterDirectory(@&amp;quot;C:\WINDOWS\fonts\Times New Roman.ttf&amp;quot;);
&lt;br&gt;&lt;br&gt;chunk = new Chunk(&amp;quot;New Zealand Trained Nurses' Association&amp;quot;, FontFactory.GetFont(&amp;quot;Times New Roman&amp;quot;, &amp;quot;Cp1252&amp;quot;, BaseFont.EMBEDDED, 20, 0, iTextSharp.text.Color.RED));
&lt;br&gt;chunk.SetTextRenderMode(PdfContentByte.TEXT_RENDER_MODE_FILL, 0, iTextSharp.text.Color.MAGENTA);
&lt;br&gt;rect = new iTextSharp.text.Rectangle(184, 1063, 376, 1063);
&lt;br&gt;ct.SetSimpleColumn(rect.Left, rect.Bottom, rect.Right, rect.Top, 0, 0);
&lt;br&gt;ct.AddText(chunk);
&lt;br&gt;ct.Go();
&lt;br&gt;&lt;br&gt;&lt;br&gt;The font i passed in chunk '&lt;b&gt;Times New Roman&lt;/b&gt;' &amp;nbsp;but when i copy the text from the pdf file and paste it in Microsoft Word it shows the font '&lt;b&gt;TimesNewRomanPSMT&lt;/b&gt;' while the font size and color are same as i passed in chunk.
&lt;br&gt;&lt;br&gt;Can some one tell me where i made mistake. &amp;nbsp;
&lt;br&gt;&lt;br&gt;Thanks in Advance
&lt;br&gt;&lt;br&gt;Suheb Ahmad&lt;div class=&quot;signature&quot;&gt;Suheb Ahmad
&lt;br&gt;-------------
&lt;br&gt;New Delhi&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Font-problem-tp25781136p25781136.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25780807</id>
	<title>Adding timestamp with smartcard/etoken certificate</title>
	<published>2009-10-06T22:35:14Z</published>
	<updated>2009-10-06T22:35:14Z</updated>
	<author>
		<name>dziedrius</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;there's sample how to add timestamp using certificate in file:
&lt;br&gt;&lt;a href=&quot;http://itextpdf.sourceforge.net/howtosign.html#signtsocspcs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://itextpdf.sourceforge.net/howtosign.html#signtsocspcs&lt;/a&gt;&lt;br&gt;&lt;br&gt;but i can't find sample, how to add timestamp using etoken (smartcard should be pretty much the same).
&lt;br&gt;&lt;br&gt;the part, that i don't know how to change is:
&lt;br&gt;&lt;br&gt;Pkcs12Store ks = new Pkcs12Store(fs, CERT_PASSW.ToCharArray());
&lt;br&gt;ICipherParameters pk = ks.GetKey(alias).Key;
&lt;br&gt;&lt;br&gt;because in Pkcs12Store constructor they are using parameter to certificate file stream, i have my certificate as X509Certificate2 object.
&lt;br&gt;&lt;br&gt;If anyone done this and could help, i would be very thankfull.
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Adding-timestamp-with-smartcard-etoken-certificate-tp25780807p25780807.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25767046</id>
	<title>Replacing '≥' with space.</title>
	<published>2009-10-06T04:31:03Z</published>
	<updated>2009-10-06T04:31:03Z</updated>
	<author>
		<name>sutch</name>
	</author>
	<content type="html">Whenever I try to write &amp;quot;event ≥ 1 12&amp;quot; string to the pdf it is actually writting &amp;nbsp;&amp;quot;event 1 12&amp;quot;.
&lt;br&gt;I have debugged the library but couldn't find any thing. I am using Arial.ttf to write my pdf file.
&lt;br&gt;&lt;br&gt;Please help me for this as i have wasted too much time on this.
&lt;br&gt;&lt;br&gt;Thanks in advance.
&lt;br&gt;sutch&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Replacing-%27%E2%89%A5%27-with-space.-tp25767046p25767046.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25752347</id>
	<title>Creating PDF Digital signature without Bouncy Castle</title>
	<published>2009-10-05T07:56:24Z</published>
	<updated>2009-10-05T07:56:24Z</updated>
	<author>
		<name>Tamas</name>
	</author>
	<content type="html">Dear IText Experts, 
&lt;br&gt;&lt;br&gt;I would like to put a digital signature to an existing PDF document. In all of the IText documentation I found a desctiprion about how to sign a PDF and all of the ways use Bouncy Castle classes to encrypt the document hash. 
&lt;br&gt;&lt;br&gt;eg: 
&lt;br&gt;&lt;br&gt;PdfStamper st = PdfStamper.CreateSignature(reader, new FileStream(this.outputPDF, FileMode.Create, FileAccess.Write), '\0', null, true); 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.MoreInfo = this.metadata.getMetaData(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.XmpMetadata = this.metadata.getStreamedMetaData(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfSignatureAppearance sap = st.SignatureAppearance; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.SetCrypto(this.myCert.Akp, this.myCert.Chain, null, PdfSignatureAppearance.WINCER_SIGNED); 
&lt;br&gt;... 
&lt;br&gt;st.Close(); 
&lt;br&gt;&lt;br&gt;&amp;nbsp;I have already had an encrypted signed hash (created from the pdf document content and a MyCert.pfx) and I'd like to insert, append (I dont know where to) this existing signature to the existing PDF. 
&lt;br&gt;&lt;br&gt;Does anybody know what should I use? 
&lt;br&gt;&lt;br&gt;Any help would be appreciated. 
&lt;br&gt;&lt;br&gt;Tamas
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Creating-PDF-Digital-signature-without-Bouncy-Castle-tp25752347p25752347.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25752287</id>
	<title>What Part of the PDF document is signed by PdfStamper</title>
	<published>2009-10-05T07:53:11Z</published>
	<updated>2009-10-05T07:53:11Z</updated>
	<author>
		<name>Tamas</name>
	</author>
	<content type="html">Dear IText Experts, 
&lt;br&gt;&lt;br&gt;What part of the pdf document is signned when I use the PdfStamper.CreateSignature and the PdfSignatureAppearance.SetCrypto method? 
&lt;br&gt;&lt;br&gt;My code is the folowing: 
&lt;br&gt;PdfStamper st = PdfStamper.CreateSignature(reader, new FileStream(this.outputPDF, FileMode.Create, FileAccess.Write), '\0', null, true); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.MoreInfo = this.metadata.getMetaData(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.XmpMetadata = this.metadata.getStreamedMetaData(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfSignatureAppearance sap = st.SignatureAppearance; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.SetCrypto(this.myCert.Akp, this.myCert.Chain, null, PdfSignatureAppearance.WINCER_SIGNED); 
&lt;br&gt;... &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; st.Close(); 
&lt;br&gt;&lt;br&gt;After I signed an existing pdf document I modified some of the bytes randomly and several times the adobe reader 9 informed me about that all of the signatures are valid. How did it happend? I looked over the pdf 1.4 documentation and I found that the whole pdf and only a part of the pdf can be signed as well. When I use the PdfStamper.CreateSignature which part of the pdf doc will be signed? 
&lt;br&gt;&lt;br&gt;Thanks 
&lt;br&gt;&lt;br&gt;Tamas &lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/What-Part-of-the-PDF-document-is-signed-by-PdfStamper-tp25752287p25752287.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25746644</id>
	<title>get ICipherParameters from X509Certificate2</title>
	<published>2009-10-05T01:05:01Z</published>
	<updated>2009-10-05T01:05:01Z</updated>
	<author>
		<name>pmalis</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;I would like to sign pdf with timestamp using windows certificate from certificate store (x509certificate2). 
&lt;br&gt;When I sign with pfx certificate I use this code and it works fine:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; private static void SignWithTimeStamp()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string IN_FILE = &amp;quot;doc.pdf&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string OUT_FILE = &amp;quot;hello_signed_cs.pdf&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string CERT_PATH = &amp;quot;cert.pfx&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string CERT_PASSW= &amp;quot;password&amp;quot;;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FileStream fs = new FileStream(CERT_PATH, FileMode.Open);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Pkcs12Store ks = new Pkcs12Store(fs, CERT_PASSW.ToCharArray());
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string alias = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; foreach (string al in ks.Aliases)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (ks.IsKeyEntry(al) &amp;&amp; ks.GetKey(al).Key.IsPrivate)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; alias = al;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fs.Close();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ICipherParameters pk = ks.GetKey(alias).Key;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; X509CertificateEntry[] x = ks.GetCertificateChain(alias);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; X509Certificate[] chain = new X509Certificate[x.Length];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for (int k = 0; k &amp;lt; x.Length; ++k)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; chain[k] = x[k].Certificate;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ITSAClient tsc = new TSAClientBouncyCastle(TSA_URL, TSA_ACCNT, TSA_PASSW);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfReader reader = new PdfReader(IN_FILE);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FileStream fout = new FileStream(OUT_FILE, FileMode.Create);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfStamper stp = PdfStamper.CreateSignature(reader, fout, '\0');
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfSignatureAppearance sap = stp.SignatureAppearance;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.SetCrypto(null, chain, null, PdfSignatureAppearance.SELF_SIGNED);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.SetVisibleSignature(new Rectangle(100, 100, 300, 200), 1, &amp;quot;Signature&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfSignature dic = new PdfSignature(PdfName.ADOBE_PPKLITE,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new PdfName(&amp;quot;adbe.pkcs7.detached&amp;quot;));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Reason = sap.Reason;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Location = sap.Location;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Contact = sap.Contact;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic.Date = new PdfDate(sap.SignDate);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.CryptoDictionary = dic;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int contentEstimated = 15000;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // Preallocate excluded byte-range for the signature content (hex encoded)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Hashtable exc = new Hashtable();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; exc[PdfName.CONTENTS] = contentEstimated * 2 + 2;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.PreClose(exc);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfPKCS7 sgn = new PdfPKCS7(pk, chain, null, &amp;quot;SHA1&amp;quot;, false);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; IDigest messageDigest = DigestUtilities.GetDigest(&amp;quot;SHA1&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Stream data = sap.RangeStream;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] buf = new byte[8192];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int n;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while ((n = data.Read(buf, 0, buf.Length)) &amp;gt; 0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; messageDigest.BlockUpdate(buf, 0, n);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] hash = new byte[messageDigest.GetDigestSize()];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; messageDigest.DoFinal(hash, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DateTime cal = DateTime.Now;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] ocsp = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (chain.Length &amp;gt;= 2)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; String url = PdfPKCS7.GetOCSPURL(chain[0]);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (url != null &amp;&amp; url.Length &amp;gt; 0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ocsp = new OcspClientBouncyCastle(chain[0], chain[1], url).GetEncoded();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] sh = sgn.GetAuthenticatedAttributeBytes(hash, cal, ocsp);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sgn.Update(sh, 0, sh.Length);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //HERE get timestamp
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] encodedSig = sgn.GetEncodedPKCS7(hash, cal, tsc, ocsp);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (contentEstimated + 2 &amp;lt; encodedSig.Length)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw new Exception(&amp;quot;Not enough space&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; byte[] paddedSig = new byte[contentEstimated];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Array.Copy(encodedSig, 0, paddedSig, 0, encodedSig.Length);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfDictionary dic2 = new PdfDictionary();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dic2.Put(PdfName.CONTENTS, new PdfString(paddedSig).SetHexWriting(true));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sap.Close(dic2);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;This code work fine. But when I use X509Certificate2 from certificate store I can't convert its private key to ICipherParameters. 
&lt;br&gt;&lt;br&gt;Is it possible? Can I use X509Certificate2 for signing with timestamp?
&lt;br&gt;&lt;br&gt;I get certificate and certificate chain with:
&lt;br&gt;&lt;br&gt;//get certificate from certificate store, this certificate has exportable private key
&lt;br&gt;X509Certificate2 certificate = GetCertificate(); 
&lt;br&gt;X509CertificateParser cp = new X509CertificateParser();
&lt;br&gt;X509Certificate[] chain = new[] { cp.ReadCertificate(certificate.RawData) };
&lt;br&gt;&lt;br&gt;Thank you for info.&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/get-ICipherParameters-from-X509Certificate2-tp25746644p25746644.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25745321</id>
	<title>iTextShartop - How to align text and 2 images in the header</title>
	<published>2009-10-04T22:25:54Z</published>
	<updated>2009-10-05T21:43:42Z</updated>
	<author>
		<name>VermaniB</name>
	</author>
	<content type="html">Hi, 
&lt;br&gt;&amp;nbsp; &amp;nbsp;I have a question: 
&lt;br&gt;I have 2 put 2 images and a text in the header. The images are supposed to be in extreme heft and extreme right, text in the centre of the header. 
&lt;br&gt;&lt;br&gt;When i write the below code, though the images come on extreme corners , but thetext does not come in the centre. 
&lt;br&gt;Please let me know as to how can I get the required. 
&lt;br&gt;&lt;br&gt;private void AddHeader1() 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; { 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string path = &amp;quot;C:Abc.png&amp;quot;; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Image image = Image.GetInstance(path); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image.SetAbsolutePosition(Document.Left, Document.Top); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image.ScaleAbsolute(50, 40); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image.Alignment = Image.ALIGN_LEFT; 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Image image1 = Image.GetInstance(path); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image1.SetAbsolutePosition(Document.Left, Document.Top); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image1.ScaleAbsolute(50, 40); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image1.Alignment = Image.ALIGN_RIGHT; 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Phrase headerPhrase = new Phrase(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Phrase p2 = new Phrase(); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Phrase p1; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; p1 = new Phrase(&amp;quot; abc&amp;quot;) 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; { 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Environment.NewLine, 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;quot; pqr&amp;quot; , 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Environment.NewLine, 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;quot; mno&amp;quot;, 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Environment.NewLine, 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }; 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Paragraph paragraph = new Paragraph(p1); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; paragraph.Alignment = Element.ALIGN_CENTER; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; p2.Add(paragraph); 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Chunk ck1 = new Chunk(image1, 8, -27); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; headerPhrase.Add(ck1); 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Chunk ck = new Chunk(image, 482, 5); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; p2.Add(ck); 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; HeaderFooter header = new HeaderFooter(headerPhrase, p2); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; header.BorderColor = new iTextSharp.text.Color(209, 191, 145); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Document.Header = header; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } 
&lt;br&gt;&lt;br&gt;&lt;br&gt;I have tried using tables also, but then the look and fefel gets very distorted. Also the table that gets added is not in th eheader area but just below the header.
&lt;br&gt;&lt;br&gt;Can somebody help?
&lt;br&gt;&lt;br&gt;Thanks in advance 
&lt;br&gt;BV &lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextShartop---How-to-align-text-and-2-images-in-the-header-tp25745321p25745321.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25727333</id>
	<title>Font problem....</title>
	<published>2009-10-03T03:06:38Z</published>
	<updated>2009-10-03T03:06:38Z</updated>
	<author>
		<name>raj231362</name>
	</author>
	<content type="html">hi all,
&lt;br&gt;&lt;br&gt;&lt;br&gt;i &amp;nbsp;have created a pdf from an image . i placed some text at particular position with font &amp;quot;times new roman&amp;quot; it appears &amp;nbsp;look like &amp;quot;times new roman&amp;quot; but when i copy the text to ms - word , the appearance change and &amp;nbsp;its shows font &amp;quot;TimesNewRomanPSMT&amp;quot;.
&lt;br&gt;&lt;br&gt;i am using following code:-
&lt;br&gt;&lt;br&gt;&amp;nbsp;chunk = new Chunk(&amp;quot;New Zealand Trained Nurses' Association&amp;quot;, FontFactory.GetFont(&amp;quot;times new roman&amp;quot;, &amp;quot;Cp1252&amp;quot;, true, 20, 0, iTextSharp.text.Color.RED));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; chunk.SetTextRenderMode(PdfContentByte.TEXT_RENDER_MODE_FILL, 0, iTextSharp.text.Color.MAGENTA);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rect = new iTextSharp.text.Rectangle(x, dH - (y + h), x + w, dH - y - h);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.SetSimpleColumn(rect.Left, rect.Bottom, rect.Right, rect.Top, 0, GetAllignment(align));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.AddText(chunk);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.Go();
&lt;br&gt;&lt;br&gt;i am allready registered font..
&lt;br&gt;so whats the actual problem...please help me???
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/file/p25727333/untitled1.GIF&quot; target=&quot;_top&quot;&gt;untitled1.GIF&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Regards
&lt;br&gt;&lt;br&gt;Raj
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Font-problem....-tp25727333p25727333.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25640742</id>
	<title>Export ASP.net Chart to PDF</title>
	<published>2009-09-27T22:17:51Z</published>
	<updated>2009-09-27T22:17:51Z</updated>
	<author>
		<name>Arnyma</name>
	</author>
	<content type="html">Hi There,
&lt;br&gt;&lt;br&gt;I am using ASP.net, C#, SQL Server 2005 for a web project. I have couple of buttons to export the gridview to different formats like .doc, .xls, .pdf (using iTextSharp).
&lt;br&gt;&lt;br&gt;In some pages I have asp.net Chart Controls, getting the data directly from sql server, I need to export some of these charts to Word,Excel and PDF. any suggestions?
&lt;br&gt;&lt;br&gt;By the way I can print these Charts by using javascript.
&lt;br&gt;&lt;br&gt;Thanks in advance
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Export-ASP.net-Chart-to-PDF-tp25640742p25640742.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25615236</id>
	<title>Re: Problems with Digital Signature and Adobe	Update</title>
	<published>2009-09-25T09:39:40Z</published>
	<updated>2009-09-25T09:39:40Z</updated>
	<author>
		<name>jimLo</name>
	</author>
	<content type="html">In the latest version of iTextSharp (4.1.6) the PdfPKCS7 class is substantially rewritten and things work without having to make any changes.
&lt;br&gt;&lt;br&gt;Jim
&lt;br&gt;&lt;br&gt;&lt;quote author=&quot;webpointz&quot;&gt;&lt;br&gt;I am getting the same problem although slightly different...
&lt;br&gt;&lt;br&gt;2.16.840.1.101.3.4.2.1 MessageDigest not available &amp;nbsp;
&lt;br&gt;&amp;nbsp; 
&lt;br&gt;The error occurred in C:\ColdFusionCentaur\wwwroot\readpdf.cfm: line 70
&lt;br&gt;&amp;nbsp;
&lt;br&gt;68 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // End revision extraction &amp;nbsp;
&lt;br&gt;69 : &amp;nbsp; 
&lt;br&gt;70 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pk = acroFields.verifySignature(name); &amp;nbsp;
&lt;br&gt;71 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; calendar = pk.getSignDate(); &amp;nbsp;
&lt;br&gt;72 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; certificateArray = pk.getCertificates(); &amp;nbsp;
&lt;br&gt;&lt;br&gt;I should add that i am using ColdFusion and iText 2.1.7
&lt;br&gt;&lt;br&gt;Where in the source of iText do you add the modification?
&lt;br&gt;&lt;br&gt;Mike
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;quote author=&quot;jimLo&quot;&gt;&lt;br&gt;To get things working properly the added code should be:-
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1withRSA&amp;quot;)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA256withRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;; 
&lt;br&gt;&lt;br&gt;Since OID 2.16.840.1.101.3.4.2.1 corresponds to SHA-256 this seems appropriate.
&lt;br&gt;With this change PdfPKCS7.Verify() seems to return a sensible value. 
&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;jimLo wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;To get the change to work I had to use:-
&lt;br&gt;&lt;br&gt;if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1withRSA&amp;quot;) 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA1WITHRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;; 
&lt;br&gt;&lt;br&gt;That makes AcroFields.VerifySignature return a PdfPKCS7 object without error. &amp;nbsp;However when I then do a PdfPKCS7.Verify() I get a False return even when the PDF has not been modified. &amp;nbsp; Note this does not happen with other certificate types (which work without the fix above). &amp;nbsp; So it looks to me that there are even more things wrong.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Tony Carreon wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;actually i downloaded the newest available version and it still did &amp;nbsp;
&lt;br&gt;not work. i downloaded the source and compiled from that and it did &amp;nbsp;
&lt;br&gt;not work. the only way i could get it to work was modify the source to &amp;nbsp;
&lt;br&gt;include the line:
&lt;br&gt;&lt;br&gt;if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1WITHRSA&amp;quot;)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA1WITHRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;;
&lt;br&gt;&lt;br&gt;&lt;br&gt;to the GetSigner method in SignerUtilities.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;tony
&lt;br&gt;&lt;br&gt;On Mar 24, 2009, at 6:54 AM, Paulo Soares wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Looks like you are using an old iTextSharp version that doesn't &amp;nbsp;
&lt;br&gt;&amp;gt; recognize that particular hash.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Paulo
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -----Original Message-----
&lt;br&gt;&amp;gt;&amp;gt; From: Tony Carreon [mailto:tcarreon@nmsimaging.com]
&lt;br&gt;&amp;gt;&amp;gt; Sent: Tuesday, March 17, 2009 8:06 PM
&lt;br&gt;&amp;gt;&amp;gt; To: itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&amp;gt;&amp;gt; Subject: [itextsharp-questions] Problems with Digital
&lt;br&gt;&amp;gt;&amp;gt; Signature and Adobe Update
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; today users have started noticing an error when opening digital
&lt;br&gt;&amp;gt;&amp;gt; signatures with itextsharp / bouncycastle.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; apparently adobe is pushing out an update for a critical bug fix.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; has anyone else noticed this problem?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; the error message is : Signer 2.16.840.1.101.3.4.2.1WITHRSA not
&lt;br&gt;&amp;gt;&amp;gt; recognised.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Aviso Legal:
&lt;br&gt;&amp;gt; Esta mensagem é destinada exclusivamente ao destinatário. Pode &amp;nbsp;
&lt;br&gt;&amp;gt; conter informação confidencial ou legalmente protegida. A incorrecta &amp;nbsp;
&lt;br&gt;&amp;gt; transmissão desta mensagem não significa a perca de &amp;nbsp;
&lt;br&gt;&amp;gt; confidencialidade. Se esta mensagem for recebida por engano, por &amp;nbsp;
&lt;br&gt;&amp;gt; favor envie-a de volta para o remetente e apague-a do seu sistema de &amp;nbsp;
&lt;br&gt;&amp;gt; imediato. É proibido a qualquer pessoa que não o destinatário de &amp;nbsp;
&lt;br&gt;&amp;gt; usar, revelar ou distribuir qualquer parte desta mensagem.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Disclaimer:
&lt;br&gt;&amp;gt; This message is destined exclusively to the intended receiver. It &amp;nbsp;
&lt;br&gt;&amp;gt; may contain confidential or legally protected information. The &amp;nbsp;
&lt;br&gt;&amp;gt; incorrect transmission of this message does not mean the loss of its &amp;nbsp;
&lt;br&gt;&amp;gt; confidentiality. If this message is received by mistake, please send &amp;nbsp;
&lt;br&gt;&amp;gt; it back to the sender and delete it from your system immediately. It &amp;nbsp;
&lt;br&gt;&amp;gt; is forbidden to any person who is not the intended receiver to use, &amp;nbsp;
&lt;br&gt;&amp;gt; distribute or copy any part of this message.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ------------------------------------------------------------------------------
&lt;br&gt;&amp;gt; Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) &amp;nbsp;
&lt;br&gt;&amp;gt; are
&lt;br&gt;&amp;gt; powering Web 2.0 with engaging, cross-platform capabilities. Quickly &amp;nbsp;
&lt;br&gt;&amp;gt; and
&lt;br&gt;&amp;gt; easily build your RIAs with Flex Builder, the Eclipse(TM)based &amp;nbsp;
&lt;br&gt;&amp;gt; development
&lt;br&gt;&amp;gt; software that enables intelligent coding and step-through debugging.
&lt;br&gt;&amp;gt; Download the free 60 day trial. &lt;a href=&quot;http://p.sf.net/sfu/www-adobe-com_______________________________________________&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/www-adobe-com_______________________________________________&lt;/a&gt;&lt;br&gt;&amp;gt; itextsharp-questions mailing list
&lt;br&gt;&amp;gt; itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
&lt;br&gt;powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
&lt;br&gt;easily build your RIAs with Flex Builder, the Eclipse(TM)based development
&lt;br&gt;software that enables intelligent coding and step-through debugging.
&lt;br&gt;Download the free 60 day trial. &lt;a href=&quot;http://p.sf.net/sfu/www-adobe-com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/www-adobe-com&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;/quote&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;/quote&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Problems-with-Digital-Signature-and-Adobe-Update-tp22569056p25615236.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25612191</id>
	<title>Re: Problems with Digital Signature and Adobe	Update</title>
	<published>2009-09-25T06:29:58Z</published>
	<updated>2009-09-25T06:29:58Z</updated>
	<author>
		<name>webpointz</name>
	</author>
	<content type="html">I am getting the same problem although slightly different...
&lt;br&gt;&lt;br&gt;2.16.840.1.101.3.4.2.1 MessageDigest not available &amp;nbsp;
&lt;br&gt;&amp;nbsp; 
&lt;br&gt;The error occurred in C:\ColdFusionCentaur\wwwroot\readpdf.cfm: line 70
&lt;br&gt;&amp;nbsp;
&lt;br&gt;68 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // End revision extraction &amp;nbsp;
&lt;br&gt;69 : &amp;nbsp; 
&lt;br&gt;70 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pk = acroFields.verifySignature(name); &amp;nbsp;
&lt;br&gt;71 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; calendar = pk.getSignDate(); &amp;nbsp;
&lt;br&gt;72 : &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; certificateArray = pk.getCertificates(); &amp;nbsp;
&lt;br&gt;&lt;br&gt;I should add that i am using ColdFusion and iText 2.1.7
&lt;br&gt;&lt;br&gt;Where in the source of iText do you add the modification?
&lt;br&gt;&lt;br&gt;Mike
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;quote author=&quot;jimLo&quot;&gt;&lt;br&gt;To get things working properly the added code should be:-
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1withRSA&amp;quot;)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA256withRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;; 
&lt;br&gt;&lt;br&gt;Since OID 2.16.840.1.101.3.4.2.1 corresponds to SHA-256 this seems appropriate.
&lt;br&gt;With this change PdfPKCS7.Verify() seems to return a sensible value. 
&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;jimLo wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;To get the change to work I had to use:-
&lt;br&gt;&lt;br&gt;if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1withRSA&amp;quot;) 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA1WITHRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;; 
&lt;br&gt;&lt;br&gt;That makes AcroFields.VerifySignature return a PdfPKCS7 object without error. &amp;nbsp;However when I then do a PdfPKCS7.Verify() I get a False return even when the PDF has not been modified. &amp;nbsp; Note this does not happen with other certificate types (which work without the fix above). &amp;nbsp; So it looks to me that there are even more things wrong.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Tony Carreon wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;actually i downloaded the newest available version and it still did &amp;nbsp;
&lt;br&gt;not work. i downloaded the source and compiled from that and it did &amp;nbsp;
&lt;br&gt;not work. the only way i could get it to work was modify the source to &amp;nbsp;
&lt;br&gt;include the line:
&lt;br&gt;&lt;br&gt;if (algorithm == &amp;quot;2.16.840.1.101.3.4.2.1WITHRSA&amp;quot;)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; algorithm = &amp;quot;SHA1WITHRSA&amp;quot;; //&amp;quot;2.16.840.1.101.3.4.2.1&amp;quot;;
&lt;br&gt;&lt;br&gt;&lt;br&gt;to the GetSigner method in SignerUtilities.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;tony
&lt;br&gt;&lt;br&gt;On Mar 24, 2009, at 6:54 AM, Paulo Soares wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Looks like you are using an old iTextSharp version that doesn't &amp;nbsp;
&lt;br&gt;&amp;gt; recognize that particular hash.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Paulo
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -----Original Message-----
&lt;br&gt;&amp;gt;&amp;gt; From: Tony Carreon [mailto:tcarreon@nmsimaging.com]
&lt;br&gt;&amp;gt;&amp;gt; Sent: Tuesday, March 17, 2009 8:06 PM
&lt;br&gt;&amp;gt;&amp;gt; To: itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&amp;gt;&amp;gt; Subject: [itextsharp-questions] Problems with Digital
&lt;br&gt;&amp;gt;&amp;gt; Signature and Adobe Update
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; today users have started noticing an error when opening digital
&lt;br&gt;&amp;gt;&amp;gt; signatures with itextsharp / bouncycastle.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; apparently adobe is pushing out an update for a critical bug fix.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; has anyone else noticed this problem?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; the error message is : Signer 2.16.840.1.101.3.4.2.1WITHRSA not
&lt;br&gt;&amp;gt;&amp;gt; recognised.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Aviso Legal:
&lt;br&gt;&amp;gt; Esta mensagem é destinada exclusivamente ao destinatário. Pode &amp;nbsp;
&lt;br&gt;&amp;gt; conter informação confidencial ou legalmente protegida. A incorrecta &amp;nbsp;
&lt;br&gt;&amp;gt; transmissão desta mensagem não significa a perca de &amp;nbsp;
&lt;br&gt;&amp;gt; confidencialidade. Se esta mensagem for recebida por engano, por &amp;nbsp;
&lt;br&gt;&amp;gt; favor envie-a de volta para o remetente e apague-a do seu sistema de &amp;nbsp;
&lt;br&gt;&amp;gt; imediato. É proibido a qualquer pessoa que não o destinatário de &amp;nbsp;
&lt;br&gt;&amp;gt; usar, revelar ou distribuir qualquer parte desta mensagem.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Disclaimer:
&lt;br&gt;&amp;gt; This message is destined exclusively to the intended receiver. It &amp;nbsp;
&lt;br&gt;&amp;gt; may contain confidential or legally protected information. The &amp;nbsp;
&lt;br&gt;&amp;gt; incorrect transmission of this message does not mean the loss of its &amp;nbsp;
&lt;br&gt;&amp;gt; confidentiality. If this message is received by mistake, please send &amp;nbsp;
&lt;br&gt;&amp;gt; it back to the sender and delete it from your system immediately. It &amp;nbsp;
&lt;br&gt;&amp;gt; is forbidden to any person who is not the intended receiver to use, &amp;nbsp;
&lt;br&gt;&amp;gt; distribute or copy any part of this message.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ------------------------------------------------------------------------------
&lt;br&gt;&amp;gt; Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) &amp;nbsp;
&lt;br&gt;&amp;gt; are
&lt;br&gt;&amp;gt; powering Web 2.0 with engaging, cross-platform capabilities. Quickly &amp;nbsp;
&lt;br&gt;&amp;gt; and
&lt;br&gt;&amp;gt; easily build your RIAs with Flex Builder, the Eclipse(TM)based &amp;nbsp;
&lt;br&gt;&amp;gt; development
&lt;br&gt;&amp;gt; software that enables intelligent coding and step-through debugging.
&lt;br&gt;&amp;gt; Download the free 60 day trial. &lt;a href=&quot;http://p.sf.net/sfu/www-adobe-com_______________________________________________&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/www-adobe-com_______________________________________________&lt;/a&gt;&lt;br&gt;&amp;gt; itextsharp-questions mailing list
&lt;br&gt;&amp;gt; itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
&lt;br&gt;powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
&lt;br&gt;easily build your RIAs with Flex Builder, the Eclipse(TM)based development
&lt;br&gt;software that enables intelligent coding and step-through debugging.
&lt;br&gt;Download the free 60 day trial. &lt;a href=&quot;http://p.sf.net/sfu/www-adobe-com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/www-adobe-com&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;/quote&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Problems-with-Digital-Signature-and-Adobe-Update-tp22569056p25612191.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25546436</id>
	<title>How to crop overflowing text inside a PdfPCell (&quot;Fixed Height&quot; already tried)</title>
	<published>2009-09-24T02:09:52Z</published>
	<updated>2009-09-24T02:09:52Z</updated>
	<author>
		<name>notoriousxl</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;I've succesfully represented a text label as a PdfPcell (see &lt;a href=&quot;http://www.nabble.com/How-to-insert-Text-in-a-given-position-with-the-given-font-td25434266.html&quot; target=&quot;_top&quot;&gt;http://www.nabble.com/How-to-insert-Text-in-a-given-position-with-the-given-font-td25434266.html&lt;/a&gt;&amp;nbsp;). PdfPCell.FixedHeight and PdfPTable.TotalWidth are set. :)
&lt;br&gt;&lt;br&gt;Now, I've got a 24x250 cell (with Rotation = 90). If I insert a big text (for example, a text with Font.Size = 40), the text overflows the cell's borders.
&lt;br&gt;&lt;br&gt;How can I truncate it?&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-crop-overflowing-text-inside-a-PdfPCell-%28%22Fixed-Height%22-already-tried%29-tp25546436p25546436.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25530575</id>
	<title>Re: Problem adding annotation for a rotated PDF</title>
	<published>2009-09-21T22:43:09Z</published>
	<updated>2009-09-21T22:43:09Z</updated>
	<author>
		<name>manojbamola</name>
	</author>
	<content type="html">&amp;nbsp;hi 
&lt;br&gt;&amp;nbsp;i have used the iTextSharp dll for adding pdf document but now i am not able to change the 
&lt;br&gt;font size of my document because may be its taking default fonsize from iTextSharp so kindly help me out 
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Problem-adding-annotation-for-a-rotated-PDF-tp22286877p25530575.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25530294</id>
	<title>Hiding Text on Image...</title>
	<published>2009-09-21T04:39:00Z</published>
	<updated>2009-09-21T04:39:00Z</updated>
	<author>
		<name>raj231362</name>
	</author>
	<content type="html">hi paulo,
&lt;br&gt;&lt;br&gt;&lt;br&gt;i am able to hide text on image. i am using tiff image to create pdf. i have a coordinate of text.
&lt;br&gt;through this coordinate i am hiding the text while creating pdf. but hide text is not &amp;nbsp;placed in exact location of coordinate. have you any idea, where i have done mistake.. here is my code.. 
&lt;br&gt;&lt;br&gt;private void button1_Click(object sender, EventArgs e)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; { &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Document document = new Document(PageSize.A4, 0, 0, 0, 0);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(&amp;quot;C:\\Documents and Settings\\Administrator\\Desktop\\TestPdf\\03015-S70-2009_06_16#ACEH_00001205L_New.pdf&amp;quot;, FileMode.Create));
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.Drawing.Bitmap bm = new System.Drawing.Bitmap(&amp;quot;C:\\Documents and Settings\\Administrator\\Desktop\\TestPdf\\03015-S70-2009_06_16#ACEH_00001205L.TIF&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int total = bm.GetFrameCount(System.Drawing.Imaging.FrameDimension.Page);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; document.Open();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PdfContentByte cb = writer.DirectContentUnder;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for (int k = 0; k &amp;lt; total; ++k)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bm.SelectActiveFrame(System.Drawing.Imaging.FrameDimension.Page, k);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(bm, System.Drawing.Imaging.ImageFormat.Bmp);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.ScalePercent(72f / img.DpiX * 100);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.SetAbsolutePosition(0, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.HasAbsolutePosition();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.IndentationLeft = 3f;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.IndentationRight = 3f; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.ScaleToFit(600f, 850f);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img.CompressionLevel = 300;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cb.AddImage(img);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;b&gt;FnfindText&lt;/b&gt;(writer.DirectContent, writer, document); 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; document.Close();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;//********* This is my &amp;nbsp;function where i am able to find coordinate of text***********//
&lt;br&gt;&lt;br&gt;private void FnfindText(PdfContentByte cb, PdfWriter writer, Document document)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int start = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int end = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int height = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int width = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int hpos = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int vpos = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string content = &amp;quot;&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string txt = &amp;quot;&amp;quot;;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string file = &amp;quot;&amp;quot;;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string AltoPath = &amp;quot;C:\\Documents and Settings\\Administrator\\Desktop\\TestPdf\\03015-S70-2009_06_16#ACEH_00001205L_alto.xml&amp;quot;;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; StreamReader sr = new StreamReader(AltoPath);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; file = sr.ReadToEnd();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int ctst = file.IndexOf(&amp;quot;\r\n&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while (ctst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; i++;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ctst = file.IndexOf(&amp;quot;\r\n&amp;quot;, ctst + 1);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int v = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; start = file.IndexOf(&amp;quot;\r\n&amp;quot;, v);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while (start != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; txt = file.Substring(v, start - v);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int Tline = txt.IndexOf(&amp;quot;&amp;lt;String ID=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (Tline != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int TlineEnd = txt.IndexOf(&amp;quot;/&amp;gt;&amp;quot;, Tline);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (TlineEnd != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; string TextLine = txt.Substring(Tline, TlineEnd - Tline + 2);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int Contentst = TextLine.IndexOf(&amp;quot;CONTENT=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (Contentst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int Contentend = TextLine.IndexOf(&amp;quot; &amp;quot;, Contentst);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (Contentend != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; content = TextLine.Substring(Contentst + 9, Contentend - Contentst - 10);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int Heightst = TextLine.IndexOf(&amp;quot;HEIGHT=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (Heightst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int HeightEnd = TextLine.IndexOf(&amp;quot; &amp;quot;, Heightst);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (HeightEnd != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; height = Convert.ToInt32(TextLine.Substring(Heightst + 8, HeightEnd - Heightst - 9));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int Widthst = TextLine.IndexOf(&amp;quot;WIDTH=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (Widthst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int WidthEnd = TextLine.IndexOf(&amp;quot; &amp;quot;, Widthst);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (WidthEnd != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; width = Convert.ToInt32(TextLine.Substring(Widthst + 7, WidthEnd - Widthst - 8));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int HPOSst = TextLine.IndexOf(&amp;quot;HPOS=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (HPOSst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int HPOSEnd = TextLine.IndexOf(&amp;quot; &amp;quot;, HPOSst);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (HPOSEnd != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; hpos = Convert.ToInt32(TextLine.Substring(HPOSst + 6, HPOSEnd - HPOSst - 7));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int VPOSst = TextLine.IndexOf(&amp;quot;VPOS=&amp;quot;, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (VPOSst != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int VPOSEnd = TextLine.IndexOf(&amp;quot; &amp;quot;, VPOSst);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (VPOSEnd != -1)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vpos = Convert.ToInt32(TextLine.Substring(VPOSst + 6, VPOSEnd - VPOSst - 7));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ColumnText ct = new ColumnText(cb);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Chunk chunk = new Chunk(content, FontFactory.GetFont(FontFactory.HELVETICA, 10, iTextSharp.text.Color.RED));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; chunk.SetTextRenderMode(PdfContentByte.TEXT_RENDER_MODE_INVISIBLE, 0.0f, iTextSharp.text.Color.RED);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; iTextSharp.text.Rectangle rect = new iTextSharp.text.Rectangle(hpos, vpos, width, height);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //chunk.SetHorizontalScaling(0.5f);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //rect.GetRectangle(hpos,vpos); &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.SetSimpleColumn(rect.Left,rect.Bottom, rect.Right, rect.Top); &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //ct.SetSimpleColumn(Top, Right, Width, Height);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.AddText(chunk); &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ct.Go();
&lt;br&gt;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v = start; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; start = file.IndexOf(&amp;quot;\r\n&amp;quot;, start + 2);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;so, please give me idea....
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thanks &amp; Regards,
&lt;br&gt;Raj
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Hiding-Text-on-Image...-tp25530294p25530294.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25541431</id>
	<title>Digital signature and OCSP certificate</title>
	<published>2009-09-21T03:03:45Z</published>
	<updated>2009-09-21T03:03:45Z</updated>
	<author>
		<name>mtrekker</name>
	</author>
	<content type="html">I have 2 certificates:
&lt;br&gt;&lt;br&gt;1) first one I am using to digitally sign PDF (using external digest)
&lt;br&gt;2) second one I am using to make OCSP request
&lt;br&gt;&lt;br&gt;What needs to be implemeneted to include both certs and ocsp response in
&lt;br&gt;PDF ?
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25541431&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Digital-signature-and-OCSP-certificate-tp25541431p25541431.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25541314</id>
	<title>iTextSharp mailing list is closing</title>
	<published>2009-09-21T02:52:15Z</published>
	<updated>2009-09-21T02:52:15Z</updated>
	<author>
		<name>Paulo Soares-3</name>
	</author>
	<content type="html">Dear all,
&lt;br&gt;&lt;br&gt;After analyzing the questions posted in this mailing list I came to the conclusion that most of them are not specifically .Net related and could be answered in a C# or Java environment. To avoid dispersing the know-how and to increase the chance of getting an answer I'm closing this mailing list and ask you to post your iTextSharp questions in the iText mailing list.
&lt;br&gt;&lt;br&gt;You can subscribe to the iText mailing list at &lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itext-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itext-questions&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;Paulo
&lt;br&gt;&lt;br&gt;Aviso Legal:
&lt;br&gt;Esta mensagem é destinada exclusivamente ao destinatário. Pode conter informação confidencial ou legalmente protegida. A incorrecta transmissão desta mensagem não significa a perca de confidencialidade. Se esta mensagem for recebida por engano, por favor envie-a de volta para o remetente e apague-a do seu sistema de imediato. É proibido a qualquer pessoa que não o destinatário de usar, revelar ou distribuir qualquer parte desta mensagem. 
&lt;br&gt;&lt;br&gt;Disclaimer:
&lt;br&gt;This message is destined exclusively to the intended receiver. It may contain confidential or legally protected information. The incorrect transmission of this message does not mean the loss of its confidentiality. If this message is received by mistake, please send it back to the sender and delete it from your system immediately. It is forbidden to any person who is not the intended receiver to use, distribute or copy any part of this message.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25541314&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iTextSharp-mailing-list-is-closing-tp25541314p25541314.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25532459</id>
	<title>[patch] Fixes to attachment handling</title>
	<published>2009-09-20T08:09:37Z</published>
	<updated>2009-09-20T08:09:37Z</updated>
	<author>
		<name>Vesa Jääskeläinen</name>
	</author>
	<content type="html">Hi All,
&lt;br&gt;&lt;br&gt;Here are some fixes to embedded attachment handling.
&lt;br&gt;&lt;br&gt;PdfEncodings.cs: Changed behavior of loading attachment object names.
&lt;br&gt;Might have side effects elsewhere. In my opinion Unicode should be used
&lt;br&gt;internally to process all strings. Raw version can be kept handy if needed.
&lt;br&gt;&lt;br&gt;Anyway. This was needed when embedded attachment object name was in
&lt;br&gt;Unicode and iTextSharp saved new attachment with Ascii version. Now
&lt;br&gt;Acrobat Reader 9.1 failed to handle files properly.
&lt;br&gt;&lt;br&gt;PdfFileSpecification.cs: Contains bugfixes to wrapper functions. Also
&lt;br&gt;removes the need to make indirect object for data. Generates smaller PDF
&lt;br&gt;file and smaller catalog.
&lt;br&gt;&lt;br&gt;PdfName.cs: Couple of new tokens.
&lt;br&gt;&lt;br&gt;PdfStamperImp.cs: If attachments were added, it would generate new
&lt;br&gt;EmbeddedFiles entry in the written PDF file. This fixes it so that
&lt;br&gt;previous EmbeddedFiles entry is removed.
&lt;br&gt;&lt;br&gt;PdfStream.cs: Keeps track of original attachment size in DL.
&lt;br&gt;Documentation fixes.
&lt;br&gt;&lt;br&gt;PdfSignatureAppearance.cs: Documentation fixes.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Vesa Jääskeläinen
&lt;br&gt;&lt;br /&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfEncodings.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfEncodings.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfEncodings.cs	(working copy)
&lt;br&gt;@@ -233,10 +233,22 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (bytes == null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return PdfObject.NOTHING;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (encoding == null || encoding.Length == 0) {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;char[] c = new char[bytes.Length];
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (int k = 0; k &amp;lt; bytes.Length; ++k)
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c[k] = (char)(bytes[k] &amp; 0xff);
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return new String(c);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// If encoding wasn't specified, try to autodetect Unicode encoding
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (bytes.Length &amp;gt;= 2 &amp;&amp; bytes[0] == 0xFF &amp;&amp; bytes[1] == 0xFE)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;encoding = &amp;quot;UNICODELITTLEUNMARKED&amp;quot;;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else if (bytes.Length &amp;gt;= 2 &amp;&amp; bytes[0] == 0xFE &amp;&amp; bytes[1] == 0xFF)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;encoding = &amp;quot;UNICODEBIGUNMARKED&amp;quot;;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;char[] c = new char[bytes.Length];
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (int k = 0; k &amp;lt; bytes.Length; ++k)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c[k] = (char)(bytes[k] &amp; 0xff);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return new String(c);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;IExtraEncoding extra = (IExtraEncoding)extraEncodings[encoding.ToLower(System.Globalization.CultureInfo.InvariantCulture)];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (extra != null) {
&lt;br&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfFileSpecification.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfFileSpecification.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfFileSpecification.cs	(working copy)
&lt;br&gt;@@ -144,7 +144,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* @return the file specification
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/ &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static PdfFileSpecification FileEmbedded(PdfWriter writer, String filePath, String fileDisplay, byte[] fileStore, bool compress, String mimeType, PdfDictionary fileParameter) {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return FileEmbedded(writer, filePath, fileDisplay, fileStore, null, null, compress ? PdfStream.BEST_COMPRESSION : PdfStream.NO_COMPRESSION);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return FileEmbedded(writer, filePath, fileDisplay, fileStore, mimeType, fileParameter, compress ? PdfStream.BEST_COMPRESSION : PdfStream.NO_COMPRESSION);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;@@ -169,11 +169,12 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfEFStream stream;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Stream inp = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfIndirectReference refi;
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfIndirectReference refFileLength;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfIndirectReference refFileLength = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;refFileLength = writer.PdfIndirectReference;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (fileStore == null) {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (File.Exists(filePath)) {
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;refFileLength = writer.PdfIndirectReference;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (File.Exists(filePath))
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;inp = new FileStream(filePath, FileMode.Open, FileAccess.Read);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else {
&lt;br&gt;@@ -193,18 +194,30 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream = new PdfEFStream(fileStore);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.Put(PdfName.TYPE, PdfName.EMBEDDEDFILE);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.FlateCompress(compressionLevel);
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.Put(PdfName.PARAMS, refFileLength);
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfDictionary param = new PdfDictionary();
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (fileParameter != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;param.Merge(fileParameter);
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (fileStore != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;param.Put(PdfName.SIZE, new PdfNumber(stream.RawLength));
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.Put(PdfName.PARAMS, param);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.Put(PdfName.PARAMS, refFileLength);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (mimeType != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.Put(PdfName.SUBTYPE, new PdfName(mimeType));
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;refi = writer.AddToBody(stream).IndirectReference;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (fileStore == null) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stream.WriteLength();
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;param.Put(PdfName.SIZE, new PdfNumber(stream.RawLength));
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;writer.AddToBody(param, refFileLength);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfDictionary param = new PdfDictionary();
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (fileParameter != null)
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;param.Merge(fileParameter);
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;param.Put(PdfName.SIZE, new PdfNumber(stream.RawLength));
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;writer.AddToBody(param, refFileLength);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;finally {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (inp != null)
&lt;br&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfName.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfName.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfName.cs	(working copy)
&lt;br&gt;@@ -293,6 +293,8 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName CH = new PdfName(&amp;quot;Ch&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName CHECKSUM = new PdfName(&amp;quot;CheckSum&amp;quot;);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName CHARPROCS = new PdfName(&amp;quot;CharProcs&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName CI = new PdfName(&amp;quot;CI&amp;quot;);
&lt;br&gt;@@ -406,6 +408,8 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName DC = new PdfName(&amp;quot;DC&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName DCTDECODE = new PdfName(&amp;quot;DCTDecode&amp;quot;);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/** A name */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public static readonly PdfName DL = new PdfName(&amp;quot;DL&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * A name.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @since 2.1.6
&lt;br&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfSignatureAppearance.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfSignatureAppearance.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfSignatureAppearance.cs	(working copy)
&lt;br&gt;@@ -337,6 +337,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* &amp;lt;p&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* Consult &amp;lt;A HREF=&amp;quot;&lt;a href=&quot;http://partners.adobe.com/asn/developer/pdfs/tn/PPKAppearances.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://partners.adobe.com/asn/developer/pdfs/tn/PPKAppearances.pdf&lt;/a&gt;&amp;quot;&amp;gt;PPKAppearances.pdf&amp;lt;/A&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* for further details.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* &amp;lt;/p&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* @return the main appearance layer
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* @throws DocumentException on error
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* @throws IOException on error
&lt;br&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStamperImp.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStamperImp.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStamperImp.cs	(working copy)
&lt;br&gt;@@ -1279,6 +1279,15 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;old[nn] = entry.Value;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfDictionary tree = PdfNameTree.WriteTree(old, this);
&lt;br&gt;+			
&lt;br&gt;+			// Remove old EmbeddedFiles object if preset
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfObject oldEmbeddedFiles = names.Get(PdfName.EMBEDDEDFILES);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (oldEmbeddedFiles != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfReader.KillIndirect(oldEmbeddedFiles);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+			
&lt;br&gt;+			// Add new EmbeddedFiles object
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;names.Put(PdfName.EMBEDDEDFILES, AddToBody(tree).IndirectReference);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;Index: iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStream.cs
&lt;br&gt;===================================================================
&lt;br&gt;--- iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStream.cs	(revision 80)
&lt;br&gt;+++ iTextSharp/svn/src/core/iTextSharp/text/pdf/PdfStream.cs	(working copy)
&lt;br&gt;@@ -72,6 +72,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * Remark: In this version only the FLATEDECODE-filter is supported.&amp;lt;BR&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * This object is described in the 'Portable Document Format Reference Manual version 1.3'
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * section 4.8 (page 41-53).&amp;lt;BR&amp;gt;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; * &amp;lt;/P&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; *
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * @see &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfObject
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * @see &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfDictionary
&lt;br&gt;@@ -141,7 +142,6 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * Creates an efficient stream. No temporary array is ever created. The &amp;lt;CODE&amp;gt;InputStream&amp;lt;/CODE&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * is totally consumed but is not closed. The general usage is:
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;lt;p&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;lt;pre&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * InputStream in = ...;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * PdfStream stream = new PdfStream(in, writer);
&lt;br&gt;@@ -176,6 +176,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;lt;p&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * This method must be called and can only be called if the contructor {@link #PdfStream(InputStream,PdfWriter)}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * is used to create the stream.
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;lt;/p&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @throws IOException on error
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @see #PdfStream(InputStream,PdfWriter)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;@@ -210,7 +211,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public void FlateCompress(int compressionLevel) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!Document.Compress)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return;
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if the flateCompress-method has allready been
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if the flateCompress-method has already been
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (compressed) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;@@ -219,7 +220,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;compressed = true;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if a filter allready exists
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if a filter already exists
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfObject filter = PdfReader.GetPdfObject(Get(PdfName.FILTER));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (filter != null) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (filter.IsName()) {
&lt;br&gt;@@ -238,13 +239,21 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MemoryStream stream = new MemoryStream();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ZDeflaterOutputStream zip = new ZDeflaterOutputStream(stream, compressionLevel);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (streamBytes != null)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;streamBytes.WriteTo(zip);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;zip.Write(bytes, 0, bytes.Length);
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Keep track of original data length
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Put(PdfName.DL, new PdfNumber(bytes.Length));
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//zip.Close();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;zip.Finish();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// update the object
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;streamBytes = stream;
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;bytes = null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Put(PdfName.LENGTH, new PdfNumber(streamBytes.Length));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (filter == null) {
&lt;br&gt;&lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25532459&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-patch--Fixes-to-attachment-handling-tp25532459p25532459.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25512268</id>
	<title>Re: Co-Sign Adobe 8 OK but 9 corrupted</title>
	<published>2009-09-18T10:01:29Z</published>
	<updated>2009-09-18T10:01:29Z</updated>
	<author>
		<name>alzs</name>
	</author>
	<content type="html">Ok Paulo, but when the signature is made by Acrobat both are marked as valid. Is there some way to sign like Acrobat? 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Paulo Soares-3 wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;There's nothing to worry about, this is a change of behavior in Acrobat 9. 
&lt;br&gt;In Acrobat 9 only the last signature is marked as valid but the other ones 
&lt;br&gt;are ok although marked invalid because you added more to the document after 
&lt;br&gt;signing it. If you extract the first revision the signature will show up as 
&lt;br&gt;valid.
&lt;br&gt;&lt;br&gt;Paulo
&lt;br&gt;&lt;br&gt;----- Original Message ----- 
&lt;br&gt;From: &amp;quot;alzs&amp;quot; &amp;lt;dados@ymail.com&amp;gt;
&lt;br&gt;To: &amp;lt;itextsharp-questions@lists.sourceforge.net&amp;gt;
&lt;br&gt;Sent: Thursday, September 17, 2009 6:50 PM
&lt;br&gt;Subject: [itextsharp-questions] Co-Sign Adobe 8 OK but 9 corrupted
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;I am from Brazil and I need a help...
&lt;br&gt;please, to point the mistake...
&lt;br&gt;When do I co-sign a document PDF and do I open in the version of the adobe 8
&lt;br&gt;says that is valid the 2 signatures but when do I open the 9 says that the
&lt;br&gt;first this corrupted, what done this miss?
&lt;br&gt;&lt;br&gt;thank you very much, Alexandre Zanella.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;System.IO.MemoryStream streamAssinado = new System.IO.MemoryStream();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;X509Certificate2 card = assinatura.Get();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Org.BouncyCastle.X509.X509CertificateParser cp = new
&lt;br&gt;Org.BouncyCastle.X509.X509CertificateParser();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Org.BouncyCastle.X509.X509Certificate[] chain = new
&lt;br&gt;Org.BouncyCastle.X509.X509Certificate[] { cp.ReadCertificate(card.RawData)
&lt;br&gt;};
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfReader reader = new PdfReader(dados);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfStamper stp = PdfStamper.CreateSignature(reader,
&lt;br&gt;streamAssinado, '\0', null, true);
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//Propriedades da assinatura
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfSignatureAppearance sap = stp.SignatureAppearance;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//Habilita a visibilidade da assinatura.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//sap.SetVisibleSignature(new iTextSharp.text.Rectangle(100,
&lt;br&gt;100, 300, 200), 1, null);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.SignDate = assinatura.DataAssinatura;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.SetCrypto(null, chain, null,
&lt;br&gt;PdfSignatureAppearance.WINCER_SIGNED);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Reason = assinatura.Motivo;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Location = assinatura.Local;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Contact = assinatura.Contato;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Acro6Layers = true;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Render =
&lt;br&gt;PdfSignatureAppearance.SignatureRender.NameAndDescription;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//sap.CertificationLevel =
&lt;br&gt;(PdfSignatureAppearance.CERTIFIED_FORM_FILLING_AND_ANNOTATIONS);
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfSignature dic = new PdfSignature(PdfName.ADOBE_PPKMS,
&lt;br&gt;PdfName.ADBE_PKCS7_SHA1);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dic.Date = new PdfDate(sap.SignDate);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dic.Name =
&lt;br&gt;PdfPKCS7.GetSubjectFields(chain[0]).GetField(&amp;quot;CN&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sap.Reason != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dic.Reason = sap.Reason;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (sap.Location != null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dic.Location = sap.Location;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.CryptoDictionary = dic;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int csize = 4000;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Hashtable exc = new Hashtable();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;exc[PdfName.CONTENTS] = csize * 2 + 2;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.PreClose(exc);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HashAlgorithm sha = new SHA1CryptoServiceProvider();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Stream s = sap.RangeStream;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int read = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;byte[] buff = new byte[8192];
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;while ((read = s.Read(buff, 0, 8192)) &amp;gt; 0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sha.TransformBlock(buff, 0, read, buff, 0);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sha.TransformFinalBlock(buff, 0, 0);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Sign the message with the private key of the signer.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Place message in a ContentInfo object.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;This is required to build a SignedCms object.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ContentInfo contentInfo = new ContentInfo(sha.Hash);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Instantiate SignedCms object with the ContentInfo above.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Has default SubjectIdentifierType IssuerAndSerialNumber.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SignedCms signedCms = new SignedCms(contentInfo, false);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Formulate a CmsSigner object for the signer.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CmsSigner cmsSigner = new CmsSigner(card);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Include the following line if the top certificate in the
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// smartcard is not in the trusted list.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cmsSigner.IncludeOption =
&lt;br&gt;(X509IncludeOption)incluirCertificado;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Sign the CMS/PKCS #7 message. The second argument is
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;needed to ask for the pin.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;signedCms.ComputeSignature(cmsSigner, false);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;Encode the CMS/PKCS #7 message.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;byte[] pk = signedCms.Encode();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;byte[] outc = new byte[csize];
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PdfDictionary dic2 = new PdfDictionary();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Array.Copy(pk, 0, outc, 0, pk.Length);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dic2.Put(PdfName.CONTENTS, new
&lt;br&gt;PdfString(outc).SetHexWriting(true));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sap.Close(dic2);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dadosAssinados = streamAssinado.ToArray();
&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;itextsharp-questions@lists.sourceforge.net
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Co-Sign-Adobe-8-OK-but-9-corrupted-tp25492201p25512268.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25511521</id>
	<title>Re: Transparency Groups</title>
	<published>2009-09-18T09:13:30Z</published>
	<updated>2009-09-18T09:13:30Z</updated>
	<author>
		<name>Gylfi Ingvason</name>
	</author>
	<content type="html">Paulo,
&lt;br&gt;&lt;br&gt;Could you please answer the following:
&lt;br&gt;&lt;br&gt;The PdfWriter.GetImportedPage() does not preserve the Transparency Group
&lt;br&gt;dictionary when importing the page into an XObject Form. Is this a bug or a
&lt;br&gt;feature?
&lt;br&gt;&lt;br&gt;Thanks - Gylfi 
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: Gylfi Ingvason [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Gylfi.Ingvason@...&lt;/a&gt;] 
&lt;br&gt;Sent: Wednesday, September 16, 2009 1:24 PM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;Subject: Re: [itextsharp-questions] Transparency Groups
&lt;br&gt;&lt;br&gt;&lt;br&gt;After searching the lists I found a post pointing to a detailed discussion
&lt;br&gt;on this topic on Gmane. The following workaround will fix the problem if I
&lt;br&gt;call this after creating the page, but it seems to me that the
&lt;br&gt;GetImportedPage() method on PdfWriter should handle this automatically by
&lt;br&gt;creating a Transparency Group XObject. Thoughts?
&lt;br&gt;&lt;br&gt;protected void SetTransparency(PdfContentByte content) {
&lt;br&gt;&amp;nbsp; &amp;nbsp;PdfDictionary dictionary = new PdfDictionary();
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;dictionary.Put(PdfName.TYPE, PdfName.GROUP);
&lt;br&gt;&amp;nbsp; &amp;nbsp;dictionary.Put(PdfName.S, PdfName.TRANSPARENCY);
&lt;br&gt;&amp;nbsp; &amp;nbsp;dictionary.Put(PdfName.CS, PdfName.DEVICERGB);
&lt;br&gt;&amp;nbsp; &amp;nbsp;content.PdfWriter.Group = dictionary;
&lt;br&gt;&amp;nbsp; &amp;nbsp;content.SetDefaultColorspace(PdfName.CS, PdfName.DEVICERGB); }
&lt;br&gt;&lt;br&gt;Thanks - Gylfi
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: Gylfi Ingvason [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Gylfi.Ingvason@...&lt;/a&gt;]
&lt;br&gt;Sent: Wednesday, September 16, 2009 11:54 AM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;Subject: [itextsharp-questions] Transparency Groups
&lt;br&gt;&lt;br&gt;&lt;br&gt;Paulo,
&lt;br&gt;&lt;br&gt;I've come across a case where we import a page from an existing PDF document
&lt;br&gt;and the color of an image does not match the original after the import.
&lt;br&gt;Basically, all we're doing is
&lt;br&gt;&lt;br&gt;PdfImportedPage page = writer.GetImportedPage(reader, pageNumber);
&lt;br&gt;writer.DirectContent.AddTemplate(page, scaleX, 0, 0, scaleY, translateX,
&lt;br&gt;translateY);
&lt;br&gt;&lt;br&gt;where the writer is a PdfWriter. If I use PdfCopy, the color will match.
&lt;br&gt;Upon examining the generated PDFs, I found that the images are indeed
&lt;br&gt;identical, but the Page object is missing a Group dictionary when I use
&lt;br&gt;PdfWriter. There is no Group dictionary in the XObject Form either. In the
&lt;br&gt;original file, the Group in the Page dictionary is like this:
&lt;br&gt;&lt;br&gt;/Group&amp;lt;&amp;lt;/CS/DeviceRGB/S/Transparency/Type/Group&amp;gt;&amp;gt;
&lt;br&gt;&lt;br&gt;This is preserved when I use PdfCopy and, as far as I can tell, is the only
&lt;br&gt;thing that can explain the color difference.
&lt;br&gt;&lt;br&gt;Is this perhaps a bug? The Group dictionary is a 1.4 feature according to
&lt;br&gt;Adobe so I would think it should be supported when generating 1.4 or 1.5
&lt;br&gt;files. Is there a way for me to set something in the PdfWriter to insure
&lt;br&gt;this gets included?
&lt;br&gt;&lt;br&gt;Thanks - Gylfi
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;----------------------------------------------------------------------------
&lt;br&gt;--
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA is
&lt;br&gt;the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&amp;nbsp;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;----------------------------------------------------------------------------
&lt;br&gt;--
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Come build with us! The BlackBerry&amp;reg; Developer Conference in SF, CA
&lt;br&gt;is the only developer event you need to attend this year. Jumpstart your
&lt;br&gt;developing skills, take BlackBerry mobile applications to market and stay 
&lt;br&gt;ahead of the curve. Join us from November 9&amp;#45;12, 2009. Register now&amp;#33;
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/devconf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/devconf&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;itextsharp-questions mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25511521&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;itextsharp-questions@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/itextsharp-questions&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Transparency-Groups-tp25475675p25511521.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25507522</id>
	<title>Get PDF Text only in Crop Box</title>
	<published>2009-09-18T04:59:23Z</published>
	<updated>2009-09-18T04:59:23Z</updated>
	<author>
		<name>BigJRofC</name>
	</author>
	<content type="html">Hi All,
&lt;br&gt;&lt;br&gt;Can we get the text within the crop box/mark using ItextSharp?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Buddy&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/itextsharp-questions-f4189.html&quot; embed=&quot;fixTarget[4189]&quot; target=&quot;_top&quot; &gt;itextsharp-questions&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Get-PDF-Text-only-in-Crop-Box-tp25507522p25507522.html" />
</entry>

</feed>
