「巨乳巫女痴漢電車」製作日記その8

更新が遅れて申し訳ございません。現在体調が悪くて寝てました。頭痛薬飲んで少し良くなったのでアニメーションを作成中です。

アニメーション「後背位」を作成中です

私は今後一切、他の方が書かれた絵や作品に対し文句も愚痴も言わないことにします(いや特段、誰にも言ってはいないのですけどもw)…こんなに絵を書くのが難しくて、しんどい作業だと思いませんでした。もっと股間フル勃起な感じで作業出来ると思ってました…

安易な更新予告はするものではない

  1. 俺「明日○○更新します」
  2. 何らかの理由で更新出来ない
  3. 俺「鬱だ…」← 負の感情
  4. せっかく見に来てくれている方「更新してね~じゃん詐欺師め」← 負の感情

この様に誰も得しないなあと思ったからです。言えば良いって物でも無いのですね。学習しましたw

画像に透かしと文字列を自動で入れるプログラムを作りました

以前にも記事にしたのですが誰にも見られていないので、もう一度周知させて下さい。
動作させるにはPythonの最新バージョン(3.6以上)のインストールが必要です。試してませんが32bitでも動くと思います。

外部ライブラリのインストール

Pythonインストール後、コマンドプロンプト上で以下のコマンドを実行して下さい。


pip install pillow

インストールが完了したら、以下のコマンドを入力してpillowが正しくインストールされていることを確認して下さい。


pip freeze
>
Pillow==4.2.1

ここまでで下準備は終了です。以下のコードを任意のフォルダ上にadd_sukashi.pyとか適当に名前つけて保存して下さい。


from PIL import Image, ImageFont, ImageDraw
import os, sys
# 変換元フォルダ
sources_dir = "sources"
# 変換先フォルダ
dest_dir = "dest"
# 透かし文字
text = "www.kiwi-bird.xyz"
# 文字数
text_length = len(text)
# 文字色
text_color = "gray"
# 使用するフォントファイル
fonts = "arial.ttf"
# 文字サイズ
font_size = 48
# 透かしの色と明度
img_color = (0, 0, 0, 160)
# 検索する画像の拡張子
ext_lists = ("jpg", "jpeg", "png", "gif")
def text_center(width=0):
if width:
return width / 4
else:
return 0
if not os.path.exists(sources_dir):
os.mkdir(sources_dir)
input(f"{sources_dir}フォルダを作成しました。この中に画像を放り込んでから再度起動して下さい。")
sys.exit(0)
elif not os.listdir(sources_dir):
input(f"{sources_dir}フォルダ内にファイルが存在しません。この中に画像を放り込んでから再度起動して下さい。")
sys.exit(0)
if not os.path.exists(dest_dir):
os.mkdir(dest_dir)
for file in os.listdir(sources_dir):
root, ext = os.path.splitext(file)
ext = ext.lower()
if ext[1:] in ext_lists:
img = Image.open(os.path.join(sources_dir, file)).convert("RGBA")
width, height = img.size
# 文字の座標("横(px)", "縦(px)")
text_position = (text_center(width=width), height / 2)
img_object = Image.new("RGBA", img.size, color=img_color)
draw = ImageDraw.Draw(img_object)
arial_font = ImageFont.truetype(fonts, font_size)
draw.text(xy=text_position, text=text, fill=text_color, font=arial_font)
output = Image.alpha_composite(img, img_object)
output.save(os.path.join(dest_dir, root) + ".png")
else:
print(f"{file}は画像ではありません。パスします。")

出来ること

  • フォルダ内(デフォルトではsourcesフォルダ)の全ての画像に自動で透かしと任意の文字列を入れます。
  • どんな画像サイズでもそれなりに中央から文字が始まるようにしています。
  • 画像サイズがあまりにも小さいとおかしくなるので、任意で調節して下さい。
  • 画面全体を半透明の黒で塗りつぶしています
  • 特にリサイズや画像の圧縮はしていませんが、どんな画像(jpg, jpeg, png, gif)でも対応しています。

注意すべきことや仕様について

  • 現状日本語フォントを使っていないので、使用出来る文字列は半角英数字に限ります。全角を入れると文字化けすると思います(適当)
    • 要望があれば日本語に対応するかもしれません
  • sourcesフォルダ内の全ての画像ファイルを認識してdestフォルダに元のファイル名.pngとして出力します。
  • gifのアニメーションは保持されません。
  • 元画像に変更を加えることはありません。
  • 動作には最新版のPython3が必要です。
  • 本プログラムの利用、改変は自由ですが、当方、本プログラムを実行して発生したあらゆる問題について責任を持ちません。

本プログラムは以下の本を参考に作成されました。このようにPythonは雑務をこなしてくれる庶民の味方です。

    コメントを残す

    メールアドレスが公開されることはありません。