com.aspose.words

Class FileFontSource

  • All Implemented Interfaces:
    com.aspose.words.internal.zzMI, com.aspose.words.internal.zzMI
    public class FileFontSource 
    extends FontSourceBase

Represents the single TrueType font file stored in the file system.

Example:

Shows how to use a font file in the local file system as a font source.
FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);

Document doc = new Document();
doc.setFontSettings(new FontSettings());
doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});

Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
Assert.assertEquals(0, fileFontSource.getPriority());

Constructor Summary
FileFontSource(java.lang.StringfilePath)
Ctor.
FileFontSource(java.lang.StringfilePath, intpriority)
Ctor.
 
Property Getters/Setters Summary
java.lang.StringgetFilePath()
Path to the font file.
intgetPriority()
Returns the font source priority.
intgetType()
Returns the type of the font source. The value of the property is FontSourceType integer constant.
IWarningCallbackgetWarningCallback()
void
           Called during processing of font source when an issue is detected that might result in formatting fidelity loss.
 
Method Summary
java.util.ArrayList<PhysicalFontInfo>getAvailableFonts()
Returns list of fonts available via this source.
 

    • Constructor Detail

      • FileFontSource

        public FileFontSource(java.lang.String filePath)
        Ctor.
        Parameters:
        filePath - Path to font file.

        Example:

        Shows how to use a font file in the local file system as a font source.
        FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);
        
        Document doc = new Document();
        doc.setFontSettings(new FontSettings());
        doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});
        
        Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
        Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
        Assert.assertEquals(0, fileFontSource.getPriority());
      • FileFontSource

        public FileFontSource(java.lang.String filePath, int priority)
        Ctor.
        Parameters:
        filePath - Path to font file.
        priority - Font source priority. See the Priority property description for more information.

        Example:

        Shows how to use a font file in the local file system as a font source.
        FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);
        
        Document doc = new Document();
        doc.setFontSettings(new FontSettings());
        doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});
        
        Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
        Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
        Assert.assertEquals(0, fileFontSource.getPriority());
    • Property Getters/Setters Detail

      • getFilePath

        public java.lang.String getFilePath()
        
        Path to the font file.

        Example:

        Shows how to use a font file in the local file system as a font source.
        FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);
        
        Document doc = new Document();
        doc.setFontSettings(new FontSettings());
        doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});
        
        Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
        Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
        Assert.assertEquals(0, fileFontSource.getPriority());
      • getPriority

        public int getPriority()
        
        Returns the font source priority.

        This value is used when there are fonts with the same family name and style in different font sources. In this case Aspose.Words selects the font from the source with the higher priority value.

        The default value is 0.

        Example:

        Shows how to use a font file in the local file system as a font source.
        FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);
        
        Document doc = new Document();
        doc.setFontSettings(new FontSettings());
        doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});
        
        Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
        Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
        Assert.assertEquals(0, fileFontSource.getPriority());
      • getType

        public int getType()
        
        Returns the type of the font source. The value of the property is FontSourceType integer constant.

        Example:

        Shows how to use a font file in the local file system as a font source.
        FileFontSource fileFontSource = new FileFontSource(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", 0);
        
        Document doc = new Document();
        doc.setFontSettings(new FontSettings());
        doc.getFontSettings().setFontsSources(new FontSourceBase[]{fileFontSource});
        
        Assert.assertEquals(getMyDir() + "Alte DIN 1451 Mittelschrift.ttf", fileFontSource.getFilePath());
        Assert.assertEquals(FontSourceType.FONT_FILE, fileFontSource.getType());
        Assert.assertEquals(0, fileFontSource.getPriority());
      • getWarningCallback/setWarningCallback

        public IWarningCallback getWarningCallback() / public void setWarningCallback(IWarningCallback value)
        
        Called during processing of font source when an issue is detected that might result in formatting fidelity loss.

        Example:

        Shows how to call warning callback when the font sources working with.
        @Test
        public void fontSourceWarning()
        {
            FontSettings settings = new FontSettings();
            settings.setFontsFolder("bad folder?", false);
        
            FontSourceBase source = settings.getFontsSources()[0];
            FontSourceWarningCollector callback = new FontSourceWarningCollector();
            source.setWarningCallback(callback);
        
            // Get the list of fonts to call warning callback.
            ArrayList<PhysicalFontInfo> fontInfos = source.getAvailableFonts();
        
            Assert.assertEquals("Error loading font from the folder \"bad folder?\": ",
                callback.FontSubstitutionWarnings.get(0).getDescription());
        }
        
        private static class FontSourceWarningCollector implements IWarningCallback
        {
            /// <summary>
            /// Called every time a warning occurs during processing of font source.
            /// </summary>
            public void warning(WarningInfo info)
            {
                FontSubstitutionWarnings.warning(info);
            }
        
            public WarningInfoCollection FontSubstitutionWarnings = new WarningInfoCollection();
        }
    • Method Detail

      • getAvailableFonts

        public java.util.ArrayList<PhysicalFontInfo> getAvailableFonts()
        Returns list of fonts available via this source.

        Example:

        Shows how to list available fonts.
        // Configure Aspose.Words to source fonts from a custom folder, and then print every available font.
        FontSourceBase[] folderFontSource = {new FolderFontSource(getFontsDir(), true)};
        
        for (PhysicalFontInfo fontInfo : folderFontSource[0].getAvailableFonts()) {
            System.out.println(MessageFormat.format("FontFamilyName : {0}", fontInfo.getFontFamilyName()));
            System.out.println(MessageFormat.format("FullFontName  : {0}", fontInfo.getFullFontName()));
            System.out.println(MessageFormat.format("Version  : {0}", fontInfo.getVersion()));
            System.out.println(MessageFormat.format("FilePath : {0}\n", fontInfo.getFilePath()));
        }