print

Печать рисунка или сохранение в конкретном формате файла

Описание

пример

print(filename,formattype) сохраняет текущую фигуру в файл с заданным форматом файла, таким как print('BarPlot','-dpng'). Если имя файла не включает расширение, то print добавляет соответствующий.

print(filename,formattype,formatoptions) задает дополнительные опции, доступные для некоторых форматов.

пример

print печатает текущую фигуру на принтере по умолчанию.

print(printer) определяет принтер. Укажите принтер как вектор символов или строку, содержащую имя принтера, предшествующее -P, для примера, '-Pmy printer'. Принтер должен быть настроен в системе.

print(driver) задает драйвер. Используйте эту опцию, если необходимо убедиться, что напечатанный выход является либо черно-белым, либо цветным.

print(printer,driver) определяет принтер и драйвер.

пример

print('-clipboard',clipboardformat) копирует текущую фигуру в буфер обмена в формате, заданном clipboardformat. Можно вставить скопированный рисунок в другие приложения.

пример

print(resize,___) максимизирует размер фигуры, чтобы заполнить страницу. Задайте resize как '-bestfit' для сохранения соотношения сторон или '-fillpage' рисунка чтобы игнорировать соотношение сторон. Эти опции действительны только при сохранении в формате страницы (PDF и PS) или при печати на принтере. Используйте эту опцию с любыми входными параметрами из предыдущих синтаксисов.

пример

print(resolution,___) использует указанное разрешение. Задайте разрешение как вектор символов или строку, содержащую целое число значения, которому предшествуют -r, для примера, '-r200'. Используйте эту опцию с любыми входными параметрами из предыдущих синтаксисов.

print(renderer,___) использует указанное средство отображения. Укажите средство отображения следующим образом '-painters' или '-opengl'.

пример

print('-noui',___) исключает из сохраненного или напечатанного выхода элементы управления пользовательского интерфейса, такие как кнопки и ползунки. Он не исключает объекты пользовательского интерфейса, которые могут содержать оси, такие как uitab или uipanel.

пример

print(fig,___) сохраняет или печатает рисунок или Simulink® блок, заданная fig.

пример

cdata = print('-RGBImage'); возвращает данные изображения RGB для текущей фигуры. Эта опция отличается от экранных снимков тем, что все функции печати применяются к выходу. Можно также задать resolution, renderer, '-noui', и fig опции с этим синтаксисом. Однако вы не можете задать Диаграммы Simulink.

Примеры

свернуть все

Создайте столбчатую диаграмму и распечатайте ее на системном принтере по умолчанию. Если вы не задаете рисунок для печати, то print использует текущую фигуру.

bar(1:10)
print

Создать график и скопировать его в системный буфер обмена.

plot(1:10)
print('-clipboard','-dmeta')

Можно вставить скопированный график в другие приложения.

Создайте график и сохраните его как файл изображения PNG.

bar(1:10)
print('BarPlot','-dpng')

print сохраняет график следующим BarPlot.png.

Создайте график и сохраните его как инкапсулированный PostScript® файл.

bar(1:10)
print('BarPlot','-depsc')

print сохраняет график следующим BarPlot.eps.

Сохраните текущую фигуру в виде инкапсулированного файла PostScript и добавьте предварительный просмотр TIFF.

surf(peaks)
print('SurfacePlot','-depsc','-tiff')

Сохраните конкретный рисунок, передав ее переменную объекта в print.

fig = figure;
plot(1:10)
print(fig,'MySavedPlot','-dpng')

В качестве альтернативы см. рисунок, использующую значение ее Number свойство, которое является целым значением, отображаемым в строке заголовка окна рисунка. Для примера сохраните рисунок с Figure 2 отображается в строке заголовка. Предварите целое значение по -f.

figure(2);
plot(1:10)
print('-f2','MySavedPlot','-dpng')

Сохраните объемную поверхностную диаграмму в файл PNG. Установите PaperPositionMode свойство для рисунка, чтобы 'auto' так, чтобы он сохранялся при размере, отображаемом на экране. Использование '-r0' чтобы сохранить его с разрешением экрана.

surf(peaks)
set(gcf,'PaperPositionMode','auto')
print('PeaksSurface','-dpng','-r0')

Сохраните рисунок, которая заполняет страницу с помощью '-fillpage' опция.

bar([1 10 7 8 2 2 9 3 6])
print('FillPageFigure','-dpdf','-fillpage')

Создайте рисунок с помощью кнопки, которая очищает оси. Сохраните рисунок в файле JPEG без сохранения кнопки.

surf(peaks)
uicontrol('Style','pushbutton','String','Clear',...
    'Position',[20 20 50 20],'Callback','cla');
print('SurfacePlot','-djpeg','-noui')

Верните данные изображения RGB для рисунка.

surf(peaks)
cdata = print('-RGBImage');

Отобразите данные изображения в полном разрешении с помощью imshow.

imshow(cdata)

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

surf(peaks)
cdata = print('-RGBImage','-r120');
F = im2frame(cdata);

Входные параметры

свернуть все

Имя файла, заданное как вектор символов или строка, содержащая желаемое имя файла и путь.

Пример: 'My Saved Chart'

Пример: 'Folder\My Saved Chart'

Пример: "My Saved Chart"

Максимальная длина имени файла, включая путь, зависит от операционной системы и формата файла. Обычно имя файла должно быть не более 126 символов, или если включать путь, то не более 128 символов.

Типы данных: char | string

Формат файла, заданный как один из опций в этих таблицах.

Файл растрового изображения

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

В этой таблице перечислены поддерживаемые форматы растровых изображений.

ОпцияФормат растрового изображенияСоответствующее расширение файла
'-djpeg'JPEG 24-разрядный.jpg
'-dpng'24-разрядный PNG.png
'-dtiff'24-разрядный TIFF (сжатый).tif
'-dtiffn'24-разрядный TIFF (не сжатый).tif
'-dmeta'Расширенный метафайл (только для Windows).emf
'-dbmpmono'Монохром BMP .bmp
'-dbmp'24-битный BMP .bmp
'-dbmp16m'24-битный BMP .bmp
'-dbmp256'BMP 8-битный (256 цвет, использует фиксированную палитру) .bmp
'-dhdf'HDF 24-разрядный.hdf
'-dpbm'PBM (обычный формат) 1-битный.pbm
'-dpbmraw'PBM (формат.raw) 1-битный.pbm
'-dpcxmono'PCX 1-битный.pcx
'-dpcx24b'24-битный цвет PCX (три 8-битные плоскости).pcx
'-dpcx256'PCX 8-битный новый цвет (256 цвет).pcx
'-dpcx16'PCX более старый цвет (EGA/VGA 16-цвет).pcx
'-dpgm'PGM (простой формат).pgm
'-dpgmraw'PGM (формат.raw).pgm
'-dppm'PPM (простой формат).ppm
'-dppmraw'PPM (формат.raw).ppm

Векторный графический файл

В векторах графики хранятся команды, которые перерисовывают рисунок. Этот тип формата масштабируется хорошо, но может привести к появлению большого файла. Кроме того, это может не привести к правильному 3-D расположению объектов в определенных случаях. Некоторые приложения поддерживают обширное редактирование вектора графических форматов. Однако некоторые приложения не поддерживают редактирование сверх изменения размера графики. В целом постарайтесь внести все необходимые изменения, пока ваш рисунок все еще находится в MATLAB®.

Если вы задаете Renderer свойство для рисунка, затем print использует это средство отображения при генерации вывода. В противном случае print выбирает соответствующее средство отображения. Как правило, print использует средство отображения Painters при генерации векторных графических файлов. Для некоторых сложных рисунков print использует OpenGL® вместо этого средство отображения. Если он использует средство отображения OpenGL, то вектор графический файл содержит встроенное растровое изображение, которое может ограничить степень, до которой можно редактировать изображение в других приложениях. Чтобы гарантировать, что print используя средство отображения Painters, установите Renderer свойство для рисунка, чтобы 'painters' или задайте '-painters' как входной параметр для print.

Если вы хотите выхода, который имеет прозрачность, создайте вектор графический файл в формате Метафайла, PDF или SVG. Если вы используете формат PS или EPS, прозрачность поддерживается только для фона рисунка и оси. Растровые изображения не поддерживают прозрачность, но будут тесно совпадать с тем, что показано на экране, чтобы придать внешний вид прозрачности.

Примечание

Средством средства отображения рисунков по умолчанию является OpenGL. Если средство отображения фигур отличается от средства отображения, используемого при генерации выхода, некоторые детали сохраненной фигуры могут отличаться от рисунка на отображении. При необходимости отобразить рисунок и сохранить рисунок можно с помощью одного и того же средства отображения. Установите Renderer свойство для рисунка или задайте renderer входной параметр в print функция.

В этой таблице перечислены поддерживаемые векторные графические форматы.

ОпцияВекторный формат графикиСоответствующее расширение файла
'-dpdf'Полная страница Формат переносимых документов (PDF) цвет.pdf
'-deps'Инкапсулированный PostScript (EPS) Уровень 3 черно-белый.eps
'-depsc'Инкапсулированный цвет PostScript (EPS) уровня 3.eps
'-deps2'Инкапсулированный PostScript (EPS) Уровень 2 черно-белый.eps
'-depsc2'Инкапсулированный цвет PostScript (EPS) уровня 2.eps
'-dmeta'Расширенный метафайл (Windows® только).emf
'-dsvg'SVG (масштабируемая векторная графика).svg
'-dps'Полностраничный PostScript (PS) Уровень 3 черно-белый.ps
'-dpsc'Полностраничный PostScript (PS) Level 3 цвет.ps
'-dps2'Полностраничный PostScript (PS) Уровень 2 черно-белый.ps
'-dpsc2'Полностраничный PostScript (PS) Level 2 цвет.ps

Вы не можете сохранить Диаграмм Simulink в форматах PostScript или EPS.

Примечание

Только PDF и полностраничные форматы PS используют первые два элемента PaperPosition свойство. Другие форматы игнорируют эти значения.

Дополнительные опции форматирования, поддерживаемые некоторыми форматами файлов, заданные как одно или несколько из следующих значений:

  • '-tiff' - Включить предварительный просмотр TIFF. Только файлы EPS.

  • '-loose' - Используйте свободный ограничивающий прямоугольник. Только файлы EPS и PS.

  • '-cmyk' - Используйте цвета CMYK вместо цветов RGB. Только файлы EPS и PS.

  • '-append' - Добавить рисунок к существующему файлу PS. Только файлы PS.

Пример: print('my file','-deps','-tiff','-loose') сохраняет текущую фигуру в файл my file.eps использование свободного ограничивающего прямоугольника и предварительный просмотр TIFF.

Имя принтера, заданное как вектор символов или строка, содержащая -P и имя принтера.

Пример: '-Pmy local printer'

Пример: "-Pmy local printer"

Чтобы просмотреть список доступных принтеров, используйте следующую команду:

[~,printers] = findprinters

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

Типы данных: char | string

Драйвер принтера, заданный как '-dwin', '-dwinc', '-dprn', или '-dprnc'. Если вы не задаете драйвер, то print использует драйвер, возвращенный из printopt функция.

Опция, которую вы используете, зависит от вашей системы, например:

СистемаДрайверВыход
Windows'-dwin'Черно-белый
'-dwinc'Цвет
Linux® или Mac'-dprn' Черно-белый
'-dprnc'Цвет

Формат, скопированный в буфер обмена, задается как один из следующих опций:

  • '-dmeta' - Расширенный метафайл (только для Windows)

  • '-dbitmap' - Растровое изображение (Windows и Mac OS)

  • '-dpdf' - PDF (Windows и Mac OS)

Опция развернуть рисунок до заливки страницы, заданная как одно из следующих значений:

  • '-fillpage' - Максимизируйте размер рисунка, чтобы заполнить страницу. Оставьте поле размером 25 дюймов на всех сторонах страницы. Соотношение отметок деления, размещения и сторон рисунка может измениться.

  • '-bestfit' - Максимизируйте размер рисунка, чтобы заполнить страницу, но сохраните соотношение сторон рисунка. Рисунок может не заполнить всю страницу. Эта опция оставляет минимальное поле страницы в 25 дюймов.

Обе опции действительны только при печати рисунка на принтере или при сохранении в формате страницы, таком как PDF и P. Они недопустимы для Диаграмм Simulink.

Разрешение, заданное как вектор символов или строка , содержащая -r и целое число значения, указывающее разрешение в точках на дюйм. Для примера, '-r300' устанавливает разрешение выхода 300 точек на дюйм. Чтобы задать разрешение экрана, используйте '-r0'.

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

Установка разрешения полезна при создании растрового изображения или при использовании средства отображения OpenGL с вектором форматом графического файла (поскольку OpenGL создает растровое изображение даже с вектором форматами). Определение разрешения не влияет на использование средства отображения Painters с форматом векторного графического файла, поскольку Painters создает истинный векторный графический файл, содержащий команды, которые перерисовывают рисунок.

Примечание

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

Типы данных: char | string

Средство отображения графики, заданное как '-opengl' или '-painters'.

  • '-opengl' - средство средства отображения OpenGL. Используйте это средство отображения при сохранении растровых изображений. OpenGL создает растровое изображение даже с векторными форматами, что может ограничить степень, до которой можно редактировать изображение в других приложениях.

  • '-painters' - средство отображения живописцев. Используйте это средство отображения при сохранении векторных графических файлов. Если вы сохраняете в вектор графический файл и если рисунок RendererMode для свойства задано значение 'auto', затем print автоматически пытается использовать средство отображения Painters. Если необходимо убедиться, что выход является графическим файлом истинного вектора, задайте средство отображения Painters. Для примера:

    print('-painters','-deps','myVectorFile')

Примечание

Иногда сохранение файла с '-painters' опция может привести к увеличению времени визуализации и, в редких случаях, может не точно расположить графические объекты в 3-D представлениях. Кроме того, средство отображения Painters не может печатать или сохранять линии тоньше, чем один пиксель.

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

Объект или Диаграмма Simulink фигуры. Вы можете обратиться к рисунку, используя или имя переменной объекта или используя номер рисунка, предшествующий -f. Для примера, -f2 ссылка на рисунок с Number значение свойства 2. При задании Диаграммы Simulink предшествуйте имени модели с -s. Задайте текущую модель используя '-s'.

Вы не можете сохранить Диаграмм Simulink в форматах PostScript или EPS.

Выходные аргументы

свернуть все

Данные изображения, возвращенные как массив n на m на 3. Размер массива данных изображений зависит от PaperPosition свойство рисунка и разрешение выхода.

Примечание

Начиная с R2015b, если вы используете print с '-r0' опция в системе с высоким разрешением, затем размер cdata выходной массив больше, чем в предыдущих релизах или в других системах. Кроме того, количество элементов в cdata может не совпадать с размером рисунка в пикселях на основе PaperPosition рисунка свойство и корневые ScreenPixelsPerInch свойство. Для получения дополнительной информации см. «Поведение с поддержкой DPI» в MATLAB.

Ограничения

  • Запуск MATLAB в режиме отсутствия отображения на Linux или использование -noFigureWindows опция запуска на любой платформе имеет эти ограничения для print:

    • Печать или сохранение рисунков с видимыми ошибками uicontrols. Чтобы напечатать или сохранить рисунок, скрыть uicontrols, установив их Visible свойства для 'off', или использовать '-noui' опция со print функция.

    • Всегда использует средство отображения живописцев, даже если вы задаете '-opengl' опция.

  • В MATLAB Online™, print печать только в PDF. Для дополнительных опций формата файла сохраните рисунок в файл, задав filename.

Подробнее о

свернуть все

Текущая фигура

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

Чтобы напечатать конкретный рисунок, задайте рисунок в качестве первого входного параметра. Если вы не задаете рисунок, то print функция действует на рисунок, возвращенную gcbf. Если gcbf возвращается пустым, затем print действует на рисунке, возвращенной gcf.

Вопросы совместимости

Начиная с R2016a, распечатанные и сохранённые рисунки по умолчанию совпадают с размером рисунка на экране. Ранее печатные и сохранённые рисунки по умолчанию составляли 8 на 6 дюймов.

Совет

  • Можно задать свойства рисунка, чтобы управлять некоторыми параметрами печати и сохранения. В этой таблице перечислены свойства рисунка, связанные с печатью и сохранением.

    Свойство фигурыОписание
    PaperPositionРазмер напечатанной или сохранённого рисунка. Если печать выполняется на принтере или в формате выхода на полную страницу, это свойство также определяет расположение рисунка на странице.
    PaperPositionModeОпределяет, использовать ли PaperPosition свойство или размер рисунка на экране, чтобы задать размер напечатанного или сохраненного рисунка.
    InvertHardcopyОпределяет, использовать ли текущий цвет фона рисунка или изменить цвет фона на белый при печати или сохранении рисунка.
    PaperOrientationОриентация фигуры на печатной странице.
    PaperTypeСтандартный размер бумаги принтера.
    PaperSizeНастраиваемая ширина и высота бумаги принтера.
    PaperUnitsМодули измерения для PaperSize и PaperPosition свойства.

  • Если вы используете систему Linux или Mac и получаете ошибку о недопустимом или неопознанном принтере, попробуйте задать драйвер PostScript для driver опция. Если принтер поддерживает PostScript уровня 3, попробуйте '-dps' для черно-белого или '-dpsc' для цвета. Если принтер поддерживает PostScript уровня 2, попробуйте '-dps2' для черно-белого или '-dps2c' для цвета. Для примера:

    print('-dpsc','-Pmy printer')
    Чтобы использовать этот драйвер в качестве драйвера по умолчанию, отредактируйте printopt файл. Другой способ - распечатать фигуру в PDF файла. Затем распечатайте PDF из внешнего средства просмотра PDF.

  • Если вы печатаете рисунок с коллбэком, заданным для SizeChangedFcn свойство и если размер выхода отличается от размера рисунка на экране, то print функция отображает предупреждающее сообщение. Чтобы избежать предупреждения, установите PaperPositionMode свойство для рисунка, чтобы 'auto'.

Альтернативная функциональность

Начиная с R2020a, вы можете использовать exportgraphics функция для сохранения содержимого любых осей, рисунки, графики, которые могут быть дочерними элементами рисунка, размещения мозаичного графика или контейнера, такого как панель. Эта функция предоставляет лучшую альтернативу print функция, когда вы хотите:

  • Сохраните графику, отображаемую в приложении или в MATLAB Online

  • Минимизируйте пустое пространство вокруг содержимого

  • Сохраните фрагмент PDF с встраиваемыми шрифтами

  • Сохраните подмножество содержимого на рисунке

  • Управление цветом фона без необходимости изменения свойств на рисунке

copygraphics функция (также новая в R2020a) обеспечивает большую часть той же функциональности как и exportgraphics функция, за исключением того, что она копирует содержимое в буфер обмена системы вместо того, чтобы сохранять его в файл. Используйте эту функцию для копирования и вставки содержимого из MATLAB в другие приложения.

Представлено до R2006a