概要
以前、記事をツイートしたら、画像に名前を埋め込めば直接パワポに張り付けられて便利だというアドバイスをもらったので、実装してみました。
私も作りました。同じフォルダーに入っているTiffをまとめてjpgに変換して、同時にファイル名を写真に埋め込むマクロです。パワポ貼り付けように写真に埋め込んでます
— 大きな木 (@bigtree2008) 2020年3月6日
やったこと
以下に新しいコードを書きます。
参考にしたのはこちら
https://imagej.nih.gov/ij/macros/examples/TextOverlay.txt
// ----- 200312 tiff to jpeg (for fluorescent photos).ijm ----- //フォルダのpathを取得 folderdirectory = getDirectory("Choose a Directory"); //ファイル名を参照元ディレクトリから配列で取得 filelist = getFileList(folderdirectory); //繰り返し処理 for (i=0; i<filelist.length / 2; i++) { //ファイル名の指定 filenameBF = filelist[i * 2]; filenameFT = filelist[i * 2 + 1]; filedirectoryBF = folderdirectory + "\\" + filenameBF; filedirectoryFT = folderdirectory + "\\" + filenameFT; //まずBF作業 //画像を開く open(filedirectoryBF, 1); //画像を12-bitに設定 setMinAndMax(0, 4095); call("ij.ImagePlus.setDefault16bitRange", 12); run("Apply LUT"); //画像名textの書き込み setFont("Times New Roman", 100, "bold"); makeText(File.getNameWithoutExtension(filenameBF), 10, 20); run("Add Selection...", "stroke=black fill=none new"); //保存 saveAs("jpeg", folderdirectory + File.getNameWithoutExtension(filenameBF) + ".jpeg"); close(); //次にFT作業 //画像を開く open(filedirectoryFT, 1); //画像を12-bitに設定、輝度を下限500に設定 setMinAndMax(500, 4095); call("ij.ImagePlus.setDefault16bitRange", 12); run("Apply LUT"); //蛍光色(疑似カラー)をつける run("Green"); //画像名のtextの書き込み setFont("Times New Roman", 100, "bold"); makeText(File.getNameWithoutExtension(filenameFT), 10, 20); run("Add Selection...", "stroke=white fill=none new"); //保存 saveAs("jpeg", folderdirectory + File.getNameWithoutExtension(filenameFT) + ".jpeg"); close(); //最後にMerge作業 //それぞれの画像を開き、12-bitに設定、輝度を下限500に設定 open(filedirectoryBF, 1); setMinAndMax(0, 4095); call("ij.ImagePlus.setDefault16bitRange", 12); run("Apply LUT"); open(filedirectoryFT, 1); setMinAndMax(500, 4095); call("ij.ImagePlus.setDefault16bitRange", 12); run("Apply LUT"); //Mergeする run("Merge Channels...", "c2=[" + filenameFT + "] c4=[" + filenameBF + "] create"); //画像名のtextの書き込み setFont("Times New Roman", 100, "bold"); makeText(File.getNameWithoutExtension(filenameFT) + " Merge", 10, 20); run("Add Selection...", "stroke=black fill=none new"); //保存 saveAs("jpeg", folderdirectory + File.getNameWithoutExtension(filenameFT) + " Merge.jpeg"); close(); }
大きな木さん、ありがとうございました。