缩放和旋转图片u 缩放 有几种办法可以缩放图片: public void scaleAbsolute(int newWidth, int newHeight) public void scalePercent(int percent) public void scalePercent(int percentX, int percentY) public void scaleToFit(int fitWidth, int fitHeight) 小孩的图片大小为194×202象素,如果你想让图片小一些,你可以通过scaleAbsolute(97, 101)进行缩放,使用scalePercent(50)也能到达同样的效果。 还可以通过scaleAbsolute(194, 101)来减小,所以这些例子都放在了示例代码0607中。 u 对分辨率的影响 如果一个图片不经任何缩放,其分辨率(resolution)为72,如果该图片缩放比例为50%,则分辨率为144,如果有更低的缩放比,则分辨率将更大,因为象素相同但尺寸变得更小了。使用72/300=24%的比例放置一个300dpi的图片,例:你用300dpi扫描了一个5×5英寸的图片,图片结果为1500×1500象素(5×300),当你用24%(72/300=0.24)的比例将该图片放置到PDF文件中时,PDF中的图片将为5×5英寸1500X1500象素300dpi,该图片将始终为1500X1500象素而不管尺寸如何。 u 旋转 可以通过下面的方法旋转图片 public void setRotation(double r) 详见示例代码0608。 原始图片数据到目前为止,所有例子中使用的图片均来自地本地磁盘或者某个网站,但也可能使用包含图片信息的数组来得到图片的实例: public static Image getInstance(byte[] img) 该方法同前面方法的效果相同,返回一个新的Gif,Jpeg或者Png类别的Image对象。 在示例代码0609中,我们添加一个从一个Jpeg文件中读入到字节数组中的图片,很明显,使用其他getInstance方法得到实例更优越,但这仅仅是一个例子,该getInstance方法在动态创建那些根本不存在的图片时非常有用。 该例子也演示了如何创建和使用一个原始图片。 public static Image getInstance(int width, int height, int components, int bpc, byte data[]) 本例中创建了一个100×100象素的图片,因为每个象素用RGB描述,所以图片大小为100×100×3字节。 |