LoginSignup
4
1

More than 1 year has passed since last update.

[React-pdf] 改行設定を日本語に適したものにする

Posted at

React-pdfで、文書全体に以下の設定を適用する方法

  • 改行時にハイフンを入れないようにする
  • 単語の途中で改行する

こちらにスマートな解決法がありました。

Font.registerHyphenationCallback((word) =>
  Array.from(word).flatMap((char) => [char, ''])
)

解説

React-pdfで改行時の体裁を変更するには、
Font.registerHyphenationCallbackでメソッドをオーバーライドする。

この時、文章が単語ごとに区切られてwordとしてメソッドに渡されるのだが、
その区切り方は英語に準拠したものとなっているため、日本語の単語では適切に区切られない場合がある。

そこで、メソッドに1文字づつをwordとして認識させ、単語の区切りを気にせずどこでも改行するようにする。
改行時に挿入される文字には''を指定して、'-'と置き換える。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1