John Culleton wrote:
My favorite printer specifies the above. I am not sure exactly what is meant. In any case how do I assure this in Gimp? I have preserved gradients in a PDF 1.3 file through the workflow of: export to PDF 1.4, view in Acrobat Reader, print to a PS file, and then run ps2pdf13 (part of the Ghostview suite) but I am hoping that Gimp has a more straightforward approach.
====================
Which OS are you using?

If Window$ - load a PostScript printer and set it print to file and
             set it to be the default printer. Use Gimp and print.
             Give name of file for disk when asked and make last name
             a .ps... (filename.ps)  Then run your bat file.
                                OR
             Load a color printer, set it as default and print to it. :)
If Linux   - set Gimp to print to file. (Postscript is the output)

In Gimp, files->print Give it a name when it asks. Follow with your trusted converter ps2pdf13.

Try to NOT use Window$ PDF printer.

In Linux, using a script like you do is actually best if you use multiple printers. CUPS and lpr are a pain to setup and maintain. If your printer of choice is a network one, find, download, compile, install and use rlpr. You can put in a call to it at the end of your current script or replace the current printer call with it if you want to convert to pdf (perhaps convert to printer's language) and then print all in one motion.

Sample Attached: It is wordy!! This file has the comments so I can remember what to do if changes are needed. I use it or more often the copy minus the comments, at home.


Steve
#!/bin/bash
# prt2-240.scr
# Nov.2006
# SLT
# syntax   : prt2-240.scr filename.ps or eps or pdf
#                                     or any gs convertable file type. 
# Required : Lnix operating system 
# Purpose  : I hate printing, re-printing and re-pri... same thing.
#            Especially when the setup can be time consuming.
#            I like to get it right and print. And when the paper
#            jams or the ink runs out I just reload and re-cat that
#            file that took me forever to compose.
#            (I know, if 5 copies are wanted print 5 the first time.
#              But then Jane wants one too. And it's out of ink and
#              the courier is waiting and .... 
#              If this hasn't happened to you, or something like it,
#              then you live in a dream world. Can we all join you?)
#
# Note     : In my experience the Unix world goes to great efforts
#              to avoid having the human do all the repetitious work.
#              Point-Click, Point-Click, Point-Click-Click, or was the 
#              other one supposed to be two clicks????    In Unix, there
#              are few actual programs. There is an abundance of what 
#              might best be called stand-alone subroutines. One can 
#              chain few or many of them together to get a desired
#              result.
#            Consider this: Print each page or group to a postscript
#              format on disk. Use gv (GhostView) to review. Use this
#              script to create the printer ready files of all that
#              have passed inspection. When all are present, you get
#              to stand at the printer and feed it whatever it takes.
#              Paper jam, out of ink, whatever? Then, drop back to last 
#              done and cat next-page again. Both sides if necessary.
#              And you get to save all that money you would have spent
#              on paper and ink that would have been overflowing the
#              extra-large trash can you bought just for the project :)
#              Now that's My idea of "Doing It Right The First Time".
model="mfc240c"
#
# Requireds: The following files are required for this to work:
#       1) /usr/local/Brother/Printer/${model}/lpd/br${model}filter
#       2) /usr/local/Brother/Printer/${model}/inf/paperinfij
#            copy paperinfij.600 to paperinfij
#       3) /usr/local/Brother/Printer/${model}/inf/br${model}rc
#            copy br${model}rc.600 to br${model}rc
#       4) /etc/printcap     (must have Brother setup)
#   AND they must each be in the above stated location.
#   otherwise it doesn't want to work. ie.. non-relocatable
#   As long as the binary ppm is 4720x6220 pixels it really does
#     not matter how the ppm is made. But Brother will not handle
#     'fit to page' requirements.  Make sure the print area does not
#     exceed 7.8667x10.3667 inches. Excess is simply lost. In terms of
#     Postscript points (72/inch) I suggest a bbox of 0 0 566 745.
#     (convert source -geometry 566x745! PS:newsource.ps   can help.
#      in that case just   prt-240.scr newsource.ps   you just made.)
#     A separate script can handle the printing without the need of a 
#     postscript starter.
#   (Change -c -quit | /usr....    to  cat $1 | keep-the-rest  and go
#     back and make sure that all code from gs thru -quit is removed)
#   In case you don't already know, this script will printer ready 
#     .ps , .eps , .pdf and variants. If fact: Any file gs can read.
#   If greater flexibility is needed, use convert in place of gs and
#     tweak the tokens accordingly. (convert - from ImageMagic bundle)
#   If you have to use a pass-through filter then modify as follows:
#     ...|cat $1 \   to   ...|cat - \   or better: ..|cat %stdin% \ AND
#     place the following AFTER the i1=$...  line:
#     i1="/tmp/`date +%F_%H%M%S`"
#   Check your watch, make your print(s). Name tells when you made it.
#   It also provides the order they were made in.
#
#   Lastly - if other than 600 dpi is wanted, look in the -pi file for
#     allowed resolutions and adjust the -g values by 600/chosen.
#     you know: 600dpi/new-dpi times each of X and Y and substitute the 
#     new values in the -g token.  You will also need a copy of the
#     ${model}rc file modified to agree. So change the -rc name to match.
#   Then save your changes to another script. say prt-240-r3.scr  for
#     printing to a Brother MFC-240C at a resolution of 300dpi..
#
#   Under no circumstances beautify Brother's supplied file paperinfij2
#     because their stuff depend on the column miss-alignments!
#   (It requires one and only one tab as column seperator.)
#   Both above files are disk imaged as flush left (no #) No comments!
#  examples follow:
# ---------------------------------------------------------------------
#                   brmfc240crc.300
#       [MFC240C]
#       Media=Plain
#       Resolution=600
#       RResolution=Normal
#       BiDirPrint=ON
#       MirrorPrint=OFF
#       PaperType=Letter
#       PaperThick=Regular
#       PaperSource=AUTO
#       Copies=1
#       ColorOrMono=Color
#       Collate=OFF
#       Document=Photo
#       ColorMatch=None
#       HalfTone=Dither
#       ColorEnhance=ON
#       SlowDrying=OFF
#       Brightness=-10
#       Contrast=+5
#       RedKey=0
#       GreenKey=0
#       BlueKey=0
#       Language=us
# ---------------------------------------------------------------------
#                   paperinfij2.300
#
#       paper type:     width   height
#       A4:     4720    6780
#       BrA4_B: 4956    6988
#       Letter: 4720    6220
#       BrLetter_B:     5316    6600
#       Legal:  4864    8164
#       Executive:      4112    6064
#       B5:     3940    5672
#       A5:     3264    4720
#       A6:     2248    3256
#       BrA6_B: 2476    3508
#       PostC4x6:       2164    3364
#       BrPostC4x6_B:   2400    3600
#       IndexC5x8:      2764    4564
#       BrIndexC5x8_B:  3000    4800
#       PhotoL: 1864    2764
#       BrPhotoL_B:     2100    3000
#       Photo2L:        2756    3972
#       BrPhoto2L_B:    2992    4208
#       PostCard:       2120    3256
#       BrHagaki_B:     2356    3492
#       DoublePostCardRotated:  3264    4488
#       EnvC5:  3588    5172
#       EnvDL:  2364    4964
#       Env10:  2236    5464
#       EnvMonarch:     2088    4264
#       EnvYou4:        2236    5296
# ---------------------------------------------------------------------
#                          Like I said before:
#   Under no circumstances beautify Brother's supplied file paperinfij2
#     because their stuff depend on the column miss-alignments!
#   (It requires one and only one tab as column seperator.)
#   Both above files are disk imaged as flush left (no #) No comments!
#
#  a safety: -q -dBATCH -dNOPAUSE -r600 -g4860x6360
i=$1
i1=${i%%.*}
echo "Creating printer ready file for $1"
gs -sDEVICE=ppmraw \
-q -dBATCH -dNOPAUSE -r600 -g4720x6220 \
-sOutputFile=%stdout% $1 \
-c -quit | /usr/local/Brother/Printer/${model}/lpd/br${model}filter \
-pi /usr/local/Brother/Printer/${model}/inf/paperinfij2 \
-rc /usr/local/Brother/Printer/${model}/inf/br${model}rc >$i1.240

#>/dev/usb/lp0
#>$i1.240
# use one or the other of the above two lines
# and comment/uncomment the echo/cat/echo three lines
# below accordingly. change .240 to your printer model
# if multiple printers, use multiple scripts and .model will
# reduce the flustration greately.
#
echo "Sending $i1.240 to MFC-240C printer"
cat $i1.240 >/dev/usb/lp0
#           >/dev/lp0  or where ever printer connects
#         or
#rlpr -N -pn...@ip-address $i1.240
#          Name matches one in /etc/printcap
#          substitute rlpr line for cat if network printer desired
echo "Printed page should be done."
#
# ps. I never did get Brother's setup to work with the lpr suite. 
#     I don't use CUPS.
#     I suggest you make a copy, strip the comments and then make sense
#     of what is happening here.

#                  end of file

_______________________________________________
Gimp-user mailing list
Gimp-user@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-user

Reply via email to