Вставить ссылку на изображение в Matlab? - PullRequest
3 голосов
/ 03 августа 2011

Я хочу поместить ссылку на документ в изображение, которое у меня есть в matlab. У меня есть конкретный регион, я хочу поставить ссылку. Например, я хочу, чтобы в изображении была ссылка в позиции x = 40, y = 120 с адресом документа. Что-то похожее на это ниже, я знаю, что это не правильный код Matlab.

text(40,120, '<a href="C:\Documents and Settings\Sentinelle\Desktop\LCModel\sl5_knt1\sl5_11-6.pdf"; ">Click here for plot documentation</a>')

Возможно ли это сделать? Я хочу использовать функцию imshow () или imtool (), щелкнуть область изображения и увидеть документ.

Ответы [ 2 ]

3 голосов
/ 04 августа 2011

Согласно аналогичному обсуждению , вы можете создать UICONTROL pushbutton, который имеет преимущество в том, что принимает строку ввода HTML. Затем, используя FINDJOBJ , мы можем имитировать вид кликабельной гиперссылки:

fName = 'C:\path\to\file.pdf';
str = '<html><a href="">Click here for plot documentation</a></html>';

figure('Resize','off', 'MenuBar','none')
imshow('coins.png')
hButton = uicontrol('Style','pushbutton', 'Position',[320 50 170 20], ...
    'String',str, 'Callback',@(o,e)open(fName));

jButton = findjobj(hButton);
jButton.setCursor( java.awt.Cursor(java.awt.Cursor.HAND_CURSOR) );
jButton.setContentAreaFilled(0); 

screenshot

3 голосов
/ 03 августа 2011

Вы можете установить текстовое свойство 'ButtonDownFcn' для открытия данного документа, используя функцию OPEN :

filePath = 'C:\Documents and Settings\Sentinelle\Desktop\LCModel\sl5_knt1\sl5_11-6.pdf';
text(40,120,'Click here for plot documentation',...
     'ButtonDownFcn',['open(''' filePath ''');']);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...