Это не стандартная функция.Если вы прочитаете функцию, вы увидите errStr, который она возвращает для этого.
function [ok,errStr] = read_epsfilecontent( epsFile )
% Reads the content of the eps file into epsFileContent
global epsFileContent
ok = 0;
errStr = [];
fh = fopen(epsFile,'r');
if fh == -1
errStr = ['File: ' epsFile ' cannot be accessed or does not exist'];
return
end
Затем мы выясняем, когда fopen возвращает -1
fileID = fopen (имя файла) открывает файл, имя файла для двоичного доступа для чтения и возвращает целочисленный идентификатор файларавно или больше 3. MATLAB® резервирует идентификаторы файлов 0, 1 и 2 для стандартного ввода, стандартного вывода (экрана) и стандартной ошибки соответственно.
Если fopen не может открыть файл, то fileIDравно -1.
Это означает, что, пожалуйста, опубликуйте часть своего кода, чтобы мы могли выяснить, почему он не может открыть ваш файл.
Редактировать: После некоторого обхода, и нет необходимости загружать код, я решил вашу проблему.Существует другая реализация, которая называется eps2xxx Во время выполнения вашего кода я получил эту ошибку
Ошибка при создании временного файла eps: * .eps - Файл: C: \ Users \ Ryan \ DocumentsДоступ к \ MATLAB * .eps невозможен или не существует
Что привело меня к информации в документации здесь.
% Create tmp file,...
[ok,errStr] = create_tmpepsfile(source,tmpFile,orientation);
if ~ok
status = ['Error while creating temporary eps file: ' epsFile ' - ' errStr];
if nargout, result = 1; end;
if nargout > 1, msg = status; else, disp(status); end;
И я прочитал, что вам нужен GhostScript, я не был уверен, что у меня это все равно есть.Я скачал его и дал полный путь к GS, как показано ниже.
figure()
fullgspath = 'C:\Program Files\gs\gs9.23\bin\gswin64c.exe';
plot(linspace(1,100),linspace(1,100)); %Simple line
print('my_plot','-depsc');
eps2xxx('my_plot.eps',{'pdf'},fullgspath);
, который создал ваш симпатичный маленький pdf здесь. ![enter image description here](https://i.stack.imgur.com/OQJC0.png)