知识大全 printscreen读取位图转为jpeg格式输出
Posted 知
篇首语:智者不为愚者谋,勇者不为怯者死。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 printscreen读取位图转为jpeg格式输出相关的知识,希望对你有一定的参考价值。
package screensaver; import java awt *; import java awt image BufferedImage; import java io *; import java util *; import dec jpeg *; import java awt Image; import java awt Toolkit; import java awt image BufferedImage; import java awt image MemoryImageSource; import java io FileInputStream; import java io FileOutputStream; import dec jpeg JPEGCodec; import dec jpeg JPEGImageEncoder; public class ScreenPicSaver MediaTracker tracker = new MediaTracker(new Component() ); public ScreenPicSaver() public Image loadbitmap(String sdir String sfile) //读取 位或 位的位图文件 Image image; System out println( loading: + sdir + sfile); try FileInputStream fs = new FileInputStream(sdir + sfile); int bflen = ; // 字节 BITMAPFILEHEADER byte bf[] = new byte[bflen]; fs read(bf bflen); int bilen = ; // 字节 BITMAPINFOHEADER byte bi[] = new byte[bilen]; fs read(bi bilen); // 解释数据 int nsize = ( ( (int) bf[ ] & xff) < < ) | ( ( (int) bf[ ] & xff) < < ) | ( ( (int) bf[ ] & xff) < < ) | (int) bf[ ] & xff; System out println( File type is : + (char) bf[ ] + (char) bf[ ]); System out println( Size of file is : + nsize); int nbisize = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Size of bitmapinfoheader is : + nbisize); int nwidth = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Width is : + nwidth); int nheight = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Height is : + nheight); int nplanes = ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Planes is : + nplanes); int nbitcount = ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( BitCount is : + nbitcount); // 查找表明压缩的非零值 int npression = ( ( (int) bi[ ]) < < ) | ( ( (int) bi[ ]) < < ) | ( ( (int) bi[ ]) < < ) | (int) bi[ ]; System out println( Compression is : + npression); int nsizeimage = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( SizeImage is : + nsizeimage); int nxpm = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( X Pixels per meter is : + nxpm); int nypm = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Y Pixels per meter is : + nypm); int nclrused = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Colors used are : + nclrused); int nclrimp = ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | ( ( (int) bi[ ] & xff) < < ) | (int) bi[ ] & xff; System out println( Colors important are : + nclrimp); if (nbitcount == ) // 位格式不包含调色板数据 但扫描行被补足到 // 个字节 int npad = (nsizeimage / nheight) nwidth * ; int ndata[] = new int[nheight * nwidth]; byte brgb[] = new byte[ (nwidth + npad) * * nheight]; fs read(brgb (nwidth + npad) * * nheight); int nindex = ; for (int j = ; j < nheight; j++) for (int i = ; i < nwidth; i++) ndata[nwidth * (nheight j ) + i] = ( & xff) < < | ( ( (int) brgb[nindex + ] & xff) < < ) | ( ( (int) brgb[nindex + ] & xff) < < ) | (int) brgb[nindex] & xff; /** System out println( Encoded Color at ( +i + + j + )is: + nrgb + (R G B)= ( + ( (int) (brgb[ ]) & xff) + + ( (int) brgb[ ] & xff) + + ( (int) brgb[ ] & xff) + ) ); */ nindex += ; nindex += npad; image = Toolkit getDefaultToolkit() createImage (new MemoryImageSource(nwidth nheight ndata nwidth)); else if (nbitcount == ) // 必须确定颜色数 如果 clrsused 参数大于 // 则颜色数由它决定 如果它等于 则根据 // bitsperpixel 计算颜色数 int nNumColors = ; if (nclrused > ) nNumColors = nclrused; else nNumColors = ( & xff) < < nbitcount; System out println( The number of Colors is + nNumColors); // 某些位图不计算 sizeimage 域 请找出 // 这些情况并对它们进行修正 if (nsizeimage == ) nsizeimage = ( ( ( (nwidth * nbitcount) + ) & ~ ) >> ); nsizeimage *= nheight; System out println( nsizeimage (backup) is + nsizeimage); // 读取调色板颜色 int npalette[] = new int[nNumColors]; byte bpalette[] = new byte[nNumColors * ]; fs read(bpalette nNumColors * ); int nindex = ; for (int n = ; n < nNumColors; n++) npalette[n] = ( & xff) < < | ( ( (int) bpalette[nindex + ] & xff) < < ) | ( ( (int) bpalette[nindex + ] & xff) < < ) | (int) bpalette[nindex ] & xff; /**System out println ( Palette Color +n + is: + npalette[n] + (res R G B)= ( + ( (int) (bpalette[nindex + ]) & xff) + + ( (int) (bpalette[nindex + ]) & xff) + + ( (int) bpal cha138/Article/program/Java/JSP/201311/19747相关参考
知识大全 在Java应用程序读取8位和24位Windows位图
在Java应用程序读取8位和24位Windows位图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 在VC下显示JPEG、GIF格式图像的一种简便方法
在VC下显示JPEG、GIF格式图像的一种简便方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!l
JS中将字符串转为XML并读取对象值实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在jav
用Ajax读取XML格式的数 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 用Ajax读取XML
DataTable转为JSON数据格式代码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 做项目
数码单反相机的图像格式可以选择JPEG也可以选择RAW格式,RAW格式对于后期制作是非常有利的。另外,RAW格式的画面不会经过相机的自动调整,其质量会更优质一些。当然,摄影者可以通过设置饱和度、反差、
怎样将cdr格式中的图片保存成png格式1.选择导出CorelDraw这款软件和别的软件略有不同,这款软件不能直接保存jpg、png等位图模式。如果我们需要保存这些位图模式的话,我们需要用导出来实现;
读取xml文件 /** *利用XmlBeanFactory(Resourceresource) *这里Resource必须是xml格式 *Resource包括AbstractResourc
知识大全 请列举图像类型、声音类型、视频类型的文件格式各3种。并简单描述其特征。
请列举图像类型、声音类型、视频类型的文件格式各3种。并简单描述其特征。视频aviwmv流媒体asfrmramrmvbTxt,Text,Scp,Log,Wtx之类的、声音wav、图像JPG/JPEG、视
问题是这样的 /Date()/这样的格式怎么转成时间格式 这是从C#的Datatime格式通过Json传到Js里面的 下面是我们的提供的方法 js需要把时间戳转为为普通格式一般的情况下可能