`

用java对图片进行绘画

阅读更多
package com.java.test_IO;

import java.io.RandomAccessFile;
/**
 * 表示一个已经存在的Bmp图片,
 * 并提供一些对该图片绘画的功能
 * @author teacher
 */
public class getClourlong {

	static int width;
	static int height;
	static RandomAccessFile ran;
	public getClourlong(String fl) throws Exception{
		ran = new RandomAccessFile(fl,"rw");
		ran.seek(18);
		width = width | ran.read();
		width = width | ran.read() << 8;
		width = width | ran.read() <<16;
		width = width | ran.read() <<24;
		
		height = height | ran.read();
		height = height | ran.read()<<8;
		height = height | ran.read()<<16;
		height = height | ran.read()<<24;
		
	}
	public static void reverse() throws Exception {
		int line = width*3 + (4 - (width*3%4));
		ran.seek(54);
		for (int i = 54; i < ran.length(); i++) {
			if((i+line)%line<=line){
				int m = ~(ran.read());//取反
				ran.seek(ran.getFilePointer()-1);//回到当前指针;
				ran.write(m);
			}
		}
		System.out.println("转换完毕!!");
	}	
	public static void main(String[] args) throws Exception{
		String str="/home/soft22/Desktop/ff.bmp";//图片地址
		getClourlong bp = new getClourlong(str);
		System.out.println(bp.width+","+bp.height);
		reverse();
	}

}

引用


转换后(左),原图(右)
分享到:
评论

相关推荐

    基于Java语言的安卓绘画应用设计与实现源码

    该项目为基于Java语言的安卓绘画应用设计源码,共计包含55个文件,其中XML配置文件22个,Java源文件10个,图像文件(格式为webp)10个,Git忽略文件3个,Gradle文件3个,属性文件2个,项目配置文件1个,图片文件1个...

    gq.zip_GQ_java 事件_监听绘画简介

    在Java编程语言中,事件监听和图形绘画是两个重要的概念,尤其在开发用户界面(UI)应用程序时。这里我们将深入探讨这两个主题,并结合"www.pudn.com.txt"和"国旗"这两个文件名称来理解它们如何关联。 首先,让我们...

    基于java swing界面的PDF绘画工具

    在"基于Java Swing界面的PDF绘画工具"项目中,开发人员利用Swing构建了一个用户友好的界面,允许用户在PDF文档上进行绘图操作。这个工具分为两个主要界面:预览界面和配置界面。 预览界面提供了一个可视化的PDF文档...

    图片浏览小程序(java+applet)

    4. 图片处理:如果需要进行图片的裁剪、缩放等操作,可以使用`java.awt.image`包中的类,如`BufferedImage`和`AffineTransformOp`。 5. 性能优化:为了提高图片加载和显示的速度,可以考虑使用缓冲技术和预加载策略...

    huaban.rar_huaban_java 图片 编辑_java 图片编辑_文字

    "huaban.rar"这个压缩包文件包含了一个名为"huaban"的Java项目,它专注于提供一个类似画板的环境,用户可以在其中进行图片编辑、插入图片、添加文字以及自由书写。下面我们将深入探讨这个项目的相关知识点。 首先,...

    基于Kotlin与Java语言的LittlePainter绘画应用设计源码

    本项目为LittlePainter绘画应用的设计源码,采用Kotlin和Java语言开发,总计包含144个文件,其中包括46个Kotlin源文件、40个XML布局文件、23个PNG图片文件、10个WebP图片文件、5个JSON配置文件、4个JPEG图片文件、3...

    基于Java语言的绘画app设计源码

    该项目是一款采用Java语言开发的绘画应用程序源码,包含51个文件,其中包括17个XML配置文件、16个PNG图片资源、4个Java源代码文件、3个Git忽略规则文件、3个Gradle构建脚本文件、2个属性配置文件以及1个JAR包文件等...

    java swing 基于JFrame窗口的绘画板

    Java Swing 是Java GUI(图形用户界面)库的一部分,它提供了丰富的组件和工具来创建桌面应用程序。在本项目中,我们关注...记得实践是掌握知识的关键,尝试运行代码并进行修改,以加深对Java Swing和图形绘制的理解。

    Java实现画板(Java小程序 模仿Win系统画板)

    这个Java小程序将提供基本的绘图功能,使用户能够通过鼠标或触控设备进行绘画创作。 首先,我们需要理解Java GUI(图形用户界面)的基础。在Java中,我们可以使用Swing或JavaFX库来创建图形界面。在这个项目中,...

    Java实现拖动滑块图片验证

    在Java编程领域,拖动滑块图片验证是一种常见的安全机制,用于防止自动化脚本或机器人进行非法操作,如批量注册、恶意登录等。这种验证方式通常涉及到图像处理、用户交互以及随机性,使得人类用户可以轻松完成,而对...

    基于Java的ruoyi-ai聊天和绘画功能后端设计源码

    该项目是基于Java的ruoyi-ai聊天和绘画功能后端设计源码,包含818个文件,包括644个Java源文件、58个XML配置文件、28个PNG图片文件、18个imports文件、17个VM文件、7个SQL文件、6个Markdown文档、6个YAML配置文件和4...

    基于Java的hipainting绘画项目源码学习与开发

    本项目是一款基于Java的hipainting绘画应用源码,综合...其中,有14个JAR包、12个Java源文件、4个JPG图片、4个PSD设计文件、3个JavaScript文件、3个属性文件以及其他类型文件。该项目旨在提供一个互动式的绘画体验。

    绘画wPaint

    【绘画wPaint】是一款专为Java前端开发设计的绘画工具,它提供了丰富的绘画功能,让开发者能够轻松地在Web环境中实现各种复杂的图形绘制。这款工具的出现,极大地扩展了Java Web应用的交互性和创意性,使得前端开发...

    java 画图程序 多窗体 多种画笔 橡皮 保存 文件 图片

    如果需要对图片进行编辑,比如裁剪、旋转或缩放,`AffineTransform`类可以帮助我们完成这些操作。 这个Java画图程序可能包含以下组件: - 主窗体,包含菜单栏和工具栏,用于选择画笔、颜色、橡皮擦和保存选项。 - ...

    javaGUI小画板

    Java GUI小画板是一个利用Java图形用户界面(GUI)技术开发的简单绘画应用程序。这个程序最初设计用于创新项目,特别是为了生成车牌字体并进行编辑。然而,随着项目的进展,这个方案最终被放弃。尽管如此,它依然...

    JAVA简易画图板

    【JAVA简易画图板】是一个基于Java编程语言开发的简单绘图应用程序,它为用户提供了一个基本的图形界面,用户可以通过这个界面进行简单的绘画操作。这个程序包含了一些基本的绘图功能,如绘制形状、使用铅笔工具以及...

    java画心电图,根据心电图数据,画出心电图,效果与真实的心电图一致

    根据心电数据,画出相应的心电图(业务场景:由于数据库心电数据过多,在前端画图会有大量的缓存,实现起来不太友好,就直接放在了后台,用java代码的方式画心电图,最终效果和真实的心电图一致)

    利用java实现画图板和保存读取BMP格式的图片(一)

    在本篇博文中,我们将探讨如何使用Java编程语言来实现一个简单的画图板应用程序,并学习如何保存和读取BMP(Bitmap)格式的图片。BMP是一种无损图像格式,通常用于存储像素数据,便于程序处理。以下是实现这一功能所...

    java 在线 画板 嵌入java-applet

    在本项目中,"java 在线 画板 嵌入java-applet" 提供了一个在线画板功能,用户可以通过浏览器直接进行绘画操作。这种技术在20世纪90年代末到21世纪初非常流行,用于创建动态、交互式的网页内容。 Java Applet 的...

    Android绘画介绍-图片描画

    除了直接绘制Bitmap,我们还可以使用Matrix来对图像进行旋转、缩放、平移等变换。Matrix提供了多种操作方法,如postRotate(), postScale()和postTranslate()。例如,要旋转图像90度: ```java Matrix matrix = new ...

Global site tag (gtag.js) - Google Analytics