在vaadin中有一些大胆的角色

时间:2016-03-09 13:22:47

标签: java css unicode character vaadin

例如,我有一句话:“Emšo”。

但斯洛文尼亚语中的“Emšo”字样显示为“Em š o” 我想要显示Emšo这样的文字,没有大胆。

我对所有单词都有问题,例如单词中有“š”,“č”,“Š”,“Č”,“Ž”,“ž”。

我没有用css风格或任何东西来改变这个词的大胆。

我使用的是Vaadin 7.6.3(Valo主题)。应用程序在tomcat服务器8.0.3上运行。

3 个答案:

答案 0 :(得分:3)

问题在于捆绑的Open Sans字体,它不包含所有unicode字符,因此某些字符最终以不同的字体呈现(很可能是平台/浏览器的默认sans-serif字体)。

答案 1 :(得分:1)

我不明白你是否在寻找Java或CSS代码来帮助你,但是这样的事情对你有用,请尝试。

<html>

  <head>
  <style type="text/css">
    p.noBold {font-weight:normal;}
  </style>
  </head>

  <body>
    <p class="noBold">Emšo </p>
  </body>
</html>

编辑:如上所述,你的表标题中存在问题,也许下面的代码可以帮助你修复它。

<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

<head>
   <style rel="stylesheet" type="text/css">
   th {
      height: 50px;
      font-weight: normal;
      text-align: left;
      background-color: #cccccc;
   }
   </style>
</head>
<body>
  <table>
    <tr>
      <th>Emšo</th>
    </tr>
    <tr>
      <td>data</td>
    </tr> 
  </table>
</body>
</html>

答案 2 :(得分:1)

对我有用的是在UI类(MyUI)上更改/添加@StyleSheet注释

@StyleSheet("https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic&subset=latin,latin-ext")
public class MyUI extends UI implements ViewChangeListener{ ...

当我查看存储库历史记录时,我在第一次提交时看到已经指定了(但也许我在第一次提交之前添加了它!)

@StyleSheet("https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900,900italic&subset=latin,latin-ext")
public class MyUI extends UI implements ViewChangeListener{ ...

所以我刚刚将Roboto更改为Open + Sans并根据以下内容更改了字体权重:https://google-webfonts-helper.herokuapp.com/fonts/open-sans?subsets=latin,latin-ext

拉丁语也很重要。不要忘记编译你的vaadin主题,否则它将不会被应用!