xubuntuのGIMPで2Lサイズの写真を印刷する

使っているプリンタはEpsonのEP-805AWである。

win10ではエプソンが提供しているEpsonPhoto+という大変に重宝なソフトを使って写真を印刷してきた。win10がこの10月末でサポートが切れるので、windowsを諦めてLinuxにしようと計画している。今日のテーマもその一環である。

2Lサイズ(127mmX178mm;アスペクト比=1.38)の写真はほどほどに細部も見えるしA4サイズほどインクを使わないので写真の推敲に適したサイズである。このサイズの写真(縁なし)をxubuntuのGIMPを使って印刷する。

使っているカメラはsonyのRX10M4でRawモードで撮影している。このRawモードで得られた画像は5466X3664ピクセルでアスペクト比=1.5であり、2Lサイズと比較すると若干横長である。

プリンタドライバー

初めにやったことはプリンタのドライバーのインストールである。幸いにしてこのプリンターのLinuxドライバーをエプソンが提供している(注意:エプソンのダウンロードサイトにはこのプリンタのドライバーとして2種類のドライバーが用意されているが、EP-805A シリーズと明記されて方をダウンロードすること)。このドライバーをインストールすると2Lなどの写真用紙が選択できる。

画像のインポート

次にGIMPに画像をインポートする。プルダウンメニュー「ファイル」->「新しい画像」から幅178mm高さ127mmの新規画像を作る(ミリメートル単位)。白い画像ができる。これが写真を貼る台紙になる。次にプルダウンメニュー「ファイル」->「レイヤーとして開く」から印刷したい画像をインポートする。プルダウンメニュー「レイヤー」->「レイヤーの拡大・縮小」で画像を台紙に綺麗に収まるようにする。今の場合画像のアスペクト比が1.5なので高さを台紙の高さ125mmにする。左右が台紙から飛び出す。プルダウンメニュー「ツール」->「変形ツール」->「移動」を使って画像を台紙にたいして動かし左右をトリムする(台紙の外にある部分は印刷されない)。

画像の印刷

プルダウンメニュー「ファイル」->「印刷」で印刷設定画面を出す。項目メニュー「全般」ではプリンタが選択されて」いることを確認する。項目メニュー「ページの設定」では用紙サイズ等の選択をする(なぜか選択窓には英語名がでる。)例えば「種類」->「epson photo glossy paper」,、「用紙のソース」->「Manual feed」(手差し)、用紙のサイズ」->「2L size」、「用紙の向き」->「横方向」。項目メニュー「画像の設定」ではフチなしの印刷をしたいので「余白を無視する」の欄にチェックを入れ、ボタン「既定値の読み込み」を押す。プレビュー画面に印刷結果が表示される。項目メニュー「拡張」では印刷の質(Quality)が設定できる。normal(普通)かquality(きれい)を選ぶ。またフチなしの印刷にしたいのでBorderlessでOnを選択する。最後に印刷ボタンを押す。

 

米ケ袋花桃2025

今年も米ケ袋の花桃が綺麗に咲いた。今日(5月5日)あたりが見納めかな。

写真を載せておく:

定番の一枚
空を背景に
散歩のワンちゃんと

そのほかの写真はここにある。

「遊動マルタンガール」を使う

先日「とまと」に乗ったときにこの「遊動マルタンガール」を使った。

この装置の写真はここにある。

「とまと」はすぐに頭を上げてしまうのでそれを防ぐことができる。装置をつけた「とまと」の走りは安定したものでとても乗り易かった。

「乗馬教本」(日本馬術連盟)の説明は「ウマが制御できないほど高く上げたり振ったりするのを防ぐ」また「騎乗者の手がどんなに動いても手綱は常に正しい方向から銜に到達するのを確実にするためのものである」とある。

マルタンガールには遊動マルタンガール(Running Malutingale)と固定マルタンガール(Standing Malutingale)がある。使ったのは前者である。

「折り返し」を使うことに批判的な意見をよく聞くが、それとは違う役割を「マルタン」はしているのかもしれない。

 

 

xubuntuのPython仮想環境でLibreOfficeを使う(エピローグ)

前回ではPython仮想環境で起動したLibreOfficeではそのマクロのためのAPSOがエラーで使えないという結果だった。

原因はunoモジュールなどのマクロに必須のモジュールがインポートできないことである。ubuntuなどのlinuxではこれらのモジュールはシステムワイドの領域にインストールするパッケージとして用意されていてPython仮想環境に直接インストールすることは困難になっている。

Python仮想環境はシステムワイドなPythonと隔離してPythonが使えることを理想としているように思われるが、ここでは次善の策としてシステムワイド用に用意されているパッケージを臨時的に使えるようにしてPython仮想環境のLibreofficeを起動させる方式をとった。

そのためにはPython仮想環境下でのターミナルエミュレータ

export PYTHONPATH=/usr/lib/python3/dist-packages

とシステムワイドのパッケージへのパスを通してやる。この下でLibreOfficeを起動させる。これでマクロの作成は問題なくできる。

この方式を採ると1つのPython仮想環境をシステムワイドな環境から切り離した理想的なPython仮想環境とLibreOffice のマクロ作成の環境とに切り換えて使うことができる。

RawTherapeeによる背景のぼかし

RawTherapeeがヴァージョン5.9から局所処理に使えるようになってその処理を時々使っている。今回は背景をぼかすことにつかった。

写真は蝋梅をアップで撮ったものであるが、背景のボケが甘く蝋梅がすこし沈んでいる。そこで背景のボケを少し強くしたい。ボケの処理は簡単にできるがそれを背景にのみに作用させたい。この処理をRawTherapeeの局所処理で行う。

オリジナル画像

まず処理の適用部分の切り出しをする。RawTherapeeの領域選択はアルゴリズム的である。適用部分のなかに典型的なスポットを選択する。そのスポットを参照点として各ピクセルの色空間上の距離を計算する。これが予め定めてある閾値より小さければそのピクセルは参照点と同類であるとする。そうでなければこのピクセルは処理範囲外とする。このようにして参照点と同類であるかどうかで処理領域を決める。

背景をぼかす領域の設定では画面全体を選択してぼかす処理をしたくない点を参照スポットとする。今の場合は中心にある蝋梅の花弁。

つまり背景をぼかす処理をするときにはその処理をしたくない領域をまず確定させる。次にその「リヴァース」をとる。これで領域が反転する。この反転した領域がぼかしをかけたい領域となる。

適用確認ボタン(ΔEのプレヴュー)がにオンなっていると、適用領域に半透明のマスクがかかる。適用領域が期待したものになるように閾値(実は複数個ある)を変えてみる。

このようにして得られた領域に適当なガウスぼかしを施した画像を以下に載せる:

背景ぼかしをした画像

 

xubuntuのPythonマクロにScriptForgeを使う

ScriptForgeはLibreOfficeをプログラム的に操作することを目的としたモジュール作成のためにLibreOfficeから提供される膨大なライブラリー群である。Pythonマクロ作成にはその一部であるクラスCreateScriptServiceを使う。

ScripyForgeはLibreOfficeのインストールと一緒にインストールされるがxubuntuを含むubuntuではシステムワイドなパッケージとして別個にインストールする:

sudo apt install python3-scriptfoge

またこのクラスを継承した各種ドキュメント用、インタフェース用のクラスが用意されてる。これらの説明はここにある。

ここではスプレッドシートCalcをPythonマクロで操作するために必要なそのサブクラスを使う。

このサブクラスで使える様々のメソッドの説明はここにある。

例題は「今開いているシートのセルA!に書かれている数値を読み込み、それに書かれていた数値に1を加えた数値を再度セルA1に書く出す」というものである:

# coding: utf-8
from __future__ import unicode_literals
from scriptforge import CreateScriptService
doc = CreateScriptService("Calc")
def increment_cell(args=None):
    value = doc.GetValue("~.A1")
    print(type(value))
    value += 1
    doc.SetValue("~.A1", value)
g_exportedScripts = (increment_cell, )

GetValue、SetValueが使ったメソッドで、引数の中の~はCalcで今開いているシートを指す。最後の行はこのモジュールでマクロとして登録する関数名をタプルで並べる。ここの例ではincrement_cellがそれである。

ScriptForgeなしでもマクロは書けるが、これを使った方がプログラムはすっきりする。

仙台でも梅が開花

今日(3月12日)に散歩中に近所の家の梅の花が一輪咲いているのを発見した:

咲いた梅一輪

もしかしてと思い東北大学片平キャンパスに行ってみた。そこの梅はかなりの花を付けていた:

片平キャンパスの梅

xubuntuのPython仮想環境でLibreOfficeを使う

LibreOfficeのPythonマクロ環境は前回に述べた。ここではこの環境で便利なsite-packegeを使うことについてのべる。

windowと異なり、linuxではPythonマクロのために特別なPythonインタプリタが用意されてるわけではない。LinuxではLibreOfficeを起動した環境下にあるPythonを使う。従ってそのPythonにインストールされているsite-packegeがそのまま使える。Pythonプログラミングの作法として仮想環境を使うことを以前述べたが、Pythonマクロ環境もこの仮想環境から起動したPythonを使うことが合理的である。

LibreOfficeの起動は仮想環境のターミナルエミュレータから

soffice -n

を入力する。これで新規のdocumentでLibreOfficeが立ち上がる。様々なフラグは

soffice --help

で見れる。

このLibreOfficeのマクロ作成ではプログラミングには仮想Pythonでインストール済のsite-packageが利用できる。

ここまでのシナリオでいけるかなとおもったらPython仮想環境から立ち上げたLibreOfficeではマクロのための統合環境APSOが起動でエラーになる。