将图像转成HTML文件,VB.net源代码

简介: 上次发过一个软件,见下文http://www.cnblogs.com/aowind/archive/2005/03/05/113429.html其软件的功能就是将一个图像转成HTML文件,就是用一些自定义的数字通过不同的色彩来表现出这个图像其效果如下:经过小弟研究了一下,在vb.
上次发过一个软件,见下文
http://www.cnblogs.com/aowind/archive/2005/03/05/113429.html
其软件的功能就是将一个图像转成HTML文件,就是用一些自定义的数字通过不同的色彩来表现出这个图像
其效果如下:
code.gif

经过小弟研究了一下,在vb.net中写出了相同实现功能的代码
功能实现主要是应用到system.drawing.bitmap,和其方法getpixel()
主要代码如下:

img_405b18b4b6584ae338e0f6ecaf736533.gif img_1c53668bcee393edac0d7b3b3daff1ae.gif Private   Sub Button1_Click() Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click
img_33d02437d135341f0800e3d415312ae8.gif        
Dim bit As System.Drawing.Bitmap
img_33d02437d135341f0800e3d415312ae8.gif        bit 
= bit.FromFile("c:\aowindme.bmp"'读取一个图像文件
img_33d02437d135341f0800e3d415312ae8.gif
        Dim w, h As Integer
img_33d02437d135341f0800e3d415312ae8.gif        w 
= bit.Width - 1 '取得图像每行的像素量
img_33d02437d135341f0800e3d415312ae8.gif
        h = bit.Height - 1 '取得图像的行数
img_33d02437d135341f0800e3d415312ae8.gif
        Dim pixel As System.Drawing.Color(,) '定义一个类型为系统色彩型的二维数组,来存放图片的所有像系的色彩信息
img_33d02437d135341f0800e3d415312ae8.gif
        pixel = New System.Drawing.Color(w, h) {} '根据图像的像系每行数量和行量来重新定义数组下标
img_33d02437d135341f0800e3d415312ae8.gif
        Dim i, j
img_33d02437d135341f0800e3d415312ae8.gif        
'利用循环把图像所有像素的色彩信息对应存入数组
img_33d02437d135341f0800e3d415312ae8.gif
        For i = 0 To h
img_33d02437d135341f0800e3d415312ae8.gif            
For j = 0 To w
img_33d02437d135341f0800e3d415312ae8.gif                pixel(j, i) 
= bit.GetPixel(j, i)
img_33d02437d135341f0800e3d415312ae8.gif            
Next
img_33d02437d135341f0800e3d415312ae8.gif        
Next
img_33d02437d135341f0800e3d415312ae8.gif        
Dim content As String '定义一个字符串来存放要写入html的内容
img_33d02437d135341f0800e3d415312ae8.gif
        content = toweb(w, h, pixel) '生成写入html的内容
img_33d02437d135341f0800e3d415312ae8.gif
        Dim y As Boolean '定义一个逻辑变量来判断是否写入成功
img_33d02437d135341f0800e3d415312ae8.gif
        y = SaveTextFile("c:\999.htm", content) '写入html文件
img_33d02437d135341f0800e3d415312ae8.gif
        If y Then MsgBox("ok!")
img_05dd8d549cff04457a6366b0a7c9352a.gif    
End Sub

img_a6339ee3e57d1d52bc7d02b338e15a60.gif
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
' 得到一个RGB信息的相应WEB代码
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif
     Private   Function GetWEBColorinfo() Function GetWEBColorinfo(ByVal x As Color) As String
img_33d02437d135341f0800e3d415312ae8.gif        
Dim r, g, b As String
img_33d02437d135341f0800e3d415312ae8.gif        r 
= Hex(CInt(x.R)) '取得一个像素色彩信息中的R信息,转成16进制后存成字符串型
img_33d02437d135341f0800e3d415312ae8.gif
        g = Hex(CInt(x.G)) '取得一个像素色彩信息中的R信息,转成16进制后存成字符串型
img_33d02437d135341f0800e3d415312ae8.gif
        b = Hex(CInt(x.B)) '取得一个像素色彩信息中的R信息,转成16进制后存成字符串型
img_33d02437d135341f0800e3d415312ae8.gif
        '如果不足两位的在前面加0,因为WEB色彩表示应为#+R(两位16进制)+G(两位16进制)+B(两位16进制)
img_33d02437d135341f0800e3d415312ae8.gif
        If r.Length = 1 Then r = "0" & r
img_33d02437d135341f0800e3d415312ae8.gif        
If g.Length = 1 Then g = "0" & g
img_33d02437d135341f0800e3d415312ae8.gif        
If b.Length = 1 Then b = "0" & b
img_33d02437d135341f0800e3d415312ae8.gif        
Return "#" & r & g & b
img_05dd8d549cff04457a6366b0a7c9352a.gif    
End Function

img_a6339ee3e57d1d52bc7d02b338e15a60.gif
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
' 生成要写处html文件的字符串,即html文件的内容
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif
     Private   Function toweb() Function toweb(ByVal w As IntegerByVal h As IntegerByVal pixel As Color(,)) As String
img_33d02437d135341f0800e3d415312ae8.gif        
Dim html As String
img_33d02437d135341f0800e3d415312ae8.gif        html 
= "<html><head><title>傲风图像网页生成</title></head><body bgcolor='#000000'><center>" & vbCrLf
img_33d02437d135341f0800e3d415312ae8.gif        
Dim i, j
img_33d02437d135341f0800e3d415312ae8.gif        
For i = 0 To h
img_33d02437d135341f0800e3d415312ae8.gif            
For j = 0 To w
img_33d02437d135341f0800e3d415312ae8.gif                html 
= html & "<font color='" & GetWEBColorinfo(pixel(j, i)) & "'>" & Int(Rnd(10* 10& Int(Rnd(10* 10& "</font>"
img_33d02437d135341f0800e3d415312ae8.gif
            Next
img_33d02437d135341f0800e3d415312ae8.gif            html 
= html & "<br>" & vbCrLf
img_33d02437d135341f0800e3d415312ae8.gif        
Next
img_33d02437d135341f0800e3d415312ae8.gif        html 
= html & "</center></body></html>"
img_33d02437d135341f0800e3d415312ae8.gif
        Return html
img_05dd8d549cff04457a6366b0a7c9352a.gif    
End Function

img_a6339ee3e57d1d52bc7d02b338e15a60.gif    
' 写入文件函数
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif
     Private   Function SaveTextFile() Function SaveTextFile(ByVal FilePath As StringByVal FileContent As StringAs Boolean
img_33d02437d135341f0800e3d415312ae8.gif        
Dim sw As System.IO.StreamWriter
img_33d02437d135341f0800e3d415312ae8.gif        
Try
img_33d02437d135341f0800e3d415312ae8.gif            sw 
= New System.IO.StreamWriter(FilePath, False)
img_33d02437d135341f0800e3d415312ae8.gif            sw.
Write(FileContent)
img_33d02437d135341f0800e3d415312ae8.gif            
Return True
img_33d02437d135341f0800e3d415312ae8.gif        
Catch e As Exception
img_33d02437d135341f0800e3d415312ae8.gif            
Return False
img_33d02437d135341f0800e3d415312ae8.gif        
Finally
img_33d02437d135341f0800e3d415312ae8.gif            
If Not sw Is Nothing Then sw.Close()
img_33d02437d135341f0800e3d415312ae8.gif        
End Try
img_05dd8d549cff04457a6366b0a7c9352a.gif    
End Function

还请大虾位指教!
相关文章
|
12天前
|
Linux C# Windows
.NET使用MiniWord高效生成Word文件
.NET使用MiniWord高效生成Word文件
33 12
|
2月前
Visual Studio 快速分析 .NET Dump 文件
【11月更文挑战第10天】.NET Dump 文件是在 .NET 应用程序崩溃或出现问题时生成的,记录了应用程序的状态,包括内存对象、线程栈和模块信息。通过分析这些文件,开发人员可以定位和解决内存泄漏、死锁等问题。在 Visual Studio 中,可以通过调试工具、内存分析工具和符号加载等功能来详细分析 Dump 文件。此外,还可以使用第三方工具如 WinDbg 进行更深入的分析。
|
3月前
|
Web App开发 前端开发 搜索推荐
创建HTML文件
【10月更文挑战第14天】创建HTML文件
72 4
|
3月前
|
JSON 数据格式
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
178 2
|
2月前
|
存储
HTML 图像1
在HTML中,图像通过`&lt;img&gt;`标签定义,此标签仅含属性而无闭合标签。要显示图像,需指定源属性`src`,其值为图像的URL地址。此外,推荐使用`alt`属性提供替代文本,以增强页面的可访问性。图像的高度和宽度可通过`height`和`width`属性设置,以确保页面加载时布局稳定。使用图像时应注意数量和路径,避免影响页面加载速度和显示效果。
|
3月前
|
JavaScript 前端开发 容器
Vue生成PDF文件攻略:html2canvas与jspdf联手,中文乱码与自动换行难题攻克
Vue生成PDF文件攻略:html2canvas与jspdf联手,中文乱码与自动换行难题攻克
315 0
|
3月前
|
C# Windows
一款基于.NET开发的简易高效的文件转换器
一款基于.NET开发的简易高效的文件转换器
|
4月前
|
前端开发 JavaScript
html图像属性的高级用法
在HTML中,通过结合CSS、JavaScript及其他HTML元素,可以实现图像属性的高级用法,例如响应式图像、懒加载、图像映射、CSS滤镜、SVG图像、图像作为背景以及使用JavaScript动态更改图像。
|
4月前
|
前端开发
html图像属性详解
在 HTML 中,使用 `&lt;img&gt;` 标签插入图像。主要属性包括:`src` 指定图像路径,`alt` 提供替代文本,`width` 和 `height` 设置尺寸,`title` 显示额外信息,`loading` 控制加载方式(如 `lazy` 延迟加载),`class` 和 `style` 用于样式化,`usemap` 定义图像映射,`ismap` 表示服务器端映射。这些属性可组合使用以实现复杂效果。
|
4月前
|
编解码 前端开发
HTML 图像的高阶写法
在 HTML 中,通过使用多种属性和技术可以增强图像的功能、可访问性和性能