java 生成文字图片的示例代码

本文主要介绍了java 生成文字图片的示例代码,分享给大家,具体如下:

import java.awt.Color;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Rectangle;
import java.awt.image.BufferedImage;
import java.io.File; 

import javax.imageio.ImageIO; 

public class FontImage {
  public static void main(String[] args) throws Exception {
    createImage("请A1003到3号窗口", new Font("宋体", Font.BOLD, 30), new File(
        "e:/a.png"), 4096, 64);
    createImage("请A1002到2号窗口", new Font("黑体", Font.BOLD, 35), new File(
        "e:/a1.png"), 4096, 64);
    createImage("请A1001到1号窗口", new Font("黑体", Font.PLAIN, 40), new File(
        "e:/a2.png"), 4096, 64);
  } 

  // 根据str,font的样式以及输出文件目录
  public static void createImage(String str, Font font, File outFile,
      Integer width, Integer height) throws Exception {
    // 创建图片
    BufferedImage image = new BufferedImage(width, height,
        BufferedImage.TYPE_INT_BGR);
    Graphics g = image.getGraphics();
    g.setClip(0, 0, width, height);
    g.setColor(Color.black);
    g.fillRect(0, 0, width, height);// 先用黑色填充整张图片,也就是背景
    g.setColor(Color.red);// 在换成黑色
    g.setFont(font);// 设置画笔字体
    /** 用于获得垂直居中y */
    Rectangle clip = g.getClipBounds();
    FontMetrics fm = g.getFontMetrics(font);
    int ascent = fm.getAscent();
    int descent = fm.getDescent();
    int y = (clip.height - (ascent + descent)) / 2 + ascent;
    for (int i = 0; i < 6; i++) {// 256 340 0 680
      g.drawString(str, i * 680, y);// 画出字符串
    }
    g.dispose();
    ImageIO.write(image, "png", outFile);// 输出png图片
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2017-08-20

java实现图片上加文字水印(SpringMVC + Jsp)

看之前要先对SpringMVC进行了解打好基础,下面直接先看效果图 代码编写 1.导入相关架包 2.配置文件 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee"

Java图片处理 (文字水印、图片水印、缩放、补白)代码实例

package com.hmw.picMark; import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.Image; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.im

JAVA实现二维码生成加背景图代码实例

这篇文章主要介绍了JAVA实现二维码生成加背景图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 pom.xml依赖 <!-- 二维码生成 --> <!-- https://mvnrepository.com/artifact/com.google.zxing/core --> <dependency> <groupId>com.google.zxing</groupId> <art

Java探索之Thread+IO文件的加密解密代码实例

这篇文章向大家分享了几段代码,主要是关于Thread+IO文件的加密解密,下面看看具体代码: 加密启动线程 package com.hz.subsection; import java.io.File; public class enCodeFileThread extends Thread { public Files files; public File file; public File dst; public enCodeFileThread(String name,Files file

Java编程二项分布的递归和非递归实现代码实例

本文研究的主要内容是Java编程二项分布的递归和非递归实现,具体如下. 问题来源: 算法第四版 第1.1节 习题27:return (1.0 - p) * binomial(N - 1, k, p) + p * binomial(N - 1, k - 1, p); 计算递归调用次数,这里的递归式是怎么来的? 二项分布: 定义:n个独立的是/非试验中成功次数k的离散概率分布,每次实验成功的概率为p,记作B(n,p,k). 概率公式:P(ξ=K)= C(n,k) * p^k * (1-p)^(n-k

JAVA使用动态代理对象进行敏感字过滤代码实例

这篇文章主要介绍了JAVA使用动态代理对象进行敏感字过滤代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 package com.hopetesting.web.filter; import javax.servlet.*; import javax.servlet.annotation.WebFilter; import java.io.BufferedReader; import java.io.FileNotFoundExcepti

Java实现发送手机短信语音验证功能代码实例

这篇文章主要介绍了Java实现发送手机短信语音验证功能代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 利用第三方平台可以实现发送手机短信验证码和语音验证码的功能,本文使用框架是struts2+spring+hibernate,现就action层给出核心代码功能. public class VerifyAction extends BaseAction<VerifyRequest> { private static final long

Android给图片加文字和图片水印实例代码

我们在做项目的时候有时候需要给图片添加水印,水寒今天就遇到了这样的问题,所以搞了一个工具类,贴出来大家直接调用就行. /** * 图片工具类 * @author 水寒 * */ public class ImageUtil { /** * 设置水印图片在左上角 * @param Context * @param src * @param watermark * @param paddingLeft * @param paddingTop * @return */ public static Bi

随时给自己贴的图片加文字的php水印

随时给自己贴的图片加文字  <?  Header( "Content-type: image/jpeg");  function makethumb($srcFile,$text,$size=12,$R=0,$G=0,$B=0) {  if(!$text){  $text='welcome xs.net.ru xayle';  $size=20;  $R=255;  }  $data = GetImageSize($srcFile,&$info);  switch ($d

jQuery图片预加载 等比缩放实现代码

复制代码 代码如下: /* * Image preload and auto zoom * scaling 是否等比例自动缩放 * width 图片最大高 * height 图片最大宽 * loadpic 加载中的图片路径 * example $("*").LoadImage(true,w,h); */ jQuery.fn.LoadImage=function(scaling,width,height,loadpic){ if(loadpic==null)loadpic=".

Java添加事件监听的四种方法代码实例

Java添加事件的几种方式(转载了codebrother的文章,做了稍微的改动): /** * Java事件监听处理--自身类实现ActionListener接口,作为事件监听器 * * @author codebrother */ class EventListener1 extends JFrame implements ActionListener { private JButton btBlue, btDialog; public EventListener1() { setTitle(