public String get_Pic(String input,String out_path,String mDateTime,Connection sqlCon){
FileOutputStream pFile_OutputStream = null;
BufferedImage image2 = null;
BufferedImage image = null;
BufferedImage image_out = null;
BufferedImage image_tmp = null;
this.sqlConn = sqlCon;
ab = null;
returnStr = "";
outFileData = null;
try{
image = ImageIO.read(new FileInputStream(MMS_ConfigXML.getBack_image()));
sqlStat = sqlConn.createStatement();
Graphics2D g = image.createGraphics();
g.setColor(Color.BLACK);
//g.setFont(new Font("宋体", Font.LAYOUT_LEFT_TO_RIGHT, 16));
Graphics2D g_tmp = null;
int top=20;
int left = 20;
int maxHeight=0;
input = input.toLowerCase(); //把消息中的字母转变成小写字母,和数据表对应
for(int i=0;i<input.length();i++){
sqlStr = "select image from picture where name = '"+input.charAt(i)+"'";
//System.out.println("***"+sqlStr);
sqlResult = sqlStat.executeQuery(sqlStr);
if(sqlResult.next()){
oracle.sql.BLOB blob = (oracle.sql.BLOB)sqlResult.getBlob("image");
ab = blob.getBytes(1, (int) blob.length());
pFile_OutputStream = new FileOutputStream(String.valueOf("D://eclipse//workspace//HAKJ_MMS_demo//tmp_gif//"+input.charAt(i))+".gif");
pFile_OutputStream.write(ab);
image2 = ImageIO.read(new FileInputStream("D://eclipse//workspace//HAKJ_MMS_demo//tmp_gif//"+String.valueOf(input.charAt(i))+".gif")); //读到缓冲图片中等待处理
}else{
image_tmp = new BufferedImage(19,19,BufferedImage.TYPE_INT_ARGB); //20为字边距
g_tmp = image_tmp.createGraphics();
g_tmp.setColor(Color.BLACK);
g_tmp.setFont(new Font("宋体", Font.LAYOUT_LEFT_TO_RIGHT, 13)); //设置字体显示效果,微调
g_tmp.drawString(String.valueOf(input.charAt(i)),8,13);
g_tmp.dispose();
image2 = image_tmp;
}
if(left+image2.getWidth(null)>=image.getWidth(null)){ //控制边界
left = 20;
top = top+maxHeight+1;
maxHeight=0;
}
//for(int l=0;l<image2.getWidth();l++){
// for(int t=0;t<image2.getHeight();t++){
// if(image2.getRGB(l,t)==-1){
// image2.setRGB(l,t,image.getRGB(left+l,top+t));
// }
// }
//}
g.drawImage(image2, left,top, image2.getWidth(null),image2.getHeight(null), null);
left=left+image2.getWidth(null)+2;
if(image2.getHeight(null)>maxHeight){
maxHeight=image2.getHeight(null);
}
}
g.dispose();
//gif图象处理
//outFileData = this.makeTransGif(this.image,this.image_out,500);
// FileOutputStream outFileStream = null; //保存初始可执行的生成最终结果图片的代码
// outFileStream = new FileOutputStream(out_path+mDateTime+".gif"); //输出路径
// outFileStream.write(outFileData);
// outFileStream.close();
//jpeg处理
FileOutputStream out = new FileOutputStream(out_path+mDateTime+".jpg");
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
returnStr = "";
}catch(Exception e){
System.out.println(e.toString());
}
return returnStr;
}