2002/05/17
図形を回転/反転させてもテキストを水平表示する
「図形を回転させてもテキストを水平表示する」
で示した方法では
図形を上下または左右反転させると文字が水平に表示されませんでした。
これは,下の画像を見てもらうとわかりますが,左右反転(「
FlipX
」セルがTrue(1))
または上下反転(「
FlipY
」セルがTrue(1))のいずれかの場合
文字の回転方向が通常(反時計廻り)と逆周り(時計廻り)になるためです。
さらに上下/左右とも反転した場合,通常状態(反時計廻り)に戻ります。
注: 図形の中の数字はTxtAngleセルの値です。赤線の矢印はテキストボックスの回転方向です。
そこで,図形の回転と上下/左右と文字を水平にする回転方法について調査した結果
以下のようになりました。
注: 図形の中の数字はAngleセルの値です。赤線の矢印はテキストボックスを水平にする回転方向および移動量(角度)です。
このことから
1.上下または左右のいずれかが反転する場合
・文字回転は時計廻りである。
・図形回転角度を文字回転角度に加算する。
2.通常および上下/左右とも反転する場合
・文字回転は反時計廻りである。
・図形回転角度を文字回転角度から減算する。
ということになると考えます。
これらを踏まえて,シェイプシートの「テキスト情報」セクションの「TxtAngle」セルに以下の数式を設定します。
=GUARD(IF(BITXOR(FlipX,FlipY),Angle,-Angle))
注;デフォルトでは「テキスト情報」セクションがシェイプシート内に表示されていないので,
シェイプシート内で右クリックメニュー「シェイプシートの挿入(S)...」を選択し,
「シェイプシートの挿入」ダイアログの「テキスト情報」セクションをチェックしてください。
小技TOPに戻る