# XTEXT as a Report Viewer

> [HTML Version](xtextasareportviewer.htm)

Here are some suggestions and things to consider when using XTEXT as a report viewer:

•	Since most reports use fixed-pitch type, you will probably want to specify a fixed pitch font (e.g. Lucida Console or Courier New) in the [TXC.FONTFACE](txtctl2.md#txc.fontface) field. Note that when specifying a font face name, you must also set the [TXC.FONTSIZE](txtctl2.md#txc.fontsize) to something reasonable (like 8).

•	Since there is no equivalent to the 80/132 column display modes of EZTYP, you will have to rely on the horizontal scroll bar (TXF\_HSCROLL).

•	Since you probably do not want to allow modification of the report, set the TXF\_READONLY and TXF\_DEFERSAVE flags.

•	See [Page Breaks](pagebreaksxtext.md) for information on making sure the hard page breaks display properly.

•	There is currently no equivalent of the EZTYP "goto page" function, but F10 pops up a dialog allowing you to go to a specified line number. If the report has printed page numbers, you can also use the search function (on the toolbar or F5) search for a page number.

•	If you want the viewer to occupy the entire screen, set the coordinates to something like -1,-1,-2000,-2000. This would correspond to pixel coordinates of (1,1) for the upper left corner and (2000,2000) for the lower right corner, but A-Shell will shift and/or trim the size of any popup window (you need the TXF\_POPUP flag) to fit the screen. But, in that case, you had better not use the TXF\_MODELESS option, or else the XTEXT control will obscure the rest of the app and not give you any easy way to get back to it.

•	To achieve similar functionality to the EZTYP command line, consider wrapping the XTEXT control in a dialog which contains buttons, and perhaps even a command line, along the bottom of the dialog. For example, to implement a printing capability similar to EZTYP's, you could trap the printer toolbar icon (or F4; see [Trapping Toolbar Commands](trappingtoolbarcmdxtext.md)) and then prompt the user for printing parameters such as starting/ending page, printer, etc. If you had created an EZPRTX.SBX to customize EZTYP printing, you could reuse that logic by calling the subroutine directly from your application.