我将一个URL提取到IFRAME中,现在想要捕获结果的缩略图,以便稍后向用户显示他们所遵循的链接。
void receiveHtml(Event e) {
...
iframe.convertToImage... // <----- ????? How to do this?
}
IFrameElement iframe = query('#iframehtml') as IFrameElement;
...
iframe.on.load.add(receiveHtml);
...
iframe.src = url; // E.g. url='http://someplace.com/dir/'
在DART中是否有办法将iframe文档捕获到图像中? (然后我可以缩小到缩略图并存储以供日后使用)。
答案 0 :(得分:2)
你不能在客户端做到这一点,至少不是没有iframe在同一个来源(“同一个网站”)。否则,这将带来安全风险,因为它为许多可能性打开了大门,例如用用户的银行帐户详细信息截取银行网站。
但是,您可以在服务器端执行此操作,但这并不容易。
您可以做的一件事就是安装webkit2png并让它制作网站截图。你可以这样称呼它:
import 'dart:io';
main() {
Process.run('python', ['/path/to/webkit2png', 'http://google.com']).then((result) {
// Here you can open and do whatever you want with the screenshots.
// The files are placed in the current directory.
print(new File('somescreenshot.png').readAsBytesSync());
});
}