Main Content

마크업 퍼블리시하기(Publishing Markup)

MATLAB® 코드 파일(.m)을 퍼블리시할 때, 파일 내의 주석에 마크업을 추가하여 퍼블리시되는 문서의 가독성을 높일 수 있습니다. 마크업을 추가하면 퍼블리시되는 문서의 형식을 지정하고 외부 파일 및 그래픽스를 표시할 수 있습니다.

마크업 개요

마크업을 삽입하려면 다음 중 하나를 수행하십시오.

  • 퍼블리시 탭에 있는 서식 지정 버튼과 드롭다운 메뉴를 사용하여 파일의 서식을 지정합니다. 이 방법을 사용하면 텍스트 마크업이 자동으로 삽입됩니다.

  • 마우스 오른쪽 버튼을 클릭하여 나타나는 메뉴의 텍스트 마크업 삽입 목록에서 마크업을 선택합니다.

  • 주석에 직접 마크업을 입력합니다.

다음 표에는 텍스트 마크업 옵션이 요약되어 있습니다. MATLAB 편집기를 사용하고 있지 않거나, 퍼블리시 탭을 사용하여 마크업을 적용하지 않으려는 경우에는 이 표를 참조하십시오.

참고

마크업을 사용할 때는 다음 사항에 주의하십시오.

  • 주석 기호(%) 뒤에 나오는 공백 수에 따라 종종 그 다음에 오는 텍스트의 서식이 결정됩니다.

  • 새 마크업을 시작하려면 종종, 예제에서 보는 바와 같이, 바로 위에 빈 주석 라인이 필요합니다.

  • 마크업은 섹션 나누기 바로 다음에 오는 주석에서만 동작합니다.

출력물 결과해당하는 파일 마크업 예
섹션과 섹션 제목
%% SECTION TITLE
% DESCRIPTIVE TEXT
%%% SECTION TITLE WITHOUT SECTION BREAK
% DESCRIPTIVE TEXT
텍스트 서식 지정
% _ITALIC TEXT_
% *BOLD TEXT*
% |MONOSPACED TEXT|
% Trademarks:
% TEXT(TM)
% TEXT(R)
글머리 기호 목록(Bulleted List)과 번호 매기기 목록(Numbered List)
%% Bulleted List
%
% * BULLETED ITEM 1
% * BULLETED ITEM 2
%
%% Numbered List
%
% # NUMBERED ITEM 1
% # NUMBERED ITEM 2
%
텍스트와 코드 블록
%% 
% 
%  PREFORMATTED
%  TEXT
% 
%% MATLAB(R) Code
% 
%   for i = 1:10
%       disp x
%   end
% 
외부 파일 내용
% 
% <include>filename.m</include>
%
외부 그래픽스
% 
% <<FILENAME.PNG>>
%
이미지 스냅샷
snapnow;
LaTeX 수식
%% Inline Expression
% $x^2+e^{\pi i}$
%% Block Equation
%
% $$e^{\pi i} + 1 = 0$$
%
하이퍼링크
% <https://www.mathworks.com MathWorks> 
% <matlab:FUNCTION DISPLAYED_TEXT>
HTML 마크업
%
% <html>
% <table border=1><tr>
% <td>one</td>
% <td>two</td></tr></table>
% </html>
% 
LaTeX 마크업
%% LaTeX Markup Example
% <latex>
% \begin{tabular}{|r|r|}
% \hline $n$&$n!$\\ 
% \hline 1&1\\ 2&2\\ 3&6\\ 
% \hline
% \end{tabular}
% </latex>
%

섹션과 섹션 제목

코드 섹션을 사용하여 코드를 구성하고, 주석을 추가하고, 코드 일부를 실행할 수 있습니다. 코드 섹션은 두 개의 퍼센트 기호(%%)로 시작하며, 그 다음에 선택적으로 섹션 제목이 나옵니다. 섹션 제목은 더 크고 굵은 글꼴을 사용하여 최상위 수준 제목(HTML의 경우 h1)으로 표시됩니다.

참고

제목 바로 다음 라인에 주석을 추가할 수 있습니다. 그러나 전체 문서 제목을 원하는 경우에는 다음 섹션(%%로 시작하는 라인)이 시작되기 전에 어떠한 MATLAB 코드도 추가할 수 없습니다.

예를 들어, 다음 코드를 퍼블리시하면 결과가 잘 정돈되어 나타납니다.

%% Vector Operations
% You can perform a number of binary operations on vectors.
%%
A = 1:3;
B = 4:6;
%% Dot Product
% A dot product of two vectors yields a scalar.  
% MATLAB has a simple command for dot products.
s = dot(A,B);
%% Cross Product
% A cross product of two vectors yields a third
% vector perpendicular to both original vectors.
% Again, MATLAB has a simple command for cross products.
v = cross(A,B);

편집기에서 코드를 저장하고 퍼블리시 탭에서 퍼블리시 버튼을 클릭하면 MATLAB에서 다음 그림과 같이 출력물을 생성합니다. 참고로, MATLAB은 MATLAB 파일의 섹션 제목으로부터 자동으로 목차 메뉴를 삽입합니다.

Published document with the formatted title Vector Operations, a Contents menu, and formatted subheadings for the remaining sections

텍스트 서식 지정

파일을 퍼블리시할 때 선택한 텍스트가 기울임꼴 텍스트, 굵은 텍스트 또는 고정 폭 텍스트로 표시되도록, MATLAB 주석에서 텍스트에 표시를 해둘 수 있습니다. 텍스트를 _, * 또는 |로 감싸기만 하면 각각 기울임꼴 텍스트, 굵은 텍스트, 고정 폭 텍스트로 표시됩니다.

예를 들어, 다음 라인은 퍼블리시될 경우의 각 텍스트 서식 구문을 보여줍니다.

%% Calculate and Plot Sine Wave
% _Define_ the *range* for |x|

Published document with a line of text that has the word define in italics, the word range in bold, and the character x in monospaced font

상표 기호(Trademark Symbol)

MATLAB 파일의 주석에 상표가 등록된 용어가 포함되어 있는 경우 출력물에 상표 기호(™)나 등록 상표 기호(®)를 생성하는 텍스트를 포함시킬 수 있습니다. 해당 용어 바로 뒤에 공백 없이 (R)이나 (TM)을 추가하기만 하면 됩니다.

예를 들어, 파일에 다음 라인을 입력한다고 가정하겠습니다.

%% Basic Matrix Operations in MATLAB(R)
% This is a demonstration of some aspects of MATLAB(R)
% and the Symbolic Math Toolbox(TM).

이 파일을 HTML로 퍼블리시하면 MATLAB 웹 브라우저에 다음과 같이 표시됩니다.

Published document with a title and line of text that includes the word MATLAB with a registered trademark symbol next to it and the phrase Symbolic Math Toolbox with a trademark symbol next to it

글머리 기호 목록(Bulleted List)과 번호 매기기 목록(Numbered List)

MATLAB에서는 주석에 글머리 기호 목록이나 번호 매기기 목록을 추가할 수 있습니다. 다음 구문을 사용하여 글머리 기호 목록과 번호 매기기 목록을 만들 수 있습니다.

%% Two Lists
%
% * ITEM1 
% * ITEM2
%
% # ITEM1
% # ITEM2
%

이 예제 코드를 퍼블리시하면 다음과 같은 출력물이 생성됩니다.

Published document with a bulleted list followed by a numbered list. Each list contains two items: ITEM1 and ITEM2

텍스트와 코드 블록

서식이 설정된 텍스트

서식이 설정된 텍스트는 고정 폭 글꼴로 표시되고, 공백을 유지하며, 길이가 긴 라인을 줄 바꿈하지 않습니다. 주석 기호와 서식이 설정된 텍스트의 첫 라인 텍스트 사이에는 두 개의 공백이 있어야 합니다.

다음 코드를 퍼블리시하면 서식이 설정된 단락이 생성됩니다.

%%
% Many people find monospaced text easier to read:
%
%  A dot product of two vectors yields a scalar.
%  MATLAB has a simple command for dot products.

Published document with a line of text in the default font followed by two lines of text in monospaced font

구문이 강조 표시된 샘플 코드

실행 가능한 코드는 퍼블리시된 문서에서 구문이 강조 표시되어 나타납니다. 샘플 코드를 강조 표시할 수도 있습니다. 샘플 코드는 주석 내에 표시되는 코드를 말합니다.

샘플 코드를 나타내려면 주석 기호와 코드 첫 라인의 시작 위치 사이에 공백 세 개를 넣어야 합니다. 예를 들어, 퍼블리시 탭에서 코드 버튼을 클릭하면 편집기에 다음 샘플 코드가 삽입됩니다.

%%
%
%   for i = 1:10
%       disp(x)
%   end
% 

이 코드를 HTML로 퍼블리시하면 MATLAB 웹 브라우저에 다음과 같은 출력물이 생성됩니다.

Published document with three lines of syntax-highlighted sample code

외부 파일 내용

MATLAB 퍼블리시되는 코드에 외부 파일 내용을 추가하려면 <include> 마크업을 사용하십시오. 퍼블리시되는 파일의 위치를 기준으로 하여 외부 파일의 상대 경로를 지정합니다. 포함된 MATLAB 코드 파일은 구문이 강조 표시된 코드로 퍼블리시됩니다. 그 밖의 다른 파일은 일반 텍스트로 퍼블리시됩니다.

예를 들어, 다음 코드는 sine_wave.m의 내용을 퍼블리시된 출력물에 삽입합니다.

%% External File Content Example
% This example includes the file contents of sine_wave.m into published
% output.
%
% <include>sine_wave.m</include>
%
% The file content above is properly syntax highlighted.

파일을 HTML로 퍼블리시합니다.

Published document with the contents of the file sine_wave.m displayed as syntax-highlighted code

외부 그래픽스

MATLAB 코드가 생성하지 않는 이미지를 퍼블리시하려면 텍스트 마크업을 사용하십시오. 기본적으로 MATLAB에는 코드에서 생성된 그래픽스가 이미 포함되어 있습니다.

다음 코드는 FILENAME.PNG라는 일반 이미지를 퍼블리시된 출력물에 삽입합니다.

%%
% 
% <<FILENAME.PNG>>
% 

MATLAB에서는 이 FILENAME.PNG의 위치를 출력 위치에서 외부 이미지까지의 상대 경로로 지정하거나 정규화된 URL로 지정해야 합니다. 이미지를 MATLAB이 출력물을 퍼블리시하는 폴더와 같은 폴더에 저장하면 편리할 수 있습니다. 예를 들어, MATLAB은 HTML 문서를 하위 폴더 html에 퍼블리시합니다. 이미지 파일을 이 하위 폴더에 저장하십시오. 퍼블리시 구성 설정을 변경하여 출력 폴더를 변경할 수 있습니다. MATLAB Online™에서는 이미지 파일을 루트 폴더에 있는 Published 폴더에 저장하십시오.

surf(peaks)를 사용한 외부 그래픽스 예제

이 예제에서는 퍼블리시하기 위해 surfpeaks.jpg를 MATLAB 파일에 삽입하는 방법을 보여줍니다.

surfpeaks.jpg를 만들기 위해 명령 창에서 다음 코드를 실행하십시오.

saveas(surf(peaks),'surfpeaks.jpg');

MATLAB 파일에서 surfpeaks.jpg가 포함된 HTML 파일을 생성하기 위해 다음을 수행하십시오.

  1. 현재 폴더에 하위 폴더 html을 만듭니다.

  2. 명령 창에서 다음 코드를 실행하여 surfpeaks.jpg를 만듭니다.

    saveas(surf(peaks),'html/surfpeaks.jpg');

  3. 다음 MATLAB 코드를 HTML로 퍼블리시합니다.

    %% Image Example
    % This is a graphic:
    %
    % <<surfpeaks.jpg>>
    %

    Published document with the surfpeaks.jpg image displayed

출력 파일 형식에 유효한 이미지 유형

퍼블리시할 때 포함시킬 수 있는 이미지의 유형은 다음 표에서와 같이 해당 문서의 출력 유형에 따라 다릅니다. 호환성을 최대화하기 위해서는 각 출력 유형의 디폴트 이미지 형식을 사용하는 것이 가장 좋습니다.

출력 파일 형식디폴트 이미지 형식포함시킬 수 있는 이미지 유형
docpng

설치된 Microsoft® Office 버전에서 지원하는 모든 형식.

htmlpng

모든 형식이 성공적으로 퍼블리시됩니다. 출력 파일을 보고 처리하는 데 사용하는 툴이 지정된 출력 형식을 표시할 수 있는지 확인하십시오.

latexpng 또는 epsc2

모든 형식이 성공적으로 퍼블리시됩니다. 출력 파일을 보고 처리하는 데 사용하는 툴이 지정된 출력 형식을 표시할 수 있는지 확인하십시오.

pdfbmp

bmpjpg.

pptpng

설치된 Microsoft Office 버전에서 지원하는 모든 형식.

xmlpng

모든 형식이 성공적으로 퍼블리시됩니다. 출력 파일을 보고 처리하는 데 사용하는 툴이 지정된 출력 형식을 표시할 수 있는지 확인하십시오.

이미지 스냅샷

MATLAB 출력값의 스냅샷을 캡처하는 코드를 삽입할 수 있습니다. 이 기능은 예를 들어, 캡처하려는 Figure가 for 루프에서 매 반복마다 수정되는 경우 유용합니다.

다음 코드는 for 루프를 세 번 실행하고 매 반복 후에 출력값을 생성합니다. snapnow 명령은 이 코드에 의해 생성된 세 개의 이미지를 모두 캡처합니다.

%% Scale magic Data and Display as Image

for i=1:3
    imagesc(magic(i))
    snapnow;
end

이 파일을 HTML로 퍼블리시하면 다음 그림과 유사한 출력물이 생성됩니다. 기본적으로 HTML에 표시되는 이미지는 아래 그림에 표시된 것보다 더 큽니다. MATLAB 코드에 의해 생성된 이미지의 크기를 조정하려면 퍼블리시 설정 창에서 최대 이미지 너비 필드와 최대 이미지 높이 필드를 사용하십시오. 자세한 내용은 퍼블리시에 대한 출력 기본 설정 항목의 설명을 참조하십시오.

Published document with code followed by the three images produced by the code displayed side by side

LaTeX 수식

인라인 LaTeX 표현식

MATLAB에서는 퍼블리시하려는 코드에 인라인 LaTeX 표현식을 포함시킬 수 있습니다. 인라인 표현식을 삽입하려면 LaTeX 마크업을 달러 기호 문자($)로 감싸십시오. $는 인라인 표현식의 첫 단어 바로 앞과, 인라인 표현식의 마지막 단어 바로 뒤에 와야 합니다. 이때 단어와 달러 기호 사이에는 공백이 있으면 안 됩니다.

참고

  • Microsoft PowerPoint®를 제외한 모든 퍼블리시 출력 유형에 LaTeX 표현식을 지원합니다.

  • MATLAB 퍼블리시는 표준 LaTeX 수식 모드 지시문을 지원합니다. 텍스트 모드 지시문이나 추가 패키지가 필요한 지시문은 지원되지 않습니다.

다음 코드에는 LaTeX 표현식이 포함되어 있습니다.

%% LaTeX Inline Expression Example
%
% This is an expression: $x^2+e^{\pi i}$. It is 
% inline with the text.

이 샘플 텍스트 마크업을 HTML로 퍼블리시할 경우 결과 출력물은 다음과 같습니다.

Published document with a line of text containing an inline formatted expression

LaTeX 표시 수식

MATLAB에서는 기본 주석 텍스트에서 분리된 블록에 LaTeX 기호를 삽입할 수 있습니다. 방정식 양쪽에 두 개의 달러 기호 문자($$)를 추가하면 LaTeX 수식이 블록으로 표시됨을 나타냅니다. 방정식을 별도의 블록으로 퍼블리시하려면 블록 사이에 빈 라인을 삽입해야 합니다.

다음 코드는 샘플 텍스트 마크업입니다.

%% LaTeX Equation Example
%
% This is an equation:
%
% $$e^{\pi i} + 1 = 0$$
%
% It is not in line with the text.

HTML로 퍼블리시할 경우 수식은 다음과 같이 표시됩니다.

Published document with text and a formatted equation on its own line

하이퍼링크

정적 하이퍼링크

MATLAB 주석 내에 정적 하이퍼링크를 삽입한 다음 파일을 HTML, XML, Microsoft Word 중 하나로 퍼블리시할 수 있습니다. 웹 위치에 대한 정적 하이퍼링크를 지정할 때는 전체 URL을 코드에 포함시키십시오. 이 방법은 독자가 웹 위치로 이동하도록 하려는 경우 유용합니다. 퍼블리시된 텍스트에 URL을 표시하거나 숨길 수 있습니다. 독자가 출력물을 온라인으로 보고 있어서 하이퍼링크를 클릭할 수 있다고 확신하는 경우 URL을 제외하는 것을 고려할 수 있습니다.

URL과 임의의 대체용 텍스트를 꺾쇠괄호로 묶습니다.

%%
% For more information, see our web site:
% <https://www.mathworks.com MathWorks>

이 코드를 HTML로 퍼블리시하면 다음과 같은 출력물이 생성됩니다.

Published document with a line of text that contains the hyperlinked word MathWorks

URL 뒤에 있는 대체용 텍스트 MathWorks를 제거하면 다음과 같이 수정된 출력물이 생성됩니다.

Published document with a line of text containing a formatted URL

참고

코드가 MATLAB 명령 창에 하이퍼링크 텍스트를 생성하는 경우에는 하이퍼링크 대신 HTML 코드가 표시됩니다.

동적 하이퍼링크

독자가 해당 링크를 클릭하는 순간 MATLAB에서 동작을 실행하는 동적 하이퍼링크를 삽입할 수 있습니다. 동적 하이퍼링크를 사용하면 독자가 MATLAB 코드 또는 도움말 문서로 이동하거나, 코드를 실행할 수 있습니다. 이러한 링크는 matlab: 구문을 사용하여 구현합니다. matlab: 선언 다음에 나오는 코드에 공백이 포함되어 있으면 이 공백을 %20으로 바꾸십시오.

참고

동적 연결은 MATLAB 웹 브라우저에서 HTML을 보는 경우에만 동작합니다.

동적 연결의 다양한 사용 예는 다음과 같습니다.

코드를 실행하는 동적 연결.  사용자가 하이퍼링크를 클릭할 때 코드를 실행하도록 동적 하이퍼링크를 지정할 수 있습니다. 예를 들어, 다음 matlab: 구문은, 클릭할 때 재활용을 활성화하거나 비활성화하는 하이퍼링크를 출력물에 생성합니다.

%% Recycling Preference
% Click the preference you want:
%
% <matlab:recycle('off') Disable recycling>
%
% <matlab:recycle('on') Enable recycling>

퍼블리시된 결과는 다음 HTML 출력물과 비슷합니다.

Published document with two lines of hyperlinked text: Disable recycling and Enable recycling

이 하이퍼링크 중 하나를 클릭하면 MATLAB이 그에 따라 recycle 명령을 설정합니다. 하이퍼링크를 클릭한 후에, 명령 창에 'recycle'을 입력하여 실행하면 설정이 예상대로 되어 있는지 확인할 수 있습니다.

파일에 대한 동적 연결.  독자의 matlabroot에 있는 것이 확실한 파일의 링크를 지정할 수 있습니다. 각 독자가 MATLAB을 설치한 위치가 달라도 상관없습니다. 예를 들어, 다음과 같이 publish 함수 코드의 링크를 지정합니다.

%%
% See the 
% <matlab:edit(fullfile(matlabroot,'toolbox','matlab','codetools','publish.m')) code> 
% for the publish function.

그런 다음 이 파일을 HTML로 퍼블리시합니다.

Published document with a line of text that includes the hyperlinked word code

code 링크를 클릭하면 MATLAB 편집기가 열리고 publish 함수의 코드가 표시됩니다. 독자의 시스템에서 MATLAB이 명령을 실행합니다. 그러나 독자의 명령 창에는 명령이 나타나지 않습니다.

MATLAB 함수 도움말 페이지에 대한 동적 연결.  matlab: 구문을 사용하여 MATLAB 함수 도움말 페이지의 링크를 지정할 수 있습니다. 예를 들어, 독자가 MATLAB을 설치해서 실행하고 있다고 가정하겠습니다. 그리고, 다음과 같이 publish 함수 도움말 페이지의 링크를 제공합니다.

%%
% See the help for the <matlab:doc('publish') publish> function.

파일을 HTML로 퍼블리시합니다.

Published document with a line of text that includes the hyperlinked word publish

publish 하이퍼링크를 클릭하면 MATLAB 도움말 브라우저가 열리고 publish 함수 도움말 페이지가 표시됩니다. 독자의 시스템에서 MATLAB이 명령을 실행합니다. 그러나 명령 창에는 명령이 나타나지 않습니다.

HTML 마크업

MATLAB 파일에 HTML 마크업을 삽입할 수 있습니다. 퍼블리시 탭에 HTML 마크업을 생성하는 버튼이 없기 때문에 직접 입력해야 합니다.

참고

HTML 코드용 텍스트 마크업을 삽입해도 지정된 출력 파일 형식이 HTML인 경우에만 HTML 코드로 퍼블리시됩니다.

다음 코드에는 HTML 태그가 포함되어 있습니다.

%% HTML Markup Example
% This is a table:
%
% <html>
% <table border=1><tr><td>one</td><td>two</td></tr>
% <tr><td>three</td><td>four</td></tr></table>
% </html>
%

이 코드를 HTML로 퍼블리시하면 MATLAB은 두 개의 행과 두 개의 열로 구성된 테이블을 만듭니다. 이 테이블에는 값 one, two, three, four가 포함됩니다.

Published document with a 2-by-2 table containing the words one, two, three, and four

섹션에서 <html>로 시작하고 </html>로 끝나는 명령 창 출력값을 생성하는 경우 MATLAB은 퍼블리시된 출력물에 소스 HTML을 포함시킵니다. 예를 들어, 다음 코드를 퍼블리시하는 경우 MATLAB은 disp 명령을 표시하고 HTML 코드에서 테이블을 만듭니다.

disp('<html><table><tr><td>1</td><td>2</td></tr></table></html>')

Published document including the disp command followed by a 1-by-2 table containing the numbers 1 and 2

LaTeX 마크업

MATLAB 파일에 LaTeX 마크업을 삽입할 수 있습니다. 퍼블리시 탭에 LaTeX 마크업을 생성하는 버튼이 없기 때문에 LaTeX 마크업은 직접 입력해야 합니다.

참고

LaTeX 코드용 텍스트 마크업을 삽입해도 지정된 출력 파일 형식이 LaTeX인 경우에만 이 코드가 퍼블리시됩니다.

다음 코드는 LaTeX 마크업의 예입니다.

%% LaTeX Markup Example
% This is a table:
%
% <latex>
% \begin{tabular}{|c|c|} \hline
% $n$ & $n!$ \\ \hline
% 1 & 1 \\
% 2 & 2 \\
% 3 & 6 \\ \hline
% \end{tabular}
% </latex>

이 파일을 LaTeX으로 퍼블리시하면 편집기에 LaTeX 마크업이 포함된 새 .tex 파일이 열립니다.

% This LaTeX was auto-generated from MATLAB code.
% To make changes, update the MATLAB code and republish this document.

\documentclass{article}
\usepackage{graphicx}
\usepackage{color}

\sloppy
\definecolor{lightgray}{gray}{0.5}
\setlength{\parindent}{0pt}

\begin{document}

    
    

\section*{LaTeX Markup Example}

\begin{par}
This is a table:
\end{par} \vspace{1em}
\begin{par}

\begin{tabular}{|c|c|} \hline
$n$ & $n!$ \\ \hline
1 & 1 \\
2 & 2 \\
3 & 6 \\ \hline
\end{tabular}

\end{par} \vspace{1em}



\end{document}

MATLAB에는 LaTeX 프로그램을 사용하여 이 파일을 컴파일하는 데 필요한 추가 마크업이 포함되어 있습니다.

관련 항목