照相(摄影)在现代人们日常生活中占有重要地位。除了通常大家熟悉的娱乐摄影以外,还有建筑设计的蓝图、电影、X光胶片以及军事侦察、金相分析、宇宙卫星、地图测绘、探险考察、缩微资料复制等多个领域,都要用到照相。
一、银盐的光化学
要了解照相化学,首先必须考虑银盐的光化学。典型的照相胶片含有由极难溶解的银盐(溴化银AgBr)所组成的微小晶体。这些颗粒悬浮于明胶中,生成的明胶乳剂熔化后涂布在玻璃板或塑料片基上使用。当适当波长的光照到一个颗粒上时,在颗粒内留下少量游离银的一系列化学反应就开始了。最初溴离子吸收光子产生一个溴原子:
Ag+Br-→Ag++Br+e
银离子能与电子结合产生银原子(Ag++e→Ag),颗粒内部的缔合作用产生Ag2+、Ag20、Ag3+、Ag30、Ag4+和Ag40。存在于曝光后溴化银颗粒中的这种游离银提供了潜影,它们随后可被显影剂显现出来。聚集体至少需要有四个银原子,即Ag40,曝过光的AgBr颗粒才能被显影。潜影就是保存在卤化银颗粒中的"看不见而又能被显现出来的影像。含有Ag40形式自由银的颗粒即被显影剂还原生成大量的自由银,因此在胶片上该点出现黑色区域。在同样临界条件下,未曝光的颗粒不能被显影剂还原。
胶片的感光度同颗粒大小及卤化物组成有关。随着乳剂中颗粒增大,胶片的有效感光度也提高。原因在于不管颗粒大小,引发整个颗粒被显影剂还原所需要的银原子数是一样的。感光度数值越大,胶片对光就越敏感。
二、显影
卤化银并不是已知的最灵敏的感光材料。那么,它们为什么产生最有效的影像呢?答案在于这个事实,即单个光子撞到一个卤化银颗粒上产生1个至少有4个银原子的核心,这一效应通过适当还原剂(显影液)被放大了10亿倍。
当曝过光的胶片放入显影液中时,含有银原子核心的颗粒要比不含它们的颗粒还原得更快。在给定的颗粒中,核心越多,反应就越快。温度、显影液浓度、pH和每个颗粒中核心的总数等因素决定显影的程度和在胶片乳剂中沉积的游离银的密度(黑度)。底片变黑是由于游离银原子(Ag0)造成的。
显影液不仅能把银离子还原成游离银,而且还有足够的选择性,它不能还原未曝光的颗粒以避免所谓"灰雾化"。常被用作显影液的化合物主要有棓酸(没食子酸)、邻氨基酚、对苯二酚、对甲胺基苯酚(米吐尔)、1-苯基-3-吡唑烷酮(菲尼酮)等。
黑白照相所用的大多数显影液是由对苯二酚与米吐尔或对苯二酚与菲尼酮组成。一种典型的显影液应含有1~2种显影剂、防止空气氧化的保护剂和防止还原反应受到抑制的碱性缓冲剂。
例如,一种黑白胶片用典型显影液的配方为:取50℃水750毫升,将下列物质溶于其中:米吐尔2.0克、对苯二酚5.0克、亚硫酸钠100.0克、硼砂(Na2B4O7·10H2O)2.0克,加冷水至1000毫升。
用对苯二酚作显影液时将产生醌。每生成2个银原子就有2个氢离子产生:
对苯二酚+2Ag+ →醌 +2Ag0+2H+
由于上述反应是可逆的,不论是氢离子或醌增多都将阻碍显影过程。亚硫酸钠能与醌反应并破坏它回复成对苯二酚的能力。同时氢离子被氢氧根离子(OH-)有效地中和掉。
H++OH-==H2O
如果显影时间过长或温度高于规定值,则将发生浓厚的灰雾化而使底片报废。由于显影反应速度随温度增高而加快,所以,摄影师通常要很仔细地控制显影液的温度。
把胶片放入停显浴中即可使显影过程终止。停显浴通常含有能够降低pH的弱酸,如醋酸。停显浴的作用是增加氢离子的数量,这将有效地使对苯二酚转变为醌的反应终止。
三、定影
如果显影只是在光强最大的地方产生游离银,而对底片不做进一步处理,则把它一拿出暗室,未显影的卤化银就会立刻曝光。此后,几乎任何还原剂都将使底片完全形成灰雾。为了克服这个问题,必须找到一种适当的物质以除去未还原的卤化银。黑白照相中最常用的定影液是硫代硫酸钠溶液。其中的硫代硫酸根离子(S2O32-)与银离子形成可溶于水的稳定配合物,因而达到"固定"底片的目的。
AgBr(s)+2S2O32-==Ag(S2O3)23-+Br-
往定影液中加入一些酸是为中和显影液的碱性,起着停止显影的作用。不过显影液中的酸不可加得过多。如果pH值低于4,会发生如下反应,导致定影剂的分解:
S2O32-+H+==HSO3-+S↓
定影液中的Na2SO3会与H+结合成HSO3-离子。由于HSO3=离子浓度的增大,使定影剂的分解向逆过程移动,抑制Na2SO3的分解,因此,在配制定影液时,在加入酸之前,必须先溶入一部分Na2SO3来保护定影剂。
为了防止感光材料的乳剂层在冲洗过程中过分吸水膨胀,产生脱落现象或易被损伤,在定影液中常加入一些坚膜剂,如明矾等。
一种常用的酸性定影液的配方为:定影剂硫人硫酸钠250克,保护剂无水亚硫酸钠 25克,醋酸(28%)48毫升,坚膜剂明矾15克,加水至1000毫升。
、加厚
曝光不足的相片,所得影像太薄,可用化学方法进行加厚,以增加相片的黑度和反差。
加厚的基本原理是在相片上已有影像信息的地方再添加一些银或其他金属或金属化合物等信息物质。目前最常用而效果又比较好的加厚方法是铬加厚法。
铬加厚法是利用重铬酸钾(K2Cr2O7)和盐酸(HCl)使影像褪去(漂白)。由于反应的结果,银影被氧化为AgCl,并添上一层棕色的氧化铬(CrO2)。这个作用可用以下反应方程式表示:6Ag+2K2Cr2O7+8HCl==6AgCl+3CrO2+K2CrO4+2KCl+4H2O。
漂白以后,经过水洗再进行显影,使AgCl重新还原为Ag。而漂白时所形成的CrO2,仍保留在银影上,从而增加了影像信息,起到加厚作用。
二、减薄
在摄影过种中,只有曝光、显影都正确,才能得到质量好的照片。如果曝光过度或显影过度,都会使影像的黑度加大,这可用化学减薄的方法来补救。
减薄的基本原理是利用氧化剂,如赤血盐、高锰酸钾、过硫酸铵等,先把影像中的金属银氧化成银盐,然后再用一些化学物质把这些银盐溶解,以达到减薄的目的。常用的减薄方法很多,效果最好的有以下两种。
(一)赤血盐减薄法
赤血盐是一种氧化剂,它把影像上多余的银氧化成亚铁氰化银,然后再用Na2S2O3将它溶解,以达到减薄的目的。这种减薄过程可用以下化学反应方程式表示:
4Ag+4K3[Fe(CN)6]==Ag4[Fe(CN)6]+3K4[Fe(CN)6]
Ag4[Fe(CN)6]+8Na2S2O3==4Na3[Ag(S2O3)2]+Na4[Fe(CN)6]
(二)高锰酸钾减薄法
这种方法是把相片(或底片)放在KMnO4的硫酸溶液中处理,使部分金属银氧化成可溶于水(实为微溶)的Ag2SO4,以达到减薄的目的。上述过程可用以下化学反应方程式表示:
10Ag+2KMnO4+8H2SO4==K2SO4+2MnSO4+5Ag2SO4+8H2O
当影像在减薄液中减薄到适度时取出,充分水洗,否则就会产生污染或有减薄不均的危险。
三、相片调色
用化学方法,可以把影像转变成不同的颜色,这种操作叫做相片的调色。
调色一般是在相片上进行。它是利用化学药品把银影转变成有色的银的化合物,或是将其他金属的有色化合物沉积在影像上面,使照片呈现多种单色的色调。例如:
1.硫化钠调棕色法
把照片先放入含有赤血盐及KBr的溶液中进行漂白,使金属银氧化成AgBr。水洗之后,再浸入Na2S溶液中处理,使影像变为棕色Ag2S。
4Ag+4K3[Fe(CN)6]==Ag4[Fe(CN)6]+3K4[Fe(CN)6]
Ag4[Fe(CN)6]+4KBr==4AgBr+K4[Fe(CN)6]
2AgBr+Na2S==Ag2S+2NaBr
2.铜盐调红色法
铜盐调色是利用硫酸铜与漂白了的银影作用生成红紫色的亚铁氰化铜的性质。
Ag4[Fe(CN)6]+2CuSO4==Cu2[Fe(CN)6]+2Ag2SO4
如实用铜盐调色配方为:Ⅰ液:CuSO46.3克,柠檬酸钾2.5克,加水至1000毫升;Ⅱ液:赤血盐5.2克,柠檬酸钾2.5克,加水至1000毫升。
使用时,将Ⅰ、Ⅱ两液混合,然后把充分水洗过的照片浸和,随着调色时间的长短,可以获得由深紫到大红的色调。最后把照片放在流水中充分水洗。
冲印
众所周知,数码冲印技术属于感光业尖端的技术,是数字输入、图像处理、图像输出的全部过程。它采用彩扩的方法,将数码图像在彩色相纸上曝光,输出彩色相片,是一种高速度、低成本、高质量制作数码相片的方法。数字输入是传统底片、反转片、成品相片通过数码冲印机的扫描系统,扫描成数字图像输入到冲印机连接的电脑中,而数码相机使用的SM、CF卡等存储介质,以及软盘、MD、光碟则可以直接读入电脑中。由此可见,数码冲印不只是冲印数码相机拍摄的图像,还可以冲印传统胶片,以及其他各种存储介质中的数字图像。
传统的冲印不能传输到计算机上。服务受服务对象影响更大。跟传统冲印比较,由于数码照片全部以计算机图形文件的形式存在,所以可以对照片进行修改以改善传统冲印不能解决的瑕疵,如底片褪色、曝光不足、消减红眼效果等等。另外还可以根据自己的爱好随意剪裁或进行特殊处理,如加添怀旧效果。因此在数码冲印的过程中,衍生出一系列的图片加工制作服务,比如照片修改、照片设计、制作个性名片、台历、纪念相册等。
照相(摄影)在现代人们日常生活中占有重要地位。除了通常大家熟悉的娱乐摄影以外,还有建筑设计的蓝图、电影、X光胶片以及军事侦察、金相分析、宇宙卫星、地图测绘、探险考察、缩微资料复制等多个领域,都要用到照相。
一、银盐的光化学
要了解照相化学,首先必须考虑银盐的光化学。典型的照相胶片含有由极难溶解的银盐(溴化银AgBr)所组成的微小晶体。这些颗粒悬浮于明胶中,生成的明胶乳剂熔化后涂布在玻璃板或塑料片基上使用。当适当波长的光照到一个颗粒上时,在颗粒内留下少量游离银的一系列化学反应就开始了。最初溴离子吸收光子产生一个溴原子:
Ag+Br-→Ag++Br+e
银离子能与电子结合产生银原子(Ag++e→Ag),颗粒内部的缔合作用产生Ag2+、Ag20、Ag3+、Ag30、Ag4+和Ag40。存在于曝光后溴化银颗粒中的这种游离银提供了潜影,它们随后可被显影剂显现出来。聚集体至少需要有四个银原子,即Ag40,曝过光的AgBr颗粒才能被显影。潜影就是保存在卤化银颗粒中的"看不见而又能被显现出来的影像。含有Ag40形式自由银的颗粒即被显影剂还原生成大量的自由银,因此在胶片上该点出现黑色区域。在同样临界条件下,未曝光的颗粒不能被显影剂还原。
胶片的感光度同颗粒大小及卤化物组成有关。随着乳剂中颗粒增大,胶片的有效感光度也提高。原因在于不管颗粒大小,引发整个颗粒被显影剂还原所需要的银原子数是一样的。感光度数值越大,胶片对光就越敏感。
二、显影
卤化银并不是已知的最灵敏的感光材料。那么,它们为什么产生最有效的影像呢?答案在于这个事实,即单个光子撞到一个卤化银颗粒上产生1个至少有4个银原子的核心,这一效应通过适当还原剂(显影液)被放大了10亿倍。
当曝过光的胶片放入显影液中时,含有银原子核心的颗粒要比不含它们的颗粒还原得更快。在给定的颗粒中,核心越多,反应就越快。温度、显影液浓度、pH和每个颗粒中核心的总数等因素决定显影的程度和在胶片乳剂中沉积的游离银的密度(黑度)。底片变黑是由于游离银原子(Ag0)造成的。
显影液不仅能把银离子还原成游离银,而且还有足够的选择性,它不能还原未曝光的颗粒以避免所谓"灰雾化"。常被用作显影液的化合物主要有棓酸(没食子酸)、邻氨基酚、对苯二酚、对甲胺基苯酚(米吐尔)、1-苯基-3-吡唑烷酮(菲尼酮)等。
黑白照相所用的大多数显影液是由对苯二酚与米吐尔或对苯二酚与菲尼酮组成。一种典型的显影液应含有1~2种显影剂、防止空气氧化的保护剂和防止还原反应受到抑制的碱性缓冲剂。
例如,一种黑白胶片用典型显影液的配方为:取50℃水750毫升,将下列物质溶于其中:米吐尔2.0克、对苯二酚5.0克、亚硫酸钠100.0克、硼砂(Na2B4O7·10H2O)2.0克,加冷水至1000毫升。
用对苯二酚作显影液时将产生醌。每生成2个银原子就有2个氢离子产生:
对苯二酚+2Ag+ →醌 +2Ag0+2H+
由于上述反应是可逆的,不论是氢离子或醌增多都将阻碍显影过程。亚硫酸钠能与醌反应并破坏它回复成对苯二酚的能力。同时氢离子被氢氧根离子(OH-)有效地中和掉。
H++OH-==H2O
如果显影时间过长或温度高于规定值,则将发生浓厚的灰雾化而使底片报废。由于显影反应速度随温度增高而加快,所以,摄影师通常要很仔细地控制显影液的温度。
把胶片放入停显浴中即可使显影过程终止。停显浴通常含有能够降低pH的弱酸,如醋酸。停显浴的作用是增加氢离子的数量,这将有效地使对苯二酚转变为醌的反应终止。
三、定影
如果显影只是在光强最大的地方产生游离银,而对底片不做进一步处理,则把它一拿出暗室,未显影的卤化银就会立刻曝光。此后,几乎任何还原剂都将使底片完全形成灰雾。为了克服这个问题,必须找到一种适当的物质以除去未还原的卤化银。黑白照相中最常用的定影液是硫代硫酸钠溶液。其中的硫代硫酸根离子(S2O32-)与银离子形成可溶于水的稳定配合物,因而达到"固定"底片的目的。
AgBr(s)+2S2O32-==Ag(S2O3)23-+Br-
往定影液中加入一些酸是为中和显影液的碱性,起着停止显影的作用。不过显影液中的酸不可加得过多。如果pH值低于4,会发生如下反应,导致定影剂的分解:
S2O32-+H+==HSO3-+S↓
定影液中的Na2SO3会与H+结合成HSO3-离子。由于HSO3=离子浓度的增大,使定影剂的分解向逆过程移动,抑制Na2SO3的分解,因此,在配制定影液时,在加入酸之前,必须先溶入一部分Na2SO3来保护定影剂。
为了防止感光材料的乳剂层在冲洗过程中过分吸水膨胀,产生脱落现象或易被损伤,在定影液中常加入一些坚膜剂,如明矾等。
一种常用的酸性定影液的配方为:定影剂硫人硫酸钠250克,保护剂无水亚硫酸钠 25克,醋酸(28%)48毫升,坚膜剂明矾15克,加水至1000毫升。
、加厚
曝光不足的相片,所得影像太薄,可用化学方法进行加厚,以增加相片的黑度和反差。
加厚的基本原理是在相片上已有影像信息的地方再添加一些银或其他金属或金属化合物等信息物质。目前最常用而效果又比较好的加厚方法是铬加厚法。
铬加厚法是利用重铬酸钾(K2Cr2O7)和盐酸(HCl)使影像褪去(漂白)。由于反应的结果,银影被氧化为AgCl,并添上一层棕色的氧化铬(CrO2)。这个作用可用以下反应方程式表示:6Ag+2K2Cr2O7+8HCl==6AgCl+3CrO2+K2CrO4+2KCl+4H2O。
漂白以后,经过水洗再进行显影,使AgCl重新还原为Ag。而漂白时所形成的CrO2,仍保留在银影上,从而增加了影像信息,起到加厚作用。
二、减薄
在摄影过种中,只有曝光、显影都正确,才能得到质量好的照片。如果曝光过度或显影过度,都会使影像的黑度加大,这可用化学减薄的方法来补救。
减薄的基本原理是利用氧化剂,如赤血盐、高锰酸钾、过硫酸铵等,先把影像中的金属银氧化成银盐,然后再用一些化学物质把这些银盐溶解,以达到减薄的目的。常用的减薄方法很多,效果最好的有以下两种。
(一)赤血盐减薄法
赤血盐是一种氧化剂,它把影像上多余的银氧化成亚铁氰化银,然后再用Na2S2O3将它溶解,以达到减薄的目的。这种减薄过程可用以下化学反应方程式表示:
4Ag+4K3[Fe(CN)6]==Ag4[Fe(CN)6]+3K4[Fe(CN)6]
Ag4[Fe(CN)6]+8Na2S2O3==4Na3[Ag(S2O3)2]+Na4[Fe(CN)6]
(二)高锰酸钾减薄法
这种方法是把相片(或底片)放在KMnO4的硫酸溶液中处理,使部分金属银氧化成可溶于水(实为微溶)的Ag2SO4,以达到减薄的目的。上述过程可用以下化学反应方程式表示:
10Ag+2KMnO4+8H2SO4==K2SO4+2MnSO4+5Ag2SO4+8H2O
当影像在减薄液中减薄到适度时取出,充分水洗,否则就会产生污染或有减薄不均的危险。
三、相片调色
用化学方法,可以把影像转变成不同的颜色,这种操作叫做相片的调色。
调色一般是在相片上进行。它是利用化学药品把银影转变成有色的银的化合物,或是将其他金属的有色化合物沉积在影像上面,使照片呈现多种单色的色调。例如:
1.硫化钠调棕色法
把照片先放入含有赤血盐及KBr的溶液中进行漂白,使金属银氧化成AgBr。水洗之后,再浸入Na2S溶液中处理,使影像变为棕色Ag2S。
4Ag+4K3[Fe(CN)6]==Ag4[Fe(CN)6]+3K4[Fe(CN)6]
Ag4[Fe(CN)6]+4KBr==4AgBr+K4[Fe(CN)6]
2AgBr+Na2S==Ag2S+2NaBr
2.铜盐调红色法
铜盐调色是利用硫酸铜与漂白了的银影作用生成红紫色的亚铁氰化铜的性质。
Ag4[Fe(CN)6]+2CuSO4==Cu2[Fe(CN)6]+2Ag2SO4
如实用铜盐调色配方为:Ⅰ液:CuSO46.3克,柠檬酸钾2.5克,加水至1000毫升;Ⅱ液:赤血盐5.2克,柠檬酸钾2.5克,加水至1000毫升。
使用时,将Ⅰ、Ⅱ两液混合,然后把充分水洗过的照片浸和,随着调色时间的长短,可以获得由深紫到大红的色调。最后把照片放在流水中充分水洗。
Microsoft Excel File Format
Microsoft Office Technical Documentation Group
Created: November, 1995
Click to open or copy the BIFFVIEW project files
Click to open or copy the DUMPBIFF project files
The binary interchange file format (BIFF) is the file format in which Microsoft Excel workbooks are saved on disk. Microsoft Excel versions 5.0 and later use compound files; this is the OLE 2 implementation of the Structured Storage Model standard. For more information on this technology, see the OLE 2 Programmer's Reference, Volume One, and Inside OLE 2, both published by Microsoft Press® and available from your local bookstore.
File Format Versions: BIFF5 and BIFF7
The BIFF7 file format of Microsoft Excel version 7.0 is nearly identical to the BIFF5 file format of Microsoft Excel version 5.0. There are some new records in BIFF7 and some records that have changed from BIFF5. This article documents both the BIFF5 and BIFF7 file formats.
The following tables describe the new records and changed records in BIFF7. For more information on the new and changed records, see the appropriate record description, later in this article.
New Records in BIFF7
Number
Record
1A5h
FILESHARING2
13Dh
TABID
EAh
TABIDCONF
Changed Records in BIFF7
Number
Record
Changes
9Eh
AUTOFILTER
The BIFF7 record includes several new fields to support the Top 10 AutoFilter feature.
5Bh
FILESHARING
The BIFF7 and BIFF5 records are identical, but the behavior of the record changes in BIFF7 when the workbook contains a shared list.
There are also several new streams in the BIFF7 file. The User Names and Revision Log streams support the new shared list feature in Microsoft Excel 7.0. The binary format of these streams is not documented.
The DocumentSummaryInformation (new to BIFF7) and SummaryInformation streams support the document properties available in Microsoft Excel 7.0, which are standardized across the Office 95 family of applications.
The Workbook Compound File
An OLE 2 compound file is essentially "a file system within a file." The compound file contains a hierarchical system of storages and streams. A storage is analogous to a directory, and a stream is analogous to a file in a directory. Each Microsoft Excel workbook is stored in a compound file, an example of which is shown in the following illustration. This file is a workbook that contains three sheets: a worksheet with a PivotTable, a Visual Basic module, and a chart.
If a workbook contains embedded objects, then the file will also contain storages written by the applications that created the objects. The PivotTable data cache storage and VBA PROJECT storage are not documented. The CompObj stream contains OLE 2 component object data, and the Summary Info stream contains the standardized file summary information such as title, subject, author, and so on.
The Book stream begins with a BOF record, and then contains workbook global records up to the first EOF. The workbook global section contains one BOUNDSHEET record for each sheet in the workbook. You can use the dt field (document type), the lbPlyPos field (stream position of the BOF record for the sheet), and the cch/rgch fields (sheet name as a byte-counted string) to quickly read selected sheets in the workbook.
Each sheet in the workbook is stored after the workbook global section, beginning with BOF and ending with EOF. If you read the file in a continuous stream (instead of using the BOUNDSHEET records), you can test the dt field of each BOF record to determine the sheet type.
Simple Save (New for BIFF7)
Microsoft Excel 7.0, uses a new simple save method from OLE 2, which was developed to increase performance. If a workbook contains no Visual Basic modules, no PivotTables, and no embedded objects on worksheets, then Microsoft Excel uses the simple save method.
When Microsoft Excel 7.0 saves a workbook using simple save, the streams in the file must be at least 4kbytes long. The OLE 2 code adds padding bytes to the streams to ensure that they are at least 4kbytes long. If you use a low-level binary viewer to examine the resulting file, you will see the padding bytes appearing as "garbage" at the end of the streams.
To find the actual end of the Book stream, you can increment a counter every time you read a BOF record and then decrement it every time you read an EOF record. When the counter reaches zero, then you have read the last EOF in the Book stream and you can ignore the rest of the bytes in that stream.
Other Microsoft Excel File Formats
Although chart records are written as part of the Book stream, they are documented in another article. Microsoft Excel creates several other files, some of which are documented. The workspace file is documented in a separate article. The toolbar file (.XLB extension in Microsoft Windows) is not documented.
This article contains BIFF documentation for Microsoft Excel versions 5.0 and 7.0 only. Earlier versions of BIFF documentation are available on the Development Library (published by the Microsoft Developer Network). The Library is a CD-based reference source for Windows-based developers. For more information about this service, contact Microsoft Developer Network via email (devnetwk@microsoft.com), via Compuserve (>INTERNET:devnetwk@microsoft.com), or call (800) 759-5474.
BIFF Record Information
Although different BIFF record types contain different information, every record has the same basic format. All BIFF records consist of the following three sections:
Record Number
This 16-bit word identifies the record. The hexadecimal value of the record number is included in parentheses in the heading of the record description. For example, the EOF record's heading appears in this article as "EOF: End of File (0Ah)."
Record Data Length
This 16-bit word equals the length of the following record data, in bytes. The record length depends on the type of data in the record. For example, the EOF record is always the same length, while a FORMULA record varies in length depending on the length of the formula itself.
Record Data
This is the portion of the record containing the actual data that describes the formula, window, object, and so on.
The format for all BIFF records is described in the following table.
Offset
Length (bytes)
Contents
0
2
Record number
2
2
Record data length
4
Variable
Record data
A BIFF record has a length limit of 2084 bytes, including the record type and record length fields. Therefore, the record data field must be no longer than 2080 bytes. A large data object has a parent record and then one or more CONTINUE records to store the data. For example, embedded bitmap graphic objects often use a parent IMDATA record and several CONTINUE records.
If a field (or a bit in a field) is marked "Reserved," then your application should treat the field or bit as a "don't-care" when you read or write the BIFF file. If a field (or bit in a field) is marked "Reserved; must be zero," then you must write zeros to the field or bit when you write a BIFF file.
Byte Swapping
Microsoft Excel BIFF files are transportable across the MS-DOS/Windows (Intel® 80x86), and Apple Macintosh (Motorola® 680x0) operating systems, among others. To support transportability, Microsoft Excel writes BIFF files in the 80x86 format, where the low-order byte of the word appears first in the file, followed by the high-order byte. For example, the BOF record consists of six 16-bit words:
0809 0008 0500 0005 096C 07C9
and it appears in a BIFF file as:
09 08 08 00 00 05 05 00 6C 09 C9 07
Whenever Microsoft Excel for the Macintosh reads or writes a BIFF file, it calls a function that swaps the high- and low-order bytes of every 16-bit word in every record in the file. For 32-bit longs, the bytes in each 16-bit word are swapped first, and then the two 16-bit words are swapped. Be sure to include a byte-swap function in any custom BIFF utility you write for the Macintosh.
BIFF Versions
You can determine the BIFF version (and infer the Microsoft Excel version that wrote the file) by testing the high-order byte of the record number of the BOF record. For example, the first BOF record in a BIFF5/BIFF7 workbook file is:
09 08 08 00 00 05 05 00 6C 09 C9 07 (08h in high-order byte)
while the BOF record in a BIFF4 chart file is:
09 04 06 00 00 00 20 00 00 00 (04h in high-order byte)
In BIFF4 and earlier, some records (other than the BOF record) contained version information in the high-order byte of their record numbers. This proved to be redundant, so for BIFF5 and later, Microsoft Excel determines the BIFF version by reading the high-order byte of the record number of the BOF record.
Beginning with this version of the Microsoft Excel Developer's Kit, record numbers are documented as full 16-bit numbers instead of 8-bit numbers with a high-order version number byte. For example, the DIMENSIONS record is now documented as record number 200h instead of 00h. This causes the records to appear in a different order in the following table, "BIFF Records: Record Number Order."
Indexing in BIFF Records
In BIFF files, rows and columns are always stored zero-based, rather than with an offset of one as they appear in a sheet. For example, cell A1 is stored as row 0 (rw = 00h), column 0 (col = 00h); cell B3 is row 2 (rw = 02h), column 1 (col = 01h), and so on.
In most cases, you can use the variable-naming conventions in this article to determine if a variable is zero-based. Variable names that begin with the letter i are usually indexes, which are zero-based. For example, the variable ixfe occurs in every cell record; it is a zero-based index into the table of XF records. Variable names that begin with the letter c are usually counts, which are one-based. For example, many records contain a cch, which is a count of characters in the following string.
Undefined Cells in the Sheet
To reduce file size, cells that don't contain values or formulas and aren't referenced by formulas in any other cell are considered to be undefined cells. Such undefined cells don't appear in the BIFF file.
For example, if a worksheet has a value in cell A3, and the formula =A3+A4 in cell B10, then the only defined cells on the worksheet are A3, A4, and B10. No other cells need to exist.
Using this technique, entire rows can be undefined if they have no defined cells in them. In the preceding example, only rows 3, 4, and 10 are defined, so the file contains only three ROW records.
Cell Records
The term "cell records" refers to the BIFF record types that actually contain cell data. Cell records that appear in BIFF5/BIFF7 files are shown in the following table.
Record
Contents
ARRAY
An array-entered formula
BLANK
An empty cell
BOOLERR
A Boolean or error value
FORMULA
A cell formula, stored as parse tokens
LABEL
A string constant
NUMBER
An IEEE floating-point number
MULBLANK
Multiple empty cells (new to BIFF5)
MULRK
Multiple RK numbers (new to BIFF5)
RK
An RK number
RSTRING
Cell with character formatting
SHRFMLA
A shared formula (new to BIFF5)
STRING
A string that represents the result of a formula
Microsoft Excel stores cell records in blocks that have at most 32 rows. Each row that contains cell records has a corresponding ROW record in the block, and each block contains a DBCELL record at the end of the block. For more information about row blocks and about optimizing your code when searching for cell records, see Finding Cell Records in BIFF Files.
BIFF Record Order
BIFF record order has changed as the file format has evolved. The simplest way to determine BIFF record order is to create a workbook in Microsoft Excel and then use the BiffView utility to examine the record order.
BIFF Utilities
There are two BIFF utilities in the Microsoft Solutions Development Kit. Use the BiffView utility (BIFFVIEW.EXE, a Windows program) to examine BIFF5/BIFF7 workbook files. Use DUMPBIFF.EXE (an MS-DOS program) to examine the BIFF5/BIFF7 workspace file.
BIFF Records: Alphabetical Order
Number
Record
22
1904: 1904 Date System
87
ADDIN: Workbook Is an Add-in Macro
C2
ADDMENU: Menu Addition
221
ARRAY: Array-Entered Formula
9E
AUTOFILTER: AutoFilter Data
9D
AUTOFILTERINFO: Drop-Down Arrow Count
40
BACKUP: Save Backup Version of the File
201
BLANK: Cell Value, Blank Cell
809
BOF: Beginning of File
DA
BOOKBOOL: Workbook Option Flag
205
BOOLERR: Cell Value, Boolean or Error
29
BOTTOMMARGIN: Bottom Margin Measurement
85
BOUNDSHEET: Sheet Information
0C
CALCCOUNT: Iteration Count
0D
CALCMODE: Calculation Mode
42
CODEPAGE: Default Code Page
7D
COLINFO: Column Formatting Information
3C
CONTINUE: Continues Long Records
A9
COORDLIST: Polygon Object Vertex Coordinates
8C
COUNTRY: Default Country/Region and WIN.INI Country/Region
5A
CRN: Nonresident Operands
D7
DBCELL: Stream Offsets
50
DCON: Data Consolidation Information
52
DCONNAME: Data Consolidation Named References
51
DCONREF: Data Consolidation References
225
DEFAULTROWHEIGHT: Default Row Height
55
DEFCOLWIDTH: Default Width for Columns
C3
DELMENU: Menu Deletion
10
DELTA: Iteration Increment
200
DIMENSIONS: Cell Table Size
B8
DOCROUTE: Routing Slip Information
88
EDG: Edition Globals
0A
EOF: End of File
16
EXTERNCOUNT: Number of External References
223
EXTERNNAME: Externally Referenced Name
17
EXTERNSHEET: External Reference
2F
FILEPASS: File Is Password-Protected
5B
FILESHARING: File-Sharing Information
1A5h
FILESHARING2: File-Sharing Info for Shared Lists (BIFF7)
9B
FILTERMODE: Sheet Contains Filtered List
9C
FNGROUPCOUNT: Built-in Function Group Count
9A
FNGROUPNAME: Function Group Name
231
FONT: Font Description
15
FOOTER: Print Footer on Each Page
41E
FORMAT: Number Format
406
FORMULA: Cell Formula
AB
GCW: Global Column Width Flags
82
GRIDSET: State Change of Gridlines Option
80
GUTS: Size of Row and Column Gutters
83
HCENTER: Center Between Horizontal Margins
14
HEADER: Print Header on Each Page
8D
HIDEOBJ: Object Display Options
1B
HORIZONTALPAGEBREAKS: Explicit Row Page Breaks
7F
IMDATA: Image Data
20B
INDEX: Index Record
E2
INTERFACEEND: End of User Interface Records
E1
INTERFACEHDR: Beginning of User Interface Records
11
ITERATION: Iteration Mode
204
LABEL: Cell Value, String Constant
26
LEFTMARGIN: Left Margin Measurement
95
LHNGRAPH: Named Graph Information
94
LHRECORD: .WK? File Conversion Information
98
LPR: Sheet Was Printed Using LINE.PRINT( )
C1
MMS: ADDMENU/DELMENU Record Group Count
BE
MULBLANK: Multiple Blank Cells
BD
MULRK: Multiple RK Cells
218
NAME: Defined Name
1C
NOTE: Note Associated with a Cell
203
NUMBER: Cell Value, Floating-Point Number
5D
OBJ: Describes a Graphic Object
63
OBJPROTECT: Objects Are Protected
D3
OBPROJ: Visual Basic Project
DE
OLESIZE: Size of OLE Object
92
PALETTE: Color Palette Definition
41
PANE: Number of Panes and Their Position
13
PASSWORD: Protection Password
4D
PLS: Environment-Specific Print Record
0E
PRECISION: Precision
2B
PRINTGRIDLINES: Print Gridlines Flag
2A
PRINTHEADERS: Print Row/Column Labels
12
PROTECT: Protection Flag
89
PUB: Publisher
B9
RECIPNAME: Recipient Name
0F
REFMODE: Reference Mode
27
RIGHTMARGIN: Right Margin Measurement
27E
RK: Cell Value, RK Number
208
ROW: Describes a Row
D6
RSTRING: Cell with Character Formatting
5F
SAVERECALC: Recalculate Before Save
AF
SCENARIO: Scenario Data
AE
SCENMAN: Scenario Output Data
DD
SCENPROTECT: Scenario Protection
A0
SCL: Window Zoom Magnification
1D
SELECTION: Current Selection
A1
SETUP: Page Setup
BC
SHRFMLA: Shared Formula
90
SORT: Sorting Options
96
SOUND: Sound Note
99
STANDARDWIDTH: Standard Column Width
207
STRING: String Value of a Formula
293
STYLE: Style Information
91
SUB: Subscriber
C5
SXDI: Data Item
DC
SXEXT: External Source Information
D5
SXIDSTM: Stream ID
B4
SXIVD: Row/Column Field IDs
B5
SXLI: Line Item Array
B6
SXPI: Page Item
CD
SXSTRING: String
D0
SXTBL: Multiple Consolidation Source Info
D2
SXTBPG: Page Item Indexes
D1
SXTBRGIITM: Page Item Name Count
B1
SXVD: View Fields
B2
SXVI: View Item
B0
SXVIEW: View Definition
E3
SXVS: View Source
13Dh
TABID: Sheet Tab Index Array (BIFF7)
EAh
TABIDCONF: Sheet Tab ID of Conflict History (BIFF7)
236
TABLE: Data Table
60
TEMPLATE: Workbook Is a Template
28
TOPMARGIN: Top Margin Measurement
DF
UDDESC: Description String for Chart Autoformat
5E
UNCALCED: Recalculation Status
84
VCENTER: Center Between Vertical Margins
1A
VERTICALPAGEBREAKS: Explicit Column Page Breaks
3D
WINDOW1: Window Information
23E
WINDOW2: Sheet Window Information
19
WINDOWPROTECT: Windows Are Protected
5C
WRITEACCESS: Write Access User Name
86
WRITEPROT: Workbook Is Write-Protected
81
WSBOOL: Additional Workspace Information
59
XCT: CRN Record Count
E0
XF: Extended Format
耐心看上面的吧
都很正确
如果你要亲手操作的话要注意安全,注意保护皮肤,很多成分比如米吐尔对皮肤刺激性很大的
我看上面的回答好像忘了最基本的。洗的过程中基本操作是把胶片缠在粗钢丝做的盘上,放在小黑桶里,晃
最后还要烘干
有本书叫美国摄影教程,挺不错的,值得一看
------------------------------------------------------
----------------对问题补充的补充回答-------------------
彩色冲印的胶卷里就是三种颜料,没有银盐
卤化银分解。
2 AgI = 2 Ag + I2