exponenta event banner

печать

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

Описание

пример

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

Файл векторной графики

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

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

Если требуется вывод с прозрачностью, создайте файл векторной графики в формате Metafile, 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) уровень 3 цвет.ps
'-dps2'Полностраничный PostScript (PS) Уровень 2 черно-белый.ps
'-dpsc2'Полностраничный PostScript (PS) Уровень 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' - Максимизируйте размер фигуры, чтобы заполнить страницу. Оставьте поле 0,25 дюйма на всех сторонах страницы. Деления, макет и соотношение сторон фигуры могут измениться.

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

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

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

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

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

Примечание

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

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

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

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

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

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

Примечание

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

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

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

Невозможно сохранить блок-схемы Simulink в формате PostScript или EPS.

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

свернуть все

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

Примечание

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

Ограничения

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

    • Печать или сохранение фигур с видимыми ошибками контроля. Чтобы напечатать или сохранить фигуру, скройте элементы управления, установив их 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