Behind the build — Day 027
day27は、昨日のタイ料理店「PAK PAK」の続きです。作ったのは、言語を選んで印刷すると、その言語の紙メニューが出てくるページ。昨日のウェブメニューと同じスプレッドシート1枚から、今度は紙のメニューが出てきます。書いてあるのは、日本語だけ。

01

入口は、昨日のウェブメニューの一番下に置いた「印刷用メニューはこちら」のボタンです。押すと、画面の中にA4の紙面がそのまま現れます。ウェブのメニューと紙のメニューは、同じ台帳(スプレッドシート)から出てくる——ここが今回の芯です。メニューを直せば、ウェブも紙も同じように変わります。
02

紙面の上に、昨日と同じ言語ボタンを置きました。ここで選んだ言語が、そのまま印刷にも効きます。日本語を選んで印刷すれば日本語の紙メニュー、タイ語を選べばタイ語の紙メニュー。4か国語ぶんを1枚ずつ刷って、店先に置いたり、外国語のできるお客さんに手渡したりできます。
紙面はクラシックな組版に画面のメニューはカード型ですが、紙は昔ながらのメニューの作法——品名と価格を点線でつなぎ、2段組で1枚に収める形にしました。同じデータから、画面には画面の、紙には紙のレイアウトで出しています。
03

今回いちばん手がかかったのは、ここです。紙のメニューは「1枚に収まっているか」が命。ところがスマホからの印刷は、パソコンと余白や文字の折り返しの計算が違っていて、最初は少しだけはみ出して2枚になってしまいました。しかも言語によって文章の長さが違うので、日本語は収まるのに英語だけあふれる、ということが起きます。最終的に、いちばんかさばる言語でも1枚に収まるよう、言語ごとに行間を少しずつ変えて調整しました。
正直な注意点スマホから印刷すると、紙の端に日付やページのアドレスが小さく入ります。これはスマホ側の仕様で、ページからは消せません。気になる場合はパソコンから印刷すれば、余白なしのきれいな1枚になります。
04

種明かしは昨日と同じです。メニューの台帳は、日本語だけのスプレッドシート1枚。今日はA4で見栄えがするようにメニューを19品に増やしましたが、やったことは日本語の行を書き足しただけです。翻訳は自動で、気になる訳はセルを直せば確定する——その仕組みの上に、今日は「紙」という出口がひとつ増えました。
紙メニューの改定が、印刷し直すだけになる紙のメニューは、作って終わりではありません。値段が変わるたび、品が増えるたびに、翻訳して、組み直して、刷り直す。今回のページなら、シートを直して、もう一度印刷ボタンを押すだけです。
05

昨日の時点では、AI翻訳(Gemini)がつながらず、Google翻訳で動かしていました。今日、原因がわかりました。キーの問題ではなく、指定していたAIのモデル名が古かった——すでに新規では使えないものを指定していたのです。名前を今のものに直したら、つながりました。しかも、昨日Google翻訳が別の料理にしてしまい手で直した「ガパオライス」を、AI翻訳は一発で正しく訳してきました。
手直しの台帳は、そのまま効く翻訳係がAIに変わっても、仕組みは同じです。訳はこれまでどおり台帳のシートに貯まり、気になる訳はセルを直せば、その訳で確定します。自動の質が上がって、最終決定権は店主のまま——という形です。
06


スマホでは、A4の紙面を画面の幅にちょうど収まるように縮めて表示しています。「これを刷ったらこの紙になる」が、押す前にまるごと見える——印刷ページはそれだけでいい、と割り切った作りです。
外国語の紙メニューを作るのは、本当は大仕事です。翻訳を頼んで、レイアウトを組んで、印刷して。メニューが変われば、また最初から。今回のページは、その全部をスプレッドシート1枚に畳みました。書くのは日本語だけ。ウェブのメニューにもなって、言語を選んで印刷すれば、その言語の紙メニューにもなる。昨日と今日で、シート1枚から出口がふたつになりました。100連発は、まだ続きます。