How do I insert a picture into a script?
조회 수: 490 (최근 30일)
이전 댓글 표시
I need to have an image in my code for users to reference. I don't want to imread or imload, I just want an immage pasted almost like a comment. Off to the side and not affecting the code at all. Can I do that?
댓글 수: 0
채택된 답변
Steven Lord
2022년 11월 19일
If your script is a live script that you have open in the Live Editor, select the Insert tab of the Toolstrip then click the Image button.
댓글 수: 4
Steven Lord
2022년 11월 19일
This also works in live functions.
If you're asking if you can somehow embed a picture into a plain code file with the .m extension and have it automatically displayed in the Editor the answer is no. MATLAB program files with the .m are text files.
Depending on how much effort you want to put into this project, if this is part of a toolbox that you're writing you could create custom documentation.
Or you could create a simple app that allows users to enter the data then have the app call your computational function to compute the answer.
추가 답변 (1개)
Jan
2022년 11월 19일
편집: Jan
2022년 11월 19일
It depends on how you would like to see the image. It cannot be displayed in the editor, because scripts are M-files and therefore pure text files. Of course ASCII-art would be possible.
- https://www.mathworks.com/matlabcentral/fileexchange/4732-ascii-text-image-generator
- https://www.mathworks.com/matlabcentral/fileexchange/11307-ascii-art-variation
- https://www.pinterest.de/keinze/ascii-art/
If you want to display it by imshow you can embed base64 encoded data:
% Create the data stream as ASCII:
img = randi([0, 255], 20, 30, 'uint8'); % Example image
B64 = org.apache.commons.codec.binary.Base64;
str = char(B64.encode(img(:))).';
% Store in the file:
img64 = ['0Ocg6aEYR4z19yj49XzMJGvqyvWnCdnvrcG+ZKcrtAhGCxjSsVHzCH', ...
'Bhw8svfXKltcFGrqcpHn/1V5U5wEGBsuT1jCMmQddB0D7tWTJAnXla1JWM6', ...
'knBwGGREw2Hx+8hkXgDVinLT4cqmkOnsL9zFTrpJ9OJ/xRxG/YBxtHeFWZC', ...
'zG7pLkMlIt6UjCXan1mDZhM9Hy89agzn8X19VuZeHMdjPWcYIfH0kw88WtI', ...
'DCyumu6VzjEu+MK8uXqDHFO3GfG9yToKC0cukYM+IWfDgjJ+WNU14O9gxOS', ...
's6b0/sbi/n+nAcQmiYQ5q2OB5LUWyCFUPNB+26fZQ8dfaLhTt9n61lXvwJ4', ...
'unLGUNVriK4G6d+x7fn5FWyMge+gHrnnJ7czpMuPeIHfSr6toB4D64KEoUY', ...
'0dG4JqiE+abMdG7TFSIsZNTND2aGaqigSm4D+yobXzJ9VvPrDbxEbIzxavt', ...
'Ns6qKsqotIP8rCI/hqzBedfso26VgMG17HpY5YpVASp1D0/u6WJUb6OHRQp', ...
'gFbFApLWwYmXiys6MIEVGHp2jRt/eIUxucx2wXRCdHcIZ14ITxo/U9rUqrs', ...
'RFBOarYWMesAZpj6gB2bHXFUsh4CS24eSdXmzG9PupEwzBJF5Oui2ykpa2i', ...
'8TW1PB6bc3WpxVmpatfVQZ2Vit5DUR7wpXqji6WLuIX+NxscEGdyXcOgxe7', ...
'5MSOyGIaH3Hxkq72FWSaWQwvBPnGwW7xlrrRxBVRsRTLSbuNkxGXOwWA3yv', ...
'NTq3DVxCrc/YPiliczaL/TylGIFxwirX4wfiUO'];
B64 = org.apache.commons.codec.binary.Base64;
img = uint8(B64.decode(uint8(img64));
imshow(reshape(img, 20, 30));
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Convert Image Type에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!