File file = new File("文件路径");
FileInputStream fis = new FileInputStream(file);
BufferedImage bufferedImg = ImageIOread(fis);
int imgWidth = bufferedImggetWidth();
int imgHeight = bufferedImggetHeight();
我之前有个源码丢失了,反编译后是这样子的。
大致就是先通过 Java Advanced Image IO (JAI, 在 Oracle 上下载) 把读取到内存,然后缩放后设置成 ImageIcon 显示到一个 Panel 上。直接让 Swing 自己读取时好像不会自动缩放的。
FileInputStream input = new FileInputStream(path);BufferedImage image = ImageIOread(input);
image = scale(image, width, max);
ProductFramethissetIcon(new ImageIcon(image));
private BufferedImage scale(BufferedImage image, int from, int to)
{
if(from > to)
{
double scale = (double)to / (double)from;
ParameterBlock pb = new ParameterBlock();
pbaddSource(image);
pbadd(scale);
pbadd(scale);
pbadd(00D);
pbadd(00D);
RenderingHints qualityHints = new RenderingHints(RenderingHintsKEY_RENDERING, RenderingHintsVALUE_RENDER_QUALITY);
RenderedOp resizedImage = JAIcreate("SubsampleAverage", image, DoublevalueOf(scale), DoublevalueOf(scale), qualityHints);
return resizedImagegetAsBufferedImage();
} else
{
return image;
}
}
用 BufferedImage sourceImg = javaximageioImageIOread(in);可得到宽高 sourceImggetWidth()
sourceImggetHeight()
File file=new File(path);
ImageIOwrite(sourceImg, 后缀, file);
filelength();
将的文件转为File类型,有length方法可得到文件大小,格式就看文件名的后缀了
<input type="text" size="4" value="10" name="fileSizeLimit" id="fileSizeLimit"/> K
<input type="file" name="file1" id="file1" size="40" onchange="changeSrc(this)"/>
<img src="about:blank" id="fileChecker" alt="test" height="18"/>
//前面为网页
<script type="text/javascript">
var oFileChecker = documentgetElementById("fileChecker");
function changeSrc(filePicker)
{
oFileCheckersrc = filePickervalue;//读
}
//这个很重要,判断是否完全读完,否则判断大小不准确
oFileCheckeronreadystatechange = function ()
{
if (oFileCheckerreadyState == "complete")
{
checkSize();
}
}
function checkSize()
{
var limit = documentgetElementById("fileSizeLimit")value 1024;
if (oFileCheckerfileSize > limit)
{
alert("too large");
}
else
{
alert("ok");
}
}
</script>
后台获取到文件了么FilegetName就是文件名了
这个方法就是保存文件用的了 调用saveFile(filegetInputStrean,filegetName);
private void saveFile(InputStream inputStream, String fileName) {OutputStream os = null; try {
String path = "D:\\testFile\\"; // 2、保存到临时文件 // 1K的数据缓冲
byte[] bs = new byte[1024]; // 读取到的数据长度
int len; // 输出的文件流保存到本地文件
File tempFile = new File(path); if (!tempFileexists()) {
tempFilemkdirs();
}
os = new FileOutputStream(tempFilegetPath() + Fileseparator + fileName); // 开始读取
while ((len = inputStreamread(bs)) != -1) {
oswrite(bs, 0, len);
}
} catch (IOException e) {
eprintStackTrace();
} catch (Exception e) {
eprintStackTrace();
} finally { // 完毕,关闭所有链接
try {
osclose();
inputStreamclose();
} catch (IOException e) {
eprintStackTrace();
}
}
}
建议使用PS软件进行调整。
*** 作步骤:
1打开需要处理的照片,在“图像”中找到“图像大小”。
2然后就可以进行对宽和高进行调整了。
注意:要把下方“约束比例”的勾去掉,不然是修改不了想要的数值。
应该是路径问题。
把你要显示的放在你的Test类里,
再把 :con = new ImageIcon("D:\\java程序\\1jpg");
改成 : icon = new ImageIcon("/1jpg");
你试试,看行不。
写这东西很麻烦的,给你个2思路:
方案1:要知道摄像头距物体的距离,在摄像头焦距不变的情况下,拍照获取,分析出中物体的长度,即物体像素的长度,然后根据距离转换成实际长度。
方案2:测量物体的附近有参照物,参照物已知长度。拍照后物体的像素和参照物的像素长度来计算。
类似这种测量精度不会很高。
以上就是关于java如何判断图片文件的宽度和高度全部的内容,包括:java如何判断图片文件的宽度和高度、Javase中要显示一个图片,但是图片尺寸太大了,如何让图片能完全显示在规定区域内、java后台怎样规定上传的图片的大小格式,等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)