- 浏览: 63178 次
- 性别:
- 来自: 杭州
最近访客 更多访客>>
最新评论
-
softor:
能否将一个.war的文件设成虚拟目录?
Jboss虚拟目录 -
jolestar:
不知道啥原因,我的一个朋友也这么说。不过我的ff一直稳定,无论 ...
火狐(fireFox)浏览器就知道吹牛(实际使用感受) -
Firede:
我家的IE7经常假死,
FF倒是跑的很顺。
用FF不因为别的 ...
火狐(fireFox)浏览器就知道吹牛(实际使用感受) -
ashion:
引用CS,CS-Source,帝国时代3,极品飞车10(英文) ...
玩QQ游戏每天超过2小时的人比较弱智 -
pig345:
哥们同情你。我目前正要离开这样一个小公司
这里的博客相册可以当网络硬盘使用
package com.gepower.ps.eps.topissuesadmin.common;
import java.awt.*;
import java.awt.geom.Line2D;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.IIOException;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import org.apache.commons.lang.NumberUtils;
/**
*
* <p>
* Title: TIMT
* </p>
* <p>
* Description: 2008-03
* </p>
* <p>
* Copyright: Copyright (c) 2006
* </p>
* <p>
* Company: TCS
* </p>
*
* @author Xujin.Jiao
* @version 4.0
*/
public class CinScoreImgServlet extends HttpServlet {
public static final long serialVersionUID = 123888839L;
public CinScoreImgServlet() {
}
public void init() throws ServletException {
super.init();
}
public void destroy() {
super.destroy();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
process(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
process(request, response);
}
protected void process(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
boolean drawTriangle = true;
int width = TopIssueAdminConstants.CIN_IMAGE_WIDTH;
int height = TopIssueAdminConstants.CIN_IMAGE_HEIGHT;
int halfTrag = (int)Math.round(height / Math.sqrt(3d));
int axisWidth = width - halfTrag;
int cinScore = 0;
int tragXpos = axisWidth;
String cinScoreStr = request.getParameter("cinScore");
if (null != cinScoreStr && cinScoreStr.trim().length() > 0) {
try {
if (!NumberUtils.isNumber(cinScoreStr)) {
drawTriangle = false;
} else if (Integer.parseInt(cinScoreStr) < 0) {
drawTriangle = false;
} else {
cinScore = Integer.parseInt(cinScoreStr);
tragXpos = axisWidth - (int)Math.round((cinScore * axisWidth) / TopIssueAdminConstants.MAX_CIN_SCORE);
}
} catch (Exception e) {
drawTriangle = false;
EPSLogger.debug("process() : Error in CinScoreImgServlet : "+ e.getMessage());
}
}
BufferedImage bi = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = (Graphics2D)bi.getGraphics();
g2.setBackground(Color.WHITE);
g2.clearRect(0, 0, width, height);
g2.setColor(Color.black);
g2.drawLine(0, 0, 0, height);
g2.drawLine(axisWidth / 2, 0, axisWidth / 2, height);
g2.drawLine(axisWidth, 0, axisWidth, height);
float dashes[] = {10, 2};
g2.setPaint(Color.black);
g2.setStroke(new BasicStroke(1, BasicStroke.CAP_BUTT,
BasicStroke.JOIN_MITER,
10, dashes, 0 ));
g2.draw(new Line2D.Double(0, height / 2, axisWidth, height / 2));
if (drawTriangle) {
int xValues[] = {tragXpos, tragXpos + halfTrag, tragXpos - halfTrag};
int yValues[] = {0, height, height};
g2.setColor(Color.CYAN);
g2.fillPolygon(xValues, yValues, 3);
}
response.setContentType("image/jpg");
try {
ImageIO.write(bi, "jpg", response.getOutputStream());
} catch(IIOException ex) {
EPSLogger.debug("process() : Error in CinScoreImgServlet : "+ ex.getMessage());
}
}
}
在web.xml中加上这个:
==================================================================
<servlet>
<servlet-name>DisplayCinImage</servlet-name>
<servlet-class>com.gepower.ps.eps.topissuesadmin.common.CinScoreImgServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DisplayCinImage</servlet-name>
<url-pattern>/servlet/DisplayCinImage</url-pattern>
</servlet-mapping>
JSP中这样使用:
===============================================================
<td align="center">
<img src="<%=request.getContextPath()%>/servlet/DisplayCinImage?cinScore=<%=roundOff(tMB.getCinScore())%>" alt="CIN Score=<%=roundOff(tMB.getCinScore())%>" />
</td>
效果图:
import java.awt.*;
import java.awt.geom.Line2D;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.IIOException;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import org.apache.commons.lang.NumberUtils;
/**
*
* <p>
* Title: TIMT
* </p>
* <p>
* Description: 2008-03
* </p>
* <p>
* Copyright: Copyright (c) 2006
* </p>
* <p>
* Company: TCS
* </p>
*
* @author Xujin.Jiao
* @version 4.0
*/
public class CinScoreImgServlet extends HttpServlet {
public static final long serialVersionUID = 123888839L;
public CinScoreImgServlet() {
}
public void init() throws ServletException {
super.init();
}
public void destroy() {
super.destroy();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
process(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
process(request, response);
}
protected void process(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
boolean drawTriangle = true;
int width = TopIssueAdminConstants.CIN_IMAGE_WIDTH;
int height = TopIssueAdminConstants.CIN_IMAGE_HEIGHT;
int halfTrag = (int)Math.round(height / Math.sqrt(3d));
int axisWidth = width - halfTrag;
int cinScore = 0;
int tragXpos = axisWidth;
String cinScoreStr = request.getParameter("cinScore");
if (null != cinScoreStr && cinScoreStr.trim().length() > 0) {
try {
if (!NumberUtils.isNumber(cinScoreStr)) {
drawTriangle = false;
} else if (Integer.parseInt(cinScoreStr) < 0) {
drawTriangle = false;
} else {
cinScore = Integer.parseInt(cinScoreStr);
tragXpos = axisWidth - (int)Math.round((cinScore * axisWidth) / TopIssueAdminConstants.MAX_CIN_SCORE);
}
} catch (Exception e) {
drawTriangle = false;
EPSLogger.debug("process() : Error in CinScoreImgServlet : "+ e.getMessage());
}
}
BufferedImage bi = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = (Graphics2D)bi.getGraphics();
g2.setBackground(Color.WHITE);
g2.clearRect(0, 0, width, height);
g2.setColor(Color.black);
g2.drawLine(0, 0, 0, height);
g2.drawLine(axisWidth / 2, 0, axisWidth / 2, height);
g2.drawLine(axisWidth, 0, axisWidth, height);
float dashes[] = {10, 2};
g2.setPaint(Color.black);
g2.setStroke(new BasicStroke(1, BasicStroke.CAP_BUTT,
BasicStroke.JOIN_MITER,
10, dashes, 0 ));
g2.draw(new Line2D.Double(0, height / 2, axisWidth, height / 2));
if (drawTriangle) {
int xValues[] = {tragXpos, tragXpos + halfTrag, tragXpos - halfTrag};
int yValues[] = {0, height, height};
g2.setColor(Color.CYAN);
g2.fillPolygon(xValues, yValues, 3);
}
response.setContentType("image/jpg");
try {
ImageIO.write(bi, "jpg", response.getOutputStream());
} catch(IIOException ex) {
EPSLogger.debug("process() : Error in CinScoreImgServlet : "+ ex.getMessage());
}
}
}
在web.xml中加上这个:
==================================================================
<servlet>
<servlet-name>DisplayCinImage</servlet-name>
<servlet-class>com.gepower.ps.eps.topissuesadmin.common.CinScoreImgServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DisplayCinImage</servlet-name>
<url-pattern>/servlet/DisplayCinImage</url-pattern>
</servlet-mapping>
JSP中这样使用:
===============================================================
<td align="center">
<img src="<%=request.getContextPath()%>/servlet/DisplayCinImage?cinScore=<%=roundOff(tMB.getCinScore())%>" alt="CIN Score=<%=roundOff(tMB.getCinScore())%>" />
</td>
效果图:
发表评论
-
invalid entry size(expected 429924352 but got 4299
2008-04-13 14:29 6421在安装Oracle10g的时候会发生如下的错误: D:\Or ... -
Oracle数据库的备份与恢复
2008-04-13 14:06 2210(一)导出/导入(EXPORT/IMPORT) 1.用 ... -
About java.lang.outOfMemory
2008-04-13 13:41 1853修改eclipse.ini文件 -vmargs -Xms40m ... -
导出oracle中表的部分数据
2008-04-13 13:26 3370以前我导出数据的时候都是全部导出,但这次遇到的表里的数据实在太 ... -
关于oracle数据库(远程对象调用)
2008-04-13 13:16 899-- Drop existing database l ... -
中文与Unicode编码互转
2008-04-13 13:01 1531<html> <head><ti ... -
时间格式化
2008-04-13 12:55 906String dateStr = "Fri Dec ... -
JSP中连接数据库
2008-04-13 12:52 803<%@ page language="Java ... -
java文件操作
2008-04-13 12:51 7351. ackage com.gamvan.too ... -
Java读取XML
2008-04-13 12:49 1202public class Untitled1 { pub ... -
排列组合在工作中的实际运用
2008-04-13 12:42 935个人理解:这个问题的本质是,每一行不选和选1,对于乘积的结 ... -
Jboss虚拟目录
2008-04-13 12:39 3027D:\jboss-4.0.2\server\default\d ... -
HashMap遍历
2008-04-13 12:34 5284import java.util.HashMap; impor ... -
Log4j与Jboss4共存
2008-04-13 12:33 1609log4j是一个很好的开源的日志项目,下面就我在实际中使用的一 ... -
Struts国际化的东西被我小小的一个类就能搞定
2008-04-13 12:30 930Struts国际化的东西叽叽歪歪 不好用, 有那么麻烦么?在J ... -
小日本是这样处理LIST表单更新/插入的
2008-04-13 12:22 1028在JSP中 每个字段对应一个数组。 <input nam ... -
连接数据库的相关代码
2008-04-13 12:18 978package ecogp.dml; import java. ... -
加密密码
2008-04-13 12:16 876package jp.co.smile.common; im ... -
如何将JSP中RadioBox设为不可选状态,并且不变灰
2008-04-13 12:14 2386试过了onchange,onclick事件都不好使。(不用 d ... -
本地计算机上的OracleOraHome92Agent服务启动后又停止了
2008-04-13 12:12 4503本地计算机上的OracleOraHome92Agent服务启动 ...
相关推荐
Java 使用 Servlet 动态生成图片 在 Web 应用中,经常需要动态生成图片,如实时股市行情、各种统计图等等。这种情况下,图片只能在服务器内存中动态生成并发送给用户,然后在浏览器中显示出来。本质上,浏览器向...
Java动态生成图片并把当前时间写在图片上是一项常见的需求,比如用于生成验证码、日志记录或者自定义的报告。这个任务涉及到Java图形处理、日期时间处理以及IO操作等多个方面。下面将详细介绍如何实现这个功能。 ...
在Java中实现图片生成器涉及到对Java 2D API、AWT和Swing库的深入理解。 Java 2D API是Java平台的标准部分,提供了丰富的功能来处理二维图形和图像。它支持基本的绘图操作,如绘制线、形状、文本和位图。开发者可以...
在Java编程语言中,生成图片是一项常见的任务,尤其在数据可视化、报告生成或者网页动态内容制作等场景。这里我们将深入探讨如何使用Java根据配置文件批量生成图片。 首先,要生成图片,我们需要理解Java中的图像...
总的来说,Java动画、图形和极富客户端效果开发是一个涵盖广泛的技术领域,涉及到组件使用、图形绘制、动画原理、事件处理等多个方面。通过学习和实践,开发者可以利用Swing创造出各种生动、直观的用户界面,提升...
在网页开发中,有时我们需要根据用户的操作或者服务器端的数据动态生成图片并展示在页面上,这种技术在报表、图表、验证码、数据可视化等方面广泛应用。本实例将深入探讨如何实现页面动态生成图片,主要包括以下几个...
然而,在某些场景下,我们可能需要在Java后台生成这些图表,而不是在前端直接渲染,比如用于报表生成、邮件发送或PDF文档嵌入等。 `echarts-java` 是一个专为 Java 开发者设计的工具库,它允许我们在 Java 后台生成...
在Java编程语言中,生成图片是一项常见的任务,可以用于数据可视化、动态图像生成或作为应用程序的一部分。本篇文章将深入探讨如何使用Java来创建和处理图片。 首先,Java提供了丰富的库来支持图像处理,如Java AWT...
在Java编程环境中,生成图片是一项常见的任务,尤其在数据可视化、报表生成或Web应用中。本文将深入探讨如何使用Java来生成图片,并结合打印功能,为开发者提供详细的实践指南。 首先,Java提供了多种库来帮助我们...
在Java编程领域,将文字转换为图片是一种常见的需求,它广泛应用于验证码生成、文本水印、数据可视化等领域。本文将详细讲解如何利用Java实现这一功能,主要涉及以下几个知识点: 1. **Graphics2D API** Java中的`...
注意,上述代码中涉及到的`chart.png`是生成图表后的图像文件,因为Apache POI在当前版本中并不直接支持将图表绘制到Word文档,而是先将图表生成为图片,再将图片插入到Word文档中。这可能会导致生成的图表质量受限...
在Java编程语言中,生成图片是一项常见的任务,特别是在数据可视化、报表生成或动态图像处理的场景下。这里的“java (bean) 生成图片”是指利用Java的类库和设计模式,如JavaBeans,来创建和操作图像。我们将深入...
在本实战教程中,我们将深入探讨HTTP Handler的概念,特别是如何利用HTTP Handler动态生成图片。HTTP Handler是.NET Framework中处理HTTP请求的一种方式,它允许我们自定义HTTP请求的生命周期,为特定的任务提供高度...
本文将详细讲解如何利用Java实现这一功能,包括如何动态设置水印的文字大小、颜色以及水印的倾斜角度。 首先,我们需要一个基础的图像处理库,如Java的`java.awt`和`java.awt.image`包,它们提供了处理图像的基本...
网页手写签名生成图片是一种常见的交互式功能,尤其在电子商务和法律文档签署中,它允许用户在网页上通过鼠标或其他输入设备模拟手写签名,并将其转换为图像进行保存或集成到文档中。这个Java实现的技术栈主要涉及...
标题“java本地及网络图片重新生成”与描述“java本地重新绘制生成到本地,及网络图片重新绘制生成Base64为字符串”所指向的知识点主要涵盖了在Java环境下,如何实现对本地图片的读取、编辑与保存,以及如何对网络...
通过研究这些源码,开发者不仅可以掌握Java Swing的基本用法,还能学习到如何利用Java实现专业级的动画和图形效果。这些源码实例为学习者提供了一个实战演练的平台,有助于提升开发技能,创建出引人入胜的桌面应用。
在JAVA编程语言中,我们可以实现动态生成验证码的机制,以提供安全的用户验证体验。下面将详细介绍如何在JAVA中实现验证码的生成。 首先,验证码通常由一组随机字符(包括字母、数字)组成,它们被扭曲、旋转或添加...
《Java 极富客户端效果开发》是一本深入探讨如何在Java平台上构建富客户端应用的专业书籍。这本书的内容主要围绕着如何利用Java技术实现图形用户界面(GUI)的高级效果,为用户提供更加丰富、交互性更强的体验。PDF...