有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

突出显示阿拉伯语元音的java

下面是我试图突出显示Java中阿拉伯语元音的代码:

import java.awt.*;
import java.io.File;
import javax.swing.*;

public class JavaApplication1 {

    public static void main(String[] args) throws FontFormatException {
        JFrame frame = new JFrame("Arabic Test");
        JPanel panel = new JPanel();
        JButton button1 = new JButton("");
        JButton button2 = new JButton("");
        Font arabicFont = new Font("Arabic Typesetting", Font.TRUETYPE_FONT, 60);

        button1.setText("تَّ");
        button2.setText("<html>ت<font color='red'>َّ</font></html>");
        button1.setFont(arabicFont);
        button2.setFont(arabicFont);
        panel.add(button1);
        panel.add(button2);
        frame.setVisible(true);
        frame.setResizable(false);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setContentPane(panel);
        frame.pack();
    }
}

当我尝试使用HTML标记为阿拉伯语元音着色时,元音会变得不对齐且无用(参见上面的示例)。除了突出显示这些元音,还有其他选择吗


共 (2) 个答案

  1. # 1 楼答案

    试试这个:

         <head>
           <style>
             body{
               font-size:2em;
               direction:rtl;}
           </style>
           <meta charset="UTF-8">
        </head>
    
    
         <span>ب&zwj;<span style="color:red;">ٌ</span>&zwj;ا</span>
    
  2. # 2 楼答案

    如果将“تَّ”作为一个字形书写,则它只能有一种颜色。这意味着您需要将基本字形(ت)与红色元音(َّ)分开,并手动定位它们

    当您在JAVA中使用HTML时,我假设您可以使用所有CSS样式的命令。这是HTML/CSS中的一种方法,希望能为您提供一种解决方案:

    <span>
        <span style="position:absolute;">ت</span>
        <span style="color:red; position:absolute;">َّ</span>
    </span>