Main Content

MATLAB コマンド ウィンドウからのプログラムによるモデルの印刷

印刷コマンド

MATLAB® print コマンドは、Simulink® モデルを印刷するための複数のオプションを提供します。たとえば、sldemo_enginewc モデル内の Compression サブシステムを既定のプリンターで印刷します。

openExample('sldemo_enginewc');
print -sCompression

ヒント

print コマンドを使用する場合、印刷できるのは 1 つのシステムだけです。モデル内の複数のレベルを印刷するには、印刷するシステムごとに 1 つの print コマンドを繰り返し使用します。モデル内の複数のシステムを印刷するには、Simulink エディターの [モデルの印刷] ダイアログ ボックスを使うことを検討してください。詳細については、印刷するシステムの選択を参照してください。

set_param および以下のパラメーターを使って、モデルの印刷オプションを指定できます。

印刷のモデル パラメーター

パラメーター

説明

PaperOrientation

印刷用紙の方向。

'portrait' | {'landscape'}

PaperPosition

PaperPositionModemanual に設定されている場合、このパラメーターにより、印刷時のブロック線図の位置とサイズ、およびグラフィックス ファイルとしてエクスポートされるブロック線図のサイズが、PaperUnits に指定された単位で決められます。

ベクトル — [left, bottom, width, height]

PaperPositionMode

用紙の位置のモード。

  • auto

    印刷時に、Simulink ソフトウェアによってブロック線図のサイズが印刷ページに合わせて変更されます。ブロック線図をグラフィックス イメージとしてエクスポートする場合、Simulink ソフトウェアによって、エクスポートされるイメージのサイズが、ブロック線図の元の画面上でのサイズと同じサイズに変更されます。

  • manual

    印刷時に、Simulink ソフトウェアによって、ブロック線図が PaperPosition により示されたページの位置とサイズに配置されます。ブロック線図をグラフィックス イメージとしてエクスポートする場合、Simulink ソフトウェアによって、エクスポートされるイメージのサイズが PaperPosition により示された高さと幅に変更されます。

  • tiled

    整列した印刷を有効にします。

    詳細については、大きなブロック線図の複数ページへの印刷を参照してください。

{'auto'} | 'manual' | 'tiled'

PaperSize

PaperUnits での PaperType のサイズ。

ベクトル — [width height] (読み取り専用)

PaperType

印刷用紙のタイプ。

'usletter' | 'uslegal' | 'a0' | 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'b0' | 'b1' | 'b2' | 'b3' | 'b4' | 'b5' | 'arch-A' | 'arch-B' | 'arch-C' | 'arch-D' | 'arch-E' | 'A' | 'B' | 'C' | 'D' | 'E' | 'tabloid'

PaperUnits

印刷用紙のサイズの単位。

'normalized' | {'inches'} | 'centimeters' | 'points'

TiledPaperMargins

各ページに関する余白のサイズを制御します。ベクトルの各要素は、個々の端での余白を表します。

ベクトル — [left, top, right, bottom]

orient を使って、用紙の向きを制御できます。

複数行の名前またはスペースを含む名前をもつシステムの印刷

名前が複数の行で表示されるシステムを印刷するには、変数に改行文字を割り当て、その変数を print コマンドで使用します。この例では、3 行で表示される Aircraft Dynamics Model という名前のサブシステムを印刷する方法を示します。

open_system('f14');
open_system('f14/Aircraft Dynamics Model');
sys = sprintf('f14/Aircraft\nDynamics\nModel');
print (['-s' sys])

名前に 1 つ以上のスペースが含まれるシステムを印刷する場合、名前を文字ベクトルとして指定します。たとえば、Throttle & Manifold サブシステムを印刷するには、次のように入力します。

openExample('sldemo_enginewc');
open_system('sldemo_enginewc/Throttle & Manifold');
print (['-sThrottle & Manifold'])

用紙の向きと種類の設定

用紙の向きだけを設定するには、MATLAB orient コマンドを使用します。

PaperOrientation モデル パラメーターで set_param を使用することで、用紙の向きも設定できます。PaperType モデル パラメーターを使って、用紙の種類を設定します。

システムの位置とサイズの設定

印刷ページのモデル ブロック線図の位置とサイズを設定するには、PaperPositionModePaperPosition のモデル パラメーターを指定して set_param コマンドを使用します。

PaperPosition パラメーター値は、[left bottom width height] のベクトルです。はじめの 2 つの要素は、ページ上での四角形領域の左下隅を指定します。最後の2 つの要素は、四角形の幅と高さを指定します。

PaperPositionMode パラメーターを manual に設定すると、Simulink は指定された印刷枠の中に収まるようにモデルの位置 (必要に応じてスケールも) を調節します。PaperPositionModeauto の場合、Simulink はページに適合するように、必要に応じてモデルをスケーリングし、印刷ページ上の中心にモデルを配置します。

たとえば、横方向の U.S レター サイズの左下隅に vdp モデルを印刷するには、次のコマンドを入力します。

open_system('vdp');
set_param('vdp', 'PaperType', 'usletter');
set_param('vdp', 'PaperOrientation', 'landscape');
set_param('vdp', 'PaperPositionMode', 'manual');
set_param('vdp', 'PaperPosition', [0.5 0.5 4 4]);
print -svdp

タイル配置印刷の使用

タイル配置の印刷の有効化

  1. set_param を使用して PaperPositionMode パラメーターを tiled に設定します。

  2. print コマンドで -tileall 引数を指定します。

たとえば、sldemo_enginewc モデルの Compression サブシステムに対してタイル配置印刷を有効にするには、次の手順に従います:

openExample('sldemo_enginewc');
set_param('sldemo_enginewc/Compression', 'PaperPositionMode', ...
'tiled');
print('-ssldemo_enginewc/Compression', '-tileall')

タイル配置ページの境界の表示

プログラムからページの境界を表示するには、モデル パラメーター ShowPageBoundarieson に設定して、set_param コマンドを使用します。次に例を示します。

openExample('sldemo_enginewc');
set_param('sldemo_enginewc', 'ShowPageBoundaries', 'on')

タイル配置ページの余白の設定

余白のサイズを減らすことによって、タイル配置ページ内の印刷可能領域が広くなります。タイル配置ページに関連付けられた余白のサイズを指定するには、関数 set_paramTiledPaperMargins パラメーターを使用します。既定の設定では、余白を 0.5 インチに設定します。TiledPaperMargins の値は、[left top right bottom] の順番で余白を指定するベクトルです。各要素は、ページの特定の端における余白サイズを指定します。PaperUnits パラメーターの値は、余白の測定単位を決定します。

印刷するタイル配置ページの範囲の指定

プログラムによりタイル配置ページのページ番号範囲を指定するには、print -tileall 引数および -pages 引数を指定します。-pages の後に範囲を指定する 2 要素ベクトルを追加します。

メモ

Simulink によりタイル配置ページの番号は行優先で付けられます。たとえば、行 1 の 1 ページ目は 1、行 1 の 2 ページ目は 2 というようになります。

たとえば、2、3、4 ページ目を印刷するには、次のように入力します。

open_system('vdp');
print('-svdp','-tileall','-pages[2 4]')

イメージ ファイル形式へのモデルの出力

モデルを .png または .jpeg などのイメージ ファイル形式に出力するには、MATLAB print コマンドで -device 引数を使用します。たとえば、vdp モデルを .png 形式に出力するには、次のコマンドを使用します。

print -dpng -svdp vdp_model.png

プログラムによりモデルをイメージ形式にエクスポートするには、次のようにします。

  • モデルを MATLAB コマンド ラインで呼び出します。

    model %model is your model name
  • 印刷コマンドを使用してモデルを .jpeg 形式で保存します。

    print('-smodel', '-djpg', 'new_name')

既定では、エクスポート対象のモデルのキャンバス (背景) は、モデルの色と一致します。別のファイル形式にエクスポートするモデル ファイルで白または透明のキャンバスを使用する場合は、[Simulink 基本設定][一般][エクスポート] の基本設定を設定します。詳細については、Simulink 基本設定の指定を参照してください。

参考

|

関連する例

詳細