FontForgeを使用したOTF→TTFのフォント変換で一部の文字が行方不明になる件の対応メモ

OTFフォントは内部にグリフの参照テーブルを持っています。
フォントを扱うソフトによっては編集を開始する際・変換を行う際・保存設定によってはその情報が欠けることがあり、保存したフォントファイルを使用するとその文字が表示できなくなることが(割と)あります。
FontForgeでOTFをTTFに変換する際などが顕著で、OTEditでもグリフが抜け落ちるものができるものがあります。
cidmapでどうにかなりそうなのですが、情報にたどり着けなかったので。
とりあえずアスキー文字を中心に、拡張文字などは対象外にします。
キリがないので。

結局は編集前のグリフと比較しながらコピーするなどで補完するわけですが、その場合のコード変換表をメモしておこうかと。
スクリプトを組むこともできるんでしょうけど、やり方不明なので手動のほうが確実で速いです。
以下は「源ノ角ゴシック」の場合、フォントによっては影響が小さいものもあるし、大きいものもあるはずです。
フォントの造り次第。

<必須>
「-」 002D HYPHEN-MINUS ※2011参照
「_」 005F LOW LINE
「`」 0060 GRAVE ASSENT
「~」 007E TILDE ※223C参照
「−」 2212 MINUS SIGN ※FF0D
「∣」 2223 DIVIDES

<あったほうがいい・便利かも・機種依存?>
「¯」 00AF MACRON
「·」 00B7 MIDDLE DOT ※2219参照
「¸」 00B8 CEDILLA
「‘」 2018 LEFT SINGLE QUOTATION MARK
「’」 2019 RIGHT SINGLE QUOTATION MARK
「⃝」 20DD COMBINING ENCLOSING CIRCLE
「〜」 301C WAVE DASH ※FF5E参照

<不要かも>
「⁂」 2042 ASTERISM
「⁇」 2047 DOUBLE QUESTION MARK
「⁈」 2048 QUESTION EXCLAMATION MARK
「⁑」 2051 TWO ASTERISK ALIGNED VETICALLY
「₩」 20A9 WON SIGN
「₫」 20AB DON SIGN
「‧」 2027 INVERTED OHM SIGN
「℮」 212E ESTIMATED SYMBOL
「↕」 2195 UP DOWM ARROW
「↸」 21B8 NORTH WEST ARROW TO LONG BAR
「↹」 21B9 LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR
「⇵」 21F5 DOWNWARDS ARROW LEFTWORDS OF UPWARDS ARROW
「∆」 2206 INCREMENT
「∉」 2209 NOT AN ELEMENT OF
「∏」 220F N-ARY PRODUCT
「∥」 2225 PARALLEL TO
「∦」 2226 NOT PARALLEL TO
「∶」 2236 RATIO
「∷」 2237 PROPORTION
「≅」 2245 APPROXIMATELY EQUAL TO
「≈」 2248 ALMOST EQUAL TO
「≌」 224C ALL EQUAL TO
「≢」 2262 NOT IDENTICAL TO
「≤」 2264 LESS-THAN OR EQUAL TO
「≥」 2265 GREATER-THAN OR EQUAL TO
「ゔ」 3094 HIRAGANA LETTER VU
「ゕ」 3095 HIRAGANA LETTER SMALL KA
「ゖ」 3096 HIRAGANA LETTER SMALL KE
「」3099 COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK ※前の文字に濁点(てんてん)をつける特殊文字
「」309A COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK ※前の文字に半濁点(まる)を追加する特殊文字

3016 ~ 301B
301D ~ 3020

※源ノ角ゴシックBOLD OTF→OTEDIT変換時に抜け落ちるグリフ 2265まで確認

…追記中

やっと1台のサーバーにSSLサイトを複数設置させられた

Apacheの設定の話です。
NSIとかSANsで1つのSSL証明で複数のSSLサイトを認証させる場合。
ルートに設定を書いても駄目で、仮想ホストごとにSSLの設定を書くべし。
細かい説明はなしで、とりあえずメモ程度に
以下のコードを繰り返し書くだけでいい。

とにかく
NameVirtualHost *:80
NameVirtualHost *:443
を忘れると思い通りに動かない
最低限の設定なので、実際にはもっとしっかり書くこと

httpd.conf

NameVirtualHost *:80
NameVirtualHost *:443

#---- www1.exsample.com
<VirtualHost *:80>
    ServerName a.exsample.com
    RewriteEngine On
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,QSA,R=permanent]
</VirtualHost>
<VirtualHost *:443>
    DocumentRoot /home/www/public_html
    ServerName www1.exsample.com

    #--- SSL
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/www1.exsample.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/www1.exsample.com/privkey.pem
    SSLCACertificateFile /etc/letsencrypt/live/www1.exsample.com/chain.pem
</VirtualHost>
#---- /www1.exsample.com

Let’s Encrypt の複数ドメイン対応SSL導入に手こずる

SANs証明とかいうやつで、1つの証明書で複数のドメインに対応させるやつです。
細かいことは省きます。

やりたかったこと
複数のホスト名で、1つのシステムにアクセスする
システムでホスト名を判別しているのでサーバー側ではイジる必要がない

まずはSSL化したいホスト名でアクセスできるようにApacheを設定して、1つ目のサーバーのドキュメントルート下の「/.well-known/acme-challenge/」にファイル書き込めるようにアクセス権を設定、さらにAliasを張って他のホスト名からも見られるようにする
※-dで指定するけど今回はパス

./certbot-auto certonly –webroot -w /home/www/public_html/ -d san1.exsample.com -d san2.exsample.com

重要なのは、ホスト名ごとに仮想サーバーを設定すること。別名ではcertbotが認識してくれない
※させる方法もあるのかな?

覚えておくこと
導入できたSSLは1つ目のホスト名で登録される
SSL証明を見るとDNS設定で同居しているホスト名が見えるので、バレては困る場合は使えない(IPでもわかるがサーバーが同じだからと初留者が同じとは限らないが、SSLでは所有者が同じでないと同居できない)

これでVPSを纏めることができる、かなり節約になるかな。
余裕できたらサイトを量産するぞ~

ひらがなをローマ字に変換したい

表題通り、ひらがなをローマ字に変換する必要がありました。
PerlやPHPのライブラリを探しましたが、コレだというものが見つかりませんでした。
変換と行っても、一度変換できればそれでいいので、大掛かりなものは必要ありません。
とりあえず10万件弱のレコードを変換してくれればいいだけなのです。

ということで、EXCELのマクロを探していましたが、アドインで実現できるらしいことを発見。
「ヘボン式ローマ字変換アドイン」
https://www.vector.co.jp/soft/data/business/se493167.html
使い方は簡単
=Hebon(A1)

これでなんとかなりそうです。
でめたし、でめたし。

横浜商工会の新会員交流会で

横浜商工会に入りまして、新会員の交流会なるものが有りましたので参加してきました。
石川町の駅から中華街を横切って会場となるビルまでカンカン照りの中、大量の汗を流しつつ水分も補給し続け移動。
若干脱水気味だったので、ライチソルト(?)に鶴瓶のミネラル麦茶と、気持ち多めに水分を補給していたわけですが、いざ会場に入ると空調が低めで徐々に寒気が。
急激な外気温の変化にはとても打たれ弱いのです。

一部の講演は耐えたのですが、二部の交流会に入り体も限界。
下った腹を我慢しながら、挨拶と乾杯の音頭を手ぶらで眺めるも、間もなく便所にGO!
とりあえず腸を空っぽにして戻ってみたものの特にやる気も起きず、8階から港を眺めるだけでした。
下手に飲み食いなんてしたらリバースする恐れもありましたからね。
今思えば、うまそうな飯とビールでした。
体調が良ければ名刺交換なんてそっちのけで食いまくってたかもしれません。

結局は商工会の人と同じ数だけ、新会員の名刺を獲得しただけで、何をしに行ったのか全くわからない半日でした。
取りえず帰りには、妻に頼まれた萬珍樓のシュウマイを買って帰りました。
家についたらストレスで晩飯までダウン、晩飯を食べた後もまたダウン。

慣れないことはするもんじゃないなぁと。
これからもちょくちょくあるみたいだけど、行く意味あるのかなぁ…
夏場は避けたほうがいいのかな、どうすればいいんだろ?

SSL「Let’s Encrypt」を自動更新するためのメモ

ここはCnetOS6+Apache httpdでLet’s Encryptを自動更新するためのメモです。

カレントディレクトリを作業用など適当に変更して

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto

多分上のコマンドでいろいろ追加インストールしたり、バージョンが違うので揃えろとかいわれるので諸々対応を済ませ

certbot certonly --agree-tos --webroot -w /var/www/html/ -d example.com

上のようにサーバーの設定を入力すると

/etc/letsencrypt/live/example.com/

ここにpemが生成されるので

SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCACertificateFile /etc/letsencrypt/live/example.com/chain.pem

を設定してウェブサーバーを再起動
ちなみに、Apacheが2.4.8以上はfullchain.pemにしないといけないらしい。
そして、cronに次のコマンドを月イチ実行で登録する。

/usr/bin/certbot-auto renew --post-hook "service httpd reload"

問題ないかどうかはとりあえず実行すれば確認できる。
更新頻度が高いとまだしなくていいよって怒られるようです。

三菱UFJ銀行改名の準備

近所にある「三菱東京UFJ銀行」の看板が一斉にきれいになりました。
といってもまだ「三菱東京UFJ銀行」のままなのですが、よく見るとその下に「三菱UFJ銀行」と書かれています。
さらに良く見ると「三菱東京UFJ銀行」は赤い台紙のステッカーで、簡単にはがせるようになっているんですね。

つまり、4月に入った瞬間に、「三菱東京UFJ銀行」のステッカーを剥がすだけで「三菱UFJ銀行」に変身ということのようです。
http://www.bk.mufg.jp/koumeihenkou/index.html

ちなみに、私のキャッシュカードは未だに「三和銀行」のままだったりします。
4月に入ったらeco通帳に切り替えましょうか。

ヤマト運輸の新型送り状発行システム「B2クラウド」が

ヤマト運輸で送り状を発行できるB2というシステムがありますが、これが今年3月で使えなくなるということです。
いきなりの発表で、移行期間は2ヶ月しかありません。

仕方がないので、B2クラウドへのデータ移行を済ませ起動してみると…
ブラウザが何やらポップアップを表示した。
「FLASHを許可しますか?」
ズコー
しかも、許可必須な模様。
このご時世の新規案件でFLASH必須なのはどうなのですか。
せめて、使わない方法も用意するべきではないですか。

で、いやいや許可にすると、何やら文字列が表示されて動かない。
なんですか「or #2046」って
Windows7上のFirefoxとIEで動かず同じ文字列が表示されるのをないのを確認。

結局動いたのは、ChromeとVivaldiの2つだけでした。