Specifying finishing in the ps2afpd.cfg file

This shows how you can specify finishing values in the ps2afp data stream transform:
  1. From a command line, access the ps2afpd.cfg file that is located in the /usr/lpp/psf/ps2afp/ directory.
  2. Using your editor of choice, edit the file.
  3. Find the heading #ENABLING STAPLING OR PUNCH FINISHING OPTIONS THROUGH THE TRANSFORM and remove the hash mark (#) that comments out this line:
    device_controls=finishing
  4. Save and close the file.
    Note:
  1. The device_controls option also accepts bin numbers and plex key words.
  2. If you omit plex, the ps2afp transform creates duplex output.
  3. If you omit bin numbers, the ps2afp transform creates output that indicates that the first input tray should be used.
  4. Not all printers support using the staple and punch options that the ps2afp transform generates. If you send a document with staple or punch operations to an IPDS printer that does not support the request, InfoPrint Manager issues a message and completes the job, without either staples or punch holes. See your printer documentation to determine which (if any) staple or punch operations are available.

For further examples, see the ps2afpd.cfg file shipped with the latest version of InfoPrint Manager, which includes the device_controls option.

Sample PostScript Daemon configuration file sections with staple and punch options

# ps2afpd configuration file

# KEYWORD                                                      PURPOSE
######################################################################

port = 8251                   #               which TCP/IP port to use

work_directory = /var/psf/ps2afp
                         #            directory to put work files into
log_file = /var/psf/ps2afp/ps2afpd.log
                         #                 where to write log messages

notify = root            #       who to notify if problems encountered
mail_command = /usr/bin/mail
                         #          program used to send notifications
ps_program = /usr/lpp/psf/bin/ps2afpi
                         #      name of PostScript interpreter program
ps_init_file = /usr/lpp/psf/ps2afp/ps2afpe.ps
                         #              name of PostScript interpreter
                         #                         initialization file
ps_files_path = /usr/lpp/psf/ps2afp :\
                /usr/lpp/psf/config :\
                /usr/lpp/psf/reslib
			 	 #            path to search for jobInit files

ps_max_memory = 48000K   #               maximum amount of memory that
						 #         PostScript uses; the 'K' is ignored

ps_job_timeout = 9999    #                   maximum number of minutes
						 #                   to process PostScript job
ps_server_timeout = 360  #                   maximum number of minutes
						 #                   server waits between jobs

ps_font_map_files = /usr/lpp/psf/ps/psfonts.map :\
                    /var/psf/psfonts/user.map
						 #                  list of font mapping files

ps_width = 8.5i              #   width of generated image
ps_length = 11i              #   length of generated image
ps_x_offset = 0i             #   left and right margins
ps_y_offset = 0i             #   top and bottom margins
ps_resolution = 300          #   resolution of target printer
ps_output_type = IO1_G4      #   type of AFP image to generate
#following three parameters will apply only if threshsmall specified
ps_imgsmall = 0.5i           #   default value for imgsmall
ps_linesmall = 0.5i          #   default value for linesmall
ps_txtsmall = 0.5i           #   default value for txtsmall
#ps_is = 1                   #   the is afp compliance flag
ps_compress_type = jpeg-sub  # JPEG subsampled compression. 
											Other options: jpeg, lzw

######################################################################

# Customize if desired
#pragma = jobInit 4000.ibm85lpi.tf.dt.ps; \
#            jobInit 4000.ibm85lpi.ta.ps;

#


# ENABLING THE PLEX COMMAND AND MAPPING BINS TO TRAYS
# NOTE: Uncomment only one of the options below.

######################################################################

# ENABLING THE FINISHING FLAG ONLY
# If you want your users to be able to allow finishing operations,
# such as staple operations or punch operations, uncomment the  
# following line.

# device_controls = finishing

######################################################################

# ENABLING THE PLEX COMMAND ONLY
# If you want your users to be able to choose between single-sided and 
# double-sided (duplexed) output, uncomment the following line.

# device_controls = plex

######################################################################

# ENABLING BOTH PLEX AND FINISHING
# If you want your users to be able to both choose between single-
# sided and double-sided (duplexed) output AND allow finishing 
# operations, such as staple operations or punch operations, 
# uncomment the following line.

# device_controls = plex,finishing

######################################################################

# ENABLING THE PLEX COMMAND AND MAPPING BINS TO TRAYS
# If you want your users to be able to both choose between single-
# sided and double-sided (duplexed) output AND specify which paper 
# tray to use, uncomment the line below and fill in the correct values:

# Replace the Xs with the number of the AFP tray (between 1 and 255).
# Replace the Zs with the appropriate values.

# device_controls = plex,inputX=(size,type=ZZZ,weight=ZZZ,
			color=ZZZ),inputX=(size,type=ZZZ,weight=ZZZ,color=ZZZ)

######################################################################

# ENABLING THE PLEX COMMAND AND MAPPING BINS TO TRAYS
# If you want your users to be able to both choose between single-
# sided and double-sided (duplexed) output, AND allow finishing
# operations, AND specify which paper tray to use, uncomment the line 
# below and fill in the correct values:

# Replace the Xs with the number of the AFP tray (between 1 and 255).
# Replace the Zs with the appropriate values.

# device_controls = plex,finishing,inputX=(size,type=ZZZ,weight=ZZZ,
			color=ZZZ),inputX=(size,type=ZZZ,weight=ZZZ,color=ZZZ)