知识大全 Powerbuilder中Kodak图像扫描控件应用技巧[1]

Posted

篇首语:沉舟侧畔千帆进,病树前头万木春。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Powerbuilder中Kodak图像扫描控件应用技巧[1]相关的知识,希望对你有一定的参考价值。

Powerbuilder中Kodak图像扫描控件应用技巧[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

     引言

  当前在开发管理信息系统中 Sybase公司的Powerbuilder(下文中简称PB)是一个使用非常广泛的语言工具 其数据窗口功能使得数据库系统的开发变得非常简单和快捷 笔者在使用Powerbuilder 版本开发一个管理信息系统时 要求把人员的身份证照片扫描并存入数据库 在使用Kodak图像扫描控件时碰到了麻烦 图像能够扫描并存成图像文件 但是在PB中就是不能显示 经过笔者查阅各种资料 并对扫描形成的文件格式进行分析 终于解决了这个问题 笔者把相关技术知识及处理方法写出来 以便大家参考

   BMP文件的结构

  首先介绍一下BMP文件的知识

  BMP文件可分为四个部分 位图文件头 位图信息头 彩色板 图像数据阵列 如

   D E

  

   B B

   FF FF FF F F F E F …

   图像文件头

  ( ) :(这里的数字代表的是 字 即两个字节 下同)图像文件头 Dh= BM 表示是Windows支持的BMP格式

  ( ) :整个文件大小 为 h=

  ( ) :保留 必须设置为

  ( ) :从文件开始到位图数据之间的偏移量 E 为 Eh=

  ( ) :位图图信息头长度 一般为 h= 字节

  ( ) :位图宽度 以像素为单位 为 h=

  ( ) :位图高度 以像素为单位 为 h=

  ( ) :位图的位面数 该值总是 为 h=

   位图信息头

  ( ) :每个像素的位数 有 (单色) ( 色) ( 色) ( K色 高彩色) ( M色 真彩色) ( M色 增强型真彩色) 为 h=

  ( ) :压缩说明 有 (不压缩) (RLE 位RLE压缩) (RLE 位RLE压缩) (Bitfields 位域存放) RLE简单地说是采用像素数+像素值的方式进行压缩 T 采用的是位域存放方式 用两个字节表示一个像素 位域分配为r b g 图中 为 h=

  ( ) :用字节数表示的位图数据的大小 该数必须是 的倍数 数值上等于位图宽度×位图高度×每个像素位数 为 h= × × h=

  ( ) :用像素/米表示的水平分辨率 B 为 B h=

  ( ) :用像素/米表示的垂直分辨率 B 为 B h=

  ( ) :位图使用的颜色索引数 设为 的话 则说明使用所有调色板项

  ( ) :对图象显示有重要影响的颜色索引的数目 如果是 表示都重要

   彩色板

   :彩色板规范

   图像数据阵列

   … 每两个字节表示一个像素 阵列中的第一个字节表示位图左下角的像素 而最后一个字节表示位图右上角的像素

   用Kodak图像扫描控件扫描出来的BMP不能显示的原因分析

  通过BMP结构知识的了解 我们对BMP的结构有了一个基本的认识 对于PB中Kodak图像扫描控件扫描出来的BMP文件为什么不能显示 我们来看看扫描出来的文件头部分

   D AA A A C

   DC

   A B D B D

  

  

  对比BMP文件结构知识里面的说明 我们可以发现第 字节的内容为 C 而不是一般的 查阅其它资料后发现 在Windows 等操作系统中 位图信息头的长度并不一定是 h 因为微软已经制定出了新的BMP文件格式 其中的信息头结构变化比较大 长度加长 会不会是这个原因引起PB程序不能显示这个格式的Bmp文件呢?笔者把扫描的文件用UltraEdit进行了编辑 保持其它的不动 把 字节从 C 改为 然后用PB打开 果然 图像显示出来了 这证明PB只是认识以前格式的BMP文件 对新的BMP文件格式不能识别 因而不能显示

cha138/Article/program/PB/201311/24589

相关参考

知识大全 PowerBuilder9.0窗体控件自动缩放的实现

PowerBuilder9.0窗体控件自动缩放的实现  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 .NET示波器控件范例代码

.NET示波器控件范例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  同事负责的项目中会扫描

扫描隧道显微镜亦称为“扫描穿隧式显微镜”“隧道扫描显微镜”,是一种利用量子理论中的隧道效应探测物质表面结构的仪器,作为一

扫描隧道显微镜亦称为“扫描穿隧式显微镜”“隧道扫描显微镜”,是一种利用量子理论中的隧道效应探测物质表面结构的仪器,作为一种扫描探针显微术工具,它使人类第一次直接观察到_____表面层的局域结构图像。A

月球轨道飞船LunarOrbiter

一系列为取得月面图像而设计的无人乘坐的卫星。有五颗是在1966年8月到1967年8月发射的。轨道飞船为铝结构,其中装有几架照像机。照像机拍摄照片、处理胶卷,然后用电视扫描仪扫描并将得到的图像传输回地球

扫描隧道显微镜具有哪些特点?

(1)高分辨率:具有原子尺度的高分辨率本领,侧分辨率为0.1~0.2nm,纵分辨率可达0.001nm;  (2)直接探测样品的表面结构:可绘出立体三维结构图像;  (3)可以在真空、大气、液体(接近于

知识大全 在PowerBuilder中更改窗口继承

在PowerBuilder中更改窗口继承  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Powe

知识大全 在PowerBuilder11中部署SmartClient应用[3]

在PowerBuilder11中部署SmartClient应用[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快

知识大全 在PowerBuilder11中部署SmartClient应用[2]

在PowerBuilder11中部署SmartClient应用[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快

知识大全 在PowerBuilder11中部署SmartClient应用[1]

在PowerBuilder11中部署SmartClient应用[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快

知识大全 SendMessage API函数在PowerBuilder中应用[2]

SendMessageAPI函数在PowerBuilder中应用[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶