PDFのサロゲートぺア出力

ちょっと色々忙しくて、ブログもさぼっていました。( ´∀` )

で、近況ですが・・・・
PHPer である自分、PHP(TCPDF)でサロゲートぺアのPDFを出力するためにどうにかならないかなと色々調べてやってみていましたが・・・技術力不足は否めず、TCPDFでサロゲートペアを出力するのは諦めました。( ;∀;)

さて、ではどうしようかなということで・・・今さらPerlなんてイヤだし、それならばPythonはどうかなとGoogle先生に聞いてみたところ、どうやらこれもダメみたい。

絶望しながら「PDF サロゲートペア」のワードで袋小路に嵌っていると、このお告げ(https://qiita.com/tochi/items/0d61bceef241d4fce07e)を発見!!!

「Ruby では何とかなる!?だったらRubyでやってみようか!」と思ったのですが、これから環境を作るのが面倒臭いなという気持ちが強くてフニャフニャ・・・。

あきらめてかけていたその時、ふと「Go言語ってどうなの?LightWeightのスクリプトでないからもしかしてOKじゃね?仮にダメでも、Rubyを覚えるより色々使えるんじゃね?」と、激しい思い込みが私を突き動かした!
そして次の瞬間、ローカルのWSLのDebianで apt -y install golang していました。(+_+)

結局は下記で見事サロゲートペアを含むPDFを出力可能になりました。

  • Go 言語
  • フレームワーク:GIN
  • 利用モジュール:gopdf
  • フォント:ノトフォント(Noto Sans Japanese)

GINというイカしたフレームワークを利用してPDFに文字を合成する簡単なAPIを作って、試したところ、こんな感じ(↓)でウソでなくてちゃんとサロゲートペアが出力できました!!!

見ての通り、「つちよし」も「ほっけ」もサロゲートペアが二つも含まれる”浪速のジョー”も全く問題無し!

あとは、こいつ(API)のメソッドをちゃんとコーディングして、標準環境のLaravelからエンドポイントを叩くようにすれば無敵ですな。(笑

TCPDF で挫折して、Go言語にたどり着くまで2週間。
とても長かったなぁ、とシミジミ思う。

ちなみに、ノトフォントは「能登」でなくて「No Tofu(No 豆腐 )」豆腐= 文字化けしたときの四角のやつっていうことらしくて、ネーミングセンスがあるのかないのか微妙に思いました。( ´∀` )

WordPressやMT、WebRelease2、PHPなどのコーディングが仕事の中年おじさんです。 趣味でバンド(ギター&ボーカル)もやっていて、海外ドラマ(特にSFモノ)が大好きです。 いろいろまとめておくためにブログを立ち上げまっす!MASU!。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA