[comp.binaries.mac] Macintosh Technical Notes - 193 So Many Bitmaps, So Little Time

bytebug@dhw68k.cts.com (Roger L. Long) (06/28/89)

[Macintosh Technical Notes - 193 So Many Bitmaps, So Little Time]

Revised by:  Rich Collyer				       June 1989
Written by:  Rick Blair					      April 1988

This Technical Note discusses the routine BitMapRgn,  which  converts  a
bitmap  to  a  region, and is available in the 32-Bit QuickDraw INIT and
from Apple Software Licensing.

Changes since April 1988:  Added note  about  BitMapRgn  in  the  32-Bit
QuickDraw INIT and updated the address for Apple Software Licensing.

---
(This file must be converted with BinHex 4.0)

:#941-6Nc,R0TG!"6593K8dP8)3#3"!`(!*!%3Pa6593K!!%!!!`(FNaKG3%!N!J
#&e41,M%j-bj6Eb"0B@jj)%*TG'eKF(2*d5J!4!!$!*!$4$MF!!%!5D('!%E)c!"
+#h)$FJ%,!#%!!3#3!dQKi&G28N40380"!!#JSCeJS,"PE`#3"K%S!*!'#i%!!!X
h!*!'HD`!$!")!5!!!!)!%[jEq)pI`B33i!(!-6'K"9)!B'5%L!J!!J!$%J*!-P)
N!!(D"+$i&qkI1!(j""JCF+3!LJ%1"BJN59)N5T82%j)4D6#!8D*p%KDGL)`%8eL
!4SK8!#"$!%JQ!3$*DY)JekmL3ki!#@#XdS300'i&d)!$!!S!-!6!p8mH!(Te!`M
cCd)K`i9"!`-!c"B1!!J*#q5X#m!%Blcbp2)9qIFIJ!)L-AG0k!#-!+aX!3%!apL
aAFKk69VqQe!!K`&H!bCNN!!3,Y`9mRl%Q2GTaMa3$kC!S@IY4ji(3Z6BXiC1(V"
k04i`ND-#3VdMpU,"U`4Y(Q,C!+Lq2C`!"3dB1&+!b('$4JXD0QcFD!#HpRJ,#BE
8J90'$TddEVc"!JK$"$&J$MA!%!-0p!N%J(e`JC!!J!``e#"$$5!d%BBFDB6K4KS
J"'&('@l88FD!6E``"3Jci0"#%Jh19KX!ARaKiidijUMMMMcfk1123!CTBicKcCJ
)26Z-B8mFJ"c#!`6dH(!%+20mN!$$2)rJm0X$3@55`3"532#''&r8!3)p*lc3K"[
e[(!'$(-)%-X$[Vh3!TSJe20"(AcBm`X44Y`$"cfI1%%S&3ENm%!GkBL4JC`'C")
%)Je3`D8lS36Aa3YhN!!"j6("i$#(2Aqi!!md#@%`Qd&`C3!K!#cBC`%!0E`D!(h
ecAJ"2*m%JHN$3hc4aMYeK2!%#`mN`B-mll"`DUlM*4"!0l#**+d`!TL3!#eBh#C
N3Qklp6E2+`P!pd!6Bp`$#CS[Y1(')mJ+4mma)Q4+a4pYI%#N"+`#m)53!!!(,($
!P8),ekd*1IMU+[8XJFF$9(!`#apU21"%Q*F`FJm@J3#b!J4&h#2&(&#QZ@DECrb
!l"fh,-2!&2H%)33JB0L6TVX#3!&'%2EF-B9cBd##K`(hQ+((Q+%F!-2(mr`JJcc
I*2G!&2GFmF`Dp"$aaKh*d[01%[8!%63e`PkDk45EG[TTU+1@qL`!%XJiRJUb!M$
$Up*5De)#!Kc3pppq"`lii)%$X!'[#85TMR8e5(12(8&)amF%Kra`aV-+cjKhE!$
`,IMRK)Gq31I69TY3!J$8)IVURaI8J%'CMcH#&'ABNFBFCC!!!B)BHHL3!)!8DBb
""S&[X-&'([dPS%3GET3"3J`ji*!!3`0K'1bk$1#*"pF2THr0q[H&jaf5YH#$$i!
)pG!K4`J`f20#(Z1@Hm,9b*P#"kp"N!#Ma`2KD[N)NDq+3ZPL)be'P!pdK81Bp@i
&Zi4SMh6m-"hTc0'Y#LS&9l%l@!-`Nd(A*8aZ'[cJJfBN`PFKJ3TSF*iCLXH'V3(
S$##3!--Ek[#IjS(JGL!)d"e!%!BlK#%0E!L$'0MJ2$Um!34MH)-E4Z3I(ZiZ$A4
S3aMJ!!)M1P%1C6K$'T5S!`$1k&D@kD!1M&!&*`b"#NPiJK0!)!3SDJJ18ML$'e#
!45eb-BjZ3)+(b%$%(HcZM6TS)ahHQ!)GJ1!*8bL#(15`!b+K$J#c!U2e$!!J!R9
aJ3d))`J"F!-iK'%1B`J$'`kCb%@bdBe6a#-+m+K(0r$4HAAFSKX'*-JhrR'++@L
N#"mC53aZ-JiSK'8@C3Q#1`"aP'*`RKMU!%3kJ'!14k3$'X,J6&'18SR+K1)FEZL
'@e*a3mi$d"c53)BLTM#'`e3L$eh*3q1"3!rp1D)BY-P$,)*JKR3BCcR[DBBEdX%
&Z)VE#-F6JlV9kSZq(#J&!R#))'c6Q0*XjbLM`-`aV)%)FJM$$N0T[)HL)AM$%jk
(cZ#m-+$6MV-mj5"6+8GdaS'C@0`Q0UYi4%r1BCXH!N%Cm(#l'X)`PZT%`4XiT%8
h@$-25-3L0A1h1k4q`3PPZ!-H8q!#%)!J#If8TM"4LN32"FLCbG`G-pRJ6$+BL+E
Vj1BFkQ!'-`3[$54bCJURq%a2MX&j3hAL11%*JM-SP3lpUH)dZcN$'5aK3&VYTPC
ML%m!1FqBlX3L(HSJKflQG)T`N!"KCMX%@*dZ-Up*h1FH"EY9BN)@QFiV3a[J3)F
m92@U@6dR8,YjKaQb3AI6(*&1mA$Ah$'eX)FPV@GP+)GL(R0hX*3M&Gl`KMDH3C(
&48%,%J3$UZ*+"CZmQd8!`)0AmD&ZJi"3!13JU`$i`9B*IG8S8)K$-c"[$2p4*`l
VJ$[hMR+&a69TLGU3!-cL[U'Iij`X0@ATdIii,`mc"%&ZR5I8iSDbQjPpJeR[UKk
6cM1+G-9LCXZ!1cIi0+hJ$-0VXj!!i!H$J,l1qm)34$N'$FeK$@L0m)5GYeEK1I(
#8S3$3"-Ld&IpS@k)3#m(0hQ)*lMKVL"!X*N@I-9dTP6*AB9`Ir$EKT-5m`hmb@K
mhE"0&+6""@9``B#q!!8k*-%0H"ac&6kNa$6IXlKI1$2Zk$$90hI9R9r!D"M1F)5
-jX(0q0eY'&C,a"d$`!DE$%,GN[#U*G50#Ur+3Yh%m#Sfe!d2k#hKM1M"hQebG*3
ip'36rb[F`VC!N!!JS'M`,TV4(5E"#8QJ`QZaQZ3%Nq')AcAZ()CRaA,bKjhU0$@
U9@e42Gm"X5RX*T402#Bkr0#b)'$L109*kPUbY*Z9E!)8VR"2-DLK$2!&!C@T@Fb
2fYM%B@8$J0E!9!"C-DIDjRD%r6VS!I%1L8Td0RaI'#)i`)'))*M#IqP`"h##J!R
")p%ihA#'5rCi4S5S@b0HG6S!8'&D!G$*k%DhK3#N)`)"!!8!"#&b4S3#!*B)L'C
1!S16Dm)Mrk#(5$53!"#4Bm)J90Ni!$UHMT!!8)!q-%$"S3-JL`$!3q5C%2NP5Rl
bP"YJj3*S13"HrK%(!5!+03F!*ZL$!D'la3%+d0!Bh2f'A6F!k5k(Z6Y%JR8!f&`
&')!BZ0(`)Bk#`!P[!1`FN!#Zp+DVh#G5ThT$4-+'V'mGELZ)a`Ff3)6DPD'&@3B
"&HCHGe%'I$p`'#SGq!k!5ia1*`)!!3"md,R4"b!E)Qp%kN8q#-XSK3'd#3$X#c,
lEZ'!'@L3!)S!f(%qNGKR)Xc!KZJ$)!d!S%%5"U%0EA$!!A#)[J#HH"$b4kJU(15
#"'-*!!m!))2TQm6kK*!!5J&8dIZZe*lf[`r!"#D!IU,-A[Da2lm!'N#EqFFrrHr
2Iq`AX)$f`prrr0GqpYGq"G!!JX!!p(Gr*i'!!QL!l6F!##Kr$#!)rUGr&IKl&T5
"'VL"()J$`i!*)A!3H&"q!`9mc#"k"'!2dKF!rm!+)h4lE!!'$m)[iM&#-ZL"h"#
#"5!*$c)*X9&i10!"'2"m1L%#PD!6l!H%a-!"Bc%!$J!!,R#%)r3(%i%,i#!9!j!
!FJcJJb+a#"-a$-*h'BBK!Pa)'ejSI4#!JXJ!K@ABH40"$$``&J9J"!#J!Qdi#K2
"!I#JHm$3Jl(a#P9)$#L)D'4S%"N!!)$SJ9!JG!-J#J"!#G9bL'[SJ@JJG!+J!`"
J#10$'q%!I+L!KGZR"9bB%1h`KE$`I%j4L#08LML!#k!J&36!#hii3[R`KKJJ&3B
J%&*3KJ'!'Dh)"lL)"E1i!!%3!9@)$VJi&%53!!2*&`"Z`AcFJ)ZS-)X-%!"#&i3
-J)ZdF"Lm5!-6N3XXJ)[%-)`"X"A@K`#iL#T#`)`2%J",!(b[#!!(%$GED)J"F!9
9b!C5F3!H!!#)8#h9D"JH'"@A)4(e#!$F``G9L!Rl@(5f!*!!!E!,AdJ*iNF1XfJ
9ar#&[#!9#8!(!+!,%!N1%k%,a#"qf$#,'K!![-Gmf#!9#S#*`J#3!!)J%,G("H,
($,0B!J)30lI(!9+a!!J3!!TJ1J*`!fm)"#MiFUU)!88j%EZ`0!FKM#"3KJ,`"0m
)"Q-K!$JjPFNR!&[`K9`J&3%`MAEBP@G3KG!JPKh"P3mL!(2`KI3JPQi!!"T!P95
)!lX3MJ@K%3GC%0JP3JAJ$b,a%I*S#Vjh1QK`Q1(K!SUT!!iK0a'!!J'`!TIJ$6A
f!!!:
---

bytebug@dhw68k.cts.com (Roger L. Long) (10/22/89)

[10/89 Macintosh Technical Notes - 193 So Many Bitmaps, So Little Time]

Revised by:	Rich Collyer				    October 1989
Written by:	Rick Blair				      April 1988

This Technical Note discusses the routine BitMapToRegion, which converts
a  bitmap to a region, and is available in the 32-Bit QuickDraw INIT and
from Apple Software Licensing.

Changes  since  June  1989:   Changed   references   of   BitMapRgn   to
BitMapToRegion  to  match  the  updated  MPW and 32-Bit QuickDraw usage,
added the trap number, and documented how and when  to  use  the  32-Bit
QuickDraw version versus the object file version.

---
(This file must be converted with BinHex 4.0)

:#941-6Nc,R0TG!"6593K8dP8)3#3""$-!*!%M(a6593K!!%!!"$-FNaKG3%!N!J
#&e41,M%j-bj6Eb"0B@jj)%*TG'eKF(2*[53!!3!$!*!$2XlX!!%!4$I#!%&Hh!"
%S@i$EJ%8!"m!!3#3!d3hh&G28N40380"!3#JSCeJS98ml3#3"KK5!*!'%%B!!,9
h!*!'Zf)!$!"i!5!!!!)!%[jEq)pI`B3Aa!'!-c%CJ!Xq!)$4#$(MaJ%*!5!4'4+
!!'d#82`,pdqFJ(`#M!`i8J$&!)F#3SiF'I*NbSF*bB3d'+$Sd$i*L3)SSi6+8LA
J!)d)U3"!KJ#3!%S#!++eT-'ZB%1#6$KfD-)'rVBQC+!-!!8!'!,XqLF2!$fk!B6
pdkH3!1&#S)!"r!A!`"X!#!N&k$&*&i#*aRIPjGdEdZmr!#P#C[DDN!##2!(`%Ni
3&`"#imGe)qFYHGP[BJi$L$E)+C!!F1H3!,8Ch%iiM9kR"hQqe&(!Cd)J5#XJD)N
%j&iB*(9JG"&`#e#4He,QI'$a3)JFHYEH5E%h4ak`BM,BJ+KA3pSp1d%H-#Pqk-F
C!rC+B#I!iF+p-rBC!--pAPJ5!L613IH$#`$8%`GrAl4K6c3j!#IF!h@N)`B%pe4
b$a8'Z(1+-5G-)3!8pf!"3A)ah!0(JY'KJ8!9-+$K!"D(f+2#"bl!!`d!%Uaef`b
k!@!"!$`8qCCJeJ#``J#q!0"!%d%FNF338&`C33$rJ&"3!`EPGPX!B!BNT&X!*""
!0f@P+F!"E`TJJTadcQPRRA8LD3iMDMc`4$dr&%&%Gpq&4m8A8Ra`4KdrS&$2#`!
L-BBQ%!4Kcae6Q%I2#5mdiFB$BS$h6JVcr0*!3V8PN!$3NEDK#8Xp5q$a!"8Fc-*
(Rdj)!F%PM+3B##$*ACFG"*YfkNBp4G36`U@C!R22(Rc!8X`2GP#!JJ'JbQ'20H#
8B!!"LM,+JJ%j(!$)'hDFBBU1%-`K3#`2c$$2#beXZYi(GI"Kcbp%'1%L2Cmi!6#
)1643K$h3d11"1K#`jajmmY&RRcc[R"TNUfqT81541#J*J!Med#&(#$$Bmd)Hmlb
53$dR2,0'GkE3!FmR3C!!SmF$-Fcc#3lc2(+UQ'LUfFeA#5@!jje)(jeR@'5LHZC
E2kcCTY&``TRde8Fl*N8CGU3a4aPNJ#"'(MSN)%8DBk!"`K"[X-&'(QA)NF!6Bp$
aKKKaJa"$$MJ8E#E'MXRc3mkIb+XbH`md-FBpN!!8fiBEMh!h"46d(#0#+,2qdFB
(2bFNJ8&,TJN!&@X'N!$6!3#J[N8!k@`*#J##[-j)+!"B%P!"2D&#ZbB!)2!225&
9N!$3kjJB9"AUUV-1%J@R`S!#!$B%)%X!m,bHbHZAb%kll3EJRTMZ!2#1`0m!4$%
m!*LFLX(c(!$JJ!*0K$&''QlB23FD$9LrHqrrZ"15q3!JRJS`-+XbT-d0D!Z$HTc
`"MU8B3l@`plfETHlrIR1)3PK`rR5"k39a1-$'b!#emV!KMI!)@p8-#!D%$J'"B*
J#R@!!acH)!Fk4"!!Pd"G6J6JTBbSbJF"b-EV'M(%e`hL-Q3+dp1qT%3!9!908C!
!'Y(8a)Ji95dX@"6D!*iS1K+3!%5$@D%&!,!"!(i%!!3")%)!d'$&0%QY*&5,%pE
Q++F[13e`6IZEaj+Sac'GUSpZ8CUGh-L2f)4%6HE!SL,K+-9$jQ9TLqa+(S(fPNN
ZdC+!dd!#0KN%'E+K$%bJhaTd!))AAX%&6,K5%C``K5*d$R!5f'3#8%!$'1!J"5$
)`3eSd!)Df-!'0hLPaeJJ1-,*#a32Q"aiIT!!"d*Y#ahQ34`6j+##KKeK3[#!4"F
H))-l2[%Y5)!9"+UKLLrFB3lfJ)1`jJ!"2!c!R!DiKaRdF,G3R'KDe3)"'1c"UFH
G#!b@`P6+rNK*(3M6MhIdf!q-8!8R$)%+5AL#%d!JK$63)Aj`S-)EYRD'0,c"$5L
3!%-C1[T4(8MK$'j!3KMF3)C2lN"X'09"45mD"MLNJ*42D+8Fj,!$JKCY9AB%j&X
-3,qe'95S3D8NA'3jK"M'M3ldH`-,eKD%UHDJ"M#)!3d1LUB-b,+6F2MNfYl3"MM
8`B&bQ'S5h$!'&l$!ThL%UmIL3!8dP!%%)L@T'd"`Kc5i6@ah&8-Gr%S(%-cK$5#
J!aV#8&J&UZHMJEAS(%"39$&J&!4K%#PPh6#(0*!!iDk+[@YH2EVAPBE0X5$33p`
3+`E*BPDcEcKVCcm,JMHBJE*dF-%I,qDa''`-!$ABSe`l%`"'"''bI98XC[mDKF'
1B3e%N!"$'1i!JKDk$EPS3*[DdVE5-p`e$(JG+@QR1P1-DT5MT!e[(!BVdXRQ)ED
*45`F`M#(bDi8"'A!JpHJkSBcK&H[)%!"$G2386Fi0Jr9&5PM`5Bf"(r"#@@i`dR
GN!!#&j3b#EF0lAr6fd)hZ+'"J"AEB0P3@$,8!E5)[5rpjP!(-jJ"E@NS3re!B0H
D'RDqBlJV$6&Vf$5S&J4R8$"D%l[B[Fj!"NZBDQMhUQ%ja*DrGqhVAd9+KcV)SE5
PPD'6i5#(0#`B[c[Gm4MH3&[6%PQdi[dSArfU(VcKYkadb)1&3B$K-fpBcAH),4[
#YPJlh$@r13BEJiqFC$[(cFPb@20Ih5`(P'Vd$48p3a&f'Z!@B"8'&6k9#TC)*+!
+`@1"q#dLP"5!1f`X!)-3EN+*Zi+kHJd%CUJ$@k'UjPIAi@Za9SmCGJaH0p5K$AK
,Y'elA'A'NKDlFE[VHqY!ic$i1F"L[LqAb9b((1-5[+fP3aYX,&)Z2e$'r2A[I60
EKM$-13[`l6!)ERhA,`a"J@1)hac@%&m360[%16CXYG@'EBYZ'`jcIJ*EP3hI2Rr
hcQkBkV+V+qfil9S1E8"iE8mSA9Tc0X"TF%%Ch!U#,d#"$QZGm&5r8!8%IP6NY8h
d&pEk06T-'*I4rZXASKZ'-aa"ZRP!qF2aLiF`P2@6ZNf)%*Ei"e&lV"brEBI(h[&
EI(LX(kFf!+NKF'S1U&US4A(eC+fVRPI2YiDecE"G3A$N&X`8"-e&'h5P5pdN1#%
*9!J`#B+!!b,FS-)A[Zh#bB$B$aHfVrHVpfG2b0,D'PN'CVFSfTflpZNUfDjlAEL
kldD(-"39[(k@3fI921cbe[5mDGjV8CX!K5[89JaU-'"K(llY[fFhE3cIUj[C)%S
'dmpZQ0dVk8drl5$lI+TMUqj(+emhq[NAV'+GJQhTF!GbJb#81HDXmBm+T#8biVH
DZ,T51I"96pj9q@CJ[[1K,q21pTHVS3X!!h5MI[D[Ij&P)!)+TP)!A(`X*#+3!+8
-B&!$'G3!"2(6C5Z9"L!3"(lQDf8`98h`!P0!GMM3!NQ!INZe58e&FI`P994P99L
P94,S"9r`J5!BJL)iJL4BJLCiJLLBJLViJDrd63$`"#XBJc)iJc,B!$1!9#94"N!
!"I5R$IGh*N[a!rMJ*3h!!`#!"U*J%,UK'f9J"!cJ*3@`K%PS'aL`&%#!#bX3%"X
K!dP)ACQhHD8e@BHPC[4PEfp3AfNJ"N#h@jcf@dQ#8&JR#h9e9fi3B5$`KHReDKp
'A3E@"JcQH4Qe8D&AEfifCY)h"`idBmQP0KU'Kl9fH)PA@'RhA$4(A@DQBEZh@@K
P"[,c3(1f9TK&"Q4J8H0&84CPAS))B,CP"R%c@A9)ADc)@&EQLD@%EXbQERYSEr4
PAiCA"Lf3!'hfPJCi3%,raPH[TcD,09Pi)f2#&cFj&MDiefrD9P1IU(I`09rea@0
`))c%D'0hF)b809PfJeKXN!"Ch[9ic,K`8UBHhY9B`BJ(rrCS)P3'kN4T+0!#@R9
,B)CSjjCZimB'Kk@,fDKK-e4$-c9C``CHIF95Eh!(8p8'q`B#Y,F'"-GXH9B(H`B
#I,GQbJ9HA&G[lQC#HA#3!%%hG)$6!Eqe!KicDN"P#D3@A+X5!%9!DQY`DR0!DUG
`DV#JI8mM!%i`KjVeDZ!e3iN)95idE@TB"K'hL%6fDNjf9[56J$dfF!"BHQ6R!M'
`@@2!"R9!@brf59XhI*BRHQl!HXC'KQ,`C'5(H'FhLBeh"p8)!ZUi8S8&L+!(B,M
RCXjQHH@BP)DhA1UaE@N6PA1!MT%(Aa#*L1[f0ACf0kPA0l$Q9hGP"Ni@FH!RITT
&IY,AAh-fKrEQC%NCFDqQ@)aPM1QBEQ5eM@+eE)P@8f'93"E(N@U6L61!P5NRN3Z
@9RC@GQh*H*9iKkfBAZdi@Gl'LL*&PHL50aVQQ+SAQ8"ALiKjDi8eCQhJKc1QPNh
fC&'j@AC'2e[CPC-TQC19"YCSNA4CEqc@Q+MAR&qjFANRPr$e8@r$F*S9"QPj9SY
TI+C)8i')ATbh9i+CAA8i@A)JD`M8AfXCLBZRGT9SQ2$*E(A)B(kRN5RQ"RQJ@-B
AG*X'1)A`@j0!DSE!!+!6!)T!D[U`-3+!!"k$$r5`!f0J$h%!#)I!!m6b#R83!cL
M-ccc#6TJ&bi+Sj!!%!64%!3mJ!%&N!!`R1)TMh)'-&!#K#)UKj)SLp+N$`"Xbr!
Z'+)K'C!!12A`!&G!,[%b,r9b![H5,r[5,bk5)Qp`"YYK!*Q3!!([%K2Jm!0eB!r
I)!DH!3aM!!Q9m!ae'JdbN!!"#`"2&A)(X8#PG4!)@#S[p')[pB![qX)[r[)Lca%
G#C)Lle)!*U-'(!!#ei!jeA))Q9)a#H&&K!%kF1%a-2"E1H!a2I"E5q!aA[&q56%
"%e!3Y)UVlVHV2G%!ZM%![LS)[0TqZPUX!E!!#f#XldHXajUXa#S![PUX"G!!`LS
)$A!Ua$S!$0!!Ji#YlkHY[PSNbMUXbeUZ[*S8jJS!`-S!`LUYe,UYePUX8ZHVhAU
ZNA5[q*U[qJTr4%!#)D#ZA#%##X%+)9%'3F!*(f%2!F"&ZZ%8C6!%k2#["D!)K$%
+4,-41NJ-rcS!G[!aCC!!%lH+X8"!"9Ni!-J!!#j3#MQK'h1`&%&!"e-a!'T3X86
c"dXK"&a!Ie8SX%*LXr%("M',#3!!!aCV'iZ`&%-!$#9l*#T3Y,Ta#8Y""""!Ihj
!Xb%a#NY4"1`JX9c`-@0J%"N!!&KE"MA!!9NS!)"31iC8!J$!#bjVYN#5&Z3`&VS
4$NK,$d4)#J#J"8i,!1f`&%D!!e"S1`c3YrPJKGb3!)8')!P)iV3"J$X2#`[dYaC
&Z`!"%!&)#`p6B3$N!!"+N!!$5KJ!l9-'3N!"8h%!$&+iSIXm1XJ"TpZM%1#i01#
b`(#k5Q#ePXX9"JX,CfZ%2J#kTlS%,JX+8a%!-'#e9h%&,NX0TiX+!)!)KL5L&&%
'48!'p#F+9KXeI(#c#$!9#-!$!D!,d5XA5)X)QrX@UJX!-a!!aq#b[$!9#L!!!5!
(imXA68J!QdY'k9X#!L!3T1Zk!,!!J"!!''")*T'&T!X)80LM)Z#d!S$!3S!'8b%
!+q[!0h#cI$!9$+#h*Z$!3h#cU(#kH!!!*1$!6h#cF+$"rX-#$V`&,SX1TfX&(q2
!Ci#dR,#j4!!!(1$!,4Yr9,#jAP,#Ab%!2MX%H1!P!U!"-kb%4(bcE$$"$N#cre!
0!R#dT!X+AK)!l'!N4FZf"@'`M*!!K3%`%U63Yb83!03lY3%a2ZR,&6'!aN5!!92
K!(i3!2J3[3!3"fJ-"%m-!!AJ%1NV`hf`ak``&4!J#!,!"h3,!01`ai43[%DS!%9
E%"[k0iNF%JLKVQ)3%Z2Makj!&DML$+#F1T`3%N@#!-Gl*JPJ$kDF%!Y!"ke-'%*
l*JfJa!R"X`k3!"%*`4@(dE&RJJ&5)!$SN!!5Mq8!!!:
---

bytebug@dhw68k.cts.com (Roger L. Long) (12/08/89)

[12/89 Macintosh Technical Notes - 193 So Many Bitmaps, So Little Time]

Revised by:  Rich Collyer				   December 1989
Written by:  Rick Blair					      April 1988

This Technical Note discusses the routine BitMapToRegion, which converts
a  bitmap to a region, and is available in the 32-Bit QuickDraw INIT and
from Apple Software Licensing.

Changes since October 1989:  Added trap definitions for developers using
the  32-Bit  QuickDraw  version  of this routine without the correct MPW
include file.

---
(This file must be converted with BinHex 4.0)

:#941-6Nc,R0TG!"6593K8dP8)3#3""+4!*!%-h46593K!!%!!"+4FNaKG3%!N!J
#&e41,M%j-bj6Eb"0B@jj)%*TG'eKF(2*[53!!3!$!*!$3Sli!!%!4rI+!%8Hd!"
)BAB$GJ%(!#F!!3#3!dIhj&G28N40380"!3#JSCeJSCmCCJ#3"KUi!*!'%JX!!([
!!*!'d@`!$!$`!5!!!!)!%[jEq)pI`B3DJ!$!-c%CJ![L!-$4D2%#36!!"L3%J)6
N5!!#Y!P!m5rF2h%#mJN`-Z")!43$(!SB@E,Nb*3V(bBN-p*JJ+0&6caiD,#-%LS
!R))$0'+N!J!C!N!k#8!Lek*I`ji8QC!!,&J!&+"e6GK!!eS!'!,XqLF2!$fk!B6
pdcH5i8+KJ!(m"H!!$3!)#32J3dNAJ)R'GqAPhG[A,`!F)c'I0!M!!TJ"i"*@J"!
!5Z2(G52R2IP2--1%!MJ--0TJTd!!$"*5'(NlppZ%dqKeHT!!jdXG"A`Q")+d!S+
@5%$ZK8&5"dBA!EF!&ENRCFi(&Jq%b+&RlCd8Hh2N!5XQJ`f)HM@NhE-6j!'6j)G
qR$&JV`4h!KaFF-mCqKN!`ceH@")#*0*4pi-,!036"i"IY'&20$N3Cp`$GD3M"J6
h9()2&3DiFiSa*d`K!"6hB!&"Fc(F!dH$eD'"3"8`S1%!&SIBSm)(,X#MPJ3*qEE
E$,jC!!!24KE8J%'pkCE3%&!N-83%!I`$JT03&LPP!%m'j19E#363M9N!*#$!!@X
+B)+EF,iTCjaa,QN1)fSmm%3p2a4"4(MMP8I&&e*mF%BG2k"3c`X%)M''*K!%BFm
G8kK(c`N[01('!f+3!2G1#[2mdN"#Yb@3!*!!NVK*#8Xp5q$a!"8Fc-*(RNj)!F%
PM,3B##$0EGFG"*GQkNBp4G36`U59!R22(Rc!8X`2GP#!JJ'FbQ'20H#8B!!"KL,
+JJ%j(!$)'hDFBBU2%-`K3#`2c$$2#beFqYi(GI"Kcbp%'#%M2Cmi`5q*1643K$h
3d11"1K$!*apppZ'RRcc[M%TNUQqTN!$NC8f+8!mGFS3!Jcd[j$(2+`R8Fm)cDi4
R#Kh`I")%1ASm%--mRq!`cb1M4NQQQC`PT1DF30-CY*aL18RUQ,[pB#DDDV,*jY"
##`h!#FB1Z"c))T0XmM)2$+(&+hP3d$)4((aJB3K!c20"$MIR)+5B&1pQJM`rc2b
*ZeVAm%!6Bp`$5E"YZ2%)H&0!3Fma)S6bkKpYI*!!Fd)5',3E*r6X-)BpF3"b#!r
!mP1#2@LVcIBME)2b3"#CC$!61*&FFd1+J&3$4#65P4)1%KcQGmDklEiEl`RceRY
[[M,5D"effR%h"iKhV'!F#-d93cB)p(`$46e`c+(-29P!F%dS%)rU'`15!m""Nh'
`'LQb$pbK"bLJFhV2&D)J!-8+BKLJ5J%a9![)(*`L$cM)N!#Z3d4LAG`k&!c'!!N
eJ1)HS5L#r`KS("6N!3*G1-!,JM3NT!%J"KHV3C2!G,5iT5N)FjK$'GSJ"MENB94
`'b%-G8D"3E3'6&db)3lKGT@h4'&T25X6)pVNY++*T8aRkQ'D!%!#Nl!"!&ZK"3#
`!3"q"!!%!5"#!0"!a$3Yl540Da28aZJQSm935J)B`Z0d'#BDQT''850DQIJaQj'
8b4a'c+22J'M([04*MemKi4RI)NJh&Y+$'NL!)S-!"cL`S3a-5)-EeU!$%)"J#PG
`!41X9!3R6+%)Dfb5""5C!"63!!Bi5!%)FR!$'V5!"MD``3e#+58@d-eZlM*GiFM
cJc`!kPVS8!pml#-(&56X#"H#"b5km!!CP,#(Zd'#qUUKLLrFB3lfJ)1[PSH(!9M
6!2F`JalH))C3V1KCd3)"'1b"UF#Y#!b5SY6)CSJd(G#5N!$d01%2M&!&*`b"#NP
iJK0!))3dd+%*BB!$&GiJK6+F)3e[F!-+j1"3L,T""e)iJaZ3!"!'0j!!iC%l!)%
B%!S((46dS!P035@Im%Njb'%(q649CplS330)%J4$X1FJGh0)%f+!P%1S!ac+)!F
k52)0,-"T%*+DJaV!)!BdZ1GZ-N"+4MUb$$Kp3a[J8!Fk%$@T5A$$'&c!JR`fD3A
eq)Gi2$@S3LP`*(UUa`1ZF"FTd--V!(J!#HMa!4c3i`NhH&ZT6N96%el!NSK0E"+
FX%NR&!%%*!J#$SK`!jL@8+C+kQQ6$P!2!q"*X"l8l*I-1YS5'LN!M%!K#1jJ8$5
!)!aXF%m8kT!!KM'XJ3Kb#--G3$!'f,*K$UY&3feG1`BdG23-@!d$##Mkd)JQpD3
NA@K$QqZ'jCBK$V5P+($cm)BkJ)!1E`!"(-+3!-,A9VF-H%M$()cUKM0BPlSJ3-%
Ej*!!KSHk`EGji#e&`q"9-SJd[ep`3KRZN!"40k6!"CC-JKQqL`DX-YHL[1fS'pj
!"j&L93bdC81&b9!(V),A[##3!13FkQ!'-p3f$@9`3i8ER&!3c''mBm$UI&rViM6
S!DYRf+pAjF$JMS*J"M*B3P,Td1$U%YR"h@8[9PNE@q[5S3jbU+k2%`S(1EbKbQR
J,eD*DQ8HMq%0C%LZ4aRXi)T'G,9TD,)BYVa91Z3"`5"3-*RI#q%lG*F0rM@Z(ED
-KaLA)Fcq"E+3!1I-j4Ncf6eVAUj'&rU'JTkK##k0E`ZF#S-$MdS&(N35BBA3T%"
F$"'R[815!M!)'CT@0`&B!4@%#e`ce%'X4MfcHN&3"a@kfMeQQ,&bh9!(&K)9"'p
Bm"`-@JIq@K5iGfJ`48(!AHrU'D[bpE+2U`cQ1X4BPFS9Jd(Ed'++9VN-+P5a*0d
ljIh#13[GMA"eDih9,``"YQ0!k"c@m0h`8T[$-ADaY9fEl@dR&-j2%#Y@Q`f#Cp2
i`FjPGVTl@pfKbL(AFQJ$RFpmCD)D1k,!48%DA&!'XS,J#e#J3eJ,R03[9-%0&L8
jX(RmKE#UN!!1"9EPM([Ej#rJ0JaR1%*Zmk"bL)-![@(BkL0G!%-KH2!2Rfj515l
@MLDpif,iD&)r4Qf!dd*Je1FVl8k2XZTCdp`pXaj[8B'pi#2r@!BY1#N)CP[EfqC
fYiY0!KAL'pR*hZ$!#9i``FN3hJPAQ,9cF1f(`cc8-CmCb'Nhk0TTDpZEhf()49D
iGaN1E$(3)3`h9HkHj6"XLLmBZJQ9VTQVHp-Q31%+P9G$'FC3BBKcqqr#,Dkk,3`
#0NKb$Am1XBV$kf26SjlD13jk8X@3!0m[UcJ-V"mh#+ckb%X'Q`jh#-1b)aPM0`b
l[6S&`-5Da)L,DF,81c9I94[Cr#Nm2rV6Vff+Vhm'U9lN+`rS`3-1p)JJh)`)mrM
$$Yi'0m`#3!3M)3+N*!-`8!-b8!-JJ&$de9&TX(alaQYPN!"86I!#8r"M10!#5H"
qLF%!Z4%!(&J3(mJ96I98849qA[!&+*L#+VL#,0L#,[L#-"L$-ML$+,K'd!3!3N!
2Ee!&p2!13e!26j!!"(IK")$#9S65,6!J$i63,6qJ!`p`(R0!$iD3!!1K-!q`!$+
D-JqJ%#bD)JqIi)4ldLIi*bUA49LI)"`D8JF'8"peS$Zmibl`)Lre3#rfJLrk-L2
684hAN4hEa$c1ieh4-ch9FchCXchGmchUX3)6N!#'!a!"N!"3!JI!!kp3"j(!2`8
!$Fe"6GD%6A$31Umc"BqJ!k"P3Q%K%J@!#rph%UFP#kZ'9@i`B##`HCe(HX!eBEY
eAff3!(ZJTe!-0AVe4R['0fcVP@*reeTc*SX3GP1)ThCXehK[CelqCADqThXlCJE
)"fj`&PD[43CNB&!@p9`'&9fp#&r"CJC%9BZ`D)lm"@ABD%RS0RNqCS[L49l!T9`
493BYS'd9"JGTJ!GP`!EF"JI"09`&4ei@PQ+mp3C%&@24b(XLj@p`N!#0HTGZie9
HbX@2rJL3!#f@E!3jDq!9AQ`JIFJ&H3K*F)F'!XK9B4ICM`(*D%43"Q@J6C''!Ld
!9DRdFbieAqHfF&2f@rC'Mh-'"r0&"bF&A-&'BkcP8@r`H#$3"[Y@HfQ!Hj+h@RI
QAhb(CN4'BerhLqjfCAP3P%5(Jal8!4Hc!Nd#DS4P#DFP3UF5!%9`@QX`DR0`@UF
`DV!!IR$N"+fiE,0fN44'M&RQ(Y6@3LZ%PB,(DXZ9C*)8J68QF!PiHMrQ!M'JHf2
!"R83CL"JBSm%A-ChH6FP5DjhF9)Q"NPfGSPABFhSGVSPN9-CI5T'81%BHZ-)B4q
@D'&J"jJANS3*E&,@C0a@A)Xj"b4CA36RP1Y&DbSdCq5NHUbAQ@Q'9@CJC4*RIQB
!IG+(9G5hIZ-'CkdSAPC'Q",RNFB&Hb@jF&V&MmhAE$a'CEEA@l&@ADb9PG-i!j+
jFV@RCA*!NUE*M)bRQVZ&M'H@NX$eEHC)8Bj*,VpQGXZjHUhhR$[TAFCCB9r@"VR
iQU9TGPE@9BZTHh-Q5C9jQG$jR-#9"K2TADjCB4r'EXST"XcCS%1AGe-C85i8BFX
@"U6C9FLTI,XSHZ4BAEmTA+m)A(,`DLMAA[ZTH+RTH--jPDqBHhi(!PIC8AP!C0Y
jD4j8#"Fc#DGP#15$&J'J#+HP$dNL!!M3*%0`*hN5KRj5K)*bK!SN$im!K9*)K3R
N,3``"B,!TZ!J$kr3+H@4![`h@$2e"$4BU)CkU)ED!#B3IJH`4&[!-a$5U)hkU1Q
!*D!!!)*`UBbJUD%!!*B3%!A`%dV3UCS!!!J!0`!3"3PaUCKJ%&FKU3"!U5*"!D1
#!5[J!"bJ!!Je"T)%AS(A!*HD#D4UU[rJ$L1KUJ$!ULU!!DqbHQL!FM3(!Nl`Ph-
3V*Gk#ChkU3B3UV!aUJ"3UJM3%#2a4-N+!*JJ-5X3$aq`!5qjCfa3F6a'"Fi+VE"
e58)PP%9PV3"`#Bfk%`+`*34K+Mi3!0P`UBh!UCi+UU)kV1&+$b2K&Z9kVJ!!!bJ
!!$B3!,)3!2#JVpLDX0ZkX0p+V2l!'kYUVU15!#NJ!J'!#KaVX#i,!$E%&8'3!!q
3!&!9"D!0U6JQ!$#c[,!P$F!$!)!'SQ!3ZC%E-dX-@e)!46ZdUB)"1kX23,!#!3%
5-X#dQr'"!6!"%e!3@JZ#(BLeB2ZeZ5%!$6#fCBX5$#!)AVZf(LLf"E%!#m#fBIZ
fFGZfD+ZfGTZh@!ZhG#ZhEKX!I!ZiG6ZhH4Zi(dLfEPX!$5!)DGX!Sf+h!m!!$6!
)MrZ"N9Zf[Z'hQUZhEVZ"Z6%!CFZiDkZiM,ZiPCXE99HfP0ZjJ05kV[ZkX2X93D!
2*"!#)5%4!#JBV$!53P!!*,!P%k!*!@!$Sd#d!!!9-mX2YKX!l)!Ea6X5)$'l&'#
l!f!(reF'1l'e)#%%"%!)8MX!b!!!,P!+1j%EFi#$")!)96%!DZ#m2I-(k-X)0ZZ
dZCXUm$ZlE2#pQ$#acjXELi#qP2#p5U)#rEZ[k-X*0ZX(lMX5Sl#cqF!'YPX!A2"
rBf!3'3!!$4`%r'#V+!%)RPT(6XX,1"LU&6X!pJ!!IY$!U8)01mX2(&!9%b!4@P$
!SF'pX*!!Y*r+!!AF[,0,!&*V!*+`*!@m'0c,#cCE*-ql!!'!%%(3"CK3&3C!$J#
J"$P!Y!'`&"U-!P9a!"#L`eDm!HM,$&ZX!iI4[`&`!ZK,$9ZX"!ZXa$23`Y#$%N$
V!e@-'`&!%"T-!984!$#``(("aN,`!%"3X3d!$a0KaQ+!J`p!"&Z#!%lVaAEX"SU
-!a@,!+F+!@DX"iV-!eYb!!i"b8TX##d-!B4-#J$!"(@Xa*'`Xed!$*f-Xb*3aq6
$#8m,#*hX$!Y-2UMJ`&#3!,5+N!$,!5"&XmX(MGc(S"`!`$$#C&#a%M#b3T!!bJ'
`$#2-"4A,!-S!!+YNaGEJ`*c3b%d%bH56%Gb,$9Y#!0k!&QCXV,e,!q8X$@dF!(c
4Z`a3X3G!bc)Jb`)3UVh,!H9F&j!!V$S4i-#N),8%3!F!i!9ea!!#J'P0c!Sf+`S
,r!-#B!1X$!Y9J3!m%!#kN!$3!P!($N`18,`EN!!m!`)3#+aXa!#J!!)3!(,!dF,
F"F3!a93%b59JaddXaJ#`!)!3!"K34`N4!`(3a053!,4N,!)&$040c!e9)3$P@m!
p%!#"6!99`3#QE!)&R!43A3"BX-8833)&A!93r3"F-0A'bJ)&(!CCM30EE!Ar9m"
Y%031!F9%B$i&R!GK[G8"X59Hh61&%04G3!pE)J"ZBG6'fpFc#`C,l3!,A014!08
%-0!&84+N8-#f%06jJ!e3I+U3!#`4`Z$Ai&!9$Z!(LT(3!E$56B`10[[*cfX&!H!
!IJd293%"JL!!I%!@j%-'@5h9"3'd#[#m"B&T*362)h'U++(**63!LC`3a%d!)`X
E#9%!VQ!9T),,#G&$#A$#Bl)!"MdQ$,#rh+d1)i%3!0!!%*)3LNdB&&&#%'#pBk)
"U-J#2+!0PE%!!!:
---