I would like to print photos, four on each page. That is, each page
would have four photos that I could cut with scissors into four
individual photos. Is there some linux proggy or a script that could
do it. Thanks
On Fri, 28 Sep 2007 09:02:58 -0500, Ignoramus18262 wrote:
> I would like to print photos, four on each page. That is, each page
> would have four photos that I could cut with scissors into four
> individual photos. Is there some linux proggy or a script that could
> do it. Thanks
>
> i
On Fri, 28 Sep 2007 10:35:33 -0600, ray <ray@zianet.com> wrote:
> On Fri, 28 Sep 2007 09:02:58 -0500, Ignoramus18262 wrote:
>
>> I would like to print photos, four on each page. That is, each page
>> would have four photos that I could cut with scissors into four
>> individual photos. Is there some linux proggy or a script that could
>> do it. Thanks
>>
>> i
>
> photoprint: www.blackfiveservices.co.uk/photoprint.shtml
>
Thanks. Looks nice. I also found gnome-photo-printer, which works
well, based on my very limited testing.
Ο "Ignoramus18262" <ignoramus18262@NOSPAM.18262.invalid> έγραψε στο μήνυμα
news:-tidnSGLNZkPlGDbnZ2dnUVZ_jWdnZ2d@giganews.com...
> I would like to print photos, four on each page. That is, each page
> would have four photos that I could cut with scissors into four
> individual photos. Is there some linux proggy or a script that could
> do it. Thanks
>
> i
Canon photo printing software, that comes with any Canon photo printer.You
can print either 4 10X15 photos on an A4 (4X5" on a letter-size)or 2 13 X 18
(5 X 7")on an A4.
--
Tzortzakakis Dimitrios
major in electrical engineering
mechanized infantry reservist
dimtzort AT otenet DOT gr
On Fri, 28 Sep 2007 23:33:21 +0300, Tzortzakakis Dimitrios <nowhere@noone.com> wrote:
>
> Ο "Ignoramus18262" <ignoramus18262@NOSPAM.18262.invalid> έγραψε στο μήνυμα
> news:-tidnSGLNZkPlGDbnZ2dnUVZ_jWdnZ2d@giganews.com...
>> I would like to print photos, four on each page. That is, each page
>> would have four photos that I could cut with scissors into four
>> individual photos. Is there some linux proggy or a script that could
>> do it. Thanks
>>
>> i
> Canon photo printing software, that comes with any Canon photo printer.You
> can print either 4 10X15 photos on an A4 (4X5" on a letter-size)or 2 13 X 18
> (5 X 7")on an A4.
On Fri, 28 Sep 2007 23:33:21 +0300, Tzortzakakis Dimitrios wrote:
>
> Γ "Ignoramus18262" <ignoramus18262@NOSPAM.18262.invalid> ΓãñÑøΓ₯ óôï Γ¬ΓΓ*áìÑ
> news:-tidnSGLNZkPlGDbnZ2dnUVZ_jWdnZ2d@giganews.com...
>> I would like to print photos, four on each page. That is, each page
>> would have four photos that I could cut with scissors into four
>> individual photos. Is there some linux proggy or a script that could
>> do it. Thanks
>>
>> i
> Canon photo printing software, that comes with any Canon photo printer.You
> can print either 4 10X15 photos on an A4 (4X5" on a letter-size)or 2 13 X 18
> (5 X 7")on an A4.
I would be quite amazed if canon had any software that runs on Linux.
Their Linux support is quite abysmal - the basic reason I don't buy canon
anything.
> I would like to print photos, four on each page. That is, each page
> would have four photos that I could cut with scissors into four
> individual photos. Is there some linux proggy or a script that could
> do it. Thanks
The montage program that is in the ImageMagick suite of tools will do this
using the -tile and -geometry options:
Where options include:
-adjoin join images into a single multi-image file
-affine matrix affine transform matrix
annotate geometry text
annotate the image with text
-authenticate value decrypt image with this password
-blue-primary point chromaticity blue primary point
-blur factor apply a filter to blur the image
-border geometry surround image with a border of color
-bordercolor color border color
-channel type apply option to select image channels
-clone index clone an image
-coalesce merge a sequence of images
-colors value preferred number of colors in the image
-colorspace type alternate image colorsapce
-comment string annotate image with comment
-compose operator composite operator
-compress type type of pixel compression when writing the image
-crop geometry preferred size and location of the cropped image
-debug events display copious debugging information
-define formatption
define one or more image format options
-density geometry horizontal and vertical density of the image
-depth value image depth
-display server query font from this X server
-dispose method GIF disposal method
-dither apply Floyd/Steinberg error diffusion to image
-draw string annotate the image with a graphic primitive
-encoding type text encoding type
-endian type endianness (MSB or LSB) of the image
-extract geometry extract area from image
-fill color color to use when filling a graphic primitive
-filter type use this filter when resizing an image
-flatten flatten a sequence of images
-flip flip image in the vertical direction
-flop flop image in the horizontal direction
-font name render text with this font
-format "string" output formatted image characteristics
-frame geometry surround image with an ornamental border
-gamma value level of gamma correction
-geometry geometry preferred tile and border sizes
-gravity direction which direction to gravitate towards
-green-primary point chromaticity green primary point
-help print program options
-identify identify the format and characteristics of the image
-interlace type type of image interlacing scheme
-label name assign a label to an image
-limit type value pixel cache resource limit
-log format format of debugging information
-matte store matte channel if the image has one
-mattecolor color frame color
-mode type framing style
-monitor monitor progress
-monochrome transform image to black and white
-page geometry size and location of an image canvas (setting)
-pointsize value font point size
-profile filename add, delete, or apply an image profile
-quality value JPEG/MIFF/PNG compression level
-quiet suppress all error or warning messages
-red-primary point chromaticity red primary point
-repage geometry size and location of an image canvas (operator)
-resize geometry resize the image
-rotate degrees apply Paeth rotation to the image
-sampling-factor geometry
horizontal and vertical sampling factor
-scenes range image scene range
-set attribute value set an image attribute
-shadow add a shadow beneath a tile to simulate depth
-size geometry width and height of image
-strip strip image of all profiles and comments
-stroke color color to use when stroking a graphic primitive
-support factor resize support: > 1.0 is blurry, < 1.0 is sharp
-texture filename name of texture to tile onto the image background
-thumbnail geometry create a thumbnail of the image
-tile geometry number of tiles per row and column
-transform affine transform image
-transparent color make this color transparent within the image
-treedepth value color tree depth
-trim trim image edges
-type type image type
-units type the units of image resolution
-verbose print detailed information about the image
-version print version information
-virtual-pixel method
virtual pixel access method
-white-point point chromaticity white point
In addition to those listed above, you can specify these standard X
resources as command line options: -background, -bordercolor,
-borderwidth, -font, -mattecolor, or -title
By default, the image format of `file' is determined by its magic
number. To specify a particular image format, precede the filename
with an image format name and a colon (i.e. ps:image) or specify the
image type as the filename suffix (i.e. image.ps). Specify 'file' as
'-' for standard input or output.
On Sep 28, 10:02 am, Ignoramus18262 <ignoramus18...@NOSPAM.
18262.invalid> wrote:
> I would like to print photos, four on each page. That is, each page
> would have four photos that I could cut with scissors into four
> individual photos. Is there some linux proggy or a script that could
> do it. Thanks
>
> i
Michael Meissner <meissner@the-meissners.org> wrote:
>Ignoramus18262 <ignoramus18262@NOSPAM.18262.invalid> writes:
>
>> I would like to print photos, four on each page. That is, each page
>> would have four photos that I could cut with scissors into four
>> individual photos. Is there some linux proggy or a script that could
>> do it. Thanks
>
>The montage program that is in the ImageMagick suite of tools will do this
>using the -tile and -geometry options:
ImageMagick tools can do it a number of ways. There is
indeed "montage". There is also "composite". And in
fact the way that I've done it is with "convert" using
the "+append" argument.
I'm a little hesitant to post this script, because it has
been used very little and is probably full of no end of
bugs that will reformat your hard drive... but it does
put 4 images on one page for printing.
${b}${prog}${n} generates a single image output
file, ${i}${out}${n}, made up of 4 images from images
files specified on the command line. If the command
line specifies only 1 image file the output will be a
times 4 composite of that one image. If two image
files are specified, they will be the left pair and
right pair respectively. If three image files are
specified the first two will be on top and the third
will be duplicated as the composite's two bottom
images."
echo ""
echo -e "\
${b}OPTIONS${n}"
echo -e "\
-c NNxNN -- Sets the white border around the
composite output image to NNxNN."
echo -e "
-i NNxNN -- Sets the white border around each
individual image to NNxNN."
echo -e "
-v n -- Enables more progress messages when
n > 2 and fewer if n < 2."
echo -e "
-s nn -- Scales images in the composite smaller
the divisor nn. Default is 4, which
makes the output image about the size
of the largest original individual
image. -s 1 is another useful value."
echo ""
}
# **** DEFAULT CONFIGURATION ****
#
# The generated composite output file is named ${out}.
# The extent determines the format. Note that other
# "convert" attributes can be set with the variable.
# The -o option also sets the output file name.
# out="out.jpg" is an example.
out="out.jpg"
#
# The image files will be scaled by ${scale} amount. If the
# output should be the same size as the largest input image,
# set this to 4. If the output image should just be as
# big as all 4 images combined, set this to 1. The -s option
# also sets this variable.
# scale=4 is an example.
scale=4
#
# The composite will have a border per ${cborder}.
# The -c option will also set this border.
# cborder="5x25" is an example.
cborder="5x25"
#
# The 4 images will have a border per ${iborder}.
# The -i option will also set this border.
# iborder="5x5" is an example.
iborder="5x5"
#
# The amount of information generated as the script
# progresses is adjusted with the -v option. The
# default is set with $verbose
# verbose=2 is an example.
verbose=2
#
# These define various ANSI X.64 terminal attributes that
# can be selected for $b or $i in the help screen.
#
nrm="\033[0m"
red="\033[31m"
grn="\033[32m"
yel="\033[33m"
blu="\033[34m"
mag="\033[35m"
cyn="\033[36m"
wht="\033[37m"
bld="\033[1m"
uln="\033[4m"
inv="\033[7m"
# If the help screen has chicken scratch instead of bold
# comment out these two:
b=${bld}
i=${uln}
n=${nrm}
# **** END OF CONFIGURATION ****
function cleanup () {
rm -f atmp.ppm btmp.ppm ctmp.ppm hi.ppm lo.ppm
if [ ${verbose} -gt 2 ] ; then
echo -e "${red}Merry ${grn}Christmas${n}... ;-)"
fi
}
while [ ${#} -gt 0 ] ; do
if [ "${1:0:1}" == "-" ] ; then
option="${1:1}"
case "${1:1}" in
[?h]) usage; exit 0;;
help) usage; exit 0;;
-[?h]) usage; exit 0;;
-help) usage; exit 0;;
v) case "${2:0:1}" in
[0-9]) verbose=${2}; shift; shift; continue;;
esac;;
s) case "${2:0:1}" in
[0-9]) scale=${2}; shift; shift; continue;;
esac;;
c) case "${2:0:1}" in
[0-9]) cborder=${2}; shift; shift; continue;;
esac;;
i) case "${2:0:1}" in
[0-9]) iborder=${2}; shift; shift; continue;;
esac;;
o) out="${2}"; shift; shift; continue;;
*) break;;
esac
else
break
fi
shift
done
trap cleanup 0
number=${#}
case "${number}" in
0) echo -e "You ${red}must${nrm} specify from 1 to 4 image files."; exit 1;;
1) args=(${1} ${1} ${1} ${1});;
2) args=(${1} ${2} ${1} ${2});;
3) args=(${1} ${2} ${3} ${3});;
*) args=(${1} ${2} ${3} ${4});;
esac
j=0
width=0
height=0
for x in 0 1 2 3 ; do
set $(exiftool "${args[${x}]}" 2>&1)
if [ "${1}" != "ExifTool" ] ; then
echo -e "File ${i}${args[${x}]}${n} does not have a valid image format."
exit 1
fi
set $(exiftool "${args[${x}]}" | grep "Image Width")
neww=$(expr ${4} \/ ${scale})
set $(exiftool "${args[${x}]}" | grep "Image Height")
newh=$(expr ${4} \/ ${scale})
if [ ${newh} -lt ${neww} ] ; then
rotate[${x}]="-rotate 90"
if [ ${height} -lt ${neww} ] ; then height=${neww} ; fi
if [ ${width} -lt ${newh} ] ; then width=${newh} ; fi
else
if [ ${height} -lt ${newh} ] ; then height=${newh} ; fi
if [ ${width} -lt ${neww} ] ; then width=${neww} ; fi
fi
done
for x in 0 1 2 3 ; do
if [ ${width} -gt ${height} ] ; then
size[${x}]="size ${width}x${width}"
else
size[${x}]="size ${height}x${height}"
fi
done
if [ ${verbose} -gt 1 ] ; then
echo -e "Making ${size[0]} temp file from ${i}${args[0]}${n}"
fi
convert -re${size} ${args[0]} -bordercolor white \
-border ${iborder} ${rotate[0]} -${size[0]} -depth 16 atmp.ppm
top=("atmp.ppm" "atmp.ppm")
dt="Making double image file from ${i}${args[0]}${n} and ${i}${args[0]}${n}"
comp=("hi.ppm" "hi.ppm");
if [ ${number} -gt 1 ] ; then
if [ ${verbose} -gt 1 ] ; then
echo -e "making ${size[1]} temp file from ${i}${args[1]}${n}"
fi
convert -re${size} ${args[1]} -bordercolor white \
-border ${iborder} ${rotate[1]} -${size[1]} -depth 16 btmp.ppm
top=("atmp.ppm" "btmp.ppm")
dt="Making double image file from ${i}${args[0]}${n} and ${i}${args[1]}${n}"
fi
if [ ${number} -gt 2 ] ; then
if [ ${verbose} -gt 1 ] ; then
echo -e "making ${size[2]} temp file from ${i}${args[2]}${n}"
fi
convert -re${size} ${args[2]} -bordercolor white \
-border ${iborder} ${rotate[2]} -${size[2]} -depth 16 ctmp.ppm
top=("atmp.ppm" "btmp.ppm")
bot=("ctmp.ppm" "ctmp.ppm")
dt="Making double image file from ${i}${args[0]}${n} and ${i}${args[1]}${n}"
db="Making double image file from ${i}${args[2]}${n} and ${i}${args[2]}${n}"
comp=("hi.ppm" "lo.ppm");
fi
if [ ${number} -gt 3 ] ; then
if [ ${verbose} -gt 1 ] ; then
echo -e "making ${size[3]} temp file from ${i}${args[3]}${n}"
fi
convert -re${size} ${args[3]} -bordercolor white \
-border ${iborder} ${rotate[3]} -${size[3]} -depth 16 dtmp.ppm
bot=("ctmp.ppm" "dtmp.ppm")
db="Making double image file from ${i}${args[2]}${n} and ${i}${args[3]}${n}"
fi
if [ ${verbose} -gt 1 ] ; then
echo -e "${dt}"
fi
convert ${top[0]} ${top[1]} +append -depth 16 hi.ppm
if [ ${number} -gt 2 ] ; then
if [ ${verbose} -gt 1 ] ; then
echo -e "${db}"
fi
convert ${bot[0]} ${bot[1]} +append -depth 16 lo.ppm
fi
if [ ${verbose} -gt 1 ] ; then
echo -e "Making composite file ${i}${out}${n}"
fi
convert ${comp[0]} ${comp[1]} -append\
-bordercolor white -border ${cborder} \
-depth 16 -quality 100 ${out}
--
Floyd L. Davidson <http://www.apaflo.com/floyd_davidson>
Ukpeagvik (Barrow, Alaska) floyd@apaflo.com
On Fri, 28 Sep 2007 16:35:54 -0600, ray <ray@zianet.com> wrote:
> On Fri, 28 Sep 2007 23:33:21 +0300, Tzortzakakis Dimitrios wrote:
>
>>
>> Ο "Ignoramus18262" <ignoramus18262@NOSPAM.18262.invalid> έγραψε στο μήνυμα
>> news:-tidnSGLNZkPlGDbnZ2dnUVZ_jWdnZ2d@giganews.com...
>>> I would like to print photos, four on each page. That is, each page
>>> would have four photos that I could cut with scissors into four
>>> individual photos. Is there some linux proggy or a script that could
>>> do it. Thanks
>>>
>>> i
>> Canon photo printing software, that comes with any Canon photo printer.You
>> can print either 4 10X15 photos on an A4 (4X5" on a letter-size)or 2 13 X 18
>> (5 X 7")on an A4.
>
> I would be quite amazed if canon had any software that runs on Linux.
> Their Linux support is quite abysmal - the basic reason I don't buy canon
> anything.
>
Linux gnome-photo-printer is a very basic program, but it does
everything that I want very nicely. I am satisfied at this point.