ふくらみ

膨張し続けている

Twitterに投稿できる最小の画像サイズはいくつか

Twitterにドット絵を投稿している人を見かけて思った。投稿できる画像の最小サイズは一体何px×何pxなのだろうか。

雑に調べてみたが、APIリファレンスにはそれらしい記述を見つけられなかったし、ググってもゴミみたいなアフィサイトばかり引っかかるので完全にキレたので実装から調べることにした。

1.切り分け

方法

  1. 1x1px、5x5px、10x10pxの画像を作る(MS ペイントで適当に市松模様の24bit PNGを作った。以下同様)
  2. Twitter Web*1 より投稿する

f:id:tfukumachi:20180227234649p:plain
実際に使った画像(5x5px)

結果

f:id:tfukumachi:20180227234736p:plain
失敗するとこのようなエラーが出る。

サイズ 結果
1x1px 失敗
5x5px 成功
10x10px 成功

2.絞り込み

方法

2x2px、3x3px、4x4pxの画像を作り、Twitter Web より投稿する

結果

サイズ 結果
2x2px 失敗
3x3px 失敗
4x4px 成功

どうやら縦横4ピクセルが最小っぽい雰囲気だ。

3.検証

方法

3x4px、3x5px、3x10px、3x100pxの画像を作り、Twitter Web より投稿する

結果

サイズ 結果
3x4px 失敗
3x5px 失敗
3x10px 失敗
3x100px 失敗

上記1~3について市松模様でないもの*2も一通り試したが、結果は同じであった。

4.結論

Twitterに投稿できる画像の最小サイズは4×4pxと考えられる。画像は縱橫いずれも4pxを超えている必要がある。形式は問わない。

今回は面倒くさかったのでWebからの投稿で済ませたが、APIを利用した場合に違いがあるのか、今後検証する必要がある。というか全体的にクソ雑なので強い人に強い感じの検証をしてほしいのじゃ……

f:id:tfukumachi:20180227234815p:plain

*1:ブラウザはFirefox56.0.2 (32 ビット)を用いた

*2:色とりどりにしたものや、1bit PNGのもの、JPEGにしたもの等

【C93告知】『特撮クリスマス回50年史』を作った

メリークリスマス!!
こんな日にすみません。

年末のコミケも迫っているので、今日は新刊の告知です。

C93は、土曜日東プ-59aにて、『特撮クリスマス回50年史』という本を頒布します。
過去出したコピー本の再録に加え、同人誌丸々一冊分の書き下ろし追加があります。

f:id:tfukumachi:20171224183024p:plain:w300
表紙

戦隊シリーズ、ライダーシリーズ……。毎年恒例となった「クリスマス回」。今日もほんのちょっとながらありましたね。
どうやらその歴史を辿っていくと、特撮史上初のクリスマス回は1966年、『マグマ大使』に始まるらしいのです。

そういうわけで、特撮におけるクリスマス回を

50年分、88エピソードにわたって遡り、
全クリスマス回を完全網羅
そして全話解説するという感じの本です。

f:id:tfukumachi:20171224184232p:plain:w300f:id:tfukumachi:20171224184249p:plain:w300
記事みほん

サンタが逆さ磔になったりパチンコと麻雀と競馬で全財産スったりする話が読めます。

そしてコラムも充実。全35本、クリスマスにまつわる諸々の特撮ネタをご紹介。

f:id:tfukumachi:20171224184442p:plain:w300
コラムみほん

圧倒的充実のコンテンツ。
全136ページ、50年分のクリスマスを体感せよ――。


お買上げいただきありがとうございました!!
おかげさまでC93では完売となりました。今後増訂・再版の予定はありますので、続報をお待ち下さい。(2017/12/31)
→うまくいけば2018年冬コミ(C95)で増補改訂版が出せそうです! 今しばらくお待ち下さい。(2018/08/09)


(2018/12/09追記) この本に掲載したクリスマス回一覧を記事↓にして公開しました!!

fukurami.hatenablog.com

(2018/12/22追記) C95で増訂版が出ます!! 以下の記事を参照。

fukurami.hatenablog.com

続きを読む

文字で文字を描くやつ

f:id:tfukumachi:20171123024409p:plain:w350
↑こんな感じの文字で文字が描かれた画像を適当に生成する奴。さっき気分で適当に30分くらいで書いたけどたぶん動くはず。

右クリックでコピー or 保存リンクからダウンロードしてTwitterに貼り付けたりできます。環境によっては上下が切れるので、オプションで調整してください。

とりあえず4文字まで: 保存
上下位置調整:
背景色:
文字色:
フォント:




投稿(17/11/23 02時)
更新:虹色にできるようにした。右クリックでコピーしてTwitterに貼り付けられるようになった。(17/11/23 14時)
更新:文字数を英数は8文字まで緩和した。Twitterの劣化対策をした(つもり)(17/11/23 18時)
更新:オプションを追加。色々と修正(22/02/23)

TODO:Twitterに一発で投稿できるようにしたい

シン・ゴジラ地上波放映CM・カット箇所まとめ(2017)

2017/11/12 21:00~23:20 テレビ朝日

ほぼノーカットを実現の快挙!!

テレビの脇でBDを同時再生しながら確認しました。
なお秒単位のずれ、カット箇所確認漏れがある可能性はあります。

2017/11/13 21時追記:他にカットがあるという指摘が相次いだので再度録画とBDを同時再生して確認しましたが、やはりカットはEDと小出氏のところだけです。
詳細は下の方で。

2017/11/14 0時追記:劇場公開版とBD版の差異はBDのブックレットに記載がありますが、シーン1箇所の差し替えとテロップ修正が主で、指摘された箇所にカットはありません。

2018年12月16日に放送された際のカット情報は↓を参照。

fukurami.hatenablog.com

CM等挿入箇所

開始時刻 シーン
21:00:00 クレジット前 映画内容を宣伝する奴(ブリッジ) 50秒
21:22:00 防衛出動決定の報道後 スポンサー10秒 + CM2分15秒
21:31:00 第三形態離岸後 スポンサー10秒 + CM2分30秒
21:45:50 名称決定の報道後 CM30秒+ スポンサー10秒 + アニゴジCM30秒 + CM1分30秒
22:12:30 MOPII投下前 CM2分45秒
22:24:30 立川に巨災対到着前 CM2分45秒
22:34:50 赤坂と矢口の屋上会話前 CM30秒 + スポンサー10秒+ CM2分
22:49:00 解析表が解けた後 CM2分30秒 + スポンサー20秒
22:59:15 矢口演説後 CM3分*1
23:16:32 エンドマーク後 「この映画はフィクションであり…」 5秒
23:16:37 ↑の後 アニゴジ初解禁映像など 30秒
23:16:07 ↑の後 スポンサー10秒+CM約2分
合計 約26分20秒(本編中挿入CM=約21分45秒)

カット箇所

シーン
小出恵介(勇敢な消防士役)出演シーン 6秒
ED(尻尾後即「終」マーク) 6分

以上

結論

放送枠 140分00秒
シン・ゴジラの尺 119分50秒
CM挿入 約26分20秒
カット箇所 - 6分6秒
140分4秒

小出恵介とエンドロール以外一切カットなし!!!

f:id:tfukumachi:20171113002650p:plain
大人の事情で存在を抹殺された可哀想な消防士

おまけ

後世への記録のために。

最初に挿入された宣伝の奴(正式名称なんて言うんですか)

ブリッジあるいはアバンというそうです(コメント下さった方、ありがとうございます)。
f:id:tfukumachi:20171113005604j:plain
f:id:tfukumachi:20171113005630j:plain

エンドマーク後に挿入された注意書き(現実の政治とは関係ないよ!)

f:id:tfukumachi:20171113005706j:plain

アニゴジの宣伝

f:id:tfukumachi:20171113005740j:plain

今回の神采配な編集をしてくれたのはブロードメディア・スタジオの本田哲浩さんという方のようですね。
ありがとうございました。

カット箇所の指摘について(2017/11/13 21時追記)

おかげ様で400以上のブクマを頂き、Twitterもバズってるらしく、ありがたい限りです。

さて、記事へのコメント・ブコメTwitterでの反応をざっと確認しましたが、少なからぬ「やっぱりあそこもカットされてる」的反応がありました。実は本放送の時はビールを飲みながらだったので、もしかしたら漏れが……と思って本日先程、帰宅早々に再度録画とBDを同時再生して確認しました。

その結果、記事冒頭にも書きましたが、やはり小出恵介とエンドロール以外にカットは一切ありません。以下、指摘の見受けられた部分について幾つか、返答かたがた書いてゆきます。

「ローテで行きます」

すでにブコメでカットされてないといういう指摘がついていますが、その通りです。「ごちそうさまでした」も同様です。

第三形態が去った後の日常シーン

「Early morning from Tokyo」が流れてる場所ですかね。
第三形態離岸→CM→大田区の火災→Early morning from Tokyo…という流れで、カットされていません。
CMが入ったためカットされたような印象になったのかも。

官邸前デモ

ゴジラを殺せ!」「ゴジラを守れ!」の所ですね。
カットはされていませんし、音声も元のままです。音声については劇場公開時も人によって聞こえ方がかなり違っていました。

B-2がMOPII投下したあたり

一番「指摘」が多かった部分ですが、1秒たりともカットはありません。念のためここだけ3回見てます。
志村「米軍の攻撃が予定より早く始まります」の直後にCMが入り、CM明けですぐ空からMOPIIが落ちてきます。最初に米軍機が投下するシーンはそもそもありません。2・3番機が投下するシーンとの混同でしょう。

また、その後は熱焔放射→1号機撃墜→カヨコがショックを受ける→米軍機「Pay back time」→投下→背中から放射→2番機撃墜→…と続きます。3番機の撃墜シーンもそもそも存在しません

先と同様にCMを挟んだこと、印象深いシーンだったこともあり、カットされたかのような錯覚を与えたものでしょう。まあ、同じようなカット目撃談が複数あるので、地方によってはネットの関係でタイミングが違った可能性はありますが、少なくとも筆者の確認したテレビ朝日放送版では一切カットはありません。

というか、後ろにずっとBGM流れてる一連のシークエンスの一部分だけカットするって無理じゃないですか…?

カップ

食べてます。

解析表のあたり

直接記事にコメントを頂きました。間の「折紙……食べてないんだ」から解析表を折紙しはじめるあたりのことでしょう。こちらもカットはありません

「食べてないんだ」の直後すぐに折られた解析表が登場し、紙を折ったり広げたりしながら尾頭さんたちが難しい解説をしています。印象深いシーンのくせにとてもテンポよく進んでしまうので、何かカットされているのでは…? という疑いを抱かせたものでしょう。

無人在来線爆弾

いやカットする訳ないでしょ(冷静)。無論カットされていません

無人在来線爆弾の出番はそのネームバリューとは裏腹に結構遅く、「宇宙大戦争マーチ」が終わり、特殊建機第一小隊の注入→全滅の後、再度ゴジラを転倒させるために「全車投入!」されます。まあ、気持ちはわかります。

感想

人の記憶って本当にあてになりませんね。本当に今回の放送は某事件さえなければ「ノーカット」を謳っていたはずで、細かいシーンまで大切にするテレビ朝日の心意気が感じられました。自分も最初は変なカット食らうんだろうなあと暗い気持ちだったのですが、ふたを開けてみたらこの素晴らしい采配。初放送がテレビ朝日で良かったと思いました。

先に編集担当者の名前を上げましたが、企画担当者であるプロデューサーの佐野敬信氏のお名前もここに記しておくべきでしょう。
この度は、ありがとうございました。

*1:庵野秀明が出演するHONDAのCMあり

文字化けさせる奴

なんとなく文字列を文字化けさせたい、そんな時ありませんか?
そういうときはこれ!!!ツイートも出来るよ!!!

 

FirefoxChrome最新版とかで動くと思います。UTF-8文字列をShift_JIS or EUC-JPとして解釈することで文字化けさせる奴です。TextEncoderTextDecoderを使っています。

姉妹的なやつ作りました↓  こっちだと元の文章の雰囲気をなんとなく残せます fukurami.hatenablog.com

11/8「お願い! ランキング」シン・ゴジラ特集の誤謬:舞台は2027年以後ではない

こういう害悪オタクみたいな真似はしたくなかったのですが、関係者から告発があったので。

11/12の夜9時からテレビ朝日で「シン・ゴジラ」が放送されるのでテレ朝がノリにノッています。

例えば「ゴジラ総選挙」を放送直前にやるとか、傘下のAbemaTVでリアルタイム実況特番をやるとか。

それはどうでもいいんですけど、事前に盛り上げたいのか「お願い! ランキング」という番組でなんかシン・ゴジラ特集やってるんですよ。そこで本当に残念な誤りがあったらしいんですよね。どうでもいいんですけど。

続きを読む

Google Apps ScriptでGmailの大量の未読を一掃する

最近忙しかったのでGmailを放置していたら酷いことになった。

f:id:tfukumachi:20171001020344p:plain
画像は再現

こういう大量の未読メールを手作業で処理するのはこのクソ忙しい中では不可能である。
そういうわけで、自らの手を汚さず機械の手で虫けらのような未読を一掃することにした。

一掃しよう

使うのはGoogle Apps Script(GAS)。Google神がこの世に遣わした文明の利器である。
詳しくは公式のドキュメントか、丁寧に解説してくれるアフィサイトがググればたんまり出てくるのでそちらを見てほしい。

余談だが個人的にGASは愛用しており、メールを処理してSlackに投げたり、OPACを叩いて図書館で借りた本の期限管理をしたり、Twitterbotを作ったりしている。Javascriptなので型なんかもなく無思考で書けるのが最高なのだ。

さて、端的に誰でもわかるやり方だけ書く。
とりあえずscript.google.comにアクセスするか、Google Drive新規>その他>アプリを追加からGoogle Apps Scriptを探そう。

何か画面が出てきたら、下記をコピペ。

function unreadKiller(){
  //メインの処理
  var inbox = GmailApp.search("in:inbox is:unread"); // max 500 threads
  var unreadCount = GmailApp.getInboxUnreadCount();
  for (var i=0; inbox[i] && unreadCount>0; i++){
    if(inbox[i].isUnread()){
      inbox[i].markRead();
      unreadCount--;
    }
  }

  //500件を超える場合の処理
  //使用済みトリガー削除
  var userProp = PropertiesService.getUserProperties();
  var userPropKey = "unreadKillerLastTriggerId";
  var triggerId = userProp.getProperty(userPropKey);
  if(triggerId){
    var triggers = ScriptApp.getProjectTriggers();
    for(var i=0; i<triggers.length; i++){
      if(triggers[i].getUniqueId() == triggerId){
        ScriptApp.deleteTrigger(triggers[i]);
        break;
      }
    }
    userProp.deleteProperty(userPropKey);
  }

  //継続用トリガーの追加
  if(unreadCount>0){
    var trigger = ScriptApp.newTrigger("unreadKiller").timeBased().after(10*1000).create(); //wait 10 sec.
    userProp.setProperty(userPropKey, trigger.getUniqueId());
  }
  //ここまで
}

コピペしたら上の「関数を選択」からunreadKillerを選び、隣の三角形を押す。
すると恐らく「許可が必要です」というダイアログが出るので、許可を確認
もしかすると次のような警告が出るかもしれない。
f:id:tfukumachi:20171001022145p:plain:w300
出た場合は、「unreadKiller(安全ではないページ)に移動」を構わず押す。
f:id:tfukumachi:20171001022343p:plain:w300
こんなものが出るので、差支えなければ許可してやってほしい。

あとはGmailの画面で少しずつ経る未読数を眺めるなり、面白いアニメを見る(※10/10まで)なりしよう。




f:id:tfukumachi:20160923224800p:plain



で、何をやっているの?

メインの処理は以下のとおり。

  • Gmailの未読メールを列挙する
  • ループさせて全部既読にする

慣れた人ならお怒りだろう。こんな単純な処理のためにブログ記事なんか書いて帯域を無駄遣いするんじゃない。大体なんだ。こんなコードに何十行もかけやがって。無能め。
申し訳ないのだが、正直5行くらいで済むはずだった。そう思っていたのだ。

実は、GASのGmailAppでスレッドを一回に取得できる数には限りがある。公式リファレンスには記載がないようだが、inboxやラベル等あらゆるスレッド取得処理において、最大取得数は500に制限されている。つまり、未読が500件を超える場合は先の処理を複数回実行する必要がある。

さらに面倒なのが、実行5分制限だ。GASでは1回のスクリプトの処理が5分以内に終了していなければならない。500件の未読メールを既読にする処理は、筆者の手計測でおよそ2~3分程度の時間がかかる。つまり、1000件を超えるような場合は手動でもう一度スクリプトを実行する必要が出てくる。ファッキンシット*1

というわけで、以下の処理を付け加える羽目になったというわけだ。

  • ScriptAppのトリガー作成機能で時間主導型トリガーを10秒後にセット
    →トリガーをかませば5分制限に引っかからない
  • 使用済みトリガーは勝手に消えてくれないのでこれを削除する
    ScriptAppが妙に痒いところに手が届かないせいで、削除にはトリガーのUniqueIdが要る
  • 削除のためのUniqueIdPropertiesServiceを使って保持する

未読の数が500件を超えない人で、余計な権限を与えたくない人は//500件を超える場合の処理以下を削除すると良いだろう。

f:id:tfukumachi:20171001030615j:plain
お わ り

*1:余談だが、無料のGoogle Apps Scriptでは一日あたりのGmail処理件数が20000までという制限もあるのでこちらにも注意する必要がある