機械翻訳について

図面、シェイプ、およびクリップ・アートの追加

「パブリッシャ」は、Microsoft Wordの描画、シェイプおよびクリップ・アート機能をサポートしています。 これらのオブジェクトはテンプレートに追加でき、最終的なPDF出力またはHTML出力にレンダリングされます(他の出力タイプではサポートされていません)。

次のAutoShapeカテゴリがサポートされています:

  • 明細-スト・レート、矢印、コネクタ、カーブ、フリー・フォーム、およびスクライブル。

  • コネクタ-スト・レート・コネクタのみがサポートされています。 曲線コネクタは、曲線線を使用し、線に終点スタイルを指定することで実現できます。

  • 基本シェイプ-すべてのシェイプがサポートされています。 シェイプ・オブジェクト内にイメージを含めることはできません。

  • ブロック矢印-すべての矢印がサポートされています。

  • フローチャート-すべてのフローチャート・オブジェクトがサポートされています。

  • 星とバナー-すべてのオブジェクトがサポートされています。

  • コールアウト-「線」吹き出しはサポートされていません。

  • クリップ・アート-Microsoft Clip Artライブラリを使用して、テンプレートにイメージを追加します。

フリー・ハンド描画の追加

フリー・ハンド描画ツールは、最終的なPDFに図面を作成するのに役立ちます。

Microsoft Wordのフリー・ハンド描画ツールを使用して、最終的なPDF出力でレンダリングされる図面をテンプレートに作成します。

ハイパーリンクの追加

この項では、シェイプにハイパーリンクを追加する方法について説明します。

「ハイパーリンクの挿入」を参照してください。

レイヤーのシェイプ

Microsoft Wordでは、シェイプを互いの上にレイヤー化し、透過性設定を使用して下位レイヤーのシェイプを表示できます。

次の図は、レイヤー・シェイプの例を示しています。

3-Dエフェクトを使用

「パブリッシャ」では、シェイプの3-Dオプションはサポートされていません。

Microsoft式の追加

式エディタを使用して、出力で式を生成します。

次の図は、式の例を示しています:

組織チャートの追加

テンプレートおよび出力でレンダリングされるチャートで、Microsoft Wordの組織チャート機能を使用します。

次の図は、組織図の例を示しています。

WordArtの追加

テンプレートでMicrosoft WordのWordArt機能を使用できます。

次の図は、サンプルのWordArtの例を示しています。

ノート:

一部のMicrosoft WordArtでは、現在SVGに変換できないビットマップ操作が使用されています。 テンプレートでサポートされていないWordArtを使用するには、WordArtのスクリーンショットをイメージ(gif、jpegまたはpng)として保存し、WordArtをイメージに置き換えます。

データ駆動型シェイプの追加

「パブリッシャ」は、テンプレートの静的シェイプおよび機能のサポートに加えて、受信データまたはパラメータに基づいたシェイプの操作もサポートします。

次の操作がサポートされています:

  • レプリケート

  • 移動

  • サイズを変更

  • テキストを追加

  • スキュー

  • 回転

これらの操作は単一のシェイプに適用されるだけでなく、Microsoft Wordのグループ機能を使用してシェイプを結合し、グループとして操作できます。

操作コマンドを含める

図に示すように、シェイプのプロパティ・ダイアログの「ウェブ」タブで、シェイプの操作コマンドを入力します。

シェイプのレプリケート

for-eachループでデータ要素をレプリケートする場合と同じ方法で、受信XMLデータに基づいてシェイプをレプリケートできます。

シェイプをレプリケートするには、for-each@shapeコマンドをシェイプ・オフセット宣言と組み合せて使用します。 たとえば、ページを下にシェイプをレプリケートするには、次の構文を使用します:

<?for-each@shape:SHAPE_GROUP?>
 <?shape-offset-y:(position()-1)*100?>
<?end for-each?>

where

for-each@shapeは、シェイプ・コンテキストのfor-eachループを開きます

SHAPE_GROUPは、XMLファイルの繰返し要素の名前です。 要素SHAPE_GROUPが出現するたびに、新しいシェイプが作成されます。

shape-offset-y: は、Y軸に沿ってシェイプをオフセットするコマンドです。

(position()-1)*100)は、出現ごとのオフセットをピクセル単位で設定します。 XSL positionコマンドは、グループ内のレコード・カウンタ(1,2,3,4)を返します。1つはその番号から減算され、結果は100で乗算されます。 したがって、最初の出現の場合、オフセットは0になります: (1-1) * 100。 2回目の出現のオフセットは100ピクセルです: (2-1) *100。 また、後続の各オカレンスに対して、オフセットはページの下位100ピクセルになります。

テキストをシェイプに追加

テキストは、受信XMLデータまたはパラメータ値のいずれかから動的にシェイプに追加できます。

「プロパティ」ダイアログで、次の構文を入力します:

<?shape-text:SHAPETEXT?>

ここで、SHAPETEXTはXMLデータの要素名です。 実行時に、テキストがシェイプに挿入されます。

パスにテキストを追加

受信XMLデータまたはパラメータから、線または曲線に沿ってテキストを追加できます。

線を描画した後、「プロパティ」ダイアログで次のように入力します:

<?shape-text-along-path:SHAPETEXT?>

ここで、SHAPETEXTはXMLデータからの要素です。 実行時に、要素SHAPETEXTの値が行の上および行に沿って挿入されます。

シェイプの移動

XMLデータに基づいて、シェイプを移動したり、X軸とY軸の両方に沿って移動できます。

たとえば、シェイプをY軸に沿って200ピクセル、X軸に沿って300に移動するには、シェイプのプロパティ・ダイアログで次のコマンドを入力します:

<?shape-offset-x:300?>
<?shape-offset-y:200?>

シェイプの回転

受信データに基づいて、指定した軸についてシェイプを回転できます。

次のコマンドを使用します:

<?shape-rotate:ANGLE;'POSITION'?>

where

ANGLEは、シェイプを回転する度数です。 角度が正の場合、回転は時計回りに、負の場合回転は反時計回りになります。

POSITIONは、回転を実行するポイントです(例: 'left/top')。 有効な値は、左、右または中央と中央、上または下の組合せです。 デフォルトは左/上です。 次の図は、これらの有効な値を示しています。

この矩形のシェイプを右下隅で回転するには、次の構文を入力します:

<?shape-rotate:60,'right/bottom'?>

また、回転するシェイプ自体にx、y座標を指定することもできます。

シェイプの傾斜

skewコマンドを使用して、シェイプをスキューできます。

次のコマンドを使用して、X軸またはY軸に沿ってシェイプをスキューできます:

<?shape-skew-x:ANGLE;'POSITION'?>
<?shape-skew-y:ANGLE;'POSITION'?>

where

ANGLEは、シェイプをスキューする度数です。 角度が正の場合、スキューは右側になります。

POSITIONは、回転を実行するポイントです(例: 'left/top')。 有効な値は、左、右または中央と中央、上または下の組合せです。 「シェイプの回転」を参照してください。 デフォルトは'left/top'です。

たとえば、右下隅のシェイプを30度スキューするには、次のように入力します:

<?shape-skew-x:number(.)*30;'right/bottom'?>

シェイプのサイズの変更

単一の軸または両方の軸に沿って適切なコマンドを使用して、シェイプのサイズを変更できます。

両方の軸に沿ってシェイプのサイズを変更するには、次を使用します:

<?shape-size:RATIO?>

ここで、RATIOは、シェイプのサイズを増減するための数値の比率です。 したがって、値2を指定すると、元の高さと幅の2倍のシェイプが生成されます。 値0.5を指定すると、元のサイズの半分にシェイプが生成されます。

x軸またはy軸に沿ってシェイプのサイズを変更するには、次を使用します:

<?shape-size-x:RATIO?>
<?shape-size-y:RATIO?>

xまたはyの値のみを変更すると、軸に沿ってシェイプを伸縮する効果があります。 これはデータ主導型です。

コマンドの結合

これらのコマンドを組み合わせて、一度に複数の変換をシェイプで実行することもできます。 たとえば、シェイプをレプリケートし、レプリケーションごとに角度で回転し、サイズを同時に変更できます。

次の例では、シェイプを複製し、50ピクセルをページの下に移動し、中心を5度回転し、X軸に沿って伸ばし、シェイプの数をテキストとして追加する方法を示します:

<for-each@shape:SHAPE_GROUP?>
 <?shape-text:position()?>
 <?shape-offset-y:position()*50?>
 <?shape-rotate:5;'center/center'?>
 <?shape-size-x:position()+1?>
<end for-each?>

これらのコマンドは、次のシェイプ変換図に示されている出力を生成します:

CD評価の例

この例では、受信XMLファイルのデータに基づいて星評価を生成するテンプレートを設定する方法を示します。

次の受信XMLデータがあるとします:

<CATALOG>
 <CD>
  <TITLE>Empire Burlesque</TITLE>
  <ARTIST>Bob Dylan</ARTIST>
  <COUNTRY>USA</COUNTRY>
  <COMPANY>Columbia</COMPANY>
  <PRICE>10.90</PRICE>
  <YEAR>1985</YEAR>
  <USER_RATING>4</USER_RATING>
 </CD>
 <CD>
  <TITLE>Hide Your Heart</TITLE>
  <ARTIST>Bonnie Tylor</ARTIST>
  <COUNTRY>UK</COUNTRY>
  <COMPANY>CBS Records</COMPANY>
  <PRICE>9.90</PRICE>
  <YEAR>1988</YEAR>
  <USER_RATING>3</USER_RATING>
 </CD>
 <CD>
  <TITLE>Still got the blues</TITLE>
  <ARTIST>Gary More</ARTIST>
  <COUNTRY>UK</COUNTRY>
  <COMPANY>Virgin Records</COMPANY>
  <PRICE>10.20</PRICE>
  <YEAR>1990</YEAR>
  <USER_RATING>5</USER_RATING>
 </CD>
 <CD>
  <TITLE>This is US</TITLE>
  <ARTIST>Gary Lee</ARTIST>
  <COUNTRY>UK</COUNTRY>
  <COMPANY>Virgin Records</COMPANY>
  <PRICE>12.20</PRICE>
  <YEAR>1990</YEAR>
  <USER_RATING>2</USER_RATING>
 </CD>
<CATALOG>

CDUSER_RATING要素に注意してください。 このデータ要素とシェイプ操作コマンドを使用すると、評価を視覚的に表現して、読者が一目で比較できるようにすることができます。 これを実現するためのテンプレートは、次の評点図を視覚的に表したものです:

フィールドの値は、フィールド表の次の値に表示されます:

フィールド フォーム・フィールド・エントリ

F

<?for-each:CD?>

TITLE

<?TITLE?>

ARTIST

<?ARTIST?>

E

<?end for-each?>

(星形)

Webタブ・エントリ:

<?for-each@shape:xdoxslt:foreach_number($_XDOCTX,1,USER_RATING,1)?>

<?shape-offset-x:(position()-1)*25?>

<?end for-each?>

フォーム・フィールドには、単純な要素値が保持されます。 このテンプレートとの唯一の違いは、星形の値です。 レプリケーション・コマンドは、「書式AutoShape」ダイアログの「ウェブ」タブに配置されます。

for-each@shapeコマンドでは、コマンドを使用して" for...next loop"構造を作成できます。 開始番号として1、最終番号としてUSER_RATING、ステップ値として1を指定します。 テンプレートがCDをループすると、USER_RATING値ごとにスター・シェイプを繰り返す内部ループが作成されます(つまり、値4を指定すると4つの星が生成されます)。 このテンプレートおよびXMLサンプルからの出力を次の図に示します:

グループ化されたシェイプの例

この例では、シェイプをグループに結合し、個別にグループとして受信データに反応させる方法を示します。

次のXMLデータがあるとします:

<SALES>
 <SALE>
  <REGION>Americas</REGION>
  <SOFTWARE>1200</SOFTWARE>
  <HARDWARE>850</HARDWARE>
  <SERVICES>2000</SERVICES>
 </SALE>
 <SALE>
  <REGION>EMEA</REGION>
  <SOFTWARE>1000</SOFTWARE>
  <HARDWARE>800</HARDWARE>
  <SERVICES>1100</SERVICES>
 </SALE>
 <SALE>
  <REGION>APAC</REGION>
  <SOFTWARE>900</SOFTWARE>
  <HARDWARE>1200</HARDWARE>
  <SERVICES>1500</SERVICES>
 </SALE>
</SALES>

このデータを視覚的に表現できるため、ユーザーはすべてのリージョンの販売データをすぐに理解できます。 これを行うには、最初に操作するMicrosoft Wordでコンポジット・シェイプを作成します。 次の図は、4つのコンポーネントで構成されるコンポジット・シェイプを示しています:

シェイプは3つのシリンダで構成されています: 赤、黄、青。 これらは、ソフトウェア、ハードウェア、およびサービスというデータ要素を表します。 結合オブジェクトには、受信データからテキストを受信できる矩形も含まれています。

次のコマンドが「ウェブ」タブに入力されます:

赤の円柱:<?shape-size-y:SOFTWARE div 1000;'left/bottom'?>

黄色の円柱:<?shape-size-y:HARDWARE div 1000;'left/bottom'?>

青い円柱:<?shape-size-y:SERVICES div 1000;'left/bottom'?>

shape-sizeコマンドは、要素SOFTWARE、HARDWAREおよびSERVICESの値に基づいてシリンダを伸縮させるために使用します。 値を1000で割って、伸縮係数を設定します。 たとえば、値が2000の場合、これを1000で割って係数2を取得します。 シェイプは現在の高さの2倍を生成します。

テキスト対応の矩形には、「ウェブ」タブに次のコマンドが含まれています:

<?shape-text:REGION?>

実行時に、REGION要素の値が矩形に表示されます。

これらのすべてのシェイプがグループ化され、グループ化されたオブジェクトの「ウェブ」タブに次の構文が追加されました:

<?for-each@shape:SALE?>
<?shape-offset-x:(position()-1)*110?>
<?end for-each?>

この一連のコマンドでは、for-each@shapeはSALEグループをループします。 shape-offsetコマンドは、ループ内の次のシェイプを特定のピクセル数だけ右に移動します。 (position()-1)は、オブジェクトの位置を設定します。 position()関数は、ループ中にレコード・カウンタを返すため、最初のシェイプの場合、オフセットは1-1*110または0になります。これは、オブジェクトの最初のレンダリングをテンプレートで定義された位置に配置します。 後続のオカレンスは、X軸に沿って110ピクセル・オフセット(右側)でレンダリングされます。

実行時には、次の図に示すように、3セットのシェイプがページにレンダリングされます:

さらに視覚的に代表的なレポートを作成するために、これらのシェイプをワールド・マップに重ねることができます。 Microsoft Wordの順序ダイアログを使用して、マップをグループ化されたシェイプの背後にレイヤー化します。

  • Microsoft Word 2000ユーザー:バックグラウンド・マップを追加してシェイプ・グループをオーバーレイした後は、グループ化ダイアログを使用してコンポジション全体を1つのグループにします。

  • Microsoft Word 2002/3ユーザー:これらのバージョンのWordには、「ツール」>「オプション」の下のオプションがあり、「一般」タブから「自動シェイプの挿入時に描画キャンバスを自動的に生成」までのオプションがあります。 このオプションを使用すると、マップとシェイプの最終的なグループ化を行う必要がなくなります。 次の図に示すように、レポートに対して視覚的に魅力的な出力を生成できるようになりました: