- 浏览: 176789 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (186)
- [网站分类]4.其他技术区 (93)
- [网站分类]6.转载区(Java技术文章转载, 请注明原文出处) (4)
- [网站分类]3.非技术区 (7)
- [网站分类]1.网站首页原创Java技术区(对首页文章的要求: 原创、高质量、经过认真思考并精心写作。BlogJava管理团队会对首页的文章进行管理。) (28)
- HTML&CSS (0)
- 感悟生活 (4)
- c#(.net) (1)
- [网站分类]2.Java新手区 (32)
- [网站分类]5.提问区(Java方面的技术提问) (1)
- java (6)
- web前端 (7)
- php (0)
- C++ (1)
- python (0)
- 互联网应用 (0)
最新评论
-
lliiqiang:
请求单线程资源只能等待结果.
Applet 与JS通信 -
feng2qin:
期待你的精彩回到。QQ:864479410
Applet 与JS通信 -
feng2qin:
我想问一句;哥们儿,applet程序中调用js,你真的成功了嘛 ...
Applet 与JS通信 -
lyaixsp:
...
ExtJS 入门学习之 window与panel篇 -
longzijian:
不知道 java-he 现在找到数组的这种特性 的原因在那里
和网友关于javascript数组的讨论
图象缓冲的应用双缓冲绘图:
图象缓冲的应用截图:
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--> 1 ///////////////////////////////////////////////////////////////////////////////
2 //
3 // @title:BufImgJpane
4 //
5 // @discription 实现了双缓冲画图
6 //
7 // @author 爪洼河
8 //
9 // @date 2006-8
10 //
11 ////////////////////////////////////////////////////////////////////////////////////
12 import java.awt.Graphics;
13 import java.awt.Graphics2D;
14 import java.awt.Image;
15 import java.awt.image.BufferedImage;
16 import javax.swing.ImageIcon;
17 import javax.swing.JButton;
18 import javax.swing.JFrame;
19 import javax.swing.JPanel;
20 public class BufImgJpane extends JPanel
21 {
22 Image img ;
23 BufferedImage bufimg ;
24 public BufImgJpane ()
25 {
26 ImageIcon icon = new ImageIcon (getClass ().getResource ("1.jpg")) ;
27 img = icon.getImage () ;
28 bufimg = new BufferedImage (img.getWidth (this) , img.getHeight (this) ,
29 BufferedImage.TYPE_3BYTE_BGR) ;
30 Graphics2D g2 = bufimg.createGraphics () ;
31 g2.clearRect (0 , 0 , img.getWidth (this) , img.getHeight (this)) ;
32 g2.drawImage (img , 0 , 0 , img.getWidth (this) , img.getHeight (this) ,
33 this) ;
34 }
35 public void paintComponent (Graphics g)
36 {
37
38 g.drawImage (bufimg , 0 , 0 , this.getWidth () , this.getHeight () ,
39 this) ;
40 }
41 public static void main (String args[])
42 {
43 BufImgJpane bufimgpane = new BufImgJpane () ;
44 JFrame frame = new JFrame ("双缓冲画图") ;
45 frame.add (bufimgpane) ;
46 frame.setSize (610 , 625) ;
47 frame.setVisible (true) ;
48 frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) ;
49 }
50 }
51
2 //
3 // @title:BufImgJpane
4 //
5 // @discription 实现了双缓冲画图
6 //
7 // @author 爪洼河
8 //
9 // @date 2006-8
10 //
11 ////////////////////////////////////////////////////////////////////////////////////
12 import java.awt.Graphics;
13 import java.awt.Graphics2D;
14 import java.awt.Image;
15 import java.awt.image.BufferedImage;
16 import javax.swing.ImageIcon;
17 import javax.swing.JButton;
18 import javax.swing.JFrame;
19 import javax.swing.JPanel;
20 public class BufImgJpane extends JPanel
21 {
22 Image img ;
23 BufferedImage bufimg ;
24 public BufImgJpane ()
25 {
26 ImageIcon icon = new ImageIcon (getClass ().getResource ("1.jpg")) ;
27 img = icon.getImage () ;
28 bufimg = new BufferedImage (img.getWidth (this) , img.getHeight (this) ,
29 BufferedImage.TYPE_3BYTE_BGR) ;
30 Graphics2D g2 = bufimg.createGraphics () ;
31 g2.clearRect (0 , 0 , img.getWidth (this) , img.getHeight (this)) ;
32 g2.drawImage (img , 0 , 0 , img.getWidth (this) , img.getHeight (this) ,
33 this) ;
34 }
35 public void paintComponent (Graphics g)
36 {
37
38 g.drawImage (bufimg , 0 , 0 , this.getWidth () , this.getHeight () ,
39 this) ;
40 }
41 public static void main (String args[])
42 {
43 BufImgJpane bufimgpane = new BufImgJpane () ;
44 JFrame frame = new JFrame ("双缓冲画图") ;
45 frame.add (bufimgpane) ;
46 frame.setSize (610 , 625) ;
47 frame.setVisible (true) ;
48 frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) ;
49 }
50 }
51
图象缓冲的应用截图:
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--> 1 ///////////////////////////////////////////////////
2 //
3 // @name TestImageIO.java
4 //
5 // @discription 首先测试把一个容器通过按钮事件存为一张图片。
6 //
7 // @author java&he
8 //
9 // @date 2006-12
10 //
11 ////////////////////////////////////////////////////
12 import java.awt.Graphics;
13 import java.awt.event.ActionEvent;
14 import java.awt.event.ActionListener;
15 import java.awt.image.BufferedImage;
16 import java.io.File;
17 import javax.imageio.ImageIO;
18 import javax.swing.*;
19 public class TestImageIO
20 {
21 JFrame frame = new JFrame ("测试截屏");
22 JPanel panel = new JPanel ();
23 public TestImageIO ()
24 {
25
26 frame.setSize (200,300);
27
28 frame.add ("Center",panel);
29 panel.setLayout (null);
30 JButton btn = new JButton ("paint");
31 btn.setBounds (100,100,100,50);
32 panel.add (btn);
33 btn.addActionListener (new ActionListener ()
34 {
35 public void actionPerformed (ActionEvent evt)
36 {
37 BufferedImage bufimg = new BufferedImage (TestImageIO.this.frame.getBounds ().width,TestImageIO.this.frame.getBounds ().height,BufferedImage.TYPE_INT_RGB);
38 Graphics g = bufimg.getGraphics ();
39 TestImageIO.this.frame.paint (g);
40 g.dispose ();
41 try
42 {
43 ImageIO.write (bufimg,"jpg",new File ("Test.jpg"));
44
45 }
46 catch(Exception e)
47 {
48 e.printStackTrace ();
49 }
50 }
51 });
52 frame.setVisible (true);
53 frame.setDefaultCloseOperation (frame.EXIT_ON_CLOSE);
54 }
55 public static void main (String[] args)
56 {
57 new TestImageIO ();
58 }
59
60 }
61
2 //
3 // @name TestImageIO.java
4 //
5 // @discription 首先测试把一个容器通过按钮事件存为一张图片。
6 //
7 // @author java&he
8 //
9 // @date 2006-12
10 //
11 ////////////////////////////////////////////////////
12 import java.awt.Graphics;
13 import java.awt.event.ActionEvent;
14 import java.awt.event.ActionListener;
15 import java.awt.image.BufferedImage;
16 import java.io.File;
17 import javax.imageio.ImageIO;
18 import javax.swing.*;
19 public class TestImageIO
20 {
21 JFrame frame = new JFrame ("测试截屏");
22 JPanel panel = new JPanel ();
23 public TestImageIO ()
24 {
25
26 frame.setSize (200,300);
27
28 frame.add ("Center",panel);
29 panel.setLayout (null);
30 JButton btn = new JButton ("paint");
31 btn.setBounds (100,100,100,50);
32 panel.add (btn);
33 btn.addActionListener (new ActionListener ()
34 {
35 public void actionPerformed (ActionEvent evt)
36 {
37 BufferedImage bufimg = new BufferedImage (TestImageIO.this.frame.getBounds ().width,TestImageIO.this.frame.getBounds ().height,BufferedImage.TYPE_INT_RGB);
38 Graphics g = bufimg.getGraphics ();
39 TestImageIO.this.frame.paint (g);
40 g.dispose ();
41 try
42 {
43 ImageIO.write (bufimg,"jpg",new File ("Test.jpg"));
44
45 }
46 catch(Exception e)
47 {
48 e.printStackTrace ();
49 }
50 }
51 });
52 frame.setVisible (true);
53 frame.setDefaultCloseOperation (frame.EXIT_ON_CLOSE);
54 }
55 public static void main (String[] args)
56 {
57 new TestImageIO ();
58 }
59
60 }
61
发表评论
-
检验邮箱
2007-02-08 09:46 817<!--<br><br> ... -
批处理命令总结
2007-02-08 16:52 723批处理命令总结:@ 符号后 的命 ... -
学习UML笔记
2007-02-27 17:30 785学习 UML 笔记 前言 为了自己能快速将 UML ... -
blog加上一个同页面浏览者聊天室代码
2007-05-23 10:17 747都是用的别人提供的服务。哈哈。<script type= ... -
常见网页技巧
2007-06-10 16:32 5861.鼠标移动上去,图片变亮,移开又变成灰色。改变的是透明度。 ... -
javascript 数组排序
2007-07-01 03:16 747javascript 数组排序发现一个我原来不知道的事情: ... -
javascript 在客户端绘制图表系列三——xy坐标曲线图
2007-07-01 04:31 1363系列1、2中介绍过的内容在这里不会赘述。原理同面1、2基本一样 ... -
搭建php的运行环境
2007-07-31 18:50 915配置 php 环境 ... -
从网页导出excel
2007-08-09 21:36 753<?xml:namespace ... -
简单日期下拉框
2007-08-09 22:13 864项目中用到一个级联、动态下拉选择日期框。我以前也收集 ... -
php学习笔记1
2007-08-22 22:36 842前面总结过 ... -
php学习笔记2
2007-08-23 23:33 745主要内容:总结了第四章,主要关于字符串处理。参考书籍 ... -
分享一个表格排序程序
2007-08-23 23:46 686应广大网友要求特此分享一个表格排序的程序。有问题,欢迎留言(虽 ... -
AJAX愉快之旅——prototype.js篇
2007-08-24 09:53 620AJAX ... -
Javascript 事件转移
2007-09-19 08:52 762我遇到的Javascript 现 ... -
网页打印脚本
2007-09-19 08:55 1601<html><head><sty ... -
记录访问者IP
2007-09-19 10:46 863<?php //文件名字 $filename = &q ... -
JAVASCRIPT COOKIE初级指南
2007-12-23 23:43 6941、设置COOKIE数据: 最 ... -
PHP读取4种配置文件(php,ini,yaml,xml)
2007-12-23 23:49 885<?php/*** 读取4中配置的表信息,现支持php. ... -
JAVASCRIPT 与闭包
2007-12-23 23:57 622闭包和引用,this引用的简单介绍……<script t ...
相关推荐
循环图像缓冲区是一种在计算机图形学和游戏开发中常见的技术,用于提高图像处理效率和流畅度。这种技术基于双缓冲或多缓冲的概念,特别是在实时渲染环境中,例如游戏引擎、动画软件和用户界面。下面我们将深入探讨...
循环图像缓冲区是一种在计算机图形学和多媒体编程中常见的技术,用于高效地处理连续显示的图像数据,如视频播放或游戏画面。这种技术的核心在于利用内存管理策略来优化图像数据的读取和写入过程,以减少延迟并提高...
本篇将重点介绍利用图像缓冲器的电子变焦系统,从其基本原理、工作流程到实际应用,深入剖析这一技术。 首先,我们要理解电子变焦与光学变焦的区别。光学变焦是通过移动镜头内部的镜片组来改变焦距,从而改变视角,...
234循环图像缓冲区_new.pdf
108循环图像缓冲区_new.pdf
Java的图像缓冲技术主要用于优化图像显示,特别是在处理大量或者复杂图像数据时,它可以显著提高程序的性能和用户体验。在Java中,图像缓冲涉及到的主要类来自`java.awt.image`包,如`BufferedImage`和`Image`。下面...
在探讨多媒体应用中基于PCM(相变存储器)的图像缓冲区生命周期增强技术之前,先来了解一些基础和相关概念。 相变存储器(PCM)是一种非易失性存储器,它基于相变材料通过电加热从一种物理状态转变为另一种物理状态...
4. **显示新图像**:把交换后的图像缓冲区内容重新显示在屏幕上。 #### 三、图像镜像变换 **定义**:图像镜像是指将图像左右翻转显示在屏幕的技术。 **实现原理**:每行图像信息的处理方式相同,且行顺序不发生...
双缓冲的核心概念是使用两个图像缓冲区(通常称为帧缓冲区)来处理图形渲染。 在传统的单缓冲机制中,每当图形更新时,都会直接绘制到屏幕上。如果多个图形操作同时发生,屏幕可能会出现闪烁或者部分未完成的图像,...
图片标签 输出图像上存在的感知哈希和面部对象; 需要安装phash,cimg,...接受图像缓冲区并输出带标签的图像: var ImageTag = require ( 'image-tag' ) ; var imageTag = new ImageTag ( { tmpDir : '/pat
5. **更新图像**:将旋转后的新像素数据写回到图像,或者返回一个新的图像缓冲区。 6. **优化**:为了提高效率,可以使用预计算旋转矩阵的技巧,或者使用向量化的SIMD(单指令多数据)指令。 在"turnImage.c"文件...
双缓冲的基本原理是创建两个图像缓冲区,通常称为前台缓冲和后台缓冲。当绘制新的图像时,所有图形操作都在后台缓冲区进行,避免了在用户界面上看到部分完成的或闪烁的图像。一旦后台缓冲区完成绘制,整个图像会被一...
1. 创建一个离屏缓冲区(Off-Screen Buffer),这是一个与屏幕大小相同的图像缓冲区。 2. 在离屏缓冲区上执行所有的绘图操作,如绘制组件、线条、文本等。在这个阶段,即使绘图过程复杂,用户也看不到任何变化,因为...
在“11-18”这个特定的工程中,可能涵盖了从图像采集到处理的一系列模块,如ADC(模拟到数字转换器)接口、DMA(直接存储器访问)控制器、图像缓冲区管理以及特定的图像处理算法实现。 1. 图像采集:在FPGA中,图像...
双缓冲工作方式是指系统中有两个图像缓冲区,当一个缓冲区在被显示时,另一个缓冲区可以进行数据写入。这样,当一个帧完成渲染后,可以立即切换到下一个缓冲区,确保连续且无中断的图像输出。 "成像ok"意味着OV5640...
3. **遍历像素**:对于图像中的每一个像素,取出其RGB值,用上述加权平均公式计算出灰度值,并将结果存入灰度图像缓冲区。 4. **保存灰度图像**:使用位图保存函数,如`Save`,将灰度图像数据写入新的文件。 在...
在计算机图形学中,图像缓冲是一种将图像数据存储在内存中的技术,这样可以提高渲染效率并避免屏幕闪烁。当改变图像时,先在缓冲区中完成修改,然后再一次性显示到屏幕上,这个过程称为双缓冲或多缓冲技术,能有效...
在这个例子中,首先需要设置图像采集卡的相关参数,然后采集图像数据并将其存储在图像缓冲区。接着,利用图像处理算法对缓冲区中的图像数据进行反色处理。最后,将处理后的图像显示出来。 #### 五、总结 基于DH_...
3. 创建RGB图像缓冲区:根据转换后的RGB数据,创建一个适合屏幕显示的RGB图像缓冲区。 4. 显示图像:将RGB缓冲区传递给图形库或操作系统,进行渲染和显示。 在Python中,可以使用OpenCV或PIL等库来实现这个过程。...