You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by "simon steiner (JIRA)" <ji...@apache.org> on 2018/05/16 12:56:00 UTC

[jira] [Resolved] (FOP-856) problem displaying Japanese fonts in PDF.

     [ https://issues.apache.org/jira/browse/FOP-856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

simon steiner resolved FOP-856.
-------------------------------
    Resolution: Cannot Reproduce

> problem displaying Japanese fonts in PDF.
> -----------------------------------------
>
>                 Key: FOP-856
>                 URL: https://issues.apache.org/jira/browse/FOP-856
>             Project: FOP
>          Issue Type: Bug
>          Components: renderer/pdf
>    Affects Versions: 0.15
>         Environment: Operating System: All
> Platform: HP
>            Reporter: shyama
>
> I have a problem while rendering XML containing unicode characters into japanese
> characters.
>    I am working on Weblogic 8.1 on NT OS. When the font
> file(Msmincho.ttf) is placed in c:/winnt/fonts
> directory the rendering works fine and pdf is
> generated with Japanese Characters. But when the ttf
> file is place in a different folder I get the
> following exception even though I have made an entry in basedir element of
> userconfig file.
> java.lang.NullPointerException
>         at
> org.apache.fop.render.pdf.fonts.LazyFont.getAscender(LazyFont.java:82)
>         at
> org.apache.fop.layout.FontState.getAscender(FontState.java:56)
>         at
> org.apache.fop.layout.LineArea.<init>(LineArea.java:111)
>         at
> org.apache.fop.layout.BlockArea.start(BlockArea.java:181)
>         at
> org.apache.fop.fo.flow.Block.layout(Block.java:251)
>         at
> org.apache.fop.fo.flow.TableCell.layout(TableCell.java:269)
>         at
> org.apache.fop.fo.flow.TableRow.layout(TableRow.java:344)
>         at
> org.apache.fop.fo.flow.TableBody.layout(TableBody.java:172)
>         at
> org.apache.fop.fo.flow.Table.layout(Table.java:247)
>         at
> org.apache.fop.fo.flow.Flow.layout(Flow.java:156)
>         at
> org.apache.fop.fo.flow.Flow.layout(Flow.java:113)
>         at
> org.apache.fop.fo.pagination.PageSequence.format(PageSequence.java:296)
>         at
> org.apache.fop.apps.StreamRenderer.render(StreamRenderer.java:200)
>         at
> org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:182)
>         at
> org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
> Source)
>         at
> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
> Source)
>         at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
>         at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
>         at
> org.apache.xerces.parsers.DTDConfiguration.parse(Unknown
> Source)
>         at
> org.apache.xerces.parsers.DTDConfiguration.parse(Unknown
> Source)
>         at
> org.apache.xerces.parsers.XMLParser.parse(Unknown
> Source)
>         at
> org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
> Source)
>         at
> org.apache.fop.apps.Driver.render(Driver.java:481)
>         at
> org.apache.fop.apps.Driver.run(Driver.java:554)
>         at
> com.db.eqr.ger.ui.web.company.pdf.GenerateMYPDF.createPDF(GenerateMYPDF.java:150)
>         at
> com.db.eqr.ger.ui.web.company.pdf.CompanyPDFAction.execute(CompanyPDFAction.java:146)
>         at
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:465)
>         at
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
>         at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1422)
>         at
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:523)
>         at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
>         at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
>         at
> weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
>         at
> weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> Can anyone help me out and let me know what could be the problem here.
>  I have used the following userconfig file.
> <!--<!DOCTYPE configuration SYSTEM "config.dtd">-->
> <!-- 
>      this file contains templates which allow an user
> easy 
>      configuration of Fop. Actually normally you don't
> need this configuration 
>      file, but if you need to change configuration,
> you should
>      always use this file and *not* config.xml. 
>      Usage: java org.apache.fop.apps.Fop -c
> userconfig.xml -fo fo-file -pdf pdf-file
> -->
> <configuration>
> <!--  NOT IMPLEMENTED
> basedir: normally the base directory is the directory
> where the fo file is 
>          located. if you want to specify your own,
> uncomment this entry
> -->
>   <entry>
>     <key>baseDir</key>
>     <value>c:/shyamajoshi/conf/fop</value>
>   </entry>
> <!--
> ************************************************************************
>                         HYPHENATION 
> ************************************************************************
> -->
>   
> <!--
>    hyphenation directory 
>    if you want to specify your own directory with
> hyphenation pattern
>    then uncomment the next entry and add the directory
> name
> -->
> <!--
>   <entry>
>     <key>hyphenation-dir</key>
>     <value>/java/xml-fop/hyph</value>
>   </entry>
> -->
> <!--
> ************************************************************************
>   Add fonts here
> ************************************************************************
> -->
> <fonts>
>  <!-- example -->
>  <!--
>  <font metrics-file="arial.xml" kerning="yes"
> embed-file="arial.ttf">
>     <font-triplet name="Arial" style="normal"
> weight="normal"/>
>     <font-triplet name="ArialMT" style="normal"
> weight="normal"/>
>  </font>
>  <font metrics-file="arialb.xml" kerning="yes"
> embed-file="arialb.ttf">
>     <font-triplet name="Arial" style="normal"
> weight="bold"/>
>     <font-triplet name="ArialMT" style="normal"
> weight="bold"/>
>  </font>
>  <font metrics-file="ariali.xml" kerning="yes"
> embed-file="ariali.ttf">
>     <font-triplet name="Arial" style="italic"
> weight="normal"/>
>     <font-triplet name="ArialMT" style="italic"
> weight="normal"/>
>  </font>
>  <font metrics-file="arialbi.xml" kerning="yes"
> embed-file="arialbi.ttf">
>     <font-triplet name="Arial" style="italic"
> weight="bold"/>
>     <font-triplet name="ArialMT" style="italic"
> weight="bold"/>
>  </font>
>  -->
>  <!-- Example Japanese fonts
>  <font metrics-file="msgothic.xml"
> embed-file="D:\winnt\font\msgothic.ttc" kerning="yes">
>     <font-triplet name="Gothic" style="normal"
> weight="normal"/>
>     <font-triplet name="Gothic" style="normal"
> weight="bold"/>
>     <font-triplet name="Gothic" style="italic"
> weight="normal"/>
>     <font-triplet name="Gothic" style="italic"
> weight="bold"/>
>  </font>
>  <font metrics-file="msmincho.xml"
> embed-file="Cyberbit.ttf" kerning="yes">
>     <font-triplet name="Mincho" style="normal"
> weight="normal"/>
>     <font-triplet name="Mincho" style="normal"
> weight="bold"/>
>     <font-triplet name="Mincho" style="italic"
> weight="normal"/>
>     <font-triplet name="Mincho" style="italic"
> weight="bold"/>
>    </font>
>   -->
>    <font metrics-file="msmincho.xml"
> embed-file="msmincho.ttf" kerning="yes">
>       <font-triplet name="MSMincho" style="normal"
> weight="normal"/>
>       <font-triplet name="MSMincho" style="normal"
> weight="bold"/>
>       <font-triplet name="MSMincho" style="italic"
> weight="normal"/>
>       <font-triplet name="MSMincho" style="italic"
> weight="bold"/>
>    </font>
>   
> </fonts>
> </configuration>
> Regards,
> Shyama



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)