Microsoft KB Archive/168744

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Article ID: 168744

Article Last Modified on 3/1/2005



APPLIES TO

  • Microsoft Visual Basic 5.0 Control Creation Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition



This article was previously published under Q168744

SYMPTOMS

Printed documents have the wrong font or font size.

CAUSE

The exact cause of this problem is not known. The symptoms indicate that the Printer object loses font attribute information, such as font name or size.

RESOLUTION

Several methods have alleviated the problem during testing. To work around the problem, try one or more of the following:

  • Do not use the line:

    Printer.Font = ""
    
                        

    This normally clears font details.

  • Instead of using:

    Printer.font = <font name>
    
                        

    Use:

    Dim F as New StdFont
    F.Name = <font name>
    F.Size = <size>
    Set Printer.Font = F
    
                        

    For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

    194323 PRB: Setting Printer.Font.Size with StdFont Gives Wrong Values

  • Alternatively, you can use:

    Dim x As Single
    x = Printer.CurrentX
    Printer.Print " ";  'initialize the printer object
    Printer.CurrentX = x
    Printer.FontName = "Arial"
    Printer.FontSize = 10
                        
  • If the problem occurs when using the NewPage method, re-specify the font information at the beginning of each page as in the following example:

    Printer.Print ""  'Reset printer
    Printer.Font = ""
    Printer.FontName = "Arial"
    Printer.FontSize = 10
    
    Printer.Print "This is a test using " & Printer.Font
    Printer.NewPage
    Printer.FontName = "Arial"
    Printer.Print "this is page two"
    Printer.EndDoc
    
                        


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug has been fixed in Visual Studio 97 Service Pack 2.

For more information on the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base:

194022 INFO: Visual Studio 97 Service Packs - What, Where, and Why


For a list of the Visual Basic 5.0 bugs that were fixed in the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base:

194295 INFO: Visual Basic 5.0 Fixes in Visual Studio 97 Service Pack 2


MORE INFORMATION

Microsoft has received reports that documents print with a generic font, such as Courier, instead of desired fonts.

This problem has been reported under the following circumstances, but has not been consistently reproduced:

  • Use of NewPage method.
  • Use of Printer.Font = ""   'used to reset font details.
  • Changes via code to page orientation or paper size.


REFERENCES

Microsoft Visual Basic online Help and online Books.


Keywords: kbbug kbfix kbvbp500sp2fix kbvs97sp2fix KB168744