SlideShare a Scribd company logo
»
»
»
»
»
https://www.facebook.com/Oxus20

oxus20@gmail.com

Unicode
Abjad Example
Bubble Example
Flip Example
English Number to Persian

Java Unicode
with
Live GUI
Examples
Prepared By: Nahid Razaie
Edited
By: Abdul Rahman Sherzad
Agenda
» Unicode Characters
» Abjad Examples
˃

‫687 >= بسم اهلل الرحمن الرحیم‬

» Bubble Examples
˃ OXUS20 => ⓄⓍⓊⓈ②⓪

» Flip Examples
˃ Oxus20 => 02snxo

» Number Examples
˃ 1234567890 => ۱۲۳۴۵۶۷۸۹۰
2

https://www.facebook.com/Oxus20
Character Sets
» ASCII
˃ The 128 most commonly-used characters are each
represented by a sequence of 7 bits known as the
character’s ASCII code.
˃ The characters include letters, digits, punctuation
marks, and nonprintable control characters such as
the backspace, tab, carriage return, etc.

» Unicode
˃ The Unicode standard defines underlying numeric
values for a huge set of 65,536 characters.
3

https://www.facebook.com/Oxus20
Unicode Tips
» Bubble Example
˃ OXUS20 => ⓄⓍⓊⓈ➁ⓞ

» Flip Example
˃ OXUS20 => 02snxo

» English Number to Persian
˃ 1234 => ۱۲۳۴
4

https://www.facebook.com/Oxus20
What is Abjad ?
» Every letter in the
Arabic alphabet has a
numerical
(Gematrical) value.
» A number of
calculations can be
made from this basis.
» These are referred to
as numerological
(Abjad) calculations.
5

https://www.facebook.com/Oxus20
‫س‬

60

‫م‬

40

‫ا‬

1
30
30
5

‫ا‬

1

‫ل‬

30

‫ر‬

200

‫ح‬

8

‫م‬

40

‫ن‬

50

‫ا‬

1

‫ل‬

30

‫ر‬

200

‫ح‬

8

‫ی‬

10

‫م‬
https://www.facebook.com/Oxus20

2

‫ه‬

786

‫ب‬

‫ل‬

‫بسم اهلل الرحمن الرحیم‬

Values

‫ل‬

Abjad Calculation
Example

Arabic Letters

40

Total

786

6
Abjad Calculator in JAVA
Graphical User Interface

7

https://www.facebook.com/Oxus20
Abjad Calculator in JAVA
Required Components

» JLabel
» JTextField
» JButton

» JPanel
» ImageIcon
8

https://www.facebook.com/Oxus20
Abjad Calculator in JAVA (Source Code)
import
import
import
import
import

java.awt.BorderLayout;
java.awt.Color;
java.awt.GridLayout;
java.awt.event.ActionEvent;
java.awt.event.ActionListener;

import
import
import
import
import
import

javax.swing.ImageIcon;
javax.swing.JButton;
javax.swing.JFrame;
javax.swing.JLabel;
javax.swing.JPanel;
javax.swing.JTextField;

public class AbjadCalculator extends JFrame implements ActionListener {
// Require Components Declarations
private JLabel lblInput, lblOutput;
private JTextField txtInput, txtOutput;
private JButton btnCalculate, btnExit;
private JPanel panelSouth, panelNorth;
private ImageIcon imgBackround;
private JLabel lblBackground;

https://www.facebook.com/Oxus20

9
public AbjadCalculator() {
// Background Customization
imgBackround = new ImageIcon(getClass().getResource("background.jpg"));
lblBackground = new JLabel(imgBackround);
add(lblBackground);
// Labels and TextFields Customization
lblInput = new JLabel("Type your name in Arabic/Persian:");
lblInput.setForeground(Color.white);
txtInput = new JTextField("‫;)"بسم هللا الرحمن الرحیم‬
txtInput.setHorizontalAlignment(JTextField.RIGHT);
lblOutput = new JLabel("Abjad calculation of your name:");
lblOutput.setForeground(Color.white);
txtOutput = new JTextField("786");
panelNorth = new JPanel();
panelNorth.setBackground(new Color(0, 153, 204));
panelNorth.setLayout(new GridLayout(3, 2));
panelNorth.add(lblInput);
panelNorth.add(txtInput);
panelNorth.add(lblOutput);
panelNorth.add(txtOutput);
add(panelNorth, BorderLayout.NORTH);

https://www.facebook.com/Oxus20

10
// Buttons Customization
btnCalculate = new JButton("Calculate");
btnCalculate.addActionListener(this);
btnExit = new JButton("Exit");
btnExit.addActionListener(this);
panelSouth = new JPanel();
panelSouth.setBackground(new Color(0, 153, 204));
panelSouth.add(btnCalculate);
panelSouth.add(btnExit);
add(panelSouth, BorderLayout.SOUTH);
// JFrame Customization
setUndecorated(true);
setSize(500, 317);
setLocationRelativeTo(null);
setVisible(true);
}

11

https://www.facebook.com/Oxus20
// Add action to calculation and exit buttons
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnCalculate) {
int total = 0;
String inputStr = txtInput.getText();
for (int i = 0; i < inputStr.length(); i++) {
total += Integer.parseInt(abjadKabir(inputStr.charAt(i)));
}
txtOutput.setText(String.valueOf(total));
}
if (e.getSource() == btnExit) {
System.exit(0);
}
}
12

https://www.facebook.com/Oxus20
13

https://www.facebook.com/Oxus20
Abjad Calculator in JAVA
(End of Source Code)
public static void main(String[] args) {
new AbjadCalculator();
}
}

14

https://www.facebook.com/Oxus20
Bubble Example in JAVA
Graphical User Interface

15

https://www.facebook.com/Oxus20
Bubble Example in JAVA
Source Code
import
import
import
import
import
import
import

java.awt.BorderLayout;
java.awt.Color;
java.awt.GridLayout;
java.awt.event.ActionEvent;
java.awt.event.ActionListener;
java.awt.event.KeyEvent;
java.awt.event.KeyListener;

import
import
import
import
import
import

javax.swing.ImageIcon;
javax.swing.JButton;
javax.swing.JFrame;
javax.swing.JLabel;
javax.swing.JPanel;
javax.swing.JTextField;

public class Bubble extends JFrame implements ActionListener, KeyListener {
// Declaring Components
private JLabel lblInput, lblOutput;
private JTextField txtInput, txtOutput;
private JButton btnExit;
private JPanel panelSouth, panelNorth;
private ImageIcon imgBackground;
private JLabel lblBackground;

https://www.facebook.com/Oxus20

16
public Bubble() {
// Background Settings and Customizations
imgBackground = new ImageIcon(getClass().getResource("background.jpg"));
lblBackground = new JLabel(imgBackground);
add(lblBackground);
// Labels and TextFields Settings and Customizations
lblInput = new JLabel("Enter Your Text:");
lblInput.setForeground(Color.white);
txtInput = new JTextField("OXUS20");
txtInput.addKeyListener(this);
lblOutput = new JLabel("Result in Bubble:");
lblOutput.setForeground(Color.white);
txtOutput = new JTextField("ⓄⓍⓊⓈ➁ⓞ");

panelNorth = new JPanel();
panelNorth.setBackground(new Color(0, 153, 204));
panelNorth.setLayout(new GridLayout(2, 2, 9, 2));
panelNorth.add(lblInput);
panelNorth.add(txtInput);
panelNorth.add(lblOutput);
panelNorth.add(txtOutput);
add(panelNorth, BorderLayout.NORTH);
https://www.facebook.com/Oxus20

17
// Exit Button Settings and Customizations
btnExit = new JButton("Exit");
btnExit.addActionListener(this);
panelSouth = new JPanel();
panelSouth.setBackground(new Color(0, 153, 204));
panelSouth.add(btnExit);
add(panelSouth, BorderLayout.SOUTH);
// JFrame Settings and Customizations
setUndecorated(true);
setSize(500, 317);
setLocationRelativeTo(null);
setVisible(true);
}
// Adding Action to our program
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnExit) {
System.exit(0);
}
}
public void keyPressed(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}

https://www.facebook.com/Oxus20

18
public void keyReleased(KeyEvent e) {
if (e.getSource() == txtInput) {
String input = txtInput.getText();
String change = input.replace('0', 'ⓞ').replace('1', '➀')
.replace('2', '➁').replace('3', '➂').replace('4', '➃')
.replace('5', '➄').replace('6', '➅').replace('7', '➆')
.replace('8', '➇').replace('9', '➈').replace('a', 'ⓐ')
.replace('b', 'ⓑ').replace('c', 'ⓒ').replace('d', 'ⓓ')
.replace('e', 'ⓔ').replace('f', 'ⓕ').replace('g', 'ⓖ')
.replace('h', 'ⓗ').replace('i', 'ⓘ').replace('j', 'ⓙ')
.replace('k', 'ⓚ').replace('l', 'ⓛ').replace('m', 'ⓜ')
.replace('n', 'ⓝ').replace('o', 'ⓞ').replace('p', 'ⓟ')
.replace('q', 'ⓠ').replace('r', 'ⓡ').replace('s', 'ⓢ')
.replace('t', 'ⓣ').replace('u', 'ⓤ').replace('v', 'ⓥ')
.replace('w', 'ⓦ').replace('x', 'ⓧ').replace('y', 'ⓨ')
.replace('z', 'ⓩ').replace('A', 'Ⓐ').replace('B', 'Ⓑ')
.replace('C', 'Ⓒ').replace('D', 'Ⓓ').replace('E', 'Ⓔ')
.replace('F', 'Ⓕ').replace('G', 'Ⓖ').replace('H', 'Ⓗ')
.replace('I', 'Ⓘ').replace('J', 'Ⓙ').replace('K', 'Ⓚ')
.replace('L', 'Ⓛ').replace('M', 'Ⓜ').replace('N', 'Ⓝ')
.replace('O', 'Ⓞ').replace('P', 'Ⓟ').replace('Q', 'Ⓠ')
.replace('R', 'Ⓡ').replace('S', 'Ⓢ').replace('T', 'Ⓣ')
.replace('U', 'Ⓤ').replace('V', 'Ⓥ').replace('W', 'Ⓦ')
.replace('X', 'Ⓧ').replace('Y', 'Ⓨ').replace('Z', 'Ⓩ');
txtOutput.setText(change);
}

19

}

https://www.facebook.com/Oxus20
Bubble Example in JAVA
(End of Source Code)
public static void main(String[] args) {
new Bubble();
}

}

20

https://www.facebook.com/Oxus20
Flip Example in JAVA
Graphical User Interface

21

https://www.facebook.com/Oxus20
Flip Example in JAVA
Source Code
import
import
import
import
import
import
import

java.awt.BorderLayout;
java.awt.Color;
java.awt.GridLayout;
java.awt.event.ActionEvent;
java.awt.event.ActionListener;
java.awt.event.KeyEvent;
java.awt.event.KeyListener;

import
import
import
import
import
import

javax.swing.ImageIcon;
javax.swing.JButton;
javax.swing.JFrame;
javax.swing.JLabel;
javax.swing.JPanel;
javax.swing.JTextField;

public class Flip extends JFrame implements KeyListener {
// Required Components Declarations
private JLabel lblInput, lblOutput;
private JTextField txtInput, txtOutput;
private JButton btnExit;
private JPanel panelSouth, panelNorth;
private ImageIcon imgBackground;
private JLabel lblBackground;

https://www.facebook.com/Oxus20

22
public Flip() {
// Background Settings and Customizations
imgBackground = new ImageIcon(getClass().getResource("background.jpg"));
lblBackground = new JLabel(imgBackground);
add(lblBackground);
// Labels and TextFields Settings and Customizations
lblInput = new JLabel("Enter Your Text:");
lblInput.setForeground(Color.white);
txtInput = new JTextField("Flip and Upside down");
txtInput.addKeyListener(this);
lblOutput = new JLabel("Result in Flip:");
lblOutput.setForeground(Color.white);
txtOutput = new JTextField("Ⅎ!‫ן‬d ɐnd ∩ds!dǝ doʍn");
panelNorth = new JPanel();
panelNorth.setBackground(new Color(0, 153, 204));
panelNorth.setLayout(new GridLayout(2, 2, 0, 2));
panelNorth.add(lblInput);
panelNorth.add(txtInput);
panelNorth.add(lblOutput);
panelNorth.add(txtOutput);
add(panelNorth, BorderLayout.NORTH);
23

https://www.facebook.com/Oxus20
// Exit Button Settings and Customizations
btnExit = new JButton("Exit");
btnExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
panelSouth = new JPanel();
panelSouth.setBackground(new Color(0, 153, 204));
panelSouth.add(btnExit);
add(panelSouth, BorderLayout.SOUTH);
// JFrame Settings and Customizations
setUndecorated(true);
setSize(500, 317);
setLocationRelativeTo(null);
setVisible(true);
}
public void keyPressed(KeyEvent e) {
}
public void keyTyped(KeyEvent arg0) {
}

https://www.facebook.com/Oxus20

24
public void keyReleased(KeyEvent e) {
if (e.getSource() == txtInput) {
String input = txtInput.getText();
String change = input.replace('a', 'ɐ').replace('b', 'q')
.replace('c', 'ɔ').replace('d', 'p').replace('e', 'ǝ')
.replace('f', 'ɟ').replace('g', 'ƃ').replace('h', 'ɥ')
.replace('i', '!').replace('j', 'ɾ').replace('k', 'ʞ')
.replace('l', '.)'‫ן‬replace('m', 'ɯ').replace('n', 'u')
.replace('o', 'o').replace('p', 'd').replace('q', 'b')
.replace('r', 'ɹ').replace('s', 's').replace('t', 'ʇ')
.replace('u', 'n').replace('v', 'ʌ').replace('w', 'ʍ')
.replace('x', 'x').replace('y', 'ʎ').replace('z', 'z')
.replace('A', '∀').replace('B', 'ᗺ').replace('C', 'Ɔ')
.replace('D', 'p').replace('E', 'Ǝ').replace('F', 'Ⅎ')
.replace('G', '.)'‫פ‬replace('H', 'H').replace('I', 'I')
.replace('J', 'ſ').replace('K', 'ʞ').replace('L', '˥')
.replace('M', 'W').replace('N', 'N').replace('O', 'O')
.replace('P', 'd').replace('Q', 'ઠ').replace('R', 'ᴚ')
.replace('S', 'S').replace('T', '⊥').replace('U', '∩')
.replace('V', 'ᴧ').replace('W', 'M').replace('X', 'X')
.replace('Y', 'ʎ').replace('Z', 'Z');
txtOutput.setText(change);
}
25

}

https://www.facebook.com/Oxus20
Flip Example in JAVA
(End of Source Code)
public static void main(String[] args) {
new Flip();
}

}

26

https://www.facebook.com/Oxus20
English Number to Persian in JAVA
Graphical User Interface

27

https://www.facebook.com/Oxus20
English Number to Persian in JAVA
Source Code
import
import
import
import
import
import
import

java.awt.BorderLayout;
java.awt.Color;
java.awt.GridLayout;
java.awt.event.ActionEvent;
java.awt.event.ActionListener;
java.awt.event.KeyEvent;
java.awt.event.KeyListener;

import
import
import
import
import
import

javax.swing.ImageIcon;
javax.swing.JButton;
javax.swing.JFrame;
javax.swing.JLabel;
javax.swing.JPanel;
javax.swing.JTextField;

public class PersianNumbers extends JFrame implements KeyListener {
// Declaring Components
private JLabel lblInput, lblOutput;
private JTextField txtInput, txtOutput;
private JButton btnExit;
private JPanel panelSouth, panelNorth;
private ImageIcon imgBackground;
private JLabel lblBackground;

28

https://www.facebook.com/Oxus20
public PersianNumbers() {
// Background Settings and Customizations
imgBackground = new ImageIcon(getClass().getResource("background.jpg"));
lblBackground = new JLabel(imgBackground);
add(lblBackground);
// Labels and TextFields Settings and Customizations
lblInput = new JLabel("Enter English Number :");
lblInput.setForeground(Color.white);
txtInput = new JTextField("0123456789");
txtInput.addKeyListener(this);
lblOutput = new JLabel("Result of Persion Number :");
lblOutput.setForeground(Color.white);
txtOutput = new JTextField("٠١٢٣٤٥٦٧٨٩");
panelNorth = new JPanel();
panelNorth.setBackground(new Color(0, 153, 204));
panelNorth.setLayout(new GridLayout(2, 2, 0, 2));
panelNorth.add(lblInput);
panelNorth.add(txtInput);
panelNorth.add(lblOutput);
panelNorth.add(txtOutput);
add(panelNorth, BorderLayout.NORTH);
29

https://www.facebook.com/Oxus20
// Exit Button Settings and Customizations
btnExit = new JButton("Exit");
btnExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
panelSouth = new JPanel();
panelSouth.setBackground(new Color(0, 153, 204));
panelSouth.add(btnExit);
add(panelSouth, BorderLayout.SOUTH);
// JFrame Settings and Customizations
setUndecorated(true);
setSize(500, 317);
setLocationRelativeTo(null);
setVisible(true);

}
public void keyPressed(KeyEvent arg0) {
}
public void keyTyped(KeyEvent arg0) {
}
30

https://www.facebook.com/Oxus20
English Number to Persian in JAVA
End of Source Code
public void keyReleased(KeyEvent e) {
if (e.getSource() == txtInput) {
String input = txtInput.getText();
String change = input.replace('0', 'u0660').replace('1', 'u0661')
.replace('2', 'u0662').replace('3', 'u0663')
.replace('4', 'u0664').replace('5', 'u0665')
.replace('6', 'u0666').replace('7', 'u0667')
.replace('8', 'u0668').replace('9', 'u0669');
txtOutput.setText(change);
}
}
public static void main(String[] args) {
new PersianNumbers();
}
}
31

https://www.facebook.com/Oxus20
Tips
Simple String Methods

» charAt()
˃ The charAt(index) method returns the character at a specific index in
the string.
˃ The first character of a string is at index 0, the next at index 1, and so
on.
˃ The index argument must be greater than or equal to 0, and less than
the length of the string buffer.

» replaceAll()
˃ The String class also contains the replaceAll method for replacing and
splitting strings
˃ The replaceAll method replaces all matching substring.
32

https://www.facebook.com/Oxus20
Unicode
Further Works and Suggestions
» Transliteration
˃ English Name to Persian/Arabic
˃ Nahid Razaie =>

‫ناهید رضایی‬

» Google Transliteration
˃ Salam => ‫سالم‬
˃ Ba OXUS20 Khush Amadid => 20

‫خوش آمدید به آکسیوس‬
33

https://www.facebook.com/Oxus20
END

34

https://www.facebook.com/Oxus20

More Related Content

PPT
PDF
Service intergration
PDF
Building Real Time Systems on MongoDB Using the Oplog at Stripe
PPT
PHP Tutorial (funtion)
PDF
The Joy of Smartmatch
PDF
WordPressでIoTをはじめよう
PDF
How to stand on the shoulders of giants
Service intergration
Building Real Time Systems on MongoDB Using the Oplog at Stripe
PHP Tutorial (funtion)
The Joy of Smartmatch
WordPressでIoTをはじめよう
How to stand on the shoulders of giants

What's hot (20)

PDF
The Perl6 Type System
DOCX
Binomial heap
PDF
Building Real Time Systems on MongoDB Using the Oplog at Stripe
PDF
Perl6 in-production
PDF
Building Real Time Systems on MongoDB Using the Oplog at Stripe
PDF
201412 seccon2014 オンライン予選(英語) write-up
PDF
Perl 6 by example
PPTX
Alexander Mostovenko "Modern approach to localization in javascript with the ...
PPT
Shell and perl scripting classes in mumbai
PDF
Perl6 grammars
DOCX
PDF
Creating a compiler in Perl 6
PDF
CGI.pm - 3ло?!
PDF
Debugging: Rules And Tools - PHPTek 11 Version
PDF
Abusing text/template for data transformation
PDF
ZeroMQ Is The Answer: DPC 11 Version
PDF
Teaching Your Machine To Find Fraudsters
PDF
Pdxpugday2010 pg90
TXT
Pop3ck sh
TXT
New text document
The Perl6 Type System
Binomial heap
Building Real Time Systems on MongoDB Using the Oplog at Stripe
Perl6 in-production
Building Real Time Systems on MongoDB Using the Oplog at Stripe
201412 seccon2014 オンライン予選(英語) write-up
Perl 6 by example
Alexander Mostovenko "Modern approach to localization in javascript with the ...
Shell and perl scripting classes in mumbai
Perl6 grammars
Creating a compiler in Perl 6
CGI.pm - 3ло?!
Debugging: Rules And Tools - PHPTek 11 Version
Abusing text/template for data transformation
ZeroMQ Is The Answer: DPC 11 Version
Teaching Your Machine To Find Fraudsters
Pdxpugday2010 pg90
Pop3ck sh
New text document
Ad

Viewers also liked (20)

PDF
Everything about Database JOINS and Relationships
PPT
Swing and AWT in java
PDF
Java Regular Expression PART I
PDF
Java Unicode with Cool GUI Examples
PDF
Java Virtual Keyboard Using Robot, Toolkit and JToggleButton Classes
PPTX
TKP Java Notes for Teaching Kids Programming
PDF
Everything about Object Oriented Programming
PDF
Fal-e-Hafez (Omens of Hafez) Cards in Persian using Java
PDF
Java Regular Expression PART II
PDF
Java Applet and Graphics
PPTX
Conditional Statement
PDF
PHP Basic and Fundamental Questions and Answers with Detail Explanation
PDF
Java Guessing Game Number Tutorial
PDF
Object Oriented Concept Static vs. Non Static
PPTX
Structure programming – Java Programming – Theory
PDF
Web Design and Development Life Cycle and Technologies
PDF
Create Splash Screen with Java Step by Step
PDF
Note - Java Remote Debug
DOCX
Core java notes with examples
PDF
Java Virtual Keyboard Using Robot, Toolkit and JToggleButton Classes
Everything about Database JOINS and Relationships
Swing and AWT in java
Java Regular Expression PART I
Java Unicode with Cool GUI Examples
Java Virtual Keyboard Using Robot, Toolkit and JToggleButton Classes
TKP Java Notes for Teaching Kids Programming
Everything about Object Oriented Programming
Fal-e-Hafez (Omens of Hafez) Cards in Persian using Java
Java Regular Expression PART II
Java Applet and Graphics
Conditional Statement
PHP Basic and Fundamental Questions and Answers with Detail Explanation
Java Guessing Game Number Tutorial
Object Oriented Concept Static vs. Non Static
Structure programming – Java Programming – Theory
Web Design and Development Life Cycle and Technologies
Create Splash Screen with Java Step by Step
Note - Java Remote Debug
Core java notes with examples
Java Virtual Keyboard Using Robot, Toolkit and JToggleButton Classes
Ad

More from Abdul Rahman Sherzad (20)

PDF
Data is the Fuel of Organizations: Opportunities and Challenges in Afghanistan
PDF
PHP Unicode Input Validation Snippets
PDF
Iterations and Recursions
PDF
Sorting Alpha Numeric Data in MySQL
PDF
PHP Variable variables Examples
PDF
Cross Join Example and Applications
PDF
Applicability of Educational Data Mining in Afghanistan: Opportunities and Ch...
PDF
Web Application Security and Awareness
PDF
Database Automation with MySQL Triggers and Event Schedulers
PDF
Mobile Score Notification System
PDF
Herat Innovation Lab 2015
PDF
Evaluation of Existing Web Structure of Afghan Universities
PDF
PHP Basic and Fundamental Questions and Answers with Detail Explanation
PDF
Java Applet and Graphics
PDF
Fundamentals of Database Systems Questions and Answers
PDF
Everything about Database JOINS and Relationships
PDF
Create Splash Screen with Java Step by Step
PDF
Fal-e-Hafez (Omens of Hafez) Cards in Persian using Java
PDF
Web Design and Development Life Cycle and Technologies
PDF
Java Regular Expression PART II
Data is the Fuel of Organizations: Opportunities and Challenges in Afghanistan
PHP Unicode Input Validation Snippets
Iterations and Recursions
Sorting Alpha Numeric Data in MySQL
PHP Variable variables Examples
Cross Join Example and Applications
Applicability of Educational Data Mining in Afghanistan: Opportunities and Ch...
Web Application Security and Awareness
Database Automation with MySQL Triggers and Event Schedulers
Mobile Score Notification System
Herat Innovation Lab 2015
Evaluation of Existing Web Structure of Afghan Universities
PHP Basic and Fundamental Questions and Answers with Detail Explanation
Java Applet and Graphics
Fundamentals of Database Systems Questions and Answers
Everything about Database JOINS and Relationships
Create Splash Screen with Java Step by Step
Fal-e-Hafez (Omens of Hafez) Cards in Persian using Java
Web Design and Development Life Cycle and Technologies
Java Regular Expression PART II

Recently uploaded (20)

PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
Complications of Minimal Access Surgery at WLH
PDF
Basic Mud Logging Guide for educational purpose
PPTX
Institutional Correction lecture only . . .
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Computing-Curriculum for Schools in Ghana
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PPTX
Pharma ospi slides which help in ospi learning
PDF
Pre independence Education in Inndia.pdf
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
Complications of Minimal Access Surgery at WLH
Basic Mud Logging Guide for educational purpose
Institutional Correction lecture only . . .
TR - Agricultural Crops Production NC III.pdf
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
human mycosis Human fungal infections are called human mycosis..pptx
Microbial diseases, their pathogenesis and prophylaxis
O5-L3 Freight Transport Ops (International) V1.pdf
PPH.pptx obstetrics and gynecology in nursing
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Supply Chain Operations Speaking Notes -ICLT Program
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Computing-Curriculum for Schools in Ghana
Renaissance Architecture: A Journey from Faith to Humanism
Pharma ospi slides which help in ospi learning
Pre independence Education in Inndia.pdf
Module 4: Burden of Disease Tutorial Slides S2 2025
school management -TNTEU- B.Ed., Semester II Unit 1.pptx

Java Unicode with Live GUI Examples

  • 1. » » » » » https://www.facebook.com/Oxus20 [email protected] Unicode Abjad Example Bubble Example Flip Example English Number to Persian Java Unicode with Live GUI Examples Prepared By: Nahid Razaie Edited By: Abdul Rahman Sherzad
  • 2. Agenda » Unicode Characters » Abjad Examples ˃ ‫687 >= بسم اهلل الرحمن الرحیم‬ » Bubble Examples ˃ OXUS20 => ⓄⓍⓊⓈ②⓪ » Flip Examples ˃ Oxus20 => 02snxo » Number Examples ˃ 1234567890 => ۱۲۳۴۵۶۷۸۹۰ 2 https://www.facebook.com/Oxus20
  • 3. Character Sets » ASCII ˃ The 128 most commonly-used characters are each represented by a sequence of 7 bits known as the character’s ASCII code. ˃ The characters include letters, digits, punctuation marks, and nonprintable control characters such as the backspace, tab, carriage return, etc. » Unicode ˃ The Unicode standard defines underlying numeric values for a huge set of 65,536 characters. 3 https://www.facebook.com/Oxus20
  • 4. Unicode Tips » Bubble Example ˃ OXUS20 => ⓄⓍⓊⓈ➁ⓞ » Flip Example ˃ OXUS20 => 02snxo » English Number to Persian ˃ 1234 => ۱۲۳۴ 4 https://www.facebook.com/Oxus20
  • 5. What is Abjad ? » Every letter in the Arabic alphabet has a numerical (Gematrical) value. » A number of calculations can be made from this basis. » These are referred to as numerological (Abjad) calculations. 5 https://www.facebook.com/Oxus20
  • 7. Abjad Calculator in JAVA Graphical User Interface 7 https://www.facebook.com/Oxus20
  • 8. Abjad Calculator in JAVA Required Components » JLabel » JTextField » JButton » JPanel » ImageIcon 8 https://www.facebook.com/Oxus20
  • 9. Abjad Calculator in JAVA (Source Code) import import import import import java.awt.BorderLayout; java.awt.Color; java.awt.GridLayout; java.awt.event.ActionEvent; java.awt.event.ActionListener; import import import import import import javax.swing.ImageIcon; javax.swing.JButton; javax.swing.JFrame; javax.swing.JLabel; javax.swing.JPanel; javax.swing.JTextField; public class AbjadCalculator extends JFrame implements ActionListener { // Require Components Declarations private JLabel lblInput, lblOutput; private JTextField txtInput, txtOutput; private JButton btnCalculate, btnExit; private JPanel panelSouth, panelNorth; private ImageIcon imgBackround; private JLabel lblBackground; https://www.facebook.com/Oxus20 9
  • 10. public AbjadCalculator() { // Background Customization imgBackround = new ImageIcon(getClass().getResource("background.jpg")); lblBackground = new JLabel(imgBackround); add(lblBackground); // Labels and TextFields Customization lblInput = new JLabel("Type your name in Arabic/Persian:"); lblInput.setForeground(Color.white); txtInput = new JTextField("‫;)"بسم هللا الرحمن الرحیم‬ txtInput.setHorizontalAlignment(JTextField.RIGHT); lblOutput = new JLabel("Abjad calculation of your name:"); lblOutput.setForeground(Color.white); txtOutput = new JTextField("786"); panelNorth = new JPanel(); panelNorth.setBackground(new Color(0, 153, 204)); panelNorth.setLayout(new GridLayout(3, 2)); panelNorth.add(lblInput); panelNorth.add(txtInput); panelNorth.add(lblOutput); panelNorth.add(txtOutput); add(panelNorth, BorderLayout.NORTH); https://www.facebook.com/Oxus20 10
  • 11. // Buttons Customization btnCalculate = new JButton("Calculate"); btnCalculate.addActionListener(this); btnExit = new JButton("Exit"); btnExit.addActionListener(this); panelSouth = new JPanel(); panelSouth.setBackground(new Color(0, 153, 204)); panelSouth.add(btnCalculate); panelSouth.add(btnExit); add(panelSouth, BorderLayout.SOUTH); // JFrame Customization setUndecorated(true); setSize(500, 317); setLocationRelativeTo(null); setVisible(true); } 11 https://www.facebook.com/Oxus20
  • 12. // Add action to calculation and exit buttons public void actionPerformed(ActionEvent e) { if (e.getSource() == btnCalculate) { int total = 0; String inputStr = txtInput.getText(); for (int i = 0; i < inputStr.length(); i++) { total += Integer.parseInt(abjadKabir(inputStr.charAt(i))); } txtOutput.setText(String.valueOf(total)); } if (e.getSource() == btnExit) { System.exit(0); } } 12 https://www.facebook.com/Oxus20
  • 14. Abjad Calculator in JAVA (End of Source Code) public static void main(String[] args) { new AbjadCalculator(); } } 14 https://www.facebook.com/Oxus20
  • 15. Bubble Example in JAVA Graphical User Interface 15 https://www.facebook.com/Oxus20
  • 16. Bubble Example in JAVA Source Code import import import import import import import java.awt.BorderLayout; java.awt.Color; java.awt.GridLayout; java.awt.event.ActionEvent; java.awt.event.ActionListener; java.awt.event.KeyEvent; java.awt.event.KeyListener; import import import import import import javax.swing.ImageIcon; javax.swing.JButton; javax.swing.JFrame; javax.swing.JLabel; javax.swing.JPanel; javax.swing.JTextField; public class Bubble extends JFrame implements ActionListener, KeyListener { // Declaring Components private JLabel lblInput, lblOutput; private JTextField txtInput, txtOutput; private JButton btnExit; private JPanel panelSouth, panelNorth; private ImageIcon imgBackground; private JLabel lblBackground; https://www.facebook.com/Oxus20 16
  • 17. public Bubble() { // Background Settings and Customizations imgBackground = new ImageIcon(getClass().getResource("background.jpg")); lblBackground = new JLabel(imgBackground); add(lblBackground); // Labels and TextFields Settings and Customizations lblInput = new JLabel("Enter Your Text:"); lblInput.setForeground(Color.white); txtInput = new JTextField("OXUS20"); txtInput.addKeyListener(this); lblOutput = new JLabel("Result in Bubble:"); lblOutput.setForeground(Color.white); txtOutput = new JTextField("ⓄⓍⓊⓈ➁ⓞ"); panelNorth = new JPanel(); panelNorth.setBackground(new Color(0, 153, 204)); panelNorth.setLayout(new GridLayout(2, 2, 9, 2)); panelNorth.add(lblInput); panelNorth.add(txtInput); panelNorth.add(lblOutput); panelNorth.add(txtOutput); add(panelNorth, BorderLayout.NORTH); https://www.facebook.com/Oxus20 17
  • 18. // Exit Button Settings and Customizations btnExit = new JButton("Exit"); btnExit.addActionListener(this); panelSouth = new JPanel(); panelSouth.setBackground(new Color(0, 153, 204)); panelSouth.add(btnExit); add(panelSouth, BorderLayout.SOUTH); // JFrame Settings and Customizations setUndecorated(true); setSize(500, 317); setLocationRelativeTo(null); setVisible(true); } // Adding Action to our program public void actionPerformed(ActionEvent e) { if (e.getSource() == btnExit) { System.exit(0); } } public void keyPressed(KeyEvent e) { } public void keyTyped(KeyEvent e) { } https://www.facebook.com/Oxus20 18
  • 19. public void keyReleased(KeyEvent e) { if (e.getSource() == txtInput) { String input = txtInput.getText(); String change = input.replace('0', 'ⓞ').replace('1', '➀') .replace('2', '➁').replace('3', '➂').replace('4', '➃') .replace('5', '➄').replace('6', '➅').replace('7', '➆') .replace('8', '➇').replace('9', '➈').replace('a', 'ⓐ') .replace('b', 'ⓑ').replace('c', 'ⓒ').replace('d', 'ⓓ') .replace('e', 'ⓔ').replace('f', 'ⓕ').replace('g', 'ⓖ') .replace('h', 'ⓗ').replace('i', 'ⓘ').replace('j', 'ⓙ') .replace('k', 'ⓚ').replace('l', 'ⓛ').replace('m', 'ⓜ') .replace('n', 'ⓝ').replace('o', 'ⓞ').replace('p', 'ⓟ') .replace('q', 'ⓠ').replace('r', 'ⓡ').replace('s', 'ⓢ') .replace('t', 'ⓣ').replace('u', 'ⓤ').replace('v', 'ⓥ') .replace('w', 'ⓦ').replace('x', 'ⓧ').replace('y', 'ⓨ') .replace('z', 'ⓩ').replace('A', 'Ⓐ').replace('B', 'Ⓑ') .replace('C', 'Ⓒ').replace('D', 'Ⓓ').replace('E', 'Ⓔ') .replace('F', 'Ⓕ').replace('G', 'Ⓖ').replace('H', 'Ⓗ') .replace('I', 'Ⓘ').replace('J', 'Ⓙ').replace('K', 'Ⓚ') .replace('L', 'Ⓛ').replace('M', 'Ⓜ').replace('N', 'Ⓝ') .replace('O', 'Ⓞ').replace('P', 'Ⓟ').replace('Q', 'Ⓠ') .replace('R', 'Ⓡ').replace('S', 'Ⓢ').replace('T', 'Ⓣ') .replace('U', 'Ⓤ').replace('V', 'Ⓥ').replace('W', 'Ⓦ') .replace('X', 'Ⓧ').replace('Y', 'Ⓨ').replace('Z', 'Ⓩ'); txtOutput.setText(change); } 19 } https://www.facebook.com/Oxus20
  • 20. Bubble Example in JAVA (End of Source Code) public static void main(String[] args) { new Bubble(); } } 20 https://www.facebook.com/Oxus20
  • 21. Flip Example in JAVA Graphical User Interface 21 https://www.facebook.com/Oxus20
  • 22. Flip Example in JAVA Source Code import import import import import import import java.awt.BorderLayout; java.awt.Color; java.awt.GridLayout; java.awt.event.ActionEvent; java.awt.event.ActionListener; java.awt.event.KeyEvent; java.awt.event.KeyListener; import import import import import import javax.swing.ImageIcon; javax.swing.JButton; javax.swing.JFrame; javax.swing.JLabel; javax.swing.JPanel; javax.swing.JTextField; public class Flip extends JFrame implements KeyListener { // Required Components Declarations private JLabel lblInput, lblOutput; private JTextField txtInput, txtOutput; private JButton btnExit; private JPanel panelSouth, panelNorth; private ImageIcon imgBackground; private JLabel lblBackground; https://www.facebook.com/Oxus20 22
  • 23. public Flip() { // Background Settings and Customizations imgBackground = new ImageIcon(getClass().getResource("background.jpg")); lblBackground = new JLabel(imgBackground); add(lblBackground); // Labels and TextFields Settings and Customizations lblInput = new JLabel("Enter Your Text:"); lblInput.setForeground(Color.white); txtInput = new JTextField("Flip and Upside down"); txtInput.addKeyListener(this); lblOutput = new JLabel("Result in Flip:"); lblOutput.setForeground(Color.white); txtOutput = new JTextField("Ⅎ!‫ן‬d ɐnd ∩ds!dǝ doʍn"); panelNorth = new JPanel(); panelNorth.setBackground(new Color(0, 153, 204)); panelNorth.setLayout(new GridLayout(2, 2, 0, 2)); panelNorth.add(lblInput); panelNorth.add(txtInput); panelNorth.add(lblOutput); panelNorth.add(txtOutput); add(panelNorth, BorderLayout.NORTH); 23 https://www.facebook.com/Oxus20
  • 24. // Exit Button Settings and Customizations btnExit = new JButton("Exit"); btnExit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); panelSouth = new JPanel(); panelSouth.setBackground(new Color(0, 153, 204)); panelSouth.add(btnExit); add(panelSouth, BorderLayout.SOUTH); // JFrame Settings and Customizations setUndecorated(true); setSize(500, 317); setLocationRelativeTo(null); setVisible(true); } public void keyPressed(KeyEvent e) { } public void keyTyped(KeyEvent arg0) { } https://www.facebook.com/Oxus20 24
  • 25. public void keyReleased(KeyEvent e) { if (e.getSource() == txtInput) { String input = txtInput.getText(); String change = input.replace('a', 'ɐ').replace('b', 'q') .replace('c', 'ɔ').replace('d', 'p').replace('e', 'ǝ') .replace('f', 'ɟ').replace('g', 'ƃ').replace('h', 'ɥ') .replace('i', '!').replace('j', 'ɾ').replace('k', 'ʞ') .replace('l', '.)'‫ן‬replace('m', 'ɯ').replace('n', 'u') .replace('o', 'o').replace('p', 'd').replace('q', 'b') .replace('r', 'ɹ').replace('s', 's').replace('t', 'ʇ') .replace('u', 'n').replace('v', 'ʌ').replace('w', 'ʍ') .replace('x', 'x').replace('y', 'ʎ').replace('z', 'z') .replace('A', '∀').replace('B', 'ᗺ').replace('C', 'Ɔ') .replace('D', 'p').replace('E', 'Ǝ').replace('F', 'Ⅎ') .replace('G', '.)'‫פ‬replace('H', 'H').replace('I', 'I') .replace('J', 'ſ').replace('K', 'ʞ').replace('L', '˥') .replace('M', 'W').replace('N', 'N').replace('O', 'O') .replace('P', 'd').replace('Q', 'ઠ').replace('R', 'ᴚ') .replace('S', 'S').replace('T', '⊥').replace('U', '∩') .replace('V', 'ᴧ').replace('W', 'M').replace('X', 'X') .replace('Y', 'ʎ').replace('Z', 'Z'); txtOutput.setText(change); } 25 } https://www.facebook.com/Oxus20
  • 26. Flip Example in JAVA (End of Source Code) public static void main(String[] args) { new Flip(); } } 26 https://www.facebook.com/Oxus20
  • 27. English Number to Persian in JAVA Graphical User Interface 27 https://www.facebook.com/Oxus20
  • 28. English Number to Persian in JAVA Source Code import import import import import import import java.awt.BorderLayout; java.awt.Color; java.awt.GridLayout; java.awt.event.ActionEvent; java.awt.event.ActionListener; java.awt.event.KeyEvent; java.awt.event.KeyListener; import import import import import import javax.swing.ImageIcon; javax.swing.JButton; javax.swing.JFrame; javax.swing.JLabel; javax.swing.JPanel; javax.swing.JTextField; public class PersianNumbers extends JFrame implements KeyListener { // Declaring Components private JLabel lblInput, lblOutput; private JTextField txtInput, txtOutput; private JButton btnExit; private JPanel panelSouth, panelNorth; private ImageIcon imgBackground; private JLabel lblBackground; 28 https://www.facebook.com/Oxus20
  • 29. public PersianNumbers() { // Background Settings and Customizations imgBackground = new ImageIcon(getClass().getResource("background.jpg")); lblBackground = new JLabel(imgBackground); add(lblBackground); // Labels and TextFields Settings and Customizations lblInput = new JLabel("Enter English Number :"); lblInput.setForeground(Color.white); txtInput = new JTextField("0123456789"); txtInput.addKeyListener(this); lblOutput = new JLabel("Result of Persion Number :"); lblOutput.setForeground(Color.white); txtOutput = new JTextField("٠١٢٣٤٥٦٧٨٩"); panelNorth = new JPanel(); panelNorth.setBackground(new Color(0, 153, 204)); panelNorth.setLayout(new GridLayout(2, 2, 0, 2)); panelNorth.add(lblInput); panelNorth.add(txtInput); panelNorth.add(lblOutput); panelNorth.add(txtOutput); add(panelNorth, BorderLayout.NORTH); 29 https://www.facebook.com/Oxus20
  • 30. // Exit Button Settings and Customizations btnExit = new JButton("Exit"); btnExit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); panelSouth = new JPanel(); panelSouth.setBackground(new Color(0, 153, 204)); panelSouth.add(btnExit); add(panelSouth, BorderLayout.SOUTH); // JFrame Settings and Customizations setUndecorated(true); setSize(500, 317); setLocationRelativeTo(null); setVisible(true); } public void keyPressed(KeyEvent arg0) { } public void keyTyped(KeyEvent arg0) { } 30 https://www.facebook.com/Oxus20
  • 31. English Number to Persian in JAVA End of Source Code public void keyReleased(KeyEvent e) { if (e.getSource() == txtInput) { String input = txtInput.getText(); String change = input.replace('0', 'u0660').replace('1', 'u0661') .replace('2', 'u0662').replace('3', 'u0663') .replace('4', 'u0664').replace('5', 'u0665') .replace('6', 'u0666').replace('7', 'u0667') .replace('8', 'u0668').replace('9', 'u0669'); txtOutput.setText(change); } } public static void main(String[] args) { new PersianNumbers(); } } 31 https://www.facebook.com/Oxus20
  • 32. Tips Simple String Methods » charAt() ˃ The charAt(index) method returns the character at a specific index in the string. ˃ The first character of a string is at index 0, the next at index 1, and so on. ˃ The index argument must be greater than or equal to 0, and less than the length of the string buffer. » replaceAll() ˃ The String class also contains the replaceAll method for replacing and splitting strings ˃ The replaceAll method replaces all matching substring. 32 https://www.facebook.com/Oxus20
  • 33. Unicode Further Works and Suggestions » Transliteration ˃ English Name to Persian/Arabic ˃ Nahid Razaie => ‫ناهید رضایی‬ » Google Transliteration ˃ Salam => ‫سالم‬ ˃ Ba OXUS20 Khush Amadid => 20 ‫خوش آمدید به آکسیوس‬ 33 https://www.facebook.com/Oxus20