当前位置: 首页>>代码示例>>Java>>正文


Java FcCompFont类代码示例

本文整理汇总了Java中sun.font.FontConfigManager.FcCompFont的典型用法代码示例。如果您正苦于以下问题:Java FcCompFont类的具体用法?Java FcCompFont怎么用?Java FcCompFont使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


FcCompFont类属于sun.font.FontConfigManager包,在下文中一共展示了FcCompFont类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getFcFontList

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
private FontConfigFont[] getFcFontList(FcCompFont[] fcFonts,
                                       String fontname, int style) {

    if (fontname.equals("dialog")) {
        fontname = "sansserif";
    } else if (fontname.equals("dialoginput")) {
        fontname = "monospaced";
    }
    for (int i=0; i<fcFonts.length; i++) {
        if (fontname.equals(fcFonts[i].jdkName) &&
            style == fcFonts[i].style) {
            return fcFonts[i].allFonts;
        }
    }
    return fcFonts[0].allFonts;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:17,代码来源:FcFontConfiguration.java

示例2: getPlatformFontNames

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
@Override
public String[] getPlatformFontNames() {
    HashSet<String> nameSet = new HashSet<String>();
    X11FontManager fm = (X11FontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FcCompFont[] fcCompFonts = fcm.loadFontConfig();
    for (int i=0; i<fcCompFonts.length; i++) {
        for (int j=0; j<fcCompFonts[i].allFonts.length; j++) {
            nameSet.add(fcCompFonts[i].allFonts[j].fontFile);
        }
    }
    return nameSet.toArray(new String[0]);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:14,代码来源:FcFontConfiguration.java

示例3: getPlatformFontNames

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
@Override
public String[] getPlatformFontNames() {
    HashSet<String> nameSet = new HashSet<String>();
    FcFontManager fm = (FcFontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FcCompFont[] fcCompFonts = fcm.loadFontConfig();
    for (int i=0; i<fcCompFonts.length; i++) {
        for (int j=0; j<fcCompFonts[i].allFonts.length; j++) {
            nameSet.add(fcCompFonts[i].allFonts[j].fontFile);
        }
    }
    return nameSet.toArray(new String[0]);
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:14,代码来源:FcFontConfiguration.java

示例4: get2DCompositeFontInfo

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
@Override
public CompositeFontDescriptor[] get2DCompositeFontInfo() {

    X11FontManager fm = (X11FontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FcCompFont[] fcCompFonts = fcm.loadFontConfig();

    CompositeFontDescriptor[] result =
            new CompositeFontDescriptor[NUM_FONTS * NUM_STYLES];

    for (int fontIndex = 0; fontIndex < NUM_FONTS; fontIndex++) {
        String fontName = publicFontNames[fontIndex];

        for (int styleIndex = 0; styleIndex < NUM_STYLES; styleIndex++) {

            String faceName = fontName + "." + styleNames[styleIndex];
            FontConfigFont[] fcFonts =
                getFcFontList(fcCompFonts,
                              fontNames[fontIndex], styleIndex);

            int numFonts = fcFonts.length;
            // fall back fonts listed in the lib/fonts/fallback directory
            if (installedFallbackFontFiles != null) {
                numFonts += installedFallbackFontFiles.length;
            }

            String[] fileNames = new String[numFonts];
            String[] faceNames = new String[numFonts];

            int index;
            for (index = 0; index < fcFonts.length; index++) {
                fileNames[index] = fcFonts[index].fontFile;
                faceNames[index] = fcFonts[index].familyName;
            }

            if (installedFallbackFontFiles != null) {
                System.arraycopy(installedFallbackFontFiles, 0,
                                 fileNames, fcFonts.length,
                                 installedFallbackFontFiles.length);
            }

            result[fontIndex * NUM_STYLES + styleIndex]
                    = new CompositeFontDescriptor(
                        faceName,
                        1,
                        faceNames,
                        fileNames,
                        null, null);
        }
    }
    return result;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:53,代码来源:FcFontConfiguration.java

示例5: writeFcInfo

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
private void writeFcInfo() {
    Properties props = new Properties();
    props.setProperty("version", fileVersion);
    X11FontManager fm = (X11FontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FontConfigInfo fcInfo = fcm.getFontConfigInfo();
    props.setProperty("fcversion", Integer.toString(fcInfo.fcVersion));
    if (fcInfo.cacheDirs != null) {
        for (int i=0;i<fcInfo.cacheDirs.length;i++) {
            if (fcInfo.cacheDirs[i] != null) {
               props.setProperty("cachedir."+i,  fcInfo.cacheDirs[i]);
            }
        }
    }
    for (int i=0; i<fcCompFonts.length; i++) {
        FcCompFont fci = fcCompFonts[i];
        String styleKey = fci.jdkName+"."+fci.style;
        props.setProperty(styleKey+".length",
                          Integer.toString(fci.allFonts.length));
        for (int j=0; j<fci.allFonts.length; j++) {
            props.setProperty(styleKey+"."+j+".family",
                              fci.allFonts[j].familyName);
            props.setProperty(styleKey+"."+j+".file",
                              fci.allFonts[j].fontFile);
        }
    }
    try {
        /* This writes into a temp file then renames when done.
         * Since the rename is an atomic action within the same
         * directory no client will ever see a partially written file.
         */
        File fcInfoFile = getFcInfoFile();
        File dir = fcInfoFile.getParentFile();
        dir.mkdirs();
        File tempFile = Files.createTempFile(dir.toPath(), "fcinfo", null).toFile();
        FileOutputStream fos = new FileOutputStream(tempFile);
        props.store(fos,
                  "JDK Font Configuration Generated File: *Do Not Edit*");
        fos.close();
        boolean renamed = tempFile.renameTo(fcInfoFile);
        if (!renamed && FontUtilities.debugFonts()) {
            System.out.println("rename failed");
            warning("Failed renaming file to "+ getFcInfoFile());
        }
    } catch (Exception e) {
        if (FontUtilities.debugFonts()) {
            warning("IOException writing to "+ getFcInfoFile());
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:51,代码来源:FcFontConfiguration.java

示例6: get2DCompositeFontInfo

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
@Override
public CompositeFontDescriptor[] get2DCompositeFontInfo() {

    FcFontManager fm = (FcFontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FcCompFont[] fcCompFonts = fcm.loadFontConfig();

    CompositeFontDescriptor[] result =
            new CompositeFontDescriptor[NUM_FONTS * NUM_STYLES];

    for (int fontIndex = 0; fontIndex < NUM_FONTS; fontIndex++) {
        String fontName = publicFontNames[fontIndex];

        for (int styleIndex = 0; styleIndex < NUM_STYLES; styleIndex++) {

            String faceName = fontName + "." + styleNames[styleIndex];
            FontConfigFont[] fcFonts =
                getFcFontList(fcCompFonts,
                              fontNames[fontIndex], styleIndex);

            int numFonts = fcFonts.length;
            // fall back fonts listed in the lib/fonts/fallback directory
            if (installedFallbackFontFiles != null) {
                numFonts += installedFallbackFontFiles.length;
            }

            String[] fileNames = new String[numFonts];
            String[] faceNames = new String[numFonts];

            int index;
            for (index = 0; index < fcFonts.length; index++) {
                fileNames[index] = fcFonts[index].fontFile;
                faceNames[index] = fcFonts[index].familyName;
            }

            if (installedFallbackFontFiles != null) {
                System.arraycopy(installedFallbackFontFiles, 0,
                                 fileNames, fcFonts.length,
                                 installedFallbackFontFiles.length);
            }

            result[fontIndex * NUM_STYLES + styleIndex]
                    = new CompositeFontDescriptor(
                        faceName,
                        1,
                        faceNames,
                        fileNames,
                        null, null);
        }
    }
    return result;
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:53,代码来源:FcFontConfiguration.java

示例7: writeFcInfo

import sun.font.FontConfigManager.FcCompFont; //导入依赖的package包/类
private void writeFcInfo() {
    Properties props = new Properties();
    props.setProperty("version", fileVersion);
    FcFontManager fm = (FcFontManager) fontManager;
    FontConfigManager fcm = fm.getFontConfigManager();
    FontConfigInfo fcInfo = fcm.getFontConfigInfo();
    props.setProperty("fcversion", Integer.toString(fcInfo.fcVersion));
    if (fcInfo.cacheDirs != null) {
        for (int i=0;i<fcInfo.cacheDirs.length;i++) {
            if (fcInfo.cacheDirs[i] != null) {
               props.setProperty("cachedir."+i,  fcInfo.cacheDirs[i]);
            }
        }
    }
    for (int i=0; i<fcCompFonts.length; i++) {
        FcCompFont fci = fcCompFonts[i];
        String styleKey = fci.jdkName+"."+fci.style;
        props.setProperty(styleKey+".length",
                          Integer.toString(fci.allFonts.length));
        for (int j=0; j<fci.allFonts.length; j++) {
            props.setProperty(styleKey+"."+j+".family",
                              fci.allFonts[j].familyName);
            props.setProperty(styleKey+"."+j+".file",
                              fci.allFonts[j].fontFile);
        }
    }
    try {
        /* This writes into a temp file then renames when done.
         * Since the rename is an atomic action within the same
         * directory no client will ever see a partially written file.
         */
        File fcInfoFile = getFcInfoFile();
        File dir = fcInfoFile.getParentFile();
        dir.mkdirs();
        File tempFile = Files.createTempFile(dir.toPath(), "fcinfo", null).toFile();
        FileOutputStream fos = new FileOutputStream(tempFile);
        props.store(fos,
                  "JDK Font Configuration Generated File: *Do Not Edit*");
        fos.close();
        boolean renamed = tempFile.renameTo(fcInfoFile);
        if (!renamed && FontUtilities.debugFonts()) {
            System.out.println("rename failed");
            warning("Failed renaming file to "+ getFcInfoFile());
        }
    } catch (Exception e) {
        if (FontUtilities.debugFonts()) {
            warning("IOException writing to "+ getFcInfoFile());
        }
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:51,代码来源:FcFontConfiguration.java


注:本文中的sun.font.FontConfigManager.FcCompFont类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。