「java图片高清化」java图像清晰化处理
今天给各位分享java图片高清化的知识,其中也会对java图像清晰化处理进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java 把pdf文档中有高清图片转化为图片时内容不完整,就是图片没有了,请高手帮助。
- 2、如何用JAVA转换图像格式
- 3、java生成pdf文件时为什么图片没有原来那么清晰了,这个问题怎么解决
- 4、怎么用java代码放大或缩小图片不失真。
- 5、java 改变图片的分辨率。。。可以吗?
java 把pdf文档中有高清图片转化为图片时内容不完整,就是图片没有了,请高手帮助。
安装Acrobat,并设置PHOTOSHOP为默认图片编辑器。用对象工具右键点击图片再选编辑,就能把图片以原清晰度完整读入PS。
如何用JAVA转换图像格式
关于图像转换的方式,实际上操作的是图像的字节流。我的工作中遇到过将bmp文件压缩为jpg以便于网络传输的课题。所以我这里重点介绍bmp转为jpg的一个方法。
实际上,我更喜欢使用以前sun公司内部使用的api提供的转换方法,这里使用到了两个很重要的类:
com.sun.image.codec.jpeg.JPEGCodec
com.sun.image.codec.jpeg.JPEGImageEncoder
需要注意的是,它们所属的一个jar包不存在于编译目录下,但存在于运行目录下,所以我们首先需要在jre文件下找到rt.jar并导入进来以使得编译通过。
我改写了网上的一个转换代码,所得代码如下:
此外,原sun公司开源的jar包jai_corec_1.1.3.jar也提供了图片格式的转码方式,这里也提供了转码方式,仅供参考:
备注:亲自尝试,当从jpg转bmp时会转很久很久时间(看不到尽头),转得的文件可以很大,所以建议不要使用。
java生成pdf文件时为什么图片没有原来那么清晰了,这个问题怎么解决
PDF打印机设置的问题,你选的标准打印就会压缩图片,你选高质量、印刷质量之类的就可以了。
怎么用java代码放大或缩小图片不失真。
放大图像不会导致失真,而缩小图像将不可避免的失真。Java中也同样是这样。但java提供了4个缩放的微调选项。image.SCALE_SMOOTH //平滑优先image.SCALE_FAST//速度优先image.SCALE_AREA_AVERAGING //区域均值image.SCALE_REPLICATE //像素复制型缩放image.SCALE_DEFAULT //默认缩放模式调用方法Image new_img=old_img.getScaledInstance(1024, 768, Image.SCALE_SMOOTH);得到一张缩放后的新图。怎么用java代码放大或缩小图片不失真。
java 改变图片的分辨率。。。可以吗?
我给你一个Servlet的源代码,你把这个配置好,试试吧。建议把代码复制到一个开发工具中,这样,你看起来会舒服一些。如下:
package com.photo.gallery;
import java.awt.AlphaComposite;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ImageResizer extends HttpServlet {
private static final long serialVersionUID = -8285774993751841288L;
public void doGet(HttpServletRequest request, HttpServletResponse response) {
String imageOutput = getParam(request, "output", "png");
String imageRoot = getParam(request, "root", "/albums");
String imageFile = getParam(request, "file", "/Album1/image1.jpg");
int width = Integer.parseInt(getParam(request, "width", "250"));
int height = Integer.parseInt(getParam(request, "width", "0"));
if ("png".equals(imageOutput))
response.setContentType("image/png");
else
response.setContentType("image/jpeg");
String imageLoc = request.getSession().getServletContext().getRealPath(
imageRoot)
+ imageFile;
try {
BufferedImage bufferedImage = ImageIO.read(new File(imageLoc));
int calcHeight = height 0 ? height : (width
* bufferedImage.getHeight() / bufferedImage.getWidth());
ImageIO.write(createResizedCopy(bufferedImage, width, calcHeight),
imageOutput, response.getOutputStream());
} catch (Exception e) {
log("Problem with image: " + imageLoc + e);
}
}
BufferedImage createResizedCopy(Image originalImage, int scaledWidth,
int scaledHeight) {
BufferedImage scaledBI = new BufferedImage(scaledWidth, scaledHeight,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = scaledBI.createGraphics();
g.setComposite(AlphaComposite.Src);
g.drawImage(originalImage, 0, 0, scaledWidth, scaledHeight, null);
g.dispose();
return scaledBI;
}
private String getParam(HttpServletRequest request, String param, String def) {
String parameter = request.getParameter(param);
if (parameter == null || "".equals(parameter)) {
return def;
} else {
return parameter;
}
}
}
2.配置web.xml
?xml version="1.0" encoding="UTF-8"?
web-app version="2.4" xmlns=""
xmlns:xsi=""
xsi:schemaLocation="
"
servlet
servlet-nameimage/servlet-name
servlet-classcom.photo.gallery.ImageResizer/servlet-class
load-on-startup1/load-on-startup
/servlet
servlet-mapping
servlet-nameimage/servlet-name
url-pattern/image/url-pattern
/servlet-mapping
/web-app
3.在地址栏输出如下的连接:
;file=/thumbs/imagename.jpgwidth=270height=100
即可查看效果
java图片高清化的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java图像清晰化处理、java图片高清化的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。