<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2>Hi,</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>When I read some backends,I often see SANE_FIX and SANE_UNFIX 
macro,they are defined in sane.h:</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>#define SANE_FIXED_SCALE_SHIFT 16<BR>#define 
SANE_FIX(v) ((SANE_Word) ((v) * (1 << 
SANE_FIXED_SCALE_SHIFT)))<BR>#define SANE_UNFIX(v) ((double)(v) / (1 
<< SANE_FIXED_SCALE_SHIFT))<BR></FONT></DIV>
<DIV><FONT size=2>Is SANE_FIX(v)=v*32768 and SANE_UNFIX(v)=v/32768 
?</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>in many backend, when we initialize some value,we SANE_FIX 
it,when we need to use these value,we SANE_UNFIX it ,Why we shoud 
do SANE_FIX and SANE_UNFIX ,what SANE_FIX mean ?</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>Thank you!</DIV></FONT><FONT size=2>
<DIV><BR>Good Luck!</DIV>
<DIV> </DIV>
<DIV>Sincerely<BR>Jason <BR>2002-7-24<BR></FONT></DIV></BODY></HTML>