include an m file in a report

11 vues (au cours des 30 derniers jours)
Jon Brown
Jon Brown le 5 Fév 2020
Commenté : Jon Brown le 5 Fév 2020
I would like to be able to include code contained in an m-file in a pdf report created with the Report Generator. I know I can use 'publish', to do this but I want to make use of the other functionality of report. Is this possible?
import mlreportgen.report.*
import mlreportgen.dom.*
R = Report('test','pdf');
open(R)
% add code from a separate M-file (eg 'script.m')
close(R)

Réponse acceptée

Mary Abbott
Mary Abbott le 5 Fév 2020
Hello,
To display the contents of an M file in a Report Generator report, you can use an mlreportgen.dom.Text object to contain the text. Set the style of the Text object to look more like preformatted code:
import mlreportgen.dom.*
fileText = fileread('script.m');
textObj = Text(fileText);
% Set text object to preserve whitespace and use a monospace font
textObj.Style = {WhiteSpace('preserve'), FontFamily('Courier New')};
add(R, textObj);
Note: This will display the correct indentation in the M file, but will not display any syntax highlighting or evaluate code in the M file.
  1 commentaire
Jon Brown
Jon Brown le 5 Fév 2020
Thank you! That's very useful.
I guess there is no way of maintaining the syntax highlighting?

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by