BUG: Window Sizing Affects PICTURE Scaling in Macintosh Basic (42930)






This article was previously published under Q42930

SYMPTOMS

When a picture is recorded, the framing rectangle for the picture depends on the size of the current output window. This means that if the same set of drawing commands is recorded in windows of different sizes, then played back scaled to the same rectangle, they will look different.

Microsoft has confirmed this to be a bug in Microsoft QuickBasic Version 1.00, Microsoft Basic Compiler Version 1.00, and Microsoft Basic Interpreter Versions 2.00, 2.10, and 3.00 for the Apple Macintosh (buglist2.00, buglist2.10, buglist3.00). We are researching this problem and will post new information as it becomes available.

MORE INFORMATION

If the output window is resized before a program uses the following statement
   "PICTURE (X1,Y1)-(X2,Y2),IMAGE$"
				
then the picture will be larger than if the window had not been sized.

A PICTURE statement that does not specify coordinates does not distort, as in the following:
   PICTURE ,IMAGE$
				
The following code example demonstrates this:
   WINDOW 1,"BIG WINDOW",(1,21)-(510,338),1    ' Draws a big window.
   INPUT "PLEASE SIZE THE WINDOW SMALLER THEN HIT RETURN.", B$
   PICTURE ON     'Draw uniform grid:
   FOR I=1 TO 20 : FOR J=1 TO 20
   LINE (0,10*J)-(200,10*J)  :  LINE (10*I,0)-(10*I,200)
   NEXT  J : NEXT  I
   PICTURE OFF : A$=PICTURE$
   X=510 : Y=317    ' X & Y  (Determine scaling of PICTURE below.)
   PICTURE (1,1)-(X,Y),A$    '(Distortion occurs for PICTURE of this form.
   '  PICTURE ,A$    (Distortion does not occur for PICTURE of this form.)
   INPUT B$   '  (Pause to see the drawn grid.)
				

Modification Type: Minor Last Reviewed: 1/8/2003
Keywords: kbbug KB42930