SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

README file for Xbubblejet 0.2

by Robert Butera (butera@patriot.net) 12-Sept-1998

CONTENTS

  1. What is Xbubblejet?
  2. Why should I use it?
  3. What printers are supported?
  4. Where do I get it?
  5. What else do I need?
  6. How do I install it?
  7. How do I use it?
  8. ChangeLog
  9. TODO List
  10. Copyright Issues
  11. What is Xbubblejet?

Xbubblejet is a graphical user interface (GUI) program that runs under Xwindows that allows individual users on a UNIX system to set their own custom printer settings for the following items: bits per pixel, color/grayscale, low/medium/hi print quality, resolution, and paper type. IT ASSUMES THE FOLLOWING:

-> The user is printing postscript files -> The user has a Canon BJC-XXXX printer -> The user is not using any "printfilter" type package

(although Xbubblejet could be modified to work with one).

It provides two programs: xbubblejet, the GUI program, and canon-filter.pl, a "print filter" (see below), which determines if a file is a postscript file or not. If so, it calls ghostscript for postscript processing with the appropriate print options selected by the user via xbubblejet.

2. Why should I use it?

First of all, it allows individual users to customize their own printer settings, without messing up other users. Second, it allows print setting to be changed "on the fly." For example, I may want to print out a draft Latex document in black and white mode at low resolution, then switch to printing out hi-resolution color figures on transparency paper. Xbubblejet allows me to make these changes instantly.

2. What printers are supported?

I have developed this using a Canon BJC-4200 BubbleJet printer. I have been told that it also works on other BJC-4XXXX series printers. Since the program makes use of ghostscript and specifies the device drive for a BJC-600, I assume it may work on a variety of other Canon printers as well.

3. Where do I get it?

Xbubblejet is available at http://patriot.net/~butera/xbubblejet.html.

4. What else do I need?

The Xbubblejet package was developed on a Linux system, however, in theory it should easily work on any UNIX system. It requires the following:

  • UNIX system running XWindows
  • Tcl/Tk (I used version 7.4 to develop it, earlier versions may work)
  • Perl (I use version 4, earlier versions may work)
  • Ghostscript version 4.X or higher (version 3.X did not support all the color modes consistently)
  • a printing system that allows a print filter to be specified (typically in /etc/printcap) that processes all files going to the printer 5. How do I install it?
    1. place the program xbubblejet in a common directory (like /usr/bin) where all users can run it.
    2. specify the print filter in your /etc/printcap file. For example, my /etc/printcap file looks like this:

# START printcap file
# /etc/printcap

lp:\

        :sd=/var/spool/lpd/lp:\
        :mx0:\
        :sh:\
        :lp=/dev/lp1:\
        :if=/var/spool/lpd/lp/canon-filter.pl:

#
# END printcap file

        where the "if=" entry specifies the absolute path where
        the file canon-filter.pl file can be found.  I placed it
        in /var/spool/lpd/lp, since other packages (like RedHat
        printtool) also store printer configuration files there.

        3) (OPTIONAL) once you are used to Xbubblejet, you can copy
        a system wide file of default options to /etc/canon.ps.options.
        See the next step for more details.

6.      How do I use it?

        Just run "xbubblejet"  Select the printer setting you want,
        then click on Done.  A file named ".canon.ps.options" will be
        written to your home directory.  When you go to print a file,
        the print filter canon-filter.pl will read this file and
        setup the ghostscript drive to print your file appropriately.

        If the user already has a .canon.ps.options file in their 
        home directory, when "xbubblejet" is run this file will be
        read and the buttons preselected to reflect the current settings.
        
        If a .canon.ps.options file does not exist in the user's home
        directory, the file "/etc/canon.ps.options", if it exists,
        will be read by xbubblejet upon startup.

        Likewise, the print filter canon-filter.pl will read the
        system-wide options file "/etc/canon.ps.options" if the file
        ".canon.ps.options" does not exist in the user's home directory.

7.      ChangeLog

        version 0.1:    initial version

        version 0.2:    - xbubblejet completely rewritten in a more modular
                          readable form

                        - added capability to preset buttons from an existing
                          user or default options file

                        - completely rewrote print filter (now called
                          canon-filter.pl) in Perl.

                        - added ability of print filter to read from a 
                          default options file if the user does not have one

                        - fixed a bug in the old version that expanded
                          wild-card characters if they were one of the first
                          two characters of the file to be printed! For 
                          example, printing a C source code listing where the
                          first two characters were "/*" caused a directory
                          listing of /home/root to be printed.

8.      TODO List

        Short-Term: integrate with "magicfilter" and/or RedHat PrintTool.
        It appears that integrating with RedHat PrintTool should not be
        too hard, and would simply require writing to postscipt.cfg, or
        somehow allowing a user-specific version of postscript.cfg to 
        exist (maybe PrintTool does this? I don't know, I don't use it!)

        Long-Term: Think about modularizing xbubblejet into a more general
        program that has a database of config files for printers by 
        various manufacturers. 

9.      Copyright Issues

        Gnu Public License -- go read it at http://www.fsf.org/

        If you do modify xbubblejet, I'd like to hear from you!
        Email me at butera@patriot.net.


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.