当前位置: 首页 > news >正文

舟山网站开发网站增加二级域名

舟山网站开发,网站增加二级域名,中国建设银行手机wap网站,给女生做网站最近网上看到两种不同的java图片缩略图的绘制方案第一种#xff0c;使用Graphics().drawImage按照一定的比例重新绘制图像。Java代码package com.image.suoluetu;import java.io.*;import java.awt.*;import java.awt.image.*;import com.sun.image.codec.jpeg.*;public class…最近网上看到两种不同的java图片缩略图的绘制方案第一种使用Graphics().drawImage按照一定的比例重新绘制图像。Java代码package com.image.suoluetu;import java.io.*;import java.awt.*;import java.awt.image.*;import com.sun.image.codec.jpeg.*;public class DrawImage {private String destFile;private int width;private int height;private Image img;public DrawImage(String fileName) throws IOException {File _file  new File(fileName); // 读入文件_file.getName();this.destFile  D:/dage2.jpg;// this.srcFile.substring(0,// this.srcFile.lastIndexOf(.))// _s.jpg;img  javax.imageio.ImageIO.read(_file); // 构造Image对象width  img.getWidth(null); // 得到源图宽height  img.getHeight(null); // 得到源图长}/*** /**** param args*/public void resize(int w, int h) throws IOException {try {BufferedImage _image  new BufferedImage(w, h,BufferedImage.TYPE_INT_RGB);_image.getGraphics().drawImage(img, 0, 0, w, h, null); // 绘制缩小后的图FileOutputStream newimageout  new FileOutputStream(destFile); // 输出到文件流/** JPEGImageEncoder 将图像缓冲数据编码为 JPEG 数据流。该接口的用户应在 Raster 或* BufferedImage 中提供图像数据在 JPEGEncodeParams 对象中设置必要的参数 并成功地打开* OutputStream(编码 JPEG 流的目的流)。JPEGImageEncoder 接口可 将图像数据编码为互换的缩略* JPEG 数据流该数据流将写入提供给编码器的 OutputStream 中。* 注意com.sun.image.codec.jpeg 包中的类并不属于核心 Java API。它们属于 Sun 发布的 JDK* 和 JRE 产品的组成部分。虽然其它获得许可方可能选择发布这些类但开发人员不能寄 希望于从非 Sun* 实现的软件中得到它们。我们期望相同的功能最终可以在核心 API 或标准扩 展中得到。*/JPEGImageEncoder encoder  JPEGCodec.createJPEGEncoder(newimageout);encoder.encode(_image); // 近JPEG编码newimageout.close();} catch (Exception ex) {ex.printStackTrace();}}/*** 按照固定的比例缩放图片** param t*            double 比例* throws IOException*/public void resize(double t) throws IOException {int w  (int) (width * t);int h  (int) (height * t);resize(w, h);}/*** 以宽度为基准等比例放缩图片** param w*            int 新宽度* throws IOException*/public void resizeByWidth(int w) throws IOException {int h  (int) (height * w / width);resize(w, h);}/*** 以高度为基准等比例缩放图片** param h*            int 新高度* throws IOException*/public void resizeByHeight(int h) throws IOException {int w  (int) (width * h / height);resize(w, h);}/*** 按照最大高度限制生成最大的等比例缩略图** param w*            int 最大宽度* param h*            int 最大高度* throws IOException*/public void resizeFix(int w, int h) throws IOException {if (width / height  w / h) {resizeByWidth(w);} else {resizeByHeight(h);}}/*** 设置目标文件名 setDestFile** param fileName*            String 文件名字符串*/public void setDestFile(String fileName) throws Exception {if (!fileName.endsWith(.jpg)) {throw new Exception(Dest File Must end with \.jpg\.);}destFile  fileName;}/*** 获取目标文件名 getDestFile*/public String getDestFile() {return destFile;}/*** 获取图片原始宽度 getSrcWidth*/public int getSrcWidth() {return width;}/*** 获取图片原始高度 getSrcHeight*/public int getSrcHeight() {return height;}public static void main(String[] args) {// TODO Auto-generated method stubtry {DrawImage ccc  new DrawImage(D:/dage.jpg);ccc.resizeFix(600, 400);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}第二种使用仿射转换的技术进行图片绘制。Java代码package com.image.suoluetu;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.File;import java.awt.image.AffineTransformOp;import java.awt.geom.AffineTransform;public class AffineTransImage {public static void main (String argv[]) {try {File fi  new File(D:/dage.jpg); //大图文件File fo  new File(D:/dagex.jpg); //将要转换出的小图文件int nw  500;/*AffineTransform 类表示 2D 仿射变换它执行从 2D 坐标到其他 2D坐标的线性映射保留了线的“直线性”和“平行性”。可以使用一系列平移、缩放、翻转、旋转和剪切来构造仿射变换。*/AffineTransform transform  new AffineTransform();BufferedImage bis  ImageIO.read(fi); //读取图片int w  bis.getWidth();int h  bis.getHeight();//double scale  (double)w/h;int nh  (nw*h)/w ;double sx  (double)nw/w;double sy  (double)nh/h;transform.setToScale(sx,sy); //setToScale(double sx, double sy) 将此变换设置为缩放变换。System.out.println(w    h);/** AffineTransformOp类使用仿射转换来执行从源图像或 Raster 中 2D 坐标到目标图像或*  Raster 中 2D 坐标的线性映射。所使用的插值类型由构造方法通过*  一个 RenderingHints 对象或通过此类中定义的整数插值类型之一来指定。如果在构造方法中指定了 RenderingHints 对象则使用插值提示和呈现的质量提示为此操作设置插值类型。要求进行颜色转换时可以使用颜色呈现提示和抖动提示。 注意务必要满足以下约束源图像与目标图像必须不同。 对于 Raster 对象源图像中的 band 数必须等于目标图像中的 band 数。*/AffineTransformOp ato  new AffineTransformOp(transform,null);BufferedImage bid  new BufferedImage(nw,nh,BufferedImage.TYPE_3BYTE_BGR);/** TYPE_3BYTE_BGR 表示一个具有 8 位 RGB 颜色分量的图像* 对应于 Windows 风格的 BGR 颜色模型具有用 3 字节存* 储的 Blue、Green 和 Red 三种颜色。*/ato.filter(bis,bid);ImageIO.write(bid,jpeg,fo);} catch(Exception e) {e.printStackTrace();}}}
http://www.sadfv.cn/news/40961/

相关文章:

  • 网站建设方案如何写网站怎么增加流量
  • 玉树营销网站建设多少钱深圳网站设计是什么
  • 电子商务网站建设与维护实训常州网站建设推荐
  • 北京icp网站备案深圳入户申请网站官网
  • 昆山做网站的公昆山做网站的公司司做网站入门看什么书
  • 优质的广州微网站建设怎么给网站wordpress
  • 营销方案网站朝阳区搜索优化seosem
  • 静态网站怎么容易做赣州快云科技有限公司
  • 高端网站建设哪些好做网站腾讯云服务器
  • 佛山微网站推广石家庄住房建设厅网站
  • 如何攻击织梦做的网站商城网站建设推荐
  • 北京网站建设佳v询 lotlek 能上词wordpress主题 大前端 阿里百秀 xiu
  • 中国建设银行ie下载网站国内企业网站模板
  • 百度不收录网站描述国外客户推广网站
  • 高性能网站建设指南 书wordpress 电台网站
  • 网站优化一般怎么做湖南企业网络推广软件
  • 商务网站需求分析学软件开发需要学什么
  • 学习做网站可以吗php网站开发实战教程
  • 电子商务网站推广方法和技巧wordpress不安装先写前端
  • 网站备案在哪里审批工程公司招聘
  • 网站开发的项目内容flash网站推荐
  • 泗阳县住房和建设局网站东营网站关键词
  • 手机网站可以做百度商桥吗海南省建设网站的公司
  • 四川建设厅报名网站wordpress数据恢复
  • 购物网站名字网站 关键词库 怎么做
  • 网站设置301解除移动屏蔽谷歌外链
  • 建设网站转赚钱吗建设局网站管理办法
  • 苏州个人网站制作邯郸信息港招聘信息
  • 建设银行关闭网站查询信用卡账单网站的整合
  • 成都科技网站建设找百度 模块网站