Re:VIEWに挑戦する連載の10回目です。前回の記事はこちらになります。
図を表示する
前回は、複数のファイルからRe:VIEWで1つのPDFファイルを作成してみました。結構本格的になってきましたね。
でも、今まで変換、表示してきたのは文字だけ。図の表示がありません。やはり適度に図が挿入されている方が、見やすい本になるでしょう。今回は図の挿入方法をご紹介しようと思います。
表示する図のデータと置き場所
まずは図のもととなる画像ファイルをどこに置くかですが、config.ymlを確認すると以下の様になっています。
# 取り込む画像が格納されているディレクトリ。省略した場合は以下 # imagedir: images
先頭に「#」があるので無効にはなっていますが省略した場合とあるのでこのフォルダーに配置すればいいでしょう。次に対応している画像データの形式ですが、こちらもconfig.ymlに以下の記述があります。
# imagedir内から取り込まれる対象となるファイル拡張子。省略した場合は以下 # image_ext: ["png", "gif", "jpg", "jpeg", "svg", "ttf", "woff", "otf"]
大概の形式はサポートしている様なので、この中から選びましょう。これで画像データの配置方法はわかりました。
Re:VIEWフォーマットでの記述
次にRe:VIEWファイルの記述です。画像を挿入したい場合には、以下の様に記述します。
//image[オプション1][オプション2][オプション3]{ コメント、情報等 //}
- オプション1
画像ファイル名(拡張子なし)を指定します。
- オプション2
図のキャプション、説明文を書きます。表示の際には番号が振られます。
- オプション3
表示倍率を指定できます。scale=倍率で、紙面の幅に対する倍率になります。省略可能です。
間に記述するコメント、情報等は表示されません。また、図のキャプションに番号を振らないで表示したい場合にはimageの代わりにindepimageを使用します。
実際に表示してみる
それでは実際に図をPDFファイルに埋め込んでみましょう。このブログの先頭に表示してある画像データ(23384198_s.jpg)を埋め込みます。画像データはwork\sampledoc\imagesフォルダー内に配置します。変換するファイル(chap01.re)の内容は以下になります。
= 画像表示テスト == 画像を表示します //image[23384198_s][図の表示]{ 図の表示 //} == 倍率50%で画像を表示します //image[23384198_s][50%で表示][scale=0.5]{ 50%で表示 //} == 番号を振らないで画像を表示します //indepimage[23384198_s][番号を振らないで表示]{ 番号を振らないで表示 //} == 番号を振らないで倍率50%で画像を表示します //indepimage[23384198_s][番号を振らないで50%で表示][scale=0.5]{ 番号を振らないで50%で表示 //}
catalog.ymlは以下の内容にしました。
CHAPS: - chap01.re
それでは上記の内容でPDFファイルを作ってみましょう。config.ymlは前回と同じ(ファイル名と日付だけ変えておきます)です。Docker Desktopを立ち上げて、Windows Terminalで以下を入力して実行します。
docker-compose run --rm review rake pdf
すると、ファイルReVIEW_CHALLENGE_10.pdfができ上りました。画像ファイルも貼り付けられています。縮尺も指定できていますね。今回のファイルは以下からダウンロードできます。興味のある人は実際に開いて確認してみてください。
ReVIEW_CHALLENGE_10.pdf - Google ドライブ
次回はブロック命令
いかがでしたか?図の表示ができるようになると、一段と本らしくなってきますね。今回使用した表記は、ブロック命令と呼ばれるものです。ブロック命令は図の表記以外にも色々なものがあります。次回はそれらの命令をご紹介します。お楽しみに!!