linux上的verdana字体

时间:2012-06-19 14:03:36

标签: java linux fonts

我正在尝试使用verdana.ttf字体来创建带有Java的RTF报告,但它无法在Linux上运行。

有人知道我是怎么做到的吗?

     String contextPath = FacesUtil.getServletContext().getRealPath("\\");
     try {
          FontFactory.register(contextPath + "WEB-INF\\Fonts\\verdana.ttf");
     } catch (Exception e) {
          e.printStackTrace();
     }

     if (negrito) {
          font = FontFactory.getFont("Verdana", 8, Font.BOLD, new Color(0, 0, 0));
     }
     cell = new Cell(new Paragraph(paragraph, font));
            cell.setBackgroundColor(new Color(255, 255, 255));
            cell.setBorderColor(new Color(255, 255, 255));
            if (center)
                cell.setHorizontalAlignment(Cell.ALIGN_LEFT);

            cell.setRowspan(1);
            cell.setColspan(1);
            return cell;

1 个答案:

答案 0 :(得分:2)

我想如果它不能在Linux上运行,那是因为你硬编码文件分隔符......

\\仅适用于Windows。将其替换为System.getProperty("file.separator")

中的字段

示例:

String separator  = System.getProperty("file.separator");
FontFactory.register(contextPath + "WEB-INF"+separator+"Fonts"+separator+"verdana.ttf");