软件编程
位置:首页>> 软件编程>> java编程>> 使用Java设置字型和颜色的方法详解

使用Java设置字型和颜色的方法详解

作者:goldensun  发布时间:2023-04-14 05:09:23 

标签:Java

Java绘图中,显示文字的方法主要有三种:
(1)drawString(String str,int x,int y):在指定的位置显示字符串。
(2)drawChars(char data[],int offset,int length, int x, int y):在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。
(3)drawBytes(byte data[],int offset,int length,int x,int y), 在指定的位置显示字符数组中的文字,从字符数组的offset位置开始,最多显示length个字符。

这里给出的显示位置(x,y)为文字的基线的开始坐标,不是文字显示的矩形区域的左上角坐标。

文字字型有三个要素:
字体:常用的字体有Times New Roman、Symbol、宋体、楷体等。
风格:常用的风格有三种:正常、粗体和斜体;分别用三个常量表示:Font.PLAIN(正常)、Font.BOLD(粗体)和Font.ITALIC(斜体)。风格可以组合使用,例如 ,Font.BOLD+Font.ITALIC。
字号:字号是字的大小,单位是磅。

在Java语言中,用类Font对象字型。Font类构造方法有:
    Font(String fontName,int style,int size),3个参数分别表示字体、风格和字号。例如,代码:
    Font fnA = new Font(“细明本”,Font.PLAIN,12)
设置的字型的是:细明体、正常风格, 12磅字号。

Font类的其他常用方法:

  • getStyle(),返回字体风格。

  • getSize(),返回字体大小。

  • getName(),返回字体名称。

  • isPlain(),测试字体是否是正常字体。

  • isBold(),测试字体是否是粗体。

  • isItalic(),测试字体是否是斜体。

【例】小应用程序用6种字型字符串,显示内容说明本身的字型。


import java.applet.*;
import java.awt.*;
public class Example7_1 extends Applet{
 Font f1 = new Font("Helvetica",Font.PLAIN,18);
 Font f2 = new Font("Helvetica", Font.BOLD,10);
 Font f3 = new Font("Helvetica",Font.ITALIC,12);
 Font f4 = new Font("Courier",Font.PLAIN,12);
 Font f5 = new Font("TimesRoman", Font.BOLD+Font.ITALIC,14);
 Font f6 = new Font("Dialog",Font.ITALIC,14);
 public void paint(Graphics g){
   setSize(250,200);
   g.setFont(f1);drawString("18pt plain Helvetica",5,20);
   g.setFont(f2);drawString("10pt bold Helvetica",5,43);
   g.setFont(f3);drawString("12pt italic Helvetica",5,58);
   g.setFont(f4);drawString("12pt plain courier",5,75);
   g.setFont(f5);drawString("14pt bold & italic times Roman",5,92);
   g.setFont(f6);drawString("14pt italic dialog",5,111);
 }
}

用类Color的对象设置颜色,有两种方法生成各种颜色:
用类Color预定议的颜色:black,red, white, yellow ……;
通过红绿蓝(RGB)的值合成颜色。

与颜色有关的常用方法:
(1)用类Color的构造方法Color(int R, int G,int B)创建一个颜色对象,参数R,G,B分别表示红色、绿色和蓝色,它们的取值是从0到255。
(2)用类Graphics的方法setColor(Color c),参数c的取值参见表12-1。
(3)用类Component的方法setBackground(Color c)设置背景颜色。因为小程序是组件类的子类,直接可用setBackground()方法改变背景色。
(4)用类Graphics的方法getColor()获取颜色。
Color 类预定义颜色常量
使用Java设置字型和颜色的方法详解
【例】小应用程序设置颜色并涂方块,其中绘制方块的方法将在后续小节中讲到。


import java.applet.*;
import java.awt.*;
public class Example7_2 extends Applet{
 public void paint(Graphics g){
   setSize(380,200);
   for(int i=0;i<=10;i++){
     Color myredcolor = new Color(i*25+5,0,0);
     g.setColor(myredcolor);
     g.fillRect(i*32+5,2,28,28);
   }
   for(int i=0;i<=10;i++){
     Color mygreencolor = new Color(0,i*25+5,0);
     g.setColor(mygreencolor);
     g.fillRect(i*32+5,32,28,28);
   }
   for(int i=0;i<=10;i++){
     Color mybluecolor = new Color(0,0,i*25+5);
     g.setColor(mybluecolor);
     g.fillRect(i*32+5,62,28,28);
   }
 }
}
0
投稿

猜你喜欢

  • Android Studio卡很久(loading)的问题关于Android Studio卡在某个地方很久(更准确说应该是Loading很久
  • 本文实例为大家分享了如何使用ItemTouchHelper实现侧滑删除和拖拽的具体代码,供大家参考,具体内容如下1. 定义一个简单bean类
  • Android Studio下载(下文统称AS)AS最新版下载请戳:AS下载Android SDK下载SDK安装器下载SDK安装器下载请戳:
  • Java语言是简单的:Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java丢弃了C++中很少使
  • 由于工作和之前学习的原因,我需要同时使用Java和C#两门语言。这几年,我也一直在使用J2EE平台和.NET平台做开发。说起C#和Java这
  • 继承(加上封装和多态性)是面向对象的编程的三个主要特性(也称为“支柱”)之一。 继承用于创建可重用、扩展和修改在其他类中定义的行为的新类。其
  • 这篇文章主要介绍了跨域解决方案Jsonp原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以
  • 1. 创建自定义 * 类并实现 HandlerInterceptor 接口package com.xgf.online_mall.inter
  • 本文实例为大家分享了C语言实现扫雷游戏的具体代码,供大家参考,具体内容如下此次扫雷中我们以9乘以9的表格为例,后期可自动调动主要思路:建立两
  • 这篇文章主要介绍了Java向上转型和向下转型实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
  • 一、单独使用MyBatis(1)在mybatis.xml配置文件中添加如下配置<setting name="logImpl&
  • 随着互联网的蓬勃发展,越来越多的互联网企业面临着用户量膨胀而带来的并发安全问题。本文着重介绍了在java并发中常见的几种锁机制。1.偏向锁偏
  • 效果自定义密码输入框,项目的一个界面需求,我把这个自定义的输入框提取出来作为这次内容的题目。输入前: 输入后: 输入1个
  • 题目描述:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将
  • 什么是Handler?Handler可以发送和处理消息对象或Runnable对象,这些消息对象和Runnable对象与一个线程相关联。每个H
  • 最近接手了一个需求,要求实现,叮咚买菜。秒杀位置的轮播拆解通过观察发现其实还是挺简单,大致分为1、商品图片的上下轮播2、价格布局渐隐渐现在a
  • 案例:图书管理(SpringBoot+Thymeleaf+SpringData-JPA)添加图书:图书基本信息及封面图片的上传及入库图书详细
  • 有时候,我们需要把对象A的所有值复制给对象B(B = A),但是这样用等号给赋值你会发现,当B中的某个对象值改变时,同时也会修改到A中相应对
  • 一、基本概念Task优势ThreadPool相比Thread来说具备了很多优势,但是ThreadPool却又存在一些使用上的不方便,例如:T
  • Android实现分享长图并且添加全图水印前言:长图一般是ScrollView和ListView。 我们需要取得这两个控件的完整显示的图片。
手机版 软件编程 asp之家 www.aspxhome.com