Thanks.

Actually the thing is: WITH command line option -c $configpath, DESPITE the
errors, PDF is generated fine with the correct fonts loaded. However it
takes TOO much memory and CPU.

WITHOUT command line option -c $configpath, it doesn't take too much memory
and CPU (we have to generate hundereds of letters on runtime as the software
is for a debt collection agency whose staff constantly generates reminder
letters and then there are automated letters based on the workflow defined)
but doesn't load fonts at all (it gives warnings on AventGarde Md BT as well
as Arial - the two fonts we use in our letters).

I thought it might be something to do with the paths in the config so I
tried placing fonts and metrics file in the root fop folder and that doesn't
work either.

By the way, the barcode example in fop doesn't work either. And while
looking at it's instructions, I decided to compile fop from source. However,
while compiling javac gives error of memory and somehow on mac I can't
increase the memory with
java -Xms2G. It says:

Error occurred during initialization of VM
Incompatible minimum and maximum heap sizes specified

My programming background is system programming with C/C++ (on *nix and
Windows) with some exposure to Java. I just need some pointers moving
forward.

a. How can I solve the java compilation issue for fop (has anyone ever faced
this on MAC, I couldn't find it much Google)?
b. Can someone explain how fop loads fonts or finds fonts? May be if I
understand what's going underneath, I can solve this.

Best wishes and thanks for the help so far.

Ali

On Fri, Sep 10, 2010 at 10:37 AM, Glenn Adams <[email protected]> wrote:

> inline
>
> On Fri, Sep 10, 2010 at 4:04 PM, ali naqi <[email protected]>wrote:
>
>> By the way..
>>
>> if I execute ./fop example.fo example.pdf
>>
>> The output is as follows:
>>
>
> [GA] The following errors could mean that the family name "AvantGarde Md
> BT" does not match the name used in the font. Check that with the "Font
> Book" application in your application folder. It could also mean that it
> didn't find the font in the font cache because it was not able to complete
> processing the auto-detect process. See more below.
>
>
>>
>> Sep 10, 2010 10:01:30 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "AvantGarde Md BT,normal,700" not found. Substituting with
>> "any,normal,700".
>> Sep 10, 2010 10:01:30 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> INFO: table-layout="fixed" and width="auto", but auto-layout not supported
>> => assuming width="100%". (See position 20:197)
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "Arial,normal,400" not found. Substituting with
>> "any,normal,400".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "Arial,normal,700" not found. Substituting with
>> "any,normal,700".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "Symbol,normal,700" not found. Substituting with
>> "Symbol,normal,400".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "ZapfDingbats,normal,700" not found. Substituting with
>> "ZapfDingbats,normal,400".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "Arial,italic,700" not found. Substituting with
>> "any,italic,700".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "Arial,italic,400" not found. Substituting with
>> "any,italic,400".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "AvantGarde Md BT,normal,400" not found. Substituting with
>> "any,normal,400".
>> Sep 10, 2010 10:01:31 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Font "AvantGarde Bk BT,normal,400" not found. Substituting with
>> "any,normal,400".
>> [Deprecated] Xalan: org.apache.xml.serializer.XMLEntities
>>
>> The PDF is generated without the fonts.
>>
>> And if I execute:
>>
>> ./fop example.fo example.pdf -c conf/fop.xconf
>>
>> I get errors like:
>>
>
> [GA] Sometime it is useful to read the error messages. As you can see
> below, you ran out of Java heap space before FOP finished processing the
> auto-detect process, this resulted in not populating the FOP font cache
> correctly. Try repeating the procedure I gave before, but before doing so,
> add an environment variable as follows:
>
> export FOP_OPTS='-Xmx512m'
>
> or if that doesn't work, then
>
> export FOP_OPTS='-Xmx1024m'
>
> This will cause the JVM to be invoked with the -Xmx option increasing the
> maximum java heap size. You need to ensure that FOP finishes the font
> auto-detect process without error in order to subsequently access all the
> auto detected fonts. Note that once FOP builds its font cache, it will not
> have to process those fonts in the future (until the FOP font cache is
> deleted).
>
>>
>
>>
>> Sep 10, 2010 10:03:45 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Unable to load font file: file:/Library/Fonts/Raanana.ttf.
>> Reason: java.io.IOException: TrueType font is not supported:
>> file:/Library/Fonts/Raanana.ttf
>> Sep 10, 2010 10:03:45 AM org.apache.fop.fonts.truetype.TTFFile readCMAP
>> SEVERE: Unsupported TrueType font: No Unicode or Symbol cmap table not
>> present. Aborting
>> Sep 10, 2010 10:03:45 AM org.apache.fop.events.LoggingEventListener
>> processEvent
>> WARNING: Unable to load font file: file:/Library/Fonts/RaananaBold.ttf.
>> Reason: java.io.IOException: TrueType font is not supported:
>> file:/Library/Fonts/RaananaBold.ttf
>> ...
>> WARNING: Unable to load font file: file:/Library/Fonts/Skia.ttf. Reason:
>> java.io.IOException: TrueType font is not supported:
>> file:/Library/Fonts/Skia.ttf
>> Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
>> at
>> org.apache.commons.io.output.ByteArrayOutputStream.toByteArray(ByteArrayOutputStream.java:237)
>>  at org.apache.commons.io.IOUtils.toByteArray(IOUtils.java:219)
>> at
>> org.apache.fop.fonts.truetype.FontFileReader.init(FontFileReader.java:45)
>>  at
>> org.apache.fop.fonts.truetype.FontFileReader.<init>(FontFileReader.java:74)
>> at
>> org.apache.fop.fonts.autodetect.FontInfoFinder.find(FontInfoFinder.java:204)
>>  at org.apache.fop.fonts.FontAdder.add(FontAdder.java:60)
>> at org.apache.fop.fonts.FontDetector.detect(FontDetector.java:90)
>>  at
>> org.apache.fop.fonts.FontInfoConfigurator.configure(FontInfoConfigurator.java:92)
>> at
>> org.apache.fop.render.PrintRendererConfigurator.buildFontList(PrintRendererConfigurator.java:106)
>>  at
>> org.apache.fop.render.PrintRendererConfigurator.setupFontInfo(PrintRendererConfigurator.java:129)
>> at org.apache.fop.render.intermediate.IFUtil.setupFonts(IFUtil.java:165)
>>  at
>> org.apache.fop.render.intermediate.IFRenderer.setupFontInfo(IFRenderer.java:181)
>> at org.apache.fop.area.RenderPagesModel.<init>(RenderPagesModel.java:73)
>>  at
>> org.apache.fop.area.AreaTreeHandler.setupModel(AreaTreeHandler.java:130)
>> at org.apache.fop.area.AreaTreeHandler.<init>(AreaTreeHandler.java:102)
>>  at
>> org.apache.fop.render.RendererFactory.createFOEventHandler(RendererFactory.java:359)
>> at org.apache.fop.fo.FOTreeBuilder.<init>(FOTreeBuilder.java:105)
>>  at org.apache.fop.apps.Fop.createDefaultHandler(Fop.java:101)
>> at org.apache.fop.apps.Fop.<init>(Fop.java:79)
>>  at org.apache.fop.apps.FopFactory.newFop(FopFactory.java:271)
>> at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:109)
>>  at org.apache.fop.cli.Main.startFOP(Main.java:174)
>> at org.apache.fop.cli.Main.main(Main.java:205)
>>
>> What could be wrong?
>>
>> On Fri, Sep 10, 2010 at 9:49 AM, ali naqi <[email protected]>wrote:
>>
>>> 1. copy avgardm.ttf into ~/Library/Fonts ... DONE
>>>
>>> 2. remove ~/.fop/fop-fonts.cache ... Could not find .fop/fop-fonts.cache
>>>
>>> 3. change your config to: ... DONE
>>>
>>>       <fonts>
>>> <auto-detect/>
>>>       </fonts>
>>>
>>> 4. re-run FOP (but don't run TTFReader) ... DONE
>>>
>>> Result: didn't work :(
>>>
>>> On Fri, Sep 10, 2010 at 8:04 AM, Glenn Adams <[email protected]> wrote:
>>>
>>>> i would suggest the following:
>>>>
>>>> 1. copy avgardm.ttf into ~/Library/Fonts
>>>>
>>>> 2. remove ~/.fop/fop-fonts.cache
>>>>
>>>> 3. change your config to:
>>>>
>>>>       <fonts>
>>>> <auto-detect/>
>>>>       </fonts>
>>>>
>>>> 4. re-run FOP (but don't run TTFReader)
>>>>
>>>> On Fri, Sep 10, 2010 at 1:53 PM, ali naqi 
>>>> <[email protected]>wrote:
>>>>
>>>>> Okay here are more details.
>>>>>
>>>>> Front I am trying to use: AvantGarde Md BT. This is Windows TrueType
>>>>> fonts.
>>>>>
>>>>> My fo file looks like this:
>>>>>
>>>>> <fo:inline font-family="AvantGarde Md BT" font-size="9pt"
>>>>> font-weight="bold" color="rgb(135,135,135)">
>>>>>
>>>>> In config file I have done this:
>>>>>
>>>>> <renderers>
>>>>>     <renderer mime="application/pdf">
>>>>>       <fonts>
>>>>> <font embed-url="/fop/fop-1.0/fonts/AVGARDM.ttf">
>>>>>             <font-triplet name="AvantGarde Md BT" style="normal"
>>>>> weight="normal"/>
>>>>>          </font>
>>>>> <directory>/fop/fop-1.0/fonts</directory>
>>>>>  <directory recursive="true">/fop/fop-1.0/fonts</directory>
>>>>> <auto-detect/>
>>>>>       </fonts>
>>>>>
>>>>> My director structure is this:
>>>>> /fop/fop-1.0/
>>>>>
>>>>> Operating system is Mac OS X 10.6.4.
>>>>> Jave version is 1.6.0_15
>>>>>
>>>>> I also tried to use matrics file. The commandline to use matrics file
>>>>> was:
>>>>>
>>>>> java -cp
>>>>> build/fop.jar:lib/avalon-framework-4.2.0.jar:lib/commons-logging-1.0.4.jar:lib/commons-io-1.3.1.jar:lib/xmlgraphics-commons-1.4.jar
>>>>> org.apache.fop.fonts.apps.TTFReader -enc ansi 
>>>>> /fop/fop-1.0/fonts/AVGARDM.ttf
>>>>> AVGARDM.xml
>>>>>
>>>>> I also tried without using -enc ansi parameter.
>>>>>
>>>>> Furthermore in config file I have also tried kerning=yes parameter.
>>>>>
>>>>> Looking forward...
>>>>>
>>>>> On Thu, Sep 9, 2010 at 8:18 PM, Eric Douglas 
>>>>> <[email protected]>wrote:
>>>>>
>>>>>> This web site explains how to reference fonts.
>>>>>> http://xmlgraphics.apache.org/fop/0.95/fonts.html
>>>>>> What syntax are you using in your config file to reference the fonts?
>>>>>> What type of fonts are they?
>>>>>> Do you have metrics files?
>>>>>>
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Ali Naqi [mailto:[email protected]]
>>>>>> Sent: Thursday, September 09, 2010 2:09 PM
>>>>>> To: [email protected]
>>>>>> Subject: Re: Custom font issue
>>>>>>
>>>>>> what i am trying to say is that custom fonts load fine when we specify
>>>>>> -c $fop-config-path, however when we do this a single file takes 300mb
>>>>>> and over 30 seconds.
>>>>>>
>>>>>> while debugging this we tried to convert with default option ie no
>>>>>> config path. Simple fop input.fo ouput.pdf. it works like a charm
>>>>>> except
>>>>>> that it didnt load our custom fonts.
>>>>>>
>>>>>> so we tried to put config in system wide path, modified config to load
>>>>>> custom fonts explicitly etc. Nothing works... and i have lost 15% of
>>>>>> my
>>>>>> hair in the process.
>>>>>>
>>>>>> Hope this helps in some / any pointers in any direction !!
>>>>>>
>>>>>> Thanks
>>>>>> Ali
>>>>>>
>>>>>>
>>>>>>
>>>>>> Sent from my iPhone
>>>>>>
>>>>>> On 09.09.2010, at 19:22, "Eric Douglas" <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>> > What are you trying to say?
>>>>>> > You're saying you got it to work with the configuration file?
>>>>>> > What are you trying to do which isn't working?
>>>>>> > Are you saying using the configuration file without modification
>>>>>> works
>>>>>>
>>>>>> > but takes up too much resources?
>>>>>> > I just tested FOP 0.95 on mine using a configuration file and a
>>>>>> > command line and it ran really fast and produced proper output.
>>>>>> > I think we need more details.
>>>>>> >
>>>>>> > -----Original Message-----
>>>>>> > From: Ali Shaheen [mailto:[email protected]]
>>>>>> > Sent: Thursday, September 09, 2010 1:16 PM
>>>>>> > To: [email protected]
>>>>>> > Subject: Custom font issue
>>>>>> >
>>>>>> > Hello guys,
>>>>>> >
>>>>>> > We have a strange issue. We are using some custom fonts in and we
>>>>>> > generate pdfs using command line. IF we specify the fop
>>>>>> configuration
>>>>>> > file (not edited) via -c , the custom fonts are loaded fine. If not
>>>>>> > they aren't loaded!
>>>>>> >
>>>>>> > We tried changing system wide path, embedding fonts directly in fop
>>>>>> > configuration as per the online guideline but nothing works.
>>>>>> >
>>>>>> > It only works via command line -c switch and if we use that each
>>>>>> > document takes 350Mb and 100% CPU - without this parameter, it's
>>>>>> fine.
>>>>>> >
>>>>>> > We are using FOP 0.95.
>>>>>> >
>>>>>> > Please see the example fo file too.
>>>>>> >
>>>>>> > What to do?
>>>>>> >
>>>>>> > Best wishes,
>>>>>> > Ali
>>>>>> >
>>>>>> >
>>>>>> ---------------------------------------------------------------------
>>>>>> > To unsubscribe, e-mail:
>>>>>> [email protected]
>>>>>> > For additional commands, e-mail:
>>>>>> [email protected]
>>>>>> >
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail:
>>>>>> [email protected]
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail:
>>>>>> [email protected]
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ali Naqi Shaheen
>>>>> Geschäftsführer
>>>>>
>>>>> -----------------------------------
>>>>> Coeus Solutions GmbH,
>>>>> Finkenstr 7,
>>>>> 80333 Munich,
>>>>>
>>>>> Mob.: +49-151-51633365
>>>>> E-Mail: [email protected]
>>>>> Web: http://www.coeus-solutions.de
>>>>>
>>>>> Geschäftsführer: Ali Naqi Shaheen
>>>>> Registergericht München
>>>>> HRB: 172737
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Ali Naqi Shaheen
>>> Geschäftsführer
>>>
>>> -----------------------------------
>>> Coeus Solutions GmbH,
>>> Finkenstr 7,
>>> 80333 Munich,
>>>
>>> Mob.: +49-151-51633365
>>> E-Mail: [email protected]
>>> Web: http://www.coeus-solutions.de
>>>
>>> Geschäftsführer: Ali Naqi Shaheen
>>> Registergericht München
>>> HRB: 172737
>>>
>>
>>
>>
>> --
>> Ali Naqi Shaheen
>> Geschäftsführer
>>
>> -----------------------------------
>> Coeus Solutions GmbH,
>> Finkenstr 7,
>> 80333 Munich,
>>
>> Mob.: +49-151-51633365
>> E-Mail: [email protected]
>> Web: http://www.coeus-solutions.de
>>
>> Geschäftsführer: Ali Naqi Shaheen
>> Registergericht München
>> HRB: 172737
>>
>
>


-- 
Ali Naqi Shaheen
Geschäftsführer

-----------------------------------
Coeus Solutions GmbH,
Finkenstr 7,
80333 Munich,

Mob.: +49-151-51633365
E-Mail: [email protected]
Web: http://www.coeus-solutions.de

Geschäftsführer: Ali Naqi Shaheen
Registergericht München
HRB: 172737

Reply via email to