- 浏览: 671166 次
- 性别:
- 来自: 石家庄
文章分类
最新评论
-
abao1:
老贾 在安装IDEA的过程中,在激活步骤时,按如下操作即可: ...
IntelliJ IDEA 2016注册方法和注册码 -
bo_hai:
./usr/bin/java: symbol lookup ...
jmagick安装步骤 -
wxcking:
不错的, 收藏一下
JAVA使用POI生成Excel文件 -
zgyfh:
大哥,密码是多少啊?zgyfh@tom.com谢谢了!新手学习 ...
WPF做的必备示例 -
记忆无泪:
jiasongmao 写道你的邮箱是多少,我可以发源代码到邮箱 ...
WPF做的必备示例
public class AlterUploadImage {
String inputDir; //源图片的绝对路径,不包含图片的文件名
String outputDir; //目标图片的绝对路径,不包含图片的文件名
String inputFileName; //源图片文件名
String outputFileName; //目标图片的文件名
int outputWidth; //目标图片的宽
int outputHeight; //目标图片的高
boolean proportion = true; //是否等比例缩放
private String inputFileUrl;//源图片的绝对路径,包含文件名
private String outputFileUrl;//目标图片的绝对路径,包含文件名
public AlterUploadImage(String inputDir, String outputDir,
String inputFileName, String outputFileName, int outputWidth,
int outputHeight, boolean proportion) {
this.inputDir=inputDir;
this.outputDir=outputDir;
this.inputFileName= inputFileName;
this.outputFileName=outputFileName;
this.outputWidth=outputWidth;
this.outputHeight=outputHeight;
this.proportion=proportion;
}
public AlterUploadImage() {
inputDir="";
outputDir="";
inputFileName="";
outputFileName="";
outputWidth=100;
outputHeight=100;
proportion=true;
}
public boolean alterImageSize() {
//构造源、目标图片的路径
inputFileUrl=inputDir+inputFileName;
outputFileUrl=outputDir+outputFileName;
File fileOut = new File(outputFileUrl);
File fileIn = new File(inputFileUrl);
FileOutputStream tempout = null;
try {
tempout = new FileOutputStream(fileOut);
} catch (Exception ex) {
System.out.println(ex.toString());
}
Image img = null;
Toolkit tk = new Toolkit();
Applet app = new Applet();
MediaTracker mt = new MediaTracker(app);
try {
img = javax.imageio.ImageIO.read(fileIn);
mt.addImage(img, 0);
mt.waitForID(0);
} catch (Exception e) {
e.printStackTrace();
}
if (img.getWidth(null) == -1) {
return false;
} else {
int new_w;
int new_h;
if (this.proportion == true) {//判断是否等比例缩放
//计算比率
double rate1 = ((double) img.getWidth(null)) / (double) outputWidth + 0.1;
double rate2 = ((double) img.getHeight(null)) / (double) outputHeight + 0.1;
double rate = rate1 > rate2 ? rate1 : rate2;
new_w = (int) (((double) img.getWidth(null)) / rate);
new_h = (int) (((double) img.getHeight(null)) / rate);
} else {
new_w = outputWidth; //宽
new_h = outputHeight; //高
}
BufferedImage buffImg = new BufferedImage(new_w, new_h,
BufferedImage.TYPE_INT_RGB);
Graphics g = buffImg.createGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, new_w, new_h);
g.drawImage(img, 0, 0, new_w, new_h, null);
g.dispose();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(tempout);
try {
encoder.encode(buffImg);
tempout.close();
} catch (IOException ex) {
System.out.println(ex.toString());
}
}
return true;
}
public String getInputDir() {
return inputDir;
}
public void setInputDir(String inputDir) {
this.inputDir = inputDir;
}
public String getOutputDir() {
return outputDir;
}
public void setOutputDir(String outputDir) {
this.outputDir = outputDir;
}
public String getInputFileName() {
return inputFileName;
}
public void setInputFileName(String inputFileName) {
this.inputFileName = inputFileName;
}
public String getOutputFileName() {
return outputFileName;
}
public void setOutputFileName(String outputFileName) {
this.outputFileName = outputFileName;
}
public int getOutputWidth() {
return outputWidth;
}
public void setOutputWidth(int outputWidth) {
this.outputWidth = outputWidth;
}
public int getOutputHeight() {
return outputHeight;
}
public void setOutputHeight(int outputHeight) {
this.outputHeight = outputHeight;
}
public boolean isProportion() {
return proportion;
}
public void setProportion(boolean proportion) {
this.proportion = proportion;
}
public String getInputFileUrl() {
return inputFileUrl;
}
public void setInputFileUrl(String inputFileUrl) {
this.inputFileUrl = inputFileUrl;
}
public String getOutputFileUrl() {
return outputFileUrl;
}
public void setOutputFileUrl(String outputFileUrl) {
this.outputFileUrl = outputFileUrl;
}
}
String inputDir; //源图片的绝对路径,不包含图片的文件名
String outputDir; //目标图片的绝对路径,不包含图片的文件名
String inputFileName; //源图片文件名
String outputFileName; //目标图片的文件名
int outputWidth; //目标图片的宽
int outputHeight; //目标图片的高
boolean proportion = true; //是否等比例缩放
private String inputFileUrl;//源图片的绝对路径,包含文件名
private String outputFileUrl;//目标图片的绝对路径,包含文件名
public AlterUploadImage(String inputDir, String outputDir,
String inputFileName, String outputFileName, int outputWidth,
int outputHeight, boolean proportion) {
this.inputDir=inputDir;
this.outputDir=outputDir;
this.inputFileName= inputFileName;
this.outputFileName=outputFileName;
this.outputWidth=outputWidth;
this.outputHeight=outputHeight;
this.proportion=proportion;
}
public AlterUploadImage() {
inputDir="";
outputDir="";
inputFileName="";
outputFileName="";
outputWidth=100;
outputHeight=100;
proportion=true;
}
public boolean alterImageSize() {
//构造源、目标图片的路径
inputFileUrl=inputDir+inputFileName;
outputFileUrl=outputDir+outputFileName;
File fileOut = new File(outputFileUrl);
File fileIn = new File(inputFileUrl);
FileOutputStream tempout = null;
try {
tempout = new FileOutputStream(fileOut);
} catch (Exception ex) {
System.out.println(ex.toString());
}
Image img = null;
Toolkit tk = new Toolkit();
Applet app = new Applet();
MediaTracker mt = new MediaTracker(app);
try {
img = javax.imageio.ImageIO.read(fileIn);
mt.addImage(img, 0);
mt.waitForID(0);
} catch (Exception e) {
e.printStackTrace();
}
if (img.getWidth(null) == -1) {
return false;
} else {
int new_w;
int new_h;
if (this.proportion == true) {//判断是否等比例缩放
//计算比率
double rate1 = ((double) img.getWidth(null)) / (double) outputWidth + 0.1;
double rate2 = ((double) img.getHeight(null)) / (double) outputHeight + 0.1;
double rate = rate1 > rate2 ? rate1 : rate2;
new_w = (int) (((double) img.getWidth(null)) / rate);
new_h = (int) (((double) img.getHeight(null)) / rate);
} else {
new_w = outputWidth; //宽
new_h = outputHeight; //高
}
BufferedImage buffImg = new BufferedImage(new_w, new_h,
BufferedImage.TYPE_INT_RGB);
Graphics g = buffImg.createGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, new_w, new_h);
g.drawImage(img, 0, 0, new_w, new_h, null);
g.dispose();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(tempout);
try {
encoder.encode(buffImg);
tempout.close();
} catch (IOException ex) {
System.out.println(ex.toString());
}
}
return true;
}
public String getInputDir() {
return inputDir;
}
public void setInputDir(String inputDir) {
this.inputDir = inputDir;
}
public String getOutputDir() {
return outputDir;
}
public void setOutputDir(String outputDir) {
this.outputDir = outputDir;
}
public String getInputFileName() {
return inputFileName;
}
public void setInputFileName(String inputFileName) {
this.inputFileName = inputFileName;
}
public String getOutputFileName() {
return outputFileName;
}
public void setOutputFileName(String outputFileName) {
this.outputFileName = outputFileName;
}
public int getOutputWidth() {
return outputWidth;
}
public void setOutputWidth(int outputWidth) {
this.outputWidth = outputWidth;
}
public int getOutputHeight() {
return outputHeight;
}
public void setOutputHeight(int outputHeight) {
this.outputHeight = outputHeight;
}
public boolean isProportion() {
return proportion;
}
public void setProportion(boolean proportion) {
this.proportion = proportion;
}
public String getInputFileUrl() {
return inputFileUrl;
}
public void setInputFileUrl(String inputFileUrl) {
this.inputFileUrl = inputFileUrl;
}
public String getOutputFileUrl() {
return outputFileUrl;
}
public void setOutputFileUrl(String outputFileUrl) {
this.outputFileUrl = outputFileUrl;
}
}
发表评论
-
强引用、软引用、弱引用和虚引用
2018-06-06 16:37 421Java 如何有效地避免OOM:善于利用软引用和弱引用 ... -
使用Spring实现读写分离( MySQL实现主从复制)
2018-05-17 11:46 552使用Spring实现读写分离( MySQL实现主从复制) ... -
工作流activiti
2018-04-18 15:52 439Activiti工作流教程 https://blog.cs ... -
java的动态代理机制详解
2017-12-22 15:54 419https://www.cnblogs.c ... -
OCR框架整理
2017-08-16 09:29 582泰比ABBYY OCR SDK开发包 Asp ... -
eclipse启动tomcat出现内存溢出错误 java.lang.OutOfMemoryError: PermGen space
2017-04-06 16:54 628发布工程后,启动tomcat出现如下内存溢出错误: java ... -
springMVC上传文件大小限制以及超过限制后的自定义处理
2017-04-01 08:12 1256http://blog.csdn.net/baidu_186 ... -
IntelliJ IDEA 2016注册方法和注册码
2017-03-30 13:52 2528IntelliJ IDEA号称当前Java开发效率最高的ID ... -
java使用wsimport生成服务代码时报错的解决办法
2017-01-18 11:27 1702今天遇到了WebService的问题:在使用jdk命令wsi ... -
OCR文字识别系统
2016-12-21 22:14 454慧视OCR文字识别系统 增值税专用发票扫描识别系统 ... -
Maven中央仓库无法更新jar包的解决办法
2016-12-09 00:44 1070删掉了*lastUpdated文件 然后到setti ... -
spring jar包下载地址
2015-09-23 17:31 635spring jar包下载地址:http://maven.sp ... -
JRex java webbrowser 爬虫ajax网页 源码
2015-01-08 16:37 970一般在浏览器中查看页面代码 是浏览器直接下载到的页面代码 在 ... -
程序员福利各大平台免费接口,非常适用
2014-12-03 10:03 913电商接口 京东获取单个商品价格接口: http: ... -
数据库建模工具:PowerDesigner与Rose详解教程
2009-12-08 12:38 1898一、 二者的出身 作为世界最著名的两大CASE工具, ... -
java制作图片的缩略图
2009-09-23 14:49 1657package com.mxo9.b2c.service.ad ... -
MD5、SHA加密实体类
2009-08-02 17:37 1208public class MD5Utility { ... -
des加密解密实体类
2009-08-02 17:21 1399/** * DES加密解密类. ... -
Windows客户端的JProfiler远程监控Linux上的Tomcat
2009-07-20 12:23 27791.测试环境 服务器:ubuntu8.04(内核版本 2.6. ... -
Jalopy在Eclipse下的使用
2009-07-13 17:47 1612Jalopy是一款代码美化工 ...
相关推荐
3. 图片尺寸调整:使用GDI+的Resize方法可以改变图片的宽度和高度。这个过程涉及到图像的重新采样,需要考虑保持图片的比例,防止变形。 4. 图片质量设置:在缩小图片的同时,为了保持图片质量,可能需要调整JPEG或...
下面是一个简单的C#代码示例,演示如何按百分比调整图片大小: ```csharp using System; using System.Drawing; public class ImageResizer { public static void ResizeImage(string inputPath, string output...
在Java编程环境中,修改图片大小是一项常见的任务,尤其在处理图像数据或开发图形用户界面时。这个主题主要涉及Java的图像处理技术,包括使用Java AWT(Abstract Window Toolkit)和Swing库。以下是对这个话题的详细...
例如,在整理一个含有数百张图片的文档过程中,发现图片规格各异,为达到统一规范的目的,需将所有图片调整至指定尺寸(如425x320像素)。手动调整显然耗时且效率低下,因此引入Word内置的宏功能来实现自动化批量...
这个示例项目就是针对这一需求设计的,它利用JavaScript技术实现了一个图片放大镜的功能。 首先,我们要理解这个效果的核心原理。图片放大镜效果是通过创建一个浮动的小窗口(通常是一个透明的div元素),该窗口...
`ViewChangeDemo`这个示例项目很可能包含了一个演示如何动态改变View大小的代码实例。通常,它会展示如何在特定条件下(如点击事件、动画效果)调整View的大小,并可能包括了自定义View的实现。 总的来说,理解并...
在提供的`ZoomImgDemo`示例中,很可能包含了一个或者多个用于实现这一功能的代码示例,可能是用C++、Python、Java或其他编程语言编写的。通过分析和理解这段代码,你可以学习到如何实际操作上述过程,进一步提升图像...
在这个场景中,`ImageResizer.exe`可能是一个用于批量处理图片的工具,它可以自动调整图片的大小和分辨率,同时保持原始图片的比例。绿色旗舰站.ini和Desktop.ini可能是该软件的配置文件,用于记录程序设置和桌面...
在提供的压缩包中,应包含一个示例程序,演示了如何使用libjpeg进行图像大小的改变。你可以参考这个示例,根据自己的需求调整图像缩放算法和压缩参数。此外,注意处理可能出现的错误,如内存分配失败、文件读写错误...
下面是一个简单的例子,展示了如何在鼠标进入和离开PictureBox时改变图片大小: ```vbnet Public Class Form1 Private originalSize As Size = New Size(100, 100) '原始图片大小 Private Sub PictureBox1_...
压缩包中的`SizePic`可能是一个示例程序或者包含了一些用于演示如何改变图片控件大小的代码。在实际应用中,处理图片控件的大小变化时,我们可能需要用到图像拉伸、缩放算法,以确保图像在调整大小后不失真。 综上...
在Access的数据表设计视图中,可以添加一个名为“图片”的OLE对象字段。这种字段类型允许存储图像文件,如JPEG、PNG或GIF等。点击“字段”工具栏上的“更多字段”按钮,然后选择“OLE对象”类型,为字段命名(例如...
可以创建一个透明的`BufferedImage`,画上水印文字,再合并到原图: ```java Font font = new Font("Arial", Font.BOLD, 24); Color color = new Color(255, 255, 255, 128); // 半透明白色 g2d.setColor(color)...
而"NETGEAR Router.files"可能是一个文件夹,包含了与这个HTML页面相关的其他资源,如CSS样式表、图片或者额外的JavaScript文件。 要实现这样的功能,开发者还需要考虑浏览器兼容性问题,因为不是所有的浏览器都...
这个"文件图形多媒体-图片转字符画之通过命令行指定图片大小和名称-Python源码示例.zip"就是一个很好的实例,它演示了如何使用Python编程语言来实现这一功能。该压缩包中的源码提供了通过命令行接口指定图片尺寸和...
Unity本身并没有直接提供一个API来改变已有的`Texture2D`的大小。因此,我们需要手动创建一个新的`Texture2D`,然后将原始纹理的数据复制到新纹理中。下面是一个具体的实现示例: ```csharp private static Color32...
以下是一个简单的示例,展示了如何在用户点击按钮时改变图片的大小: ```html 图片描述"> ()">改变大小 function changeSize() { var img = document.getElementById('myImage'); img.style.width = '500px'; ...
总的来说,Java提供了丰富的图像处理功能,通过合理的组合和运用,我们可以实现各种复杂的图像处理任务,包括改变图片大小、保持PNG透明度以及添加圆角等效果。在实际开发中,还需要注意性能优化,特别是在处理大量...
以下是一个示例代码: ```matlab data = randn(10); h = imagesc(data); cb = colorbar; set(cb, 'FontSize', 12); % 设置colorbar字体大小 ``` #### 五、总结 通过上述步骤,可以轻松地在MATLAB中调整colorbar数字...
本篇文章将详细讲解如何通过创建一个`UINavigationBar`的分类来实现动态改变导航栏的透明度和大小,从而提升应用的视觉效果。 首先,我们需要了解`UINavigationBar`的基础知识。`UINavigationBar`是UIKit框架中的一...