关于vb分割图片有关问题~求高手解决
关于vb分割图片问题~~~~求高手解决
目前有以下代码‘
src()数组中大小为8295
问题’
(1)l = ((UBound(src) + 1) / 8) + 1 是什么意思? 为什么要除8呢?
(2)Case COLOR 中的语句又都是什么意思?
望高手帮忙解答以下!!!!!
------解决方案--------------------
不明白。。。。
------解决方案--------------------
我理解的分割图片是从图片上切割下一块小图。。。。
------解决方案--------------------
VB本身就带一个图像分割的控件,直接设置行列就行了。
------解决方案--------------------
除以8 转换成2进制?
------解决方案--------------------
完全不用搞得这么复杂的,你想歪了。
------解决方案--------------------
你发错了吧?这代码根本就不是分割图片的代码。
目前有以下代码‘
- VB code
Public Function PixelToDotData(ByRef src() As Long) As Byte() Dim ret() As Byte Dim l As Long l = ((UBound(src) + 1) / 8) + 1 ReDim ret(l * 2 - 1) ret(0) = 1 ret(l) = 2 Dim i As Long Dim n As Long Dim m As Long Dim bitshift As Long For i = 0 To UBound(src) Step 1 n = i \ 8 bitshift = i Mod 8 Select Case src(i) Case COLOR_RED ret(n + 1) = ret(n + 1) Or (2 ^ (7 - bitshift)) ret(n + 1 + l) = Not (ret(n + 1 + l) Imp (2 ^ (7 - bitshift))) Case COLOR_GREEN ret(n + 1) = Not (ret(n + 1) Imp (2 ^ (7 - bitshift))) ret(n + 1 + l) = ret(n + 1 + l) Or (2 ^ (7 - bitshift)) Case COLOR_ORENGE ret(n + 1) = ret(n + 1) Or (2 ^ (7 - bitshift)) ret(n + 1 + l) = ret(n + 1 + l) Or (2 ^ (7 - bitshift)) End Select Next i PixelToDotData = ret End Function
src()数组中大小为8295
问题’
(1)l = ((UBound(src) + 1) / 8) + 1 是什么意思? 为什么要除8呢?
(2)Case COLOR 中的语句又都是什么意思?
望高手帮忙解答以下!!!!!
------解决方案--------------------
不明白。。。。
------解决方案--------------------
我理解的分割图片是从图片上切割下一块小图。。。。
------解决方案--------------------
VB本身就带一个图像分割的控件,直接设置行列就行了。
------解决方案--------------------
除以8 转换成2进制?
------解决方案--------------------
完全不用搞得这么复杂的,你想歪了。
------解决方案--------------------
你发错了吧?这代码根本就不是分割图片的代码。