|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
bear (bear) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2004/1/26 15:08:13 |
标题: |
如何将一个BMP图形的调色板转换为另一个已知BMP图形的调色板 |
浏览:1194 |
|
加入我的收藏 |
楼主: |
如题。请熟悉这方面的大哥指教,谢谢。
----------------------------------------------
- |
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2004/1/26 20:32:28 |
1楼: |
不太懂呀,看photoshop 偶还没有这个概念 大哥先说说 每个图片的调色板 究竟怎么样个不同啊!谢谢!
----------------------------------------------
|
作者: |
bear (bear) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2004/1/27 8:58:28 |
2楼: |
bios: 谢谢你的热心。我从大富翁找到旋转BMP的文章。当我将扫描的1位黑白图旋转时,得到的是若干横条。后来将1位强制转换为8位图,就能正确旋转。但强制转换回1位图时,底色由白变为暗红。经查是BMP文件中调色板部份变了。将原图的调色板部份复制过来,就显示正常的白色。所以需要将调色板转移到旋转后的文件。当然可以用二进制文件方法将数据转移过来,不过这又增加了麻烦。 按照书本TBitmap中的Palette特性介绍,要建立自己的调色板可以用CreatePalette()。将它写入过程时,编译提示未定义。查帮助文件有CreatePalette的解释,它在wingdi.h,当将wingdi写入uses后,又提示未定义wingdi.dcu。在什么地方有wingdi.dcu 呢?所以未能试CreatePalette()。
----------------------------------------------
-
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2004/1/27 10:33:31 |
3楼: |
wingdi.h 这是C++BUILDER中用的 你在DELPHI中要查找wingdi.pas 然后才能uses wingdi;
"底色由白变为暗红":太先进了,不知道微软的位图矩阵的算法是怎么研究的!
----------------------------------------------
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2004/1/27 10:35:37 |
4楼: |
偶帮你找了一下 DELPHI没有这个,实际上wingdi是:windows gdi+ 听说是。NET技术中的图象处理单元,现在多是C++版,DELPHI的GDI很少见!
----------------------------------------------
|
|