少し書き足りなかった点を補足します。
本来、プロポーショナル欧文グリフにはボディが存在しないため、縦組みでも欧文グリフを回転せずに正立させる場合には、横組みでの欧文のベースライン位置とその和文フォントの和文の全角ボディとの相対的な位置関係(欧文のベースラインがy = 0にあるとした場合の、全角ボディの下辺と上辺のy座標値、'BASE'テーブルのIdeographic EM Box)の情報を、縦組み内で配置される全角ボディに適用して、横組み時と同様の欧文グリフの位置を決める。(具体的なグリフの配置方法は実装によって異なるが、上記と同様の結果とするために必要な座標変換操作を行って欧文グリフを配置する)。このことは、日本語フォントに付属するか、独立した欧文フォントのグリフかには依存しません。
と書きましたが、これは、天地方向(y軸方向)について述べてはいますが、左右方向(x軸方向)については、述べていませんでした。縦中横および回転をする場合には、上記の方法で、プロポーショナル欧文グリフを正立させるだけでなく、プロポーショナルの欧文グリフの字幅を基に、縦組みの行の左右方向の中央に配置します(グリフの字幅の中央位置と縦組みの行の中央とを合わせる)。そうしないと、プロポーショナルの欧文グリフが縦組みの行の左端に偏ってしまいます。
なお、上記赤字の部分「異存」としていた誤植を「依存」に改めました。
以上、補足まで。
山本太郎