[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

IFontProvider

Interface IFontProvider


public interface IFontProvider
以流的形式提供字体文件,用于 AutoFit、PDF 导出和图片导出。

实现此接口并将实例赋值给 Workbook.FontProvider。 getFontFilePaths() 返回可用字体文件的路径或资源名称,这些返回值会传递给 getFont(String),以打开对应的字体流。返回的流在使用后会被关闭。


 IFontProvider currentProvider = Workbook.FontProvider;
 try {
     Workbook.FontProvider = new IFontProvider() {
         public List<String> getFontFilePaths() {
             return Arrays.asList("fonts/BIZ-UDMinchoM.ttc");
         }
 
         public InputStream getFont(String fontFilePath) {
             return getClass().getClassLoader().getResourceAsStream(fontFilePath);
         }
     };
 
     Workbook workbook = new Workbook();
     IWorksheet worksheet = workbook.getWorksheets().get(0);
 
     worksheet.getRange("A1").setValue("あなたは日本語を話せますか?");
     worksheet.getRange("A1").getFont().setName("BIZ UDMincho");
     worksheet.getRange("A:A").autoFit();
 } finally {
     Workbook.FontProvider = currentProvider;
 }
 
  • Method Summary

    Modifier and Type
    Method
    Description
    getFont(String fontFilePath)
    根据 getFontFilePaths() 返回的字体文件路径或资源名称,返回对应字体文件的可读流。返回的流在使用后会被关闭。
    返回可由 getFont(String) 打开的字体文件路径或资源名称,这些字体可用于 AutoFit、PDF 导出和图片导出。
  • Method Details

    • getFontFilePaths

      List<String> getFontFilePaths()
      返回可由 getFont(String) 打开的字体文件路径或资源名称,这些字体可用于 AutoFit、PDF 导出和图片导出。
      
       IFontProvider fontProvider = new IFontProvider() {
           public List<String> getFontFilePaths() {
               return Arrays.asList("fonts/BIZ-UDMinchoM.ttc");
           }
       
           public InputStream getFont(String fontFilePath) {
               return getClass().getClassLoader().getResourceAsStream(fontFilePath);
           }
       };
       List<String> fontFilePaths = fontProvider.getFontFilePaths();
       
      Returns:
      可由 getFont(String) 打开的字体文件路径或资源名称。
    • getFont

      InputStream getFont(String fontFilePath)
      根据 getFontFilePaths() 返回的字体文件路径或资源名称,返回对应字体文件的可读流。返回的流在使用后会被关闭。
      
       IFontProvider fontProvider = new IFontProvider() {
           public List<String> getFontFilePaths() {
               return Arrays.asList("fonts/BIZ-UDMinchoM.ttc");
           }
       
           public InputStream getFont(String fontFilePath) {
               return getClass().getClassLoader().getResourceAsStream(fontFilePath);
           }
       };
       InputStream fontStream = fontProvider.getFont("fonts/BIZ-UDMinchoM.ttc");
       
      Parameters:
      fontFilePath - 由 getFontFilePaths() 返回的字体文件路径或资源名称。
      Returns:
      指定字体的可读流。