Re: IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-28 Thread John Hewson

> On 28 May 2015, at 03:38, Johanneke Lamberink  
> wrote:
> 
> Thanks for explaining!
> 
> Using a Helvetica.ttf file I was able to solve the error about 8-bit code
> points. Apparently the PDType1Font.HELVETICA does not include all
> characters that are supported by Helvectica.

That's right, in PDF you're always accessing a font via an Encoding, which is 
typically smaller than the font itself and usually pre-dates Unicode.

> The new line is now handled before calling showText().

Great!

-- John

> Johanneke Lamberink
> 
> 
> 
> 
> 
> Op 28/5/15 01:05 schreef John Hewson :
> 
>> 
>>> On 27 May 2015, at 03:38, Johanneke Lamberink
>>>  wrote:
>>> 
>>> Hi,
>>> 
>>> The string with the U+000A (LF) is retrieved by calling
>>> PDAnnotation.getContents().
>>> I expected to be able to use the String returned by that method in
>>> PDPageContentStream.showText(), but apparently that is not the case.
>>> 
>>> Thanks.
>> 
>> If there¹s an appearance stream (AP) for the field then that will take
>> precedence over the
>> Contents. If there¹s not, then it¹s always possible that the Contents is
>> using glyphs which
>> are missing in the font. PDF doesn¹t understand newlines anyway, so an LF
>> character in
>> the text would need to be handled at some higher level than showText().
>> Indeed, LF is not
>> even present in WinAnsiEncoding which is why you¹re seeing an error when
>> using
>> PDType1Font.HELVETICA.
>> 
>> ‹ John
>> 
>>> 
>>> Johanneke Lamberink
>>> 
>>> Onior Group B.V.
>>> Jan Pieterszoon Coenstraat  7
>>> 2595 WP Den Haag
>>> The Netherlands
>>> Office: +31 70 799 94 85 Mobile: + 31 6 23 76 76 45
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> Op 27/5/15 12:28 schreef Andreas Lehmkühler :
>>> 
 Hi,
 
> Johanneke Lamberink  hat am 27. Mai
> 2015
> um
> 10:52 geschrieben:
> 
> 
> Hi,
> 
> When writing a given String to a PDF I am encountering the following
> stacktraces in the logging:
> 
> 
> Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in
> font
> Helvetica
>   at
> 
> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
>   at 
> org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>   at
> 
> 
> org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStr
> ea
> m.java:358)
> 
> and:
> 
> 
> 
> Caused by: java.lang.IllegalArgumentException: This font type only
> supports
> 8-bit code points
>   at
> 
> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
>   at 
> org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>   at
> org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)
> 
> I am not sure if this is a problem in my choice of font, my use of the
> api, or
> the encoding done by pdfbox.
> 
> Can anyone explain to me what it is that is going wrong here?
 U+000A sounds like line feed. Does your string contain any newline
 characters
 like CR or LF? You have to remove those, as you have to manage line
 breaks
 yourself.
 
> Thanks :)
> 
> 
> Johanneke Lamberink
 
 BR
 Andreas Lehmkühler
 
 -
 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
>> 
>> 
>> -
>> 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
> 

-
To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: users-h...@pdfbox.apache.org



Re: IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-28 Thread Johanneke Lamberink
Thanks for explaining!

Using a Helvetica.ttf file I was able to solve the error about 8-bit code
points. Apparently the PDType1Font.HELVETICA does not include all
characters that are supported by Helvectica.
The new line is now handled before calling showText().


Johanneke Lamberink





Op 28/5/15 01:05 schreef John Hewson :

>
>> On 27 May 2015, at 03:38, Johanneke Lamberink
>> wrote:
>> 
>> Hi,
>> 
>> The string with the U+000A (LF) is retrieved by calling
>> PDAnnotation.getContents().
>> I expected to be able to use the String returned by that method in
>> PDPageContentStream.showText(), but apparently that is not the case.
>> 
>> Thanks.
>
>If there¹s an appearance stream (AP) for the field then that will take
>precedence over the
>Contents. If there¹s not, then it¹s always possible that the Contents is
>using glyphs which
>are missing in the font. PDF doesn¹t understand newlines anyway, so an LF
>character in
>the text would need to be handled at some higher level than showText().
>Indeed, LF is not
>even present in WinAnsiEncoding which is why you¹re seeing an error when
>using
>PDType1Font.HELVETICA.
>
>‹ John
>
>> 
>> Johanneke Lamberink
>> 
>> Onior Group B.V.
>> Jan Pieterszoon Coenstraat  7
>> 2595 WP Den Haag
>> The Netherlands
>> Office: +31 70 799 94 85 Mobile: + 31 6 23 76 76 45
>> 
>> 
>> 
>> 
>> 
>> 
>> Op 27/5/15 12:28 schreef Andreas Lehmkühler :
>> 
>>> Hi,
>>> 
 Johanneke Lamberink  hat am 27. Mai
2015
 um
 10:52 geschrieben:
 
 
 Hi,
 
 When writing a given String to a PDF I am encountering the following
 stacktraces in the logging:
 
 
 Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in
 font
 Helvetica
at
 
org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
at 
org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
at
 
 
org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStr
ea
 m.java:358)
 
 and:
 
 
 
 Caused by: java.lang.IllegalArgumentException: This font type only
 supports
 8-bit code points
at
 
org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
at 
org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
at
 org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)
 
 I am not sure if this is a problem in my choice of font, my use of the
 api, or
 the encoding done by pdfbox.
 
 Can anyone explain to me what it is that is going wrong here?
>>> U+000A sounds like line feed. Does your string contain any newline
>>> characters
>>> like CR or LF? You have to remove those, as you have to manage line
>>>breaks
>>> yourself.
>>> 
 Thanks :)
 
 
 Johanneke Lamberink
>>> 
>>> BR
>>> Andreas Lehmkühler
>>> 
>>> -
>>> 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
>> 
>
>
>-
>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



Re: IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-27 Thread John Hewson

> On 27 May 2015, at 03:38, Johanneke Lamberink  
> wrote:
> 
> Hi,
> 
> The string with the U+000A (LF) is retrieved by calling
> PDAnnotation.getContents().
> I expected to be able to use the String returned by that method in
> PDPageContentStream.showText(), but apparently that is not the case.
> 
> Thanks.

If there’s an appearance stream (AP) for the field then that will take 
precedence over the
Contents. If there’s not, then it’s always possible that the Contents is using 
glyphs which
are missing in the font. PDF doesn’t understand newlines anyway, so an LF 
character in
the text would need to be handled at some higher level than showText(). Indeed, 
LF is not
even present in WinAnsiEncoding which is why you’re seeing an error when using
PDType1Font.HELVETICA.

— John

> 
> Johanneke Lamberink
> 
> Onior Group B.V.
> Jan Pieterszoon Coenstraat  7
> 2595 WP Den Haag
> The Netherlands
> Office: +31 70 799 94 85 Mobile: + 31 6 23 76 76 45
> 
> 
> 
> 
> 
> 
> Op 27/5/15 12:28 schreef Andreas Lehmkühler :
> 
>> Hi,
>> 
>>> Johanneke Lamberink  hat am 27. Mai 2015
>>> um
>>> 10:52 geschrieben:
>>> 
>>> 
>>> Hi,
>>> 
>>> When writing a given String to a PDF I am encountering the following
>>> stacktraces in the logging:
>>> 
>>> 
>>> Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in
>>> font
>>> Helvetica
>>>at
>>> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
>>>at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>>>at
>>> 
>>> org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStrea
>>> m.java:358)
>>> 
>>> and:
>>> 
>>> 
>>> 
>>> Caused by: java.lang.IllegalArgumentException: This font type only
>>> supports
>>> 8-bit code points
>>>at
>>> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
>>>at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>>>at
>>> org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)
>>> 
>>> I am not sure if this is a problem in my choice of font, my use of the
>>> api, or
>>> the encoding done by pdfbox.
>>> 
>>> Can anyone explain to me what it is that is going wrong here?
>> U+000A sounds like line feed. Does your string contain any newline
>> characters
>> like CR or LF? You have to remove those, as you have to manage line breaks
>> yourself.
>> 
>>> Thanks :)
>>> 
>>> 
>>> Johanneke Lamberink
>> 
>> BR
>> Andreas Lehmkühler
>> 
>> -
>> 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
> 


-
To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: users-h...@pdfbox.apache.org



Re: IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-27 Thread Johanneke Lamberink
Hi,

The string with the U+000A (LF) is retrieved by calling
PDAnnotation.getContents().
I expected to be able to use the String returned by that method in
PDPageContentStream.showText(), but apparently that is not the case.

Thanks.


Johanneke Lamberink

Onior Group B.V.
Jan Pieterszoon Coenstraat  7
2595 WP Den Haag
The Netherlands
Office: +31 70 799 94 85 Mobile: + 31 6 23 76 76 45






Op 27/5/15 12:28 schreef Andreas Lehmkühler :

>Hi,
>
>> Johanneke Lamberink  hat am 27. Mai 2015
>>um
>> 10:52 geschrieben:
>> 
>> 
>> Hi,
>> 
>> When writing a given String to a PDF I am encountering the following
>> stacktraces in the logging:
>> 
>> 
>> Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in
>>font
>> Helvetica
>> at
>> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
>> at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>> at
>> 
>>org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStrea
>>m.java:358)
>> 
>> and:
>> 
>> 
>> 
>> Caused by: java.lang.IllegalArgumentException: This font type only
>>supports
>> 8-bit code points
>> at
>> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
>> at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
>> at
>> org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)
>> 
>> I am not sure if this is a problem in my choice of font, my use of the
>>api, or
>> the encoding done by pdfbox.
>> 
>> Can anyone explain to me what it is that is going wrong here?
>U+000A sounds like line feed. Does your string contain any newline
>characters
>like CR or LF? You have to remove those, as you have to manage line breaks
>yourself.
>
>> Thanks :)
>> 
>> 
>> Johanneke Lamberink
>
>BR
>Andreas Lehmkühler
>
>-
>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



Re: IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-27 Thread Andreas Lehmkühler
Hi,

> Johanneke Lamberink  hat am 27. Mai 2015 um
> 10:52 geschrieben:
> 
> 
> Hi,
> 
> When writing a given String to a PDF I am encountering the following
> stacktraces in the logging:
> 
> 
> Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in font
> Helvetica
> at
> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
> at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
> at
> org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStream.java:358)
> 
> and:
> 
> 
> 
> Caused by: java.lang.IllegalArgumentException: This font type only supports
> 8-bit code points
> at
> org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
> at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
> at
> org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)
> 
> I am not sure if this is a problem in my choice of font, my use of the api, or
> the encoding done by pdfbox.
> 
> Can anyone explain to me what it is that is going wrong here?
U+000A sounds like line feed. Does your string contain any newline characters
like CR or LF? You have to remove those, as you have to manage line breaks
yourself.

> Thanks :)
> 
> 
> Johanneke Lamberink

BR
Andreas Lehmkühler

-
To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: users-h...@pdfbox.apache.org



IllegalArgumentException when using PDType1Font.HELVETICA

2015-05-27 Thread Johanneke Lamberink
Hi,

When writing a given String to a PDF I am encountering the following 
stacktraces in the logging:


Caused by: java.lang.IllegalArgumentException: No glyph for U+000A in font 
Helvetica
at 
org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:320)
at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
at 
org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStream.java:358)

and:



Caused by: java.lang.IllegalArgumentException: This font type only supports 
8-bit code points
at 
org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:311)
at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:282)
at org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:311)

I am not sure if this is a problem in my choice of font, my use of the api, or 
the encoding done by pdfbox.

Can anyone explain to me what it is that is going wrong here?

Thanks :)


Johanneke Lamberink