端末を使用して、1つの物理ページに複数の個別の画像を印刷します。

端末を使用して、1つの物理ページに複数の個別の画像を印刷します。

ファイルが複数あります.png(例:pic_001.pngpic_002.png... pic_200.png)。基本的には本の個々のページです。

実際の各ページにこの2枚の写真を印刷して、通常の本のように見える印刷ジョブを作成したいと思います。

私はこれを試みます:

lp pic_001.png pic_002.png pic_003.png pic_004.png -d color-printer-1 -o sides=one-sided -o number-up=2

ただし、ページごとに1つの写真のみが印刷されます。

forループと同じ結果:

for i in `seq 1 2 8`; do lp pic_00$i.png pic_00$[$i + 1].png -d color-printer-1 -o sides=one-sided -o number-up=2; done

しかし、これはまた、各画像対に対して別々のタスクを生成する。

答え1

lpimageMagickを使用して複数の画像から画像を作成し、直接使用する代わりに印刷してみることができます。

convert image1.png image2.png image3.pgn -append output.png

画像を別の画像の上に配置します。-appendに置き換えると+append画像が並んで表示されます。

答え2

許容される回答の代替案は、montageグリッド(タイル)サイズ定義に追加の柔軟性を提供するImageMagickコマンドを使用することです。

montage -tile 1x2 -mode concatenate *.png page.png

このコマンドは、入力ファイルセットごとに単一ページに適した複数のページ - * .pngコラージュを生成します。

答え3

から始まる

初期画像

画像を複数回印刷するには、ファイル名を設定してください。

terminal-where-image-is$ x="one_image.png"

印刷その他1ページに画像をまとめた「モンタージュ」上記の手順をスキップして下に入力してください。

そしてイメージマジシャンインストール;実行

terminal-where-image-is$ montage -tile 2x4 -mode concatenate $x $x $x $x $x $x $x $x -border 1 page.png

これは作る

複数の画像

注:境界線の数を変更して境界線を大きくしたり小さくしたり、タイリング配列を変更してさまざまな行と列の構成を取得したりできます。

印刷するには(使用lp

  1. プリンタオプションの一覧表示

    terminal-where-image-is$ lpstat -p -d
    
  2. プリンター設定

    terminal-where-image-is$ lpoptions -d printer_name
    
  3. オプション:PPI(インチあたりのピクセル数)を実際の画像プロパティPPIと同じに設定する

    terminal-where-image-is$ ppi=$(identify -format "%x" page.png)
    
  4. これで実際のサイズで印刷されます(ppi設定で)。

    terminal-where-image-is$ lp -o ppi=$ppi page.png
    

答え4

lp画像ファイルについて知りません。特定のデバイスさまざまなデバイスが「サポートできる」機能を実行するオプションを持つドライバ。これlpマニュアルページあなたの目的に合ったオプションはリストされていません。

逆に、1ページに複数の画像ファイルを表示するには、画像を目的の配列に1ページの画像に結合するだけです。 ImageMagickのようなプログラムがこれに役立ちます。

追加資料:

関連情報