[ 
https://issues.apache.org/jira/browse/PDFBOX-912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13778644#comment-13778644
 ] 

vakhtang koroghlishvili commented on PDFBOX-912:
------------------------------------------------

At the moment, As I know, if you need and digital signature with visible 
signature, you must have an  stream of template with visible field (image, or 
text, or something like that). I've just written library for pdfbox. You just 
create one class. you can set Image, Image Size, Image Zoom, Image location and 
so on... and finally You have template (with fake signature), with visible 
signature. then you can use that signature in order to create digital signature 
with visible signature too. Do you need that library? You can just set an 
image, and everything will be automatically. In this way there will not be 
templates (there will be created temporary template in memory, at the 
background, and that stream will be added automatically too). is this good way? 
what do you think? I can write that code. what do you think?
                
> PDF signing interface and improvments
> -------------------------------------
>
>                 Key: PDFBOX-912
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-912
>             Project: PDFBox
>          Issue Type: Improvement
>          Components: PDFReader, PDModel, PDModel.AcroForm, Writing
>    Affects Versions: 1.4.0
>            Reporter: Thomas Chojecki
>            Assignee: Adam Nichols
>            Priority: Minor
>             Fix For: 1.6.0
>
>         Attachments: cos_object_improvement_patch.txt, 
> fields_annotations_patch.txt, interface_options_patch.txt, io_patch.txt, 
> main_documents_patch.txt, parser_patch.txt, signature_exception_patch.txt, 
> test.pdf, test_signed.pdf, writer_patch.txt
>
>
> This is a first version of a signing interface for pdfbox. There are some 
> design issues i could not handle without rewriting too much of the code.
> Here we go:
> - incremental update support (tested for signatures with pdf/a 
> compatibility), not compatible with encrypted documents nor with xref-streams
> - cos object improvment
>   -- COSString with ability to force writing hexbin for given string
>   -- COSBase with ability to write direct into a dictionary (that means if 
> this is set, no indirect object will be wrote) (sry hard to explain what i 
> mean, actualy needed for incremental update to lower the rate of indirect 
> objects)
>   -- COSBase with ability to force writing object (this hook help the 
> COSWriter write needed objects for inkremental update)
>   -- COSName added new names
>   -- COSDocument some getter and setter for handling new signature and 
> incremental features
> - SignatureException with some exceptions for handling the bunch of new 
> possible errors
> -Parser improvments
>   -- PDFParser saves now the position of the last startxref
>   -- VisualSignatureParser (hook for parsing visual signature templates) 
> (it's only for prepared visualisation that should be merged with the document)
> -IO improvments
>   -- COSFilterInput helps to find the proper content that should be hashed / 
> signed
>   -- COSStandardOutputStream is tricky, it helps the writer to jump to the 
> right place in the document
>   -- COSWriter got some improvments for incremental update
>   -- COSWriterXRefEntry needed for incremental updates and writing the new 
> Xref table
> - PDDocument
>  -- got a new method addSignature with the needed implementation (do the 
> whole signature stuff)
>  -- cleanup
> - Fields and Annotations
>  -- PDSignature represent the signature dictionary 
>  -- PDSignatureFild / Annotation are the visible & unvisible signature 
> representations
> - Signature Interface and options
>  -- SignatureInterface the interface that shall be implemented for proper 
> signing
>  -- SignatureOptions, some additional options for signing
> Patch splited into pieces
> sry for spelling, didn't include a spellchecker for english.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to