Публикация разметки

Обзор разметки

Чтобы вставить разметку, можно:

  • Для форматирования файла используйте кнопки форматирования и раскрывающиеся меню на вкладке Publish. Этот метод автоматически вставляет разметку текста для вас.

  • Выберите разметку из списка Insert Text Markup в правом нажатии кнопки меню.

  • Введите разметку непосредственно в комментарии.

В следующей таблице представлены сводные данные опций разметки текста. Если MATLAB не используется, обратитесь к этой таблице® Редактор, или если вы не хотите использовать вкладку Publish для применения разметки.

Примечание

При работе с разметкой:

  • Пространства, следующие за символами комментариев (%) часто определяют формат следующего текста.

  • Для запуска новой разметки часто требуются предыдущие пустые строки с комментариями, как показано на примерах.

  • Разметка работает только в комментариях, которые сразу же следуют за пропуском раздела.

Результат в ВыходПример соответствующей разметки файла
Разделы и заголовки разделов
%% SECTION TITLE
% DESCRIPTIVE TEXT
%%% SECTION TITLE WITHOUT SECTION BREAK
% DESCRIPTIVE TEXT
Форматирование текста
% _ITALIC TEXT_
% *BOLD TEXT*
% |MONOSPACED TEXT|
% Trademarks:
% TEXT(TM)
% TEXT(R)
Маркированные и пронумерованные списки
%% 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>
%

Разделы и заголовки разделов

Секции кода позволяют вам организовывать, добавлять комментарии и выполнять фрагменты своего кода. Секции кода начинаются со знаков двойного процента (%%), за которым следует необязательный заголовок раздела. Заголовок раздела отображается в виде заголовка верхнего уровня (h1 в HTML), используя больший, полужирный шрифт.

Примечание

Можно добавить комментарии в линии, следующие за заголовком. Однако, если вам нужен общий заголовок документа, вы не можете добавить код 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);

Сохраняя код в редактор и нажимая кнопку Publish на вкладке Publish, MATLAB выводит выход, как показано на этом рисунке. Заметьте, что MATLAB автоматически вставляет меню Contents из заголовков разделов в файл MATLAB.

Форматирование текста

Выделенный текст можно пометить в комментариях MATLAB так, чтобы при публикации файла они отображались курсивом, полужирным шрифтом или монополярным шрифтом. Просто окружите текст _, *, или | для текста, выделенного курсивом, полужирным шрифтом или однонаправленным шрифтом, соответственно.

Например, эти линии отображают каждый синтаксис форматирования текста, если он опубликован.

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

Символы товарных знаков

Если комментарии в файле 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.

Маркированные и пронумерованные списки

MATLAB позволяет создавать маркированные и пронумерованные списки в комментариях. Можно использовать этот синтаксис для создания маркированных и пронумерованных списков.

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

Публикация кода примера приводит к этому выходу.

Блоки текста и кода

Предварительно форматированный текст

Предварительно форматированный текст появляется в монопространственном шрифте, сохраняет пустое пространство и не оборачивает длинные линии. Между символом комментария и текстом первой линии предформатированного текста должно находиться два пространств.

Публикация этого кода создает предварительно форматированный абзац.

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

Синтаксис подсвеченного примера кода

Исполняемый код появляется с подсветкой синтаксиса в опубликованных документах. Можно также выделить выборку кода. Образец кода является кодом, который появляется в комментариях.

Чтобы указать выборку кода, вы должны поместить три пространств между символом комментария и началом первой строки кода. Например, при нажатии кнопки Code на вкладке Publish в редактор вставляется следующий пример кода.

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

Публикация этого кода в HTML создает выход в веб-браузере MATLAB.

Содержимое внешнего файла

Чтобы добавить внешнее содержимое файла в опубликованный код 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.

Внешняя графика

Чтобы опубликовать изображение, которое не генерирует код MATLAB, используйте текстовую разметку. По умолчанию MATLAB уже включает в себя кодированную графику.

Этот код вставляет типовое изображение, называемое FILENAME.PNG в опубликованный выход.

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

MATLAB требует, чтобы FILENAME.PNG быть относительным путем от выхода к внешнему изображению или полному URL-адресу. Хорошей практикой является сохранение изображения в той же папке, в которой MATLAB публикует его выход. Например, MATLAB публикует HTML в подпапке html. Сохраните файл изображения в той же подпапке. Изменить папку выхода можно путем изменения параметров строения публикации. В Online™ MATLAB сохраните файл изображения в Published папка, расположенная в корневой папке.

Пример внешней графики с использованием surf(peaks)

В этом примере показано, как вставить surfpeaks.jpg в файл MATLAB для публикации.

Как создать surfpeaks.jpgзапустите этот код в Командном окне.

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

Чтобы создать HTML файла, содержащий surfpeaks.jpg из файла MATLAB:

  1. Создайте подпапку с именем html в текущей папке.

  2. Создание surfpeaks.jpg при запуске этого кода в Командном окне.

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

  3. Опубликовать этот код MATLAB в HTML.

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

Допустимые типы изображений для форматов выходных файлов

Тип изображений, которые можно включать при публикации, зависит от типа выхода этого документа, как указано в этой таблице. Для наибольшей совместимости лучшей практики использовать формат изображения по умолчанию для каждого типа выхода.

Выход файлаФормат изображения по умолчаниюТипы изображений, которые вы можете включить
docpng

Любой формат установленной версии Microsoft® Офисные поддержки.

htmlpng

Все форматы успешно публикуются. Убедитесь, что инструменты, используемые для просмотра и обработки файлов выхода, могут отображать заданный формат выхода.

latexpng или epsc2

Все форматы успешно публикуются. Убедитесь, что инструменты, используемые для просмотра и обработки файлов выхода, могут отображать заданный формат выхода.

pdfbmp

bmp и jpg.

pptpng

Любой формат, поддерживаемый установленной версией Microsoft Office.

xmlpng

Все форматы успешно публикуются. Убедитесь, что инструменты, используемые для просмотра и обработки файлов выхода, могут отображать заданный формат выхода.

Снимок изображения

Можно вставить код, который захватывает снимок вашего выхода MATLAB. Это полезно, например, если у вас есть for цикл, который изменяет рисунок, которую вы хотите захватить после каждой итерации.

Следующий код запускается for цикл три раза и выдает выход после каждой итерации. snapnow команда захватывает все три изображения, произведенные кодом.

%% Scale magic Data and Display as Image

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

Если вы публикуете файл в HTML, он напоминает следующий выход. По умолчанию изображения в HTML больше, чем показано на рисунке. Чтобы изменить размер изображений, сгенерированных кодом MATLAB, используйте поля Max image width и Max image height на панели Publish settings, как описано в разделе Выходных настроек для публикации.

Уравнения LaTeX

Встроенное выражение LaTeX

MATLAB позволяет включать встроенное выражение LaTeX в любой код, который вы намереваетесь опубликовать. Чтобы вставить встроенное выражение, окружите разметку LaTeX символами знака доллара ($). The $ должно непосредственно предшествовать первому слову встроенного выражения и немедленно следовать последнему слову встроенного выражения без каких-либо пространств между ними.

Примечание

  • Все выходные типы публикации поддерживают выражения LaTeX, кроме Microsoft PowerPoint®.

  • Публикация MATLAB поддерживает стандартные директивы математического режима LaTeX. Директивы или директивы текстового режима, требующие дополнительных пакетов, не поддерживаются.

Этот код содержит выражение LaTeX:

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

Если вы публикуете образец текстовой разметки в HTML, это результат выхода.

Уравнение отображения 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, выражение появляется следующим образом.

Гиперссылки

Статические гиперссылки

Можно вставить статические гиперссылки в комментарий MATLAB, а затем опубликовать файл в HTML, XML или Microsoft Word. При указании статической гиперссылки в веб-местоположение включите полный URL-адрес в код. Это полезно, когда необходимо указать читателю веб-местоположение. Вы можете отобразить или скрыть URL-адрес в опубликованном тексте. Примите во внимание исключение URL, когда вы уверены, что читатели просматривают ваши выходы в Интернете и можете кликнуть гиперссылку.

Заключайте URL-адреса и любой текст замены в угловые скобки.

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

Публикация кода в HTML приводит к получению этого выхода.

Исключение текстовых MathWorks после того, как URL выдаст этот измененный выход.

Примечание

Если ваш код создает текст с гиперссылками в Командном окне MATLAB, в выходах отображается HTML, а не гиперссылка.

Динамические гиперссылки

Можно вставить динамические гиперссылки, которые MATLAB оценивает в то время, когда читатель кликает эту ссылку. Динамические гиперссылки позволяют указывать читателю на код MATLAB или документацию, или позволяют читателю запускать код. Эти ссылки реализуются с помощью matlab: синтаксис. Если код, который следует за matlab: декларация имеет в ней пространства, заменить их на %20.

Примечание

Динамические ссылки работают только при просмотре HTML в веб-браузере MATLAB.

Разнообразное использование динамических ссылок включает:

Динамическая ссылка на код запуска.  Вы можете задать динамическую гиперссылку, чтобы запустить код, когда пользователь кликнет гиперссылку. Для примера это matlab: синтаксис создает гиперссылки в выходах, которые при клике либо включают, либо отключают повторное использование:

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

Опубликованный результат напоминает этот HTML выхода.

При клике по одной из гиперссылок MATLAB устанавливает recycle команда соответственно. После нажатия гиперссылки запустите recycle в Командном окне, чтобы подтвердить, что параметр задан как вы ожидаете.

Динамическая ссылка на файл.  Вы можете задать ссылку на файл, который, как вы знаете, находится в matlabroot вашего читателя. Вам не нужно знать, где каждый считыватель установил MATLAB. Для примера щелкните на код функции для publish.

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

Затем опубликуйте файл в HTML.

При клике по code откроется Редактор MATLAB и отобразит код для publish функция. В системе ридера MATLAB выдает команду (хотя команда не отображается в Командном окне ридера).

Динамическая ссылка на страницу с описанием функции MATLAB.  Ссылку на страницу с описанием функции MATLAB можно задать используя matlab: синтаксис. Например, предположим, что в вашем читателе установлен и работает MATLAB. Укажите ссылку на publish страница с описанием.

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

Опубликовать файл в формате HTML.

При клике по publish гиперссылка, откроется браузер справки MATLAB и отобразит страницу с описанием для publish функция. В системе ридера MATLAB выдает команду, хотя команда не отображается в Командном окне.

Разметка HTML

Можно вставить разметку HTML в файл MATLAB. Необходимо ввести HTML разметки, так как ни одна кнопка на вкладке Publish не генерирует его.

Примечание

При вставке текстовой разметки для 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.

Если сечение создает выход командного окна, который начинается с <html> и заканчивается </html>MATLAB включает исходный HTML в опубликованный выход. Например, MATLAB отображает disp и составляет таблицу из HTML кода, если вы публикуете этот код:

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

Разметка LaTeX

Вы можете вставить разметку LaTeX в файл MATLAB. Необходимо ввести всю разметку LaTeX, так как никакая кнопка на вкладке Publish не генерирует ее.

Примечание

При вставке текстовой разметки для кода 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, то редактор открывает новое .tex файл, содержащий разметку LaTeX.

% 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.

Похожие темы