from the Adobe extensions to the PDF spec.

https://www.adobe.com/devnet/pdf/pdf_reference.html

https://www.adobe.com/content/dam/acom/en/devnet/pdf/adobe_supplement_iso32000.pdf#page13



> Am 25.02.2020 um 23:16 schrieb Gilad Denneboom <gilad.denneb...@gmail.com>:
> 
> Where did you get these values from? I'm not seeing "DataMatrix" anywhere
> in the COSDictionary of the Barcode field, for example.
> 
>> On Tue, Feb 25, 2020 at 9:32 PM Maruan Sahyoun <sahy...@fileaffairs.de>
>> wrote:
>> 
>> I'm not sure I understand the issue you are facing.
>> 
>> you could do something like
>> 
>> for the field:
>> 
>> COSDictionary fieldDict = PDField.getCOSObject();
>> fieldDict.setInt(COSName.getPDFName("DataPrep"),0);
>> 
>> for the widget:
>> 
>> COSDictionary barcodeDict  = new COSDictionary();
>> barcodeDict.setName(COSName.TYPE, "PaperMetaData");
>> barcodeDict.setInt(COSName.VERSION, 1);
>> barcodeDict.setName(COSName.getPDFName("Symbology"), "DataMatrix");
>> ...
>> 
>> COSDictionnary annotsDict = PDAnnotationWidget.getCOSObject();
>> annotsDict.setItem(COSName.getPDFName("PMD"), barcodeDict);
>> 
>> ...
>> 
>> BR
>> Maruan
>> 
>> 
>> 
>>> I think I was able to do it by copying the COSDictionary object directly
>> (I
>>> found I can set it at the Widget level, not the PDField level).
>>> However, the question remains how can I create a COSDictionary from
>>> scratch, only using its textual value? Or should I keep a file with a
>>> Barcode field somewhere on the system and copy the value from it
>> whenever I
>>> want to create such a field?
>>> 
>>> On Tue, Feb 25, 2020 at 8:14 PM Gilad Denneboom <
>> gilad.denneb...@gmail.com>
>>> wrote:
>>> 
>>>> Thanks for your time and for the tips, Maruan.
>>>> That was my intention, but I couldn't find how to set the COSDictionary
>>>> value directly... In PDFBox 1.x this was possible, I believe, but I'm
>> not
>>>> seeing it in the 2.x version.
>>>> 
>>>> On Tue, Feb 25, 2020 at 7:02 PM Maruan Sahyoun <sahy...@fileaffairs.de
>>> 
>>>> wrote:
>>>> 
>>>>> What I would suggest is to create a barcode with the settings you
>> would
>>>>> like to see applied in Adobe Acrobat and recreate that
>>>>> in PDFBox. There is no high level API in PDFBox for that so you need
>> to
>>>>> work with the field and the widget annotation
>>>>> COSDirectory directly.
>>>>> 
>>>>> You can start by creating a text field in PDFBox (as a barcode field
>> is a
>>>>> subtype of that) and use getCOSObject() on the PD
>>>>> model field and widget object.
>>>>> 
>>>>> As for the calculation you need to inject the correct JS code (again
>> I'd
>>>>> do some prototyping in Acrobat) into the action
>>>>> dictionaries.
>>>>> 
>>>>> From your response I get that you are aware that this will only work
>> in
>>>>> Adobe Acrobat. To use it with Adobe Reader you need to
>>>>> ensure that the correct usage rights have been applied to the PDF
>> before
>>>>> filling.
>>>>> 
>>>>> There is a reason that you are looking to create the PDF form with
>> PDFBox
>>>>> right?
>>>>> 
>>>>> I've not done that before but feel free to ask further questions. My
>> time
>>>>> is very limited these days but I'll try to help you as
>>>>> much as possible. Might also serve as a starter for an example.
>>>>> 
>>>>> BR
>>>>> Maruan
>>>>> 
>>>>> 
>>>>> 
>>>>>> Yes, that's correct.
>>>>>> 
>>>>>> The end user is going to use Acrobat. I'm aware that this will not
>> work
>>>>> in
>>>>>> Reader without some special rights applied to the file, but that
>> is not
>>>>>> currently a concern.
>>>>>> 
>>>>>> On Tue, Feb 25, 2020 at 5:39 PM Maruan Sahyoun <
>> sahy...@fileaffairs.de>
>>>>>> wrote:
>>>>>> 
>>>>>>> Hi Gilad,
>>>>>>> 
>>>>>>> so if I understand you correctly you are creating a PDF form with
>>>>> PDFBox,
>>>>>>> maybe prefill it and later on a user is filling out
>>>>>>> the form interactively. Now some of the fields should contain a
>>>>> dynamic
>>>>>>> barcode with the value being calculated from some other
>>>>>>> fields values. Is that correct? What's the end users application
>> for
>>>>>>> filling out the PDF?
>>>>>>> 
>>>>>>> BR
>>>>>>> Maruan
>>>>>>> 
>>>>>>>> The problem with that approach is that the image is static,
>> while I
>>>>> want
>>>>>>> a
>>>>>>>> field whose value can be changed (based on the value of another
>>>>> field).
>>>>>>>> On Tue, Feb 25, 2020 at 4:30 PM PDF Developer
>>>>> <pdf...@yahoo.com.invalid>
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> Hello Gilad,
>>>>>>>>> 
>>>>>>>>> I suppose you could define a form button and assign the
>>>>> appearance to
>>>>>>> be
>>>>>>>>> an image file, generated perhaps from Barcode4J. I use that
>> trick
>>>>> in
>>>>>>>>> Acrobat Pro to add content to PDFs, content I have scanned
>> to PDF.
>>>>>>>>> 
>>>>>>>>> I went down a different route and added barcodes as XObjects.
>>>>> Using the
>>>>>>>>> Okapi library, I wrote a very simple (no text) PDF Renderer
>> based
>>>>> on
>>>>>>> their
>>>>>>>>> SVG one and took the output from that renderer and wrapped
>> it as
>>>>> an
>>>>>>> XObject.
>>>>>>>>> PDFDev
>>>>>>>>> 
>>>>>>>>>    On Tuesday, February 25, 2020, 3:09:57 PM GMT, Gilad
>>>>> Denneboom <
>>>>>>>>> gilad.denneb...@gmail.com> wrote:
>>>>>>>>> 
>>>>>>>>> Any ideas? I saw an old post of yours where you write that
>> maybe
>>>>> this
>>>>>>> can
>>>>>>>>> be done with Barcode4J, but I think that would just generate
>> the
>>>>>>> barcode as
>>>>>>>>> an image, not as a field.
>>>>>>>>> 
>>>>>>>>> On Sun, Feb 23, 2020 at 11:20 PM Gilad Denneboom <
>>>>>>>>> gilad.denneb...@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>> 
>>>>>>>>>> DataMatrix
>>>>>>>>>> 
>>>>>>>>>> On Sun, Feb 23, 2020 at 3:41 PM Maruan Sahyoun <
>>>>>>> sahy...@fileaffairs.de>
>>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>> Hi Gilad,
>>>>>>>>>>> 
>>>>>>>>>>> what type of barcode would you like to generate?
>>>>>>>>>>> 
>>>>>>>>>>> BR
>>>>>>>>>>> Maruan
>>>>>>>>>>> 
>>>>>>>>>>>> Hi all,
>>>>>>>>>>>> 
>>>>>>>>>>>> Does anyone have any pointers on how to create a
>> Barcode
>>>>> field
>>>>>>> using
>>>>>>>>>>> PDFBox?
>>>>>>>>>>>> As far as I can see it's a text field, but with some
>> special
>>>>>>>>> properties,
>>>>>>>>>>>> such as the PaperMetaData (PMD) object, and a
>> calculation
>>>>> script
>>>>>>> with
>>>>>>>>>>>> specific JS code for copying the value from other
>> fields.
>>>>>>>>>>>> I can handle the latter, but the former seems quite
>>>>> difficult to
>>>>>>>>>>> implement,
>>>>>>>>>>>> so any help would be appreciated.
>>>>>>>>>>>> 
>>>>>>>>>>>> Thanks in advance,
>>>>>>>>>>>> Gilad
>>>>>>> 
>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail:
>> users-unsubscr...@pdfbox.apache.org
>>>>>>>>>>> For additional commands, e-mail:
>> users-h...@pdfbox.apache.org
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>> 
>>>>>>> 
>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
>>>>>>> For additional commands, e-mail: users-h...@pdfbox.apache.org
>>>>>>> 
>>>>>>> 
>>>>> --
>>>>> Maruan Sahyoun
>>>>> 
>>>>> FileAffairs GmbH
>>>>> Josef-Schappe-Straße 21
>>>>> 40882 Ratingen
>>>>> 
>>>>> Tel: +49 (2102) 89497 88
>>>>> Fax: +49 (2102) 89497 91
>>>>> sahy...@fileaffairs.de
>>>>> www.fileaffairs.de
>>>>> 
>>>>> Geschäftsführer: Maruan Sahyoun
>>>>> Handelsregister: AG Düsseldorf, HRB 53837
>>>>> UST.-ID: DE248275827
>>>>> 
>>>>> 
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
>>>>> For additional commands, e-mail: users-h...@pdfbox.apache.org
>>>>> 
>>>>> 
>> --
>> Maruan Sahyoun
>> 
>> FileAffairs GmbH
>> Josef-Schappe-Straße 21
>> 40882 Ratingen
>> 
>> Tel: +49 (2102) 89497 88
>> Fax: +49 (2102) 89497 91
>> sahy...@fileaffairs.de
>> www.fileaffairs.de
>> 
>> Geschäftsführer: Maruan Sahyoun
>> Handelsregister: AG Düsseldorf, HRB 53837
>> UST.-ID: DE248275827
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
>> For additional commands, e-mail: users-h...@pdfbox.apache.org
>> 
>> 

Reply via email to