import java.awt.Color; import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import java.io.File; public class ThumbnailGenerator { public void transform(String originalFile, String thumbnailFile, int thumbWidth, int thumbHeight, int quality) throws Exception { Image image = javax.imageio.ImageIO.read(new File(originalFile)); double thumbRatio = (double)thumbWidth / (double)thumbHeight; int imageWidth = image.getWidth(null); int imageHeight = image.getHeight(null); double imageRatio = (double)imageWidth / (double)imageHeight; if (thumbRatio < imageRatio) { thumbHeight = (int)(thumbWidth / imageRatio); } else { thumbWidth = (int)(thumbHeight * imageRatio); } if(imageWidth < thumbWidth && imageHeight < thumbHeight) { thumbWidth = imageWidth; thumbHeight = imageHeight; } else if(imageWidth < thumbWidth) thumbWidth = imageWidth; else if(imageHeight < thumbHeight) thumbHeight = imageHeight; BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB); Graphics2D graphics2D = thumbImage.createGraphics(); graphics2D.setBackground(Color.WHITE); graphics2D.setPaint(Color.WHITE); graphics2D.fillRect(0, 0, thumbWidth, thumbHeight); graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null); javax.imageio.ImageIO.write(thumbImage, "JPG", new File(thumbnailFile)); } }
相关推荐
php生成验证码,缩略图及水印图的类分享_.docx
主要给大家分享的是php生成验证码,缩略图,及水印图的类,十分的实用,有需要的小伙伴可以参考下
php图片处理类,验证码生成,等比生成缩略图,获取图片信息。
thinkphp3.2.3后台登录功能,包括验证码,上传图片,以及缩略图的生成的实现!
在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表。 2、部分GD库函数的介绍 imagecreatetruecolor 新建一个真彩色图像 imagecolorallocate 为一幅图像分配颜色(调色板) ...
基于PHP制作验证码 一、 开发环境 ... 2、文本编辑器:Sublime 3。 二、主要技术 本案例主要基于PHP中的GD库来实现验证码的制作。... 在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表 。
主要给大家介绍了关于.NET Core利用skiasharp文字头像生成(基于docker发布)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...
在windows和linux下,调用GD库的,生成缩略图和验证码的代码。
在网站上GD库通常用来生成缩略图,或者用来给图片添加水印,或者用来生成验证码等。幸运的是,SAE默认是对GD库支持的。 本地开发php默认是不支持GD库的,需要自己开启,开启的方式是:在本地PHP安装目录下找到...
C#关于对图片的操作(生成缩略图,合并图片,加水印文字与图片,生成电子印章,生成验证码等)
基于[iXuEr CMS]架构设计制作,方便的调用接口,方便的反馈参数调用接口,主动选择是否显示文件上传进度,为每个上传的文件提供属性接口,可以设置某个文件是否生成缩略图或者添加水印,文件上传添加了验证码机制,...
这是利用GD库生成验证码的页面 test.PHP <?php header('Content-Type:image/jpeg'); $img = imagecreatetruecolor(100, 40); $black = imagecolorallocate($img, 0x00, 0x00, 0x00); $green = ...
在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。 GD库的安装什么的网上都有,现在很多虚拟空间也都支持,这里就不再赘述。下面通过我实际应用代码的...
按照比例改变图片大小(非生成缩略图) 收藏主页 数据验证类 数组转换成XML格式 日期计算 是否为电子邮件格式 柱形统计图 检查是否为一个合法的时间格式 检测URL地址有效性 检测文件是否图片 检测是否可以以...
phpcms_v9.6.6_UTF8手机电脑同时生成html 官方改了后台界面,修复bug ...安装完删除安装目录 安装删除友情链接、广告数据 ...后台界面修改 整合ueditor编辑器 ...修改后台缩略图裁切图片 20200513更新 修改phpcms目录为cms
19.修改后台缩略图裁切图片 20.修改flash上传,改成html5上传 21.添加头像字段 22.修改头像,重新写入库 23.修复phpcms多处BUG 24.修复UEditor编辑器 25.修复缩略图裁切图片 26.添加组图模式,图片模式、文本模式 ...