力任せのダンス 耳に弾けるボイス
AFTERWORDS. [2678.04.xx.] [THIS PAGE.]
[2678.03.xx.] [SHORTCUT.]
SILENCE. / FORCEWORD. / AFTERWORDS. latest : list / MAIL. [OTHERS.]


[2678.04.01.日.]
[2678.04.01.日.] / バンダイナムコゲームス「スーパーロボット大戦X」
バンダイナムコゲームススーパーロボット大戦X
 まあ前作も解いたし、それからVitaなんにも活躍してないし(苦笑)、ワタルのことはちょっと気になるし、とか。
2018/04/01 19:26:36
[2678.04.02.月.]
[2678.04.02.月.] / 艦これRPGのこと。 / アナログゲームのこと。 / バンダイナムコゲームス「スーパーロボット大戦X」
艦これRPGのこと。
 今頃こんなの一生懸命掘り返してどうすんのって話ではあるんだが(笑)。

 缶がいっぱい欲しい的なことを前に書いたんだけど、それよりも入手難度が全然低く、かつ高性能な装備アビリティとして「61cm三連装(酸素)魚雷」というのが発見された。
 いわゆる缶(「改良型艦本式タービン」)の効果は回避1だけ。
 対して「61cm三連装(酸素)魚雷」は雷撃2・装甲1・回避1。
 ‥‥‥どんな高級な缶を持ってきてもそれ単独で回避2が付くことはない(代わりに高出力が付いたり高性能が付いたりするのが付加価値部分)と考えると、装備の主眼である回避値向上に関する限りにおいて、あらゆる缶は61cm三連装(酸素)魚雷と同程度の効果しかない。のであれば、装備しただけ装甲も上がる61cm三連装(酸素)魚雷をガン積みした方が、自身の生存に寄与するところは絶対に大きい。

 そして61cm三連装(酸素)魚雷、火力2&雷撃2って要するに「どう使っても2D6ダメージ」なのであり、連撃可能な砲戦フェイズはまだしも、雷撃フェイズだと3つ装備してるからって纏めて6D6にはならない(装甲値13以上の敵艦相手に2D6の雷撃を個別に撃っても無意味である)ことを考えると攻撃力としては極めて心許なく、だから普通であれば同じ魚雷でも四連装なり五連装なりを選択するべきところなのだが、とはいえウチの清霜は直接損傷特化であり、別にその魚雷は攻撃に使わないので、三連装で全然OKということになる(笑)。
 まあ、同一航行序列の敵を狩り尽くしちゃった後、みたいなシチュエーションで短距離攻撃に使うことはあるかも知れないが、それは清霜にとって本来の用途ではないのだし(w。

 あと以前(というか現状最後のセッションの終了後)、レベルアップによって響がヴェールヌイになる場合の改装手順で議論が紛糾したことがあるんだけど。
 最近になって急に、これが正解の手順なんじゃないか、と思われる手順に気づいた。つまり、例えば響改がレベル5でヴェールヌイになるケースの処理は恐らくこう。
  1. 「レベル1のヴェールヌイ」のパラメータ一式を用意する。
  2. 用意した「レベル1のヴェールヌイ」を、その場でレベル5まで成長させる。
    具体的には以下を適用する:
    1. 戦術アビリティが2個になる
    2. 【行動力】の最大値が2点上昇(※無視)
    3. 【火力】か【装甲力】が永続的に1点上昇
    4. 【行動力】の最大値が2点上昇(※無視)
  3. 指定に従って個性とギャップを設定する。
  4. レベル5になった響の装備アビリティ・戦術アビリティ・固有アビリティと、ヴェールヌイの初期装備であるそれらの中から、必要なものを取捨選択してヴェールヌイに積む。
  5. レベル5のヴェールヌイができあがる。
 その上でさらに悩んでるのが行動力の最大値の問題。
 レベル1のヴェールヌイを5まで成長させる手順において、レベル3と5に「【行動力】の最大値が2点上昇」があるんだけど、今のところ、これは無視するんじゃないかと考えている。何故ならこのヴェールヌイは、レベル3の響を響改に改装する際、またレベル5の響改をヴェールヌイに改装する際に、それぞれのタイミングで「行動力の最大値を2点減らす」コストを支払った結果として、現在そこにいる「レベル5のヴェールヌイ」になったヴェールヌイだからで、そうした経緯と帳尻を合わせるためには無視する必要があるから。

 ただそうすると、レベル5の響改をヴェールヌイに改装した艦娘と、レベル1のヴェールヌイでいきなりプレイを始めた艦娘を比べた場合、ヴェールヌイ始まりの艦娘には響の固有アビリティを手に入れる方法が完全にない(名前は違っても響とヴェールヌイは同じ人であり、同じ人を2人一緒に出してはいけないルールに抵触するので、ヴェールヌイがいるのに響を出すのはNPCでも×)のと引き換えに、行動力の上限に4点差がつくことになる(ヴェールヌイの改とか改二とかいうものはないので「行動力の最大値を2点減らす」コストを支払う機会がない)。
 だから帳尻は合わせなくていいのです、って話だとすると、今度は「そもそも改二になるために2点減らしたのは何のためなの?」っていう疑問に行き当たる(^^;;;。「艦種変更前の固有アビリティ」と「行動力4点」はどっちが徳なのか、って話になっちゃうんだよねえ‥‥‥。
2018/04/02 14:22:05
アナログゲームのこと。
 こないだ遊んで楽しかったので以下を仕入れてみた。
 近いうちにどこかで試し斬りをしておきたいというか、ルール憶えてるうちに説明できるようになっておきたい‥‥‥。
2018/04/02 16:54:16
バンダイナムコゲームススーパーロボット大戦X
 退勤中にも進捗はあるかもだけど、今のところ「第13話 ナディアの家出」が始まったくらいのところ。

 1周目なのでというか、資金もTacPもまったくない上、何をどこまで育てるべきなのか、とかに全然目星がついてないせいもあり、取り敢えず主役機だけを半端に改造してる状態に過ぎないが(うろ憶えだが、EN・装甲・運動性・武器が10段階、HP・照準値が5段階、とかその辺)、でもまあ一応、敵の密集する位置に主役機を置いておけば大体何とかなる感じにはなっている。
 他のユニットには概ね何の強化もしていない状態で、戦艦の主砲みたいなのを除くと「2回攻撃すれば通常の雑魚は倒せる」くらいのバランスかなあ。
 今のところSRの取りっぱぐれはないものの、まあ、その「第13話 ナディアの家出」でSRが取れるかどうかは怪しそう(苦笑)。実をいうと既に「第8話 異境の戦い」は1回やり直してるし、「第10話 めぐり合う螺旋」も、やり直しまではしなかったとはいえ、結構なピンチ具合だった。

 あとこう、寸前までUX遊んでたからそう思うのかも知れないけど、Vitaのスパロボってフィールドがやたら広い印象がある。自軍と敵軍がフィールドの両端に現れてから実際に接敵するまでの時間が概して1ターンくらい長い感じ。で、あっちの端から出てきた敵を3ターンで全部潰せって言われてそっちへ移動してる時に、別のそっちの隅に現れた敵軍が本当はステージクリア条件なのでしたー、とかをやられると大変困る‥‥‥。
2018/04/02 17:26:44
[2678.04.03.火.]
[2678.04.03.火.] / バンダイナムコゲームス「スーパーロボット大戦X」 / 偽偽DTPオペレータ部活動。 / 追試。
バンダイナムコゲームススーパーロボット大戦X
 「第23話 龍王咆哮」のSRポイントを獲得したというか、死んだ龍神丸が龍王丸になって戻ってきたところまで。
 一応ここまでは全マップでSR取得済みだけど、1周目ならではの資金&TacPなしっぷりが順当に苦しい。

 主役機10段階改造後、確か、ちょうど現れたデスサイズHC→サイバスター→ビルバイン→ダイターン3の順に5段階まで改造。現在はヴィルキス改造中。
 スパロボのスーパーロボット系って一部(例えば真ゲッターとか)を除いてほぼまったく使わないことが多いんだけど、今回は例外的にダイターン3を多用中。つーか、Vitaのスパロボは改造してても火力が不足しがちで、リアル系に偏ってると散々手数を使わされた挙げ句に思ったほど敵が減ってなくて苦しい、みたいな局面が多々ある。‥‥‥もしかして、全体的な傾向としてリアル系よりもスーパー系に向いてるのかも知れない。モビルスーツとかパラメイルとかよりもグレンラガンだのマジンガーZだのを育てた方がいいのだろうか。
 あと、手持ちユニットの総数に対して出撃枠が狭すぎるのも相変わらずな感じ。クォータービューであることの弊害含め、ここに書いたような諸問題がひとつ残らず継承されてる点は非常にアレ。

 これは今回からだけど、龍神丸の呼び出し、龍王丸への変身、マイトガイン合体あたりのアニメーションとして、昔テレビで放映してた番組そのものから持ってきた本物のバンクを使ってるのは、それはスパロボ的には反則なんじゃねえの?(笑)
 それをやらずに「再現してるように見える」ように作り込むところにスパロボの凄味があった筈じゃないのかと思うんだけど、ほーら本物のリソース持ってきたから本物っぽいでしょー、とか言われてもなあ。
2018/04/03 10:07:53
偽偽DTPオペレータ部活動。
 「ダーシの代わりに罫線」話の続きの続き。
luci2
11:31:52
 : 手元のCS6の例だけど、「全角スペースを行末吸収」に纏わるアレについて。「あ」10個+全角空白10個+改行+「い」10個+全角空白10個+改行‥‥‥のテキストを全選択。フレームの高さは左画像の下端を見ればわかると思う。左の画像は「全角スペースを行末吸収」がfalse、右がtrue。 pic.twitter.com/m5P82jf6vY
luci2
11:35:40
 : 右の画像にあるように、『「全角スペースを行末吸収」は、行末が全角スペースである限り無限に吸収し続ける』ことがわかる。1個2個は吸収するものの、それ以上に連続してる場合はどこかで諦めるのかと思ったんだけど、取り敢えず10個くらいなら平気で吸収し、その分フレームの下端を踏み抜いてしまう。
luci2
11:38:36
 : で、これだと何が困るかというと、11字分以上の長さを持つ連続ダーシを「全角空白に打ち消し線」で実現する方法を考えたものの、段落スタイルに「全角スペースを行末吸収」が設定されている場合、その全角空白が途中で折れてくれない。最初コレ見た時は何が起きてるのかよくわからなかった(^^;;;。
luci2
11:41:11
 : この方向性の次善策として、通常は段落スタイルの「全角スペースを行末吸収」がtrueだけど、11字分以上の長さを持つ連続ダーシを含む行だけはfalseにする、的な機能を自動で実現するには「全角スペースを行末吸収」が実際どのプロパティなのかを知る必要があって、それを調べていた。
luci2
11:41:57
 : んでそれが判明したのでここにメモっているところ。英語表記のままなので検索しても引っかからなかったが、「全角スペースを行末吸収」のプロパティは treatIdeographicSpaceAsSpace だった。bool値でtrueだと有効。
luci2
11:44:26
 : 調べるのに使ったのは「InDesign DOM CS5-CC2015」のDL版。いつもお世話になっております。 indesign.cs5.xyz/dom/about.html
luci2
11:47:42
 : 取り敢えずDL版のhtmlに対して「全角スペースを行末吸収」でgrepして空振り→「吸収」grepで空振り→「日本語文字組版」の設定画面をよく見る→近所に「連数字処理」というのがある→「連数字処理」grepで空振り→「連数字」でParagraphStyle.htmlにヒットが出る。
luci2
11:49:54
 : が、日本語で「全角スペースを行末吸収」とか「吸収」とかはどこにも書かれてないことを既に掴んでる→もしかして説明文が全部英語になってるトコにあるんじゃないか、と当たりをつける→ページ内を「space」で検索して、ヒットした箇所を重点的に読み込む→発見、みたいなプロセスで見つけた。
luci2
11:51:09
 : こんな感じで、「InDesign DOM CS5-CC2015」はDL版を手元に置いて、grepで引っ掛けて絞り込んでいく辞書のような使い方をしています、という話もついでに。
luci2
13:35:20
 : さっきの画像だけど、全角空白の途中に行末が来ないと挙動がイマイチよくわかんないかもなので、画像を作り直してみた。ついでに全角空白部分には文字スタイルで打ち消し線を引いてある。この左が自然改行で「全角空白が途中で折れてくれ」てる状態、右が無限に底を踏み抜き続けてる状態。 pic.twitter.com/8ZNMfuskjl
luci2
13:37:05
 : この、踏み抜いちゃってる方のビジュアルのアタマ悪さ加減が圧倒的なんだよね。初めてコレを見てから、一体何が起きてるのかを何となくでも察するまでの間、文字通り開いた口が塞がらなかった‥‥‥。
luci2
13:42:46
 : 長体・平体で連続ダーシを実現する場合の問題点に、「それを途中で折ることは絶対できないので、行末を跨ぐ場合に見た目が絶対おかしくなる」というのがある。そこは打ち消し線を使う手法の方が柔軟なんだけど(この通り、絶対繋がるし途中で折れる)、行末吸収の設定が文字通りの落とし穴になる。
 というワケで、既存の段落スタイルを元手にして、「全角スペースを行末吸収」以外は一緒の段落スタイルを自動で追加するサンプルスクリプトを書いてみた。
 このサンプルでは「開いてるドキュメントの先頭ページに置かれたテキストフレーム(0番目)の親ストーリーに適用された段落スタイル」を相手にしてるけど、実際には、例えば「11個以上の連続するダーシが書かれた行」を相手にするようなやり方をする筈で、まだそこまでの作り込みはしてない。現時点ではあくまで『「全角スペースを行末吸収」以外は一緒の段落スタイルを自動追加する』だけのもの。
//名前に合致する段落スタイルを(なければ作って)取得
function getParagraphStyle(document, name)
{
	var result = null;
	for(var counter = 0; counter < document.allParagraphStyles.length; counter++)
	{
		if(document.allParagraphStyles[counter].name === name)
		{
			result = document.allParagraphStyles[counter];
			break;
		}
	}
	if(result === null)
	{
		result = document.paragraphStyles.add();
		result.name = name;
	}
	return result;
}


//適用されている段落スタイルの取得
var document = app.activeDocument;
var story = document.pages[0].textFrames[0].parentStory;
var paragraphStyle = story.appliedParagraphStyle;

//段落スタイルの「全角スペースを行末吸収」がtrue(有効)である場合
if(paragraphStyle.treatIdeographicSpaceAsSpace)
{

	//行末吸収なしの段落スタイルを(なければ作って)取得
	var name = paragraphStyle.name + "(行末吸収なし)";
	var appendParagraphStyle = getParagraphStyle(document, name);
	if(appendParagraphStyle !== null)
	{

		//基準を元の段落スタイルに設定した上で、「全角スペースを行末吸収」の値だけfalseにする
		appendParagraphStyle.basedOn = paragraphStyle;
		appendParagraphStyle.treatIdeographicSpaceAsSpace = false;

		//取得した段落スタイルを適用
		story.appliedParagraphStyle = appendParagraphStyle;
	}
}
 連続10個以下のダーシについては長体・平体で処理する方法も使えるんだけど、もしかしたら最初から全部「全角空白に打ち消し線」で処理しとくべきなのではないだろうか、と今は思い始めている。理由は上記ツイートの中にも書いた通りで、長体・平体で処理した場合は全体で1文字の扱いになるため「それを途中で折ることは絶対できないので、行末を跨ぐ場合に見た目が絶対おかしくなる」という、この手法に特有の新たな問題が発生するから。

 ただそうすると、連続ダーシの行だけ段落スタイル設定を変えた結果、他の行では行末に吸収されている全角空白がそこだけ行頭に出るケースがあり得る。‥‥‥いやもう、長体・平体の手法に関しても「すべての連続ダーシが段末に絡まいのであれば別に問題はない」ワケであって、ここから先はTPOによる、としか言えないところはどうしてもある(苦笑)。
 考えれば考えるほどドツボに嵌まってく感覚だよなあ‥‥‥。
2018/04/03 14:02:05
追試。
luci2
15:10:52
 : 本当に、行末が全角スペースである限り「無限に」吸収し続けるんだろうか? という疑問が生じたので実験。結論からいうと、全角空白以外の文字も含め、ちょうど1行に収まる数までは吸収し、それより長い場合は折る、ということがわかった。 pic.twitter.com/3kWmjmZu8E
 それぞれの1行目(先頭が「え」の行)と2行目をInDesignから直接コピーしてエディタに貼って並べた結果が下記だが、目に見えない全角空白を可視化のため■に置換し、また文字列長をわかりやすくするため、5文字ごとに■を□に置換している。
高さ:1/4段
  1. え■■■□■■■■□
  2. ■■■■□■■■■□
高さ:2/4段
  1. え■■■□■■■■□■■■■□■■■■□■
  2. ■■■■□■■■■□■■■■□■■■■□■
高さ:3/4段
  1. え■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■
  2. ■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■
高さ:4/4段
  1. え■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■
  2. ■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■■■□■■
 この通り、フレーム内に収まっている「え」+行末吸収で吸収された全角空白の文字数は、その隣の行に書かれた全角空白の文字数と等しかった。
 というワケで、『行末が全角スペースである限り「無限に」吸収し続ける』は流石に言い過ぎで、では吸収量の上限はどのくらいなのかというと、どうも「1行の文字列として本来書き得る文字数」に等しい、という動きになっていそう。
2018/04/03 15:12:03
[2678.04.04.水.]
[2678.04.04.水.] / バンダイナムコゲームス「スーパーロボット大戦X」 / Excelのこと。
バンダイナムコゲームススーパーロボット大戦X
 「第32話 過去からの亡霊」攻略中。
 まだここまでは全マップでSR取得済みだけど流石にそろそろ厳しいと思う。特にこのマップ、SR条件が「5ターン以内に勝利条件を満たす(ヒステリカ含むラグナメイル全部とガーゴイルの空中戦艦を撃墜)」とかだけどそれ自体が難しい上、多分またどっかで増援が出てきて話がめんどくさくなる奴ではないのかコレ‥‥‥。

 (ゼルガード(10段階)→デスサイズHC→サイバスター→ビルバイン→ダイターン3→)ヴィルキス→グレンラガン→マジンガーZ→クロスボーンガンダムX1改・改→グレートマジンガー→龍神丸→アーキバス バネッサ・カスタム、くらいが5段階まで改造済みだったような。
 一切改造してないけどレギュラーなのがダンバイン、ハウザー エルシャ・カスタムで、場合によっては出ないけど一応レギュラー枠なのがレイザー、焔龍號、紅蓮聖天八極式、ランスロット・アルビオン、νガンダム、蜃気楼あたり。既にまったく出撃枠に収まってない(苦笑)。
 で、現在は隊を分割しているのでデスサイズHCとクロスボーンガンダムが不在、ハウザー エルシャ・カスタムのエルシャが例によってエンブリヲに寝取られる期に入ったので不在(敵にいる)。なんでエルシャは使ってるかっていえば修理装置を持ってるからなので、このマップは修理持ちが普段よりひとり少ない、というか実質タスクのアーキバス バネッサ・カスタムのみなのでは。困る。
 改造レベルが倍違うのでゼルガード(主役機)だけ桁外れに強いんだが、だから単独で先行させてみたら、まあ死ぬ心配とかは別に必要ないものの、ENがあっさり枯渇したので何か対策を考える必要がありそう。今回は修理・補給装置を後から付加できたりはしないんだろうか。
2018/04/04 10:17:05
Excelのこと。
 問題編。
assault__
10:38:02
 : エクセルの詳しい人で分かる人に質問なんですが……。 =IF(D2="","",CONCATENATE(A2,B2,C2)) この処理で空白になった時、見た目は空白なんですが何かしらセルに入ってる扱いなんですよね……。 なので、ctrl+矢印キーで飛ばしていくと、空白行で止まってくれず、最後の行まで飛んでしまうという。
assault__
10:39:45
 : まー、なにをやってるかというと、D列にシーン名が入っていて、それが空白ではない場合、他のセルの文字列と合せてファイル名を作る処理をしてるのです。 一部共通のシーン名があるので、テンプレからキャラごとに不要なシーンを削っているわけで。
assault__
10:41:32
 : セルを直接参照しているなら、=D2&""とすればいいんですが、関数を使用している場合は&""は機能しないんですよね……。 そもそも、空白だって言ってるのに、何かセルに入ってる扱いされてるのが許せぬ。 ちなみに、関数でファイル名を作成した後、値を貼り付けているので、空白セルの中身は空です。
assault__
10:42:28
 : 関数の結果の空白なら、セルには数式が入ってるんで飛ぶのは分かるんですが、 値を張り付けにして、セルには何も入っていないのに、空白扱いされてないっていうね。 一体何の値が入っているのやら。
 即答されるスマートな解答編。
 示された対処法で実際に問題が解決されてるとこまで含めて満点。
k_kusakari
10:54:15
 : @assault__ "長さ0の文字列"が入ってます。 ""はNULLでも空白でもなく、長さ0の文字列なんすよ。値貼り付けした後に、その列を全選択して、[データ]-[データツール]-[区切り位置]を実行して、何もせずに完了させて下さい。それで整理されて空白になります。
assault__
10:58:04
 : @k_kusakari 長さ0の文字列……! うお、ほんとだ……なるほどありがとうございます! というか、こんなところに区切り位置のコマンドあったんですね(ぉぃ いつもテキストファイルをエクセルに移す時、面倒だったんですがこれで楽に(ぉ
k_kusakari
10:59:22
 : @assault__ お な じ こ と や っ て お な じ く ろ う し た経験者ですから!w
luci2
11:33:14
 : 知らない僕が問題の姿を手探りしてる間に有識者からは対応策まで出ているという‥‥‥これが経験値‥‥‥これが身についた知識‥‥‥
 おりくらチャレンジ#01。
 出題意図を読み違えている時点で×。『formulaが残らないように「値をペースト」で別のワークシートに貼ってる』のは前提条件に書いてあることなので、そこで改めて「formulaが入ってる」とか言っても意味ないことには反応する前に気づけ自分。
luci2
10:49:03
 : @assault__ ええと、『「=IF(D2="","",CONCATENATE(A2,B2,C2))」が入ってる』のではないでしょうか。D2の状態によってセルのvalue(値)は空のことがあるかも知れませんが、いずれであれセルのformula(数式)は入ってる筈なので、それが「中身」と解釈されてるのでは。
assault__
10:56:04
 : @luci2 値の貼り付けをしないと、セルの中身は確かにその関数になるんですが、値の貼り付けをした時点で出力結果がセルに表示されるんです。 なので、セルを選ぶとカーソルは一番左で点滅していて、見かけ上何も入ってないっていう。
 おりくらチャレンジ#02。
 「そのセルには何が入っているのか?」までは到達したものの、対策が提案できてないので△。
luci2
11:17:53
 : @assault__ 何が入ってるのかはわかりましたが説明が難しいです。ええと、""(空文字列)は「""という値」が入ってる状態で、それすら入ってない状態とは区別されてます。具体的にはセルのValue2という値が、「""という値」が入ってると""で、それすら入ってないのはEmptyになっています。
luci2
11:19:15
 : @assault__ 「""という値」を書き込んだセルでCtrl+矢印は止まりますが、そのセルのValue2にVBAからEmptyを代入したら止まらなくなりました。恐らくこの差です。
assault__
11:28:13
 : @luci2 そのようですね……。 文字列0の値が入っていると言う認識らしいので、見た目は空白だが空白ではない、というオチだったようです。 そりゃ視認じゃ区別つきませんよね……。 一応解決策も教えていただいたのでなんとかなりました。 この辺、もうちょっと優しくしてほしいところです^^;
 というワケで、『「""が書き込まれたセル」と「""すら書いてないセル」では格納されてる値が違う』という、順当なような意外なような結末に。
 それを整理してEmptyにする方法があることまですらっと1ツイートで案内できるのはすげえなあ。流石です‥‥‥。
assault__
10:59:00
 : おかげさまで解決しました。 長さ0の文字列とか、さすがはエクセル。 人間……じゃなかった、俺のの理解の外を走ってやがるッ! twitter.com/assault__/stat…
2018/04/04 12:01:37
[2678.04.05.木.]
[2678.04.05.木.] / 偽偽DTPオペレータ部活動。 / 自己解決。 / バンダイナムコゲームス「スーパーロボット大戦X」
偽偽DTPオペレータ部活動。
luci2
14:55:59
 : 連続ダーシの話、回り回って「ダッシュを全部罫線に置換する」のがお手軽で手堅いような気がしてきたなあ‥‥‥(苦笑)。無論それなりの事前準備とかは要るんだけど。
luci2
15:02:06
 : ダッシュを表現する文字としてダッシュ自体があるにもかかわらず、意味も用途もまったく違う別の文字に置き換えてしまうことの意味上の難点はともかく、実務上のデメリットってどういうのが考えられるんだろう。特にPDFを出力して印刷所に入稿する場合で。罫線でも繋がらない場合とかあるのかなあ?
luci2
15:05:15
 : あるいは、罫線をPDFに書いて入稿すると別の何かに化けてしまう的な問題とかがあるのだろうか。その辺の詳しいことがちょっと知りたい。
 連続ダーシの本当に正しい誤魔化し方についてまだ考え中。
luci2
18:46:19
 : 取り敢えず「どのフォントだとどういう感じになるのか」はお手軽に調べられる必要があるので、フォントリストを与えるとこういう.inddファイルを出力する仕組みを作ってみた。 pic.twitter.com/N8Pgvtrmso
luci2
18:50:32
 : なお、縦罫線は3個のU+2502、横罫線は3個のU+2500、連続ダーシは3個のU+2015、平体ダーシは平体300%を適用した1個のU+2015、打ち消し線は3個の全角空白(U+3000)にスタイルで打ち消し線を適用。
 そういう考えごとのために昨日ちょっとした仕掛けを作ってみたんだけど(ドキュメントの見た目は既に少し変わっちゃってるが、まあ意味合いはまだ全部一緒)、現行のスクリプトをコレの中に収めた状態で実行して、かつ、与えたフォントリストの中に現在インストールされてない名前が含まれている場合、そのフォントを適用しようとする処理のどこかで編集中ページのオブジェクトが壊れて、意図しない出力結果になることが判明した。

 んでそれは、「その名前のフォントが扱えるかどうか」を調べる部分をtry〜catch構文で書いてることが問題らしい。
 例えば『「story.appliedFont(フォント名)」が例外を起こさないかどうか』とか『「app.fonts.item(フォント名).fullName」を変数として扱えるかどうか』とかいう手法のことなんだけど、少なくとも現段階では、これを避けるには「フォント一覧とapp.fontsを予め突き合わせておく」くらいしか思いつく手段がなく、大抵の環境においてapp.fontsのループは超・長いのでやりたくない(苦笑)。

 try〜catch構文を使わず、fontsの配列を全部ループして名前の一致を確認する方法でもなく、「その名前のフォントが扱えるかどうか」をInDesign+ExtendScriptで知る方法って、本当に何もないのかなあ‥‥‥。
2018/04/05 15:46:18
自己解決。
 困った時は基本に立ち返るということで、app.fonts.item(フォント名)構文の「フォント名」部分に書かれた文字列が実在する名前・しない場合で、app.fonts.item(フォント名)オブジェクトのプロパティにどういう違いが現れるのかを観察してみた。
 エディタとして気に食わないので普段使ってないんだけど、こういう時にはExtendScriptToolKit便利。
luci2
16:19:12
 : try〜catch構文を使わず、fontsの配列を全部ループして名前の一致を確認する方法でもなく、「その名前のフォントが扱えるかどうか」をInDesign+ExtendScriptで知る方法って、本当に何もないのかなあ‥‥‥
luci2
16:57:05
 : わかったっぽい。app.fonts.item(フォント名).indexっていう値が多分fonts配列内の通番だと思うんだけど、フォント名にデタラメ書いたら値が-1になった。ということは、「app.fonts.item(フォント名).indexが0より小さいかどうか」とかをif文で聞けばいいのでは?
 これを応用して、先述のスクリプトからtry〜catch構文を排除しつつ異常系を仕込むこともできた。
 多分これで大丈夫なんじゃないかなあと思うけど、この仕組みは公開した方がいいのかなあ‥‥‥?(^^;;;
2018/04/05 16:54:40
バンダイナムコゲームススーパーロボット大戦X
 「第41話 天を貫く螺旋」が終わったところ。
 どうのこうの言いながら、今のところはまだ全マップでSR取得済み。
10段階
  1. ゼルガード
  2. サイバスター
5段階
  1. ガンダムデスサイズヘル
  2. ビルバイン
    • 引継:サーバイン
  3. ダイターン3
  4. ヴィルキス
  5. グレンラガン
  6. マジンガーZ
    • 引継:マジンカイザー
  7. クロスボーンガンダムX1改・改
    • 引継:クロスボーンガンダムX1 フルクロス
  8. グレートマジンガー
    • 引継:マジンエンペラー
  9. 龍神丸
    • 引継:龍王丸
  10. アーキバス バネッサ・カスタム
  11. N-ノーチラス号
  12. νガンダム
    • 引継:Hi-νガンダム
  13. レイザー
  14. ハウザー エルシャ・カスタム
  15. 幻神丸
    • 引継:幻王丸
 うろ憶えだけど改造状況はこんな感じ。
 元々ゼルガードが10段階まで改造してあることによって相当楽をしてきた筈のところへ、サイバスターも10段階まで引き上げたら一挙に攻略が楽になった。1ターン目から使える敵味方識別付きの移動後マップ攻撃とか凄すぎる‥‥‥。

 別に育てなくてもよかったかな、と思ってるのがデスサイズHCとνガンダムと幻神丸。
 全体的に与ダメが低いのでMSとかは活躍しづらい。パラメイルは足が速いのが美点で、ヴィルキスは主役機ならではの武装の充実っぷりで前線を支えるユニットとして、アーキバスとハウザーは修理・補給要員としての役割が明確なんだけど、そういう風に確固たるポジションを確立し得たリアル系ユニットが、特にガンダムの中からは、今回はまだ見出されていない。
 使わないっていう選択肢もないけど使いづらいと思ってるのがスーパー系全般。
 特に10段階組が足の速さに手を加えてることもあって、こいつらとその他とスーパー系の3段階くらいで進行速度が全然違い、いちばん遅いグループが接敵ポイントに着いた頃には敵が粗方いなくなってる、みたいなことが割とよくある。龍神丸が遅いんだよなあ。
 幻神丸は「かく乱」が使える人を入れておこうっていう意図で入ってるんだけど、結局ここまでその「かく乱」を一度も使ってない(苦笑)。頑張って育ててる意味がまったくない‥‥‥。
 それと今回は戦艦の足の遅さに大変困っている。メガファウナって艦とかもう、足は遅いわ武器は少ないわ移動後に撃てる武器が何もないわ、使い勝手が悪いにも程がある。

 あとなんかトッドが加入してるんだけど別に使う気なし。そうでなくても出撃枠が狭くて困ってるのに、なんでこいつらはあんなに一生懸命トッドを加入させようとしてたのだろう。
 ついでにオーラバトラーといえば、サーバイン入手によってショウがサーバインに乗り換え、故にマーベルがビルバインに乗り換えるのかと思われたが、サーバインを入手したのにわざわざショウがビルバインへ戻ったため、むしろ空き家になったサーバインをマーベルが使うことに。しかもそのタイミングでわざわざ夜戦迷彩まで施されると来ては、流石に「それでもビルバインを捨ててサーバインへ」っていう話にはしづらかった(笑)。
 結果として無改造ダンバインから5段階改造済みのサーバインへスイッチしたことになるので、その意味でもラッキー度は高かった。‥‥‥スイッチするまで無改造のまま第一線で活躍し続けてたっていうのも凄い話だけど。しかもまた狙われる確率が高いんだよなあ。よく生きてたなダンバイン。
2018/04/05 17:17:21
[2678.04.06.金.]
[2678.04.06.金.] / 偽偽DTPオペレータ部活動。
偽偽DTPオペレータ部活動。
 昨日の仕組みを持ち帰ってInDesign CC2018で試してみたんだけど、でも実は、思ったより多くのフォントで適用不能判定が出ることにちょっと首を傾げたのだった。
 処理に渡してるリストの中身っていうのは基本的にfontオブジェクトのnameプロパティに書いてあること(「フォント名・タブ文字・ウェイト」の組み合わせ)なので、自分の中に書いてあることを自分に戻して上手く行かない筈はない‥‥‥と考える方が普通だと思うんだけど、だがしかし、理由はわからんが上手く行かないものがしかも結構あるっぽい、という結論だけを、昨夜の段階では確認するに留まった。
 メジャーなところでいうと、例えばMS明朝とかMSゴシックがP付き含めてこのパターン。メイリオでは問題は起きない。
peprintenpa
12:14:31
 : @luci2 使えるのに-1なのがウチの環境だと結構あったりします…
peprintenpa
12:26:32
 : @luci2 一応font.statusっていうプロパティもあります でもapp.fonts.item(n)の中にstatusがNOT_AVAILABLEなのがたまにあったりして闇が深いです。
 同様のことが他の人から指摘されたりもしていたんだけど、その後もあれこれ弄くり回してる中で、
//その名前をフォント名としてapplyしても怒られないかどうか調べる
function checkFontEnable(name)
{
	var result = false;
	if(0 <= app.fonts.item(name).index)
	{
		result = true;
	}
	else
	{
		var check = name.replace(/^(.+)\t[^\t]*$/, "$1");
		if(0 <= app.fonts.item(check).index)
		{
			result = true;
		}
	}
	return result;
}
 例えば「apply可能かどうか」が知りたいだけなのであれば、突き詰めるとこういう判定でよさそう、という感じのことが見えてきている。
 即ち、
  • 「フォント名・タブ文字・ウェイト」の組み合わせ(font.nameに入ってるデータそのまま)の文字列を作ってapp.fonts.item()に渡し、font.indexの値をチェックする
    • このfont.indexが0以上であるなら、そのままapplyしちゃって大丈夫
    • このfont.indexが-1である場合は、「フォント名・タブ文字・ウェイト」の組み合わせからタブ文字・ウェイトを除いたフォント名だけの部分文字列を作ってapp.fonts.item()に渡し、font.indexの値をチェックする
      • このfont.indexが0以上であるなら、「フォント名・タブ文字・ウェイト」を直接app.fonts.item()に渡した場合のfont.indexが-1であろうとも、applyしちゃって大丈夫
      • このfont.indexが-1であるフォントは本当に存在しない筈なので、applyしようとすると怒られる
 こういう感じ。
 ただしこれは
  • 「フォント名・タブ文字・ウェイト」の組み合わせからタブ文字・ウェイトを除いたフォント名だけの部分文字列を作ってapp.fonts.item()に渡し、font.indexの値をチェックする
    • このfont.indexが-1であるフォントは本当に存在しない筈なので、applyしようとすると怒られる
    • このfont.indexが0以上であるなら、「フォント名・タブ文字・ウェイト」を直接app.fonts.item()に渡した場合のfont.indexが-1であろうとも、applyしちゃって大丈夫
 こういうかたちで合理化しちゃうと逆に救えないフォントっていうのがあったのが嫌らしいところ。
 ウェイト付きなら-1以外が返るけど、ウェイトを省くとむしろ絶対indexが-1になってしまうフォントってのも存在することに注意する。例えば小塚明朝とかがそうっぽい。

 この辺の考え方を盛り込んだ改善版が既にあるので、今日はそれを持ち帰ってCC2018でも動作確認してみる。
2018/04/06 17:04:01
[2678.04.07.土.]
[2678.04.07.土.] / 試し斬り。 / 試し斬り:オインクゲームズ「ナインタイル」(2-4人) / 試し斬り:メビウスゲームズ「ゲシェンク」(3-7人) / 試し斬り:エンスカイ「Stroop Card」(2-10人) / 試し斬り:カラメルカラム「THE 修学旅行の夜」(4-6人) / ルール再確認:カラメルカラム「THE 残業」(3-5人) / 普通にプレイ:ジャンクション「横暴編集長」(3-5人) / 試し斬り:反社会人サークル「この過労死がすごい」(3-5人) / 夕飯。 / 再戦:メビウスゲームズ「ゲシェンク」(3-7人)
試し斬り。
 ちょっと前に遊んで楽しかったゲシェンクとナインタイルを押さえたので試し斬り大会。
 面子はパパさん&スイさん&僕。
2018/04/08 21:39:48
試し斬り:オインクゲームズナインタイル」(2-4人)
 ほんと説明が全然要らなくて誰が誰とやっても楽しいのがすごいなこれ。
 お題のカード自体が正方形で、どの向きで出るかによって出題内容も変わることを考えると実質的に問題の数はカード枚数の4倍あることになり、いつまででも遊んでられるのもすごい。

 あとコレに関しては、まずパパさんが頭角を現し、次いでスイさんが覚醒し、僕に関しては最後までまったくいいところがなかった(笑)。取り敢えず今のところは、あんまり僕が得意なタイプのゲームではないのかも。
2018/04/08 21:42:00
試し斬り:メビウスゲームズゲシェンク」(3-7人)
 思った通り、おもしろかったので後にもう一回やることになるくらい盛り上がった。
 これも説明簡単だし、ちょっと触ってみればすく勘所も掴めるし、場は盛り上がるしで言うことないなあ。
2018/04/08 21:45:49
試し斬り:エンスカイStroop Card」(2-10人)
 大人同士でも全然楽しいなこれ。
 目が慣れてくるとだんだん普通のカルタになってくるのであんまり何度もは続けられないけど、何かと何かの間にすぽっと突っ込むのにはすごい向いてそう。
 ちなみにこれは僕とスイさんが成績よかった。
2018/04/08 22:22:41
試し斬り:カラメルカラムTHE 修学旅行の夜」(4-6人)
 実はまだ回してなかったので。

 これのことを書こうかどうしようかですげえ悩むのが‥‥‥ええと、マニュアル熟読の上、全員手札オープンの状態で1周、さらに普通のプレイも1周やってはみたものの、これはゲームとしてどこをどういう風におもしろがればいいのか、みたいなところが全然伝わってこなかった。「自分の行動」と「勝ち負け」の関係がよくわからず、だから自分が何のために何をしているのかよくわからないまま、枕を投げたり情報を公開したりカミングアウトしたりを作業としてやってるだけ、みたいな感じに。

 後述の「THE 残業」もルールをきっちり読み下した後であればちゃんとおもしろかったりしたワケで、どういうところにおもしろさのポイントがあるのか、みたいな部分を、わかってる人に一度説明してもらえたら見方が変わったりするんだろうか。
2018/04/08 21:49:11
ルール再確認:カラメルカラムTHE 残業」(3-5人)
 前回遊んだ時にルール解釈に関する議論が紛糾したのを受けて、どういう時にはどういうカードを出していいのか、について独自に纏めた資料(zip圧縮のPDF)があるので、他にも迷ってる方がもしいらしたら参照していただければ。
 今回は最初からこれを場に置いてのプレイ。
 案の定、どう言う時には何をしていいのか、勝つためには何をどうしたらいいのか、みたいなことに先に整理をつけて、ゲーム自体の楽しさだけを受け取れるようになった結果、初回プレイの時よりも全然おもしろかったし燃えた。これでいいならまたやってみようって気になる感じ。
2018/04/08 22:03:30
普通にプレイ:ジャンクション横暴編集長」(3-5人)
 そういえばこの面子ではやったことなかったので。
luci2
18:11:29
 : 今日の横暴編集長(本採用会議)。ちょっと上げてあるタイトルが出版決定。 pic.twitter.com/KKvcTtJKir
 いや出せばおもしろいしみんな喜ぶのはわかりきってるんだけど、カードというか短冊が切りにくいし扱いにくいことには、正直、遊ぶ度に辟易する。みんなコレどうやって切ったり配ったりしてるの?(^^;;;
 あと、やっぱこのゲームはもっと人数が多い方がおもしろいなあ。他人の頭の中から何が飛び出すのかわからないワクワク感が、総勢3人とかだとすぐ途切れちゃう‥‥‥。
2018/04/08 22:12:54
試し斬り:反社会人サークルこの過労死がすごい」(3-5人)
 これも悩むんだけど‥‥‥正直、マニュアルをどれだけ読んでも、何をどうしたらいいんだかよくわからなかった。あとカード同士がくっつきやすいというかカード離れがよくないというか、切ったり配ったりがものすげえやりにくい。
 総じて、このままだったらもう遊ばないと思う。ゲーム作るのって難しいんだなあ‥‥‥。
2018/04/08 22:19:55
夕飯。
 ちょっと買い出しに行って戻り、録画してあった「孤独のグルメ Season7」の第1話とか観ながら夕飯。
 ドラマパートは同じ店のランチタイムを見せつつ、原作者がビール呑みに行くパートはディナータイムに時間をずらして両方を紹介する的な、店舗プロモーションとしての手際が明らかによくなってるのがおかしいやらほろ苦いやら。
2018/04/08 22:28:37
再戦:メビウスゲームズゲシェンク」(3-7人)
 この「ゲシェンク」というオトナのワルい遊びは酒呑みながらやっても楽しそうだよね、という話になり、夕食後にビール呑みながら再戦。
 なお、ここからゲシェンクのパッケージ付属のトークンの代わりに手持ちのポーカーチップを使用、5色各20枚のうち3色11枚ずつを各自が持って開始。決着後、次戦の準備が飛躍的に簡単になってナイス。
 んでやっぱ酒が入ると各々プレイがちょっと変わってまた楽しかった。これはよい(w。
2018/04/08 22:34:12
[2678.04.08.日.]
[2678.04.08.日.] / 偽休出。 / バンダイナムコゲームス「スーパーロボット大戦X」(Vita/一般)
偽休出。
 昨日の試し斬りの様子を軽く纏めたり。
2018/04/08 22:41:37
バンダイナムコゲームススーパーロボット大戦X」(Vita/一般)
 1周完了。
 女の子主人公だったので、次は男の子主人公で即座に2周目開始。

 結局1周目は全てのSRポイント獲得にいきなり成功した。
 ゼルガードとサイバスターが強ければ普通のマップは大体何とかなるんだけど、やっぱVita版は全体的にスーパー系が有利なのでというか、体力の減ったボス敵相手のリアル系ユニットからの攻撃が本当に全然効かないので、グレンラガンとかWマジンガーとかダイターン3とか育てておくといい。リアル系に偏りきらせると苦労すると思う。
 ‥‥‥つーか、Vita版以外のスパロボではガオガイガーくらいしかまともに育てないスタイルでお馴染みのリアル系で何とかするマンこと僕がマジンガーだのダイターンだのを重用している事実を、僕とスパロボをよく知る人は衝撃をもって受け止めているのではなかろうか(笑)。
2018/04/08 22:44:02
[2678.04.09.月.]
[2678.04.09.月.] / 偽偽DTPオペレータ部活動。
偽偽DTPオペレータ部活動。
 金曜あるふぁ(仮)さんの調査の中で、
peprintenpa
17:44:01
 : @luci2 \t以降を落さずにindexが取れるやつは落とすと全部-1になって、ちょうど真逆になるっぽいですね pic.twitter.com/XA9tgQGAoB
peprintenpa
17:45:07
 : @luci2 画像は↓の実行結果です for(i=0;i<300;i++){ f=app.fonts[i]; $.writeln(i+"\t"+app.fonts.item(f.name).index+"\t"+app.fonts.item(f.name.replace(/\t.+/,"")).index+"\t"+f.status.toString()+"\t"+f.name) }
 ここまでは調べがついており、かつ、僕もやってみた限りにおいて、職場環境とプライベートのどちらからも『「ウェイト文字列あり」と「ウェイト文字列なし」のindex値が両方-1であるインストール済みのフォント』はひとつも検出されなかったので、差し当たり、これを結論としてよいと思う。
luci2
18:33:10
 : 取り敢えず職場PCにインストールされてる1724個だかのフォント全部について調べてみたけど、確かに「ウェイトあり」と「ウェイトなし」の両方でindexが-1になる奴はいなかったし、両方が-1でない奴もいなかった。
luci2
18:35:28
 : 退勤したらプライベートでも調べてみるけど、「片方が0以上ならもう片方は-1」であり、「どちらかが0以上であるフォントは使える状態にある筈(なのにapplyできないとしたら多分なにか書き間違ってる)」ってことでよさそうかな。
 ‥‥‥なんだろう、僕は最初に運よく取っ掛かり部分を場に出せただけで、それが本当に実用に耐えるアイデアなのかどうかを検証する段における大変な部分は大体あるふぁ(仮)さん任せになっちゃったような感もちょっとある(^^;;;。
 その節は大変お世話になりました。ありがとうございました。

 そんなこんなあってからの。
 『try〜catch構文を使わず、fontsの配列を全部ループして名前の一致を確認する方法でもなく、「その名前のフォントが扱えるかどうか」をInDesign+ExtendScriptで知る方法』に関する話の続きの続き、というか、まとめ。
 あるふぁ(仮)さんのを見習って「タブ文字以降を除去」の正規表現をシンプルにするなど、ちょっと手を加えた結果としての現在版チェック関数がこう。
//その名前をフォント名としてapplyしても怒られないかどうか調べる
function checkFontEnable(name)
{
	return (app.fonts.item(name).index + app.fonts.item(name.replace(/\t.*$/, "")).index !== -2) ? true : false;
}
 見出されたルールを要約すると『あらゆる「2通りの方法で取得したindexが両方-1(なので足し合わせると-2)でない」は怒られない』なので、怒られないかどうかが判明するだけでいいのであれば、究極、関数の中身はこれだけでよい。
 あんまり三項演算子とか好きじゃないんだけど、まあ、実は簡単ですねってことの表現として「1行で書けちゃいます☆」くらいのハッタリがあってもいいかも、的な。
//その名前をフォント名としてapplyしても怒られない場合はフォント名を返す
function getEnableFontName(name)
{
	var result = "";
	if(0 <= app.fonts.item(name).index)
	{
		result = name;
	}
	else
	{
		var check = name.replace(/\t.*$/, "");
		var font = app.fonts.item(check);
		if(0 <= font.index)
		{
			result = check + "\t" + font.fontStyleName;
		}
	}
	return result;
}
 「ウェイト文字列は間違ってる(かも知れない)がフォント名は正しい場合に、プロパティから取得したウェイト文字列で上書きしてからフォント名を戻す」バージョンの方はあんまり合理化の余地がないような。

 いずれにせよ、「ウェイト文字列を省くとindexが-1になるフォントで、フォント名は正しいがウェイト文字列が誤っている場合」を救うことは結局できないのだが、もうそれは仕方がないものと考えている。
 そういう理由により、「その名前をフォント名としてapplyしても怒られない場合はフォント名を返す」の方がより使いどころに困るというか、まあ要するに、「その名前をフォント名としてapplyしても怒られないかどうか調べる」の方だけ知ってれば取り敢えず問題ないのではないかと思う(笑)。
2018/04/09 11:30:06
[2678.04.10.火.]
[2678.04.10.火.] / 偽偽DTPオペレータ部活動。 / 余談というか。
偽偽DTPオペレータ部活動。
 『try〜catch構文を使わず、fontsの配列を全部ループして名前の一致を確認する方法でもなく、「その名前のフォントが扱えるかどうか」をInDesign+ExtendScriptで知る方法』に関する話の続き続きの続き。
 もうちょっとだけ続くんじゃ‥‥‥。
luci2
10:24:17
 : fontオブジェクトのプロパティ話の続き。fontStyleNameとfontStyleNameNativeに別個の文字列が入ってるフォントの場合、どっちを指定したらapplyできるのか調べてるんだけど、幾つか掻い摘んで実際やってみたところ、どうやらこれはどっちの値でもいいみたい。
luci2
10:25:48
 : 例えば「MS PゴシックRegular」はfontStyleNameが「Regular」、fontStyleNameNativeが「標準」だけど、以下はどちらでも成功する。 story.appliedFont = "MS PゴシックRegular"; story.appliedFont = "MS Pゴシック標準";
luci2
10:26:44
 : あ、Twitterだからタブ文字が書けないんだけど、「MS Pゴシック」と「Regular」ないし「標準」の間にタブ文字が1個ある。
 割と迂闊な感じで「ウェイト文字列としてfont.fontStyleNameを使う」関数とか作ったんだけど、これがまた「font.fontStyleNameを使わないと死ぬ」場合と「font.fontStyleNameNativeを使わないと死ぬ」場合とかに分かれてたら嫌すぎて死ぬなあ、とかいうことを今朝ふっと思って、怖くてしょうがないので一応幾つか検証してみた(苦笑)。
story.appliedFont = "MS Pゴシック	Regular";
story.appliedFont = "MS Pゴシック	標準";
 font.fontStyleNameとfont.fontStyleNameNativeが異なる文字列であるフォントを幾つか選んで上記のような構文を試してみたんだけど、ウェイト部分に関しては、どちらを書いても成功することがわかって一安心。
 なので「ウェイト文字列としてfont.fontStyleNameを使う」でも構わない筈であり、昨日の関数はあのままでよい。よかったよかった(^^;;;。
2018/04/10 11:05:18
余談というか。
luci2
10:26:44
 : あ、Twitterだからタブ文字が書けないんだけど、「MS Pゴシック」と「Regular」ないし「標準」の間にタブ文字が1個ある。
Uske_S
10:30:16
 : 「フォントをapplyするメソッドにはファミリー名とウェイト名の間にタブが必要」ってことを知らなかった頃、すごい苦労したなぁw twitter.com/luci2/status/9…
luci2
10:31:32
 : @Uske_S ああ、わかります‥‥‥(笑)
Uske_S
10:32:09
 : @luci2 これを発見したときの感動はひとしおでしたねwww
luci2
10:34:25
 : @Uske_S font.nameをファイルに落としたものをExcelにコピペしたんですが、タブ文字だからフォント名とウェイトが自動で別セルになるので、「実はそこは2セル分で1項目だ」と気づくまでに相当頭を捻りました(^^;;;
Uske_S
10:44:42
 : @luci2 なるほどー!!! スプレッドシート!僕は地道にESTKで謎解きしてましたw
luci2
10:50:03
 : @Uske_S ウェイトは違うけどフォント名は同じっていうのをフォント名の指定だけでどうやって表現するんだろう的な‥‥‥もしかしてlocation(ファイル名)で指定しなきゃダメなんじゃないかとか、fontStyleNameと2プロパティを同時に指定するんじゃないかとか‥‥‥
Uske_S
12:04:54
 : @luci2 試行錯誤の跡が……w
 確かに、「フォント名・タブ文字・ウェイト」っていうこの指定方法は、正直言って未だに違和感ある。
 もう結構前だけど、この辺のプロパティ弄り始めた頃は、本当にその違和感に騙されて『「フォント名・タブ文字・ウェイト」のセットがfont.nameの値そのもの』なのに「フォント名だけでどうやってウェイト指定したらいいんだ‥‥‥」とか真面目に考え込んでた時期もある(苦笑)。
 んでまた、僕はツイートにある通り「全フォントのfont.nameを一旦テキストファイルに出力してExcelのワークシートに貼る」みたいな観察手法をとってて、これ文字列がタブを含むとそこでセルが変わっちゃうから、font.nameは1個のプロパティなのに、Excelのセル数換算だと2セル分の情報が出力されてることになっており、でも当初そんなこと知らないから、「font.nameにはフォント名が入ってる(=ウェイトは含まない)筈なのにこの余計なウェイトの情報は何だろう?」的な、今にして思えばそもそも疑い方からおかしい、っていう感じになってた。

 「知らないことは知らないのだ」ということを正しく知っていないと、既に持ってる知識のせいでむしろ眼鏡が曇ることがあり、結果こういう変な予断で自滅することがあるので、そういうとこは今後も気をつけれ>自分。
luci2
10:52:51
 : 実はESTKほとんど使わないんだよなあ。ステップ実行できて変数の中身が覗けるのは最高なんだけど、エディタ部分がきもちわるすぎて嫌‥‥‥
luci2
10:54:57
 : 今回みたいに「フォントの呼び出しが成功してる場合と失敗してる場合とで、オブジェクトに現れたプロパティの数や中身を見比べる」みたいなことをする場合には超・便利だし、いや便利っていうか「どのプロパティが見たいか」が事前にわかってないケースでは、そもそも他に手段もないんだけど
 さらにいうと、一覧作らないとデータの特徴がわからないんじゃないかと思ってそういう手法にしたんだが、ESTKで変数の中を直接見るチェックの方を先にやっていれば、誰がどう見ても「フォント名・タブ文字・ウェイト」のセットが設定されてるワケだから、拗らせる前に気づいた可能性が高い陥穽ではある、とも思う‥‥‥。
 でもESTKのエディタきもちわるい‥‥‥(^^;;;。
2018/04/10 12:38:49
[2678.04.11.水.]
[2678.04.11.水.] / バンダイナムコゲームス「スーパーロボット大戦X」(Vita/一般)
バンダイナムコゲームススーパーロボット大戦X」(Vita/一般)
 2周目「第48話 暗黒の王、光の勇者」攻略中。

 遂にというか何というか、ガンダム・バディコンプレックスルートの「第45話 光る風の中」でSRポイント取得に失敗した。
 これがもうひとつ釈然としないのは、別に「難しいから無理だった」のではなくて、特に2度目以降は、僕の感覚的には毎回条件がクリアできてる(のに獲得できてない)から、ってところなんだけど。何度かやり直したし、都度条件には気をつけてるんだが‥‥‥これまで数回の試行から考えられる要因もひとつあるにはあって、もしかしたら、援護攻撃で撃墜する場合には援護攻撃の担当ユニットが『Exコマンド「スマッシュヒット」を使用』の状態じゃないといけない、ってコトなのかも知れない。それも条件に含まれるなら確かに失敗してる。
 つーか5機だかいる敵ボス(全部撃墜がSR条件)全部を『Exコマンド「スマッシュヒット」を使用』の状態で撃墜、っていうのもそれ自体が結構厳しいよねえ(苦笑)。そのために雑魚敵がいっぱいいるでしょって話なんだろうけど、初回はまんまと熱血サイフラッシュで雑魚敵を除去しまくった結果ExCが足りなくて失敗(苦笑)。でもそれ以降はちゃんとできてる筈なんだけどなあ‥‥‥。
2018/04/12 09:49:25
[2678.04.12.木.]
[2678.04.12.木.] / 偽偽DTPオペレータ部活動。
偽偽DTPオペレータ部活動。
luci2
15:24:07
 : 【ゆる募】InDesignからページをJPEGに書き出す時に、その絵の中にフレームグリッドも出力させる方法ってないのだろうか。それができた方が説明用の画像が作りやすいアレがあるんだけど‥‥‥。
 なんで今コレかというと実はまだ諦めてないからだけど、とはいえまあ、無理だろうなあ(^^;;;。
luci2
18:12:45
 : エクスポート時に直接レイアウトグリッドを可視化する方法はまだわからんが、PDF出力時にガイドを一緒に出すのは可能だったので、激しく冗長だが「ガイドごと出力してPDFを作る→テンプレートにPDFをページ単位で配置する→全ページ個別にJPEG画像化する」で、一応、升目付きの画像を得るなど pic.twitter.com/JbLiIjulb0
luci2
18:18:00
 : はんなり明朝とかに至ってはもう、ダーシ繋げる気がまったくないフォントであり(笑)、そもそもダーシ自体がこういう字形となると「平体ダーシ」の結果も悲惨。どうしても本文をはんなり明朝にしたい、しかしダーシは繋げたい。とかいうことだとすると打ち消し線に逃げるしかない。
luci2
18:21:33
 : 縦組みすると自動で罫線が寝るフォントとそうでないフォントという差異もまたあり、例えば源ノ角ゴシックを縦組みして罫線でダーシを置き換えるなら縦向きの罫線を使う必要があり、同じことをMS明朝でやるなら横向きの罫線を使う必要がある。 pic.twitter.com/E6BuGfkHLj
luci2
18:24:10
 : 取り敢えず本に書こうと思った段階では「だいたい何でも平体使っとけば大丈夫じゃね?」くらいの浅い考えだったんだけど、弄れば弄るほどドツボに嵌まるというか、こうした諸々をケースバイケースで見ないと最良の誤魔化し方が見出せないことに気づき始めてしまっている、というのが最近の状況‥‥‥
 わからんなりに力業で何とかしたのがここまでの話。
 職場のCS6にそんなオプションなかった気がしたんだけど、実際できてしまった今となっては気のせいかも知れない‥‥‥。
peprintenpa
21:26:20
 : @luci2 ファイルメニューの下の方見て!
 ということで、教えていただいたのが
 このダイアログのこと。
luci2
22:01:04
 : @peprintenpa できました‥‥‥必死でグリッド位置合わせしたのに‥‥‥(^^;;; pic.twitter.com/cW9zOzRm1q
luci2
22:13:02
 : @peprintenpa 直接JPEGにエクスポートする時にフレームグリッドが出せるワケではないんだな。PDFを経由して画像化の部分は一旦現行方針のままで。
luci2
22:31:03
 : 一旦PDFを経由するかたちにはなってるけど、スクリプト一発でこういうのがJPEG画像になって出てくる仕組みが取り敢えずできた。 pic.twitter.com/O7XSUbDm14
 フレームグリッドを出力データに混ぜられるのはエクスポート先がPDFの場合とEPSの場合だけらしいので、まあ、InDesignドキュメントに貼って使う想定の画像なんだからEPS作ればいいのかもだけど、取り敢えず取り回し的にJPEGとかが楽なので、一旦PDFを出力し、そのPDFをページに貼って、貼ったページをJPEGエクスポートするというアレで(笑)。
//グリッドのプリントプリセット取得
app.gridPrintingPreferences.frameGridPrinting = true;
app.gridPrintingPreferences.layoutGridPrinting = true;
app.gridPrintingPreferences.pageItemPrinting = true;
app.gridPrintingPreferences.textPrinting = true;

//PDFエクスポート
document.exportFile(ExportFormat.PDF_TYPE, File(PDFファイル名), false, pdfExportPreset, true);
 スクリプトからPDFエクスポートする時にどうするかっていうのがパッと検索しても出てこなかった感じがするので、具体的なこともちょっと書く。
 app.gridPrintingPreferencesにtrueとかfalseとかをいろいろ設定する。その上で、document.exportFileメソッドの第5引数(defaultはfalse)をtrueにすると、app.gridPrintingPreferencesに書いてある通りの設定でグリッドも出力される。これだけ。簡単でよかった(^^;;;。
2018/04/12 09:49:25


このサイトでは、オーガスト, May-Be SOFTの画像素材を借用しています。[COPYRIGHTS.]
無断リンクも直接リンクも諸々含めてご自由にどうぞ。直接リンクの要領はこちらです。 [NOTICE.]
[2678.03.xx.] [SHORTCUT.]
SILENCE. / FORCEWORD. / AFTERWORDS. latest : list / MAIL. [OTHERS.]