черчение с черным фоном в октаве: сохранение цвета фона в файле печати - PullRequest
0 голосов
/ 03 мая 2018

Я использую октаву (4.2.2), чтобы сделать фигуру на черном фоне.

clear;clf
%% circle
theta=linspace(0,2*pi,91);xc=cos(theta);yc=sin(theta);
fill(0.3*xc,0.3*yc,[0,0.5,0.5]);hold on
set(gca,'color',[0 0 0])

Этот скрипт выполняет это на терминале, однако, если я распечатаю рисунок, используя

print -dpng black.back.png

изображение имеет белый фон. Если команда задания цвета изменена на [1,1,1], и рисунок, отображаемый на терминале, и напечатанное изображение имеют белый фон. Кто-нибудь может предложить способ сохранить изображение с черным фоном в файл?

1 Ответ

0 голосов
/ 03 мая 2018

Это остаток ранних дней (задолго до появления Windows), когда фон дисплея по умолчанию был черным, а бумага - белым, как всегда. У рисунков есть свойство с именем InvertHardCopy, которое (по-прежнему, после всех этих лет) включено по умолчанию. Это свойство позволяет печатать фигуры и оси на белом фоне.

Установите для ожидаемого поведения:

set(gcf,'InvertHardCopy','off')

См. Документацию MATLAB . В документации Octave есть похожая запись .

...