有关生成缩略图的算法逻辑

来源:互联网 发布:阿里云数据库在哪里 编辑:程序博客网 时间:2024/05/22 07:48

说明:“原”-“原图”,“标”-“标准,指定”,“新”-“新生成的结果图”


1、图像最大化满足:任何一边不得超过规定的长度。
如果“原宽/标宽 >= 原高/标高”,也即“原宽/原高 >= 标宽/标高”(原图宽高比 比 标图 更大,也即原图在视觉上更瘦),则以标宽为基准(新宽=标宽),新高=原高*(标宽/原宽);
如果“原宽/标宽 < 原高/标高”,也即“原宽/原高 < 标宽/标高”(原图宽高比 比 标图 更小,也即原图在视觉上更胖),则以标高为基准(新高=标高),新宽=原宽*(标高/原高);

 

2、图像最小化满足:任何一边不得少于规定的长度。
如果“原宽/标宽 >= 原高/标高”,也即“原宽/原高 >= 标宽/标高”(原图宽高比 比 标图 更大,也即原图在视觉上更瘦),则以标高为基准(新高=标高),新宽=原宽*(标高/原高);
如果“原宽/标宽 < 原高/标高”,也即“原宽/原高 < 标宽/标高”(原图宽高比 比 标图 更小,也即原图在视觉上更胖),则以标宽为基准(新宽=标宽),新高=原高*(标宽/原宽);

原创粉丝点击