Ignore:
Timestamp:
02/22/08 14:51:39 (4 years ago)
Author:
jharrop
Message:

Describe algorithm for font handling (to be implemented)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/docx4j/src/main/java/org/docx4j/openpackaging/packages/WordprocessingMLPackage.java

    r125 r140  
    211211                log.info("wordDocument created for PDF rendering!"); 
    212212                 
     213                 
     214                 
    213215                // Now transform this into XHTML 
    214216                javax.xml.transform.TransformerFactory tfactory = javax.xml.transform.TransformerFactory.newInstance(); 
     
    273275                // Now render the XHTML 
    274276                org.xhtmlrenderer.pdf.ITextRenderer renderer = new org.xhtmlrenderer.pdf.ITextRenderer(); 
     277                 
     278                // TODO: Handle fonts 
     279                // - this is platform specific 
     280                // Algorithm - to be implemented: 
     281                // 1.  Get a list of all the fonts in the document 
     282                // 2.  For each font, find the closest match on the system (use OO's VCL.xcu to do this) 
     283                //     - do this in a general way, since docx4all needs this as well to display fonts 
     284                // 3.  Ensure that the font names in the XHTML have been mapped to these matches 
     285                //     possibly via an extension function in the XSLT 
     286                // 4.  Use addFont code like that below as necessary for the fonts 
     287                 
     288                        // See https://xhtmlrenderer.dev.java.net/r7/users-guide-r7.html#xil_32 
     289                org.xhtmlrenderer.extend.FontResolver resolver = renderer.getFontResolver(); 
     290                 
     291                log.info("OS: " + System.getProperty("os.name") ); 
     292                if (System.getProperty("os.name").toUpperCase().indexOf("WINDOWS")>-1) { 
     293                        log.info("Detected Windows - "); 
     294                        renderer.getFontResolver().addFont("C:\\WINDOWS\\FONTS\\ARIAL.TTF", true); 
     295                        renderer.getFontResolver().addFont("C:\\WINDOWS\\FONTS\\COMIC.TTF", true); 
     296                        renderer.getFontResolver().addFont("C:\\WINDOWS\\FONTS\\TREBUC.TTF", true); 
     297                        renderer.getFontResolver().addFont("C:\\WINDOWS\\FONTS\\VERDANA.TTF", true); 
     298                } 
     299                 
    275300                renderer.setDocument(xhtmlDoc, null); 
    276301                renderer.layout(); 
Note: See TracChangeset for help on using the changeset viewer.