我已经编写了一个C++程序来执行一个幻灯片放映,它在我的ubuntu桌面和目标Raspberry上完美地、随机地工作,幻灯片放映应该在那里运行。
这基本上是我用来显示的代码:
#include "CImg.h"
using namespace cimg_library;
int main(int argc, char **argv) {
const char const folder = cimg_option("-i",".","Path containing pictures");
char pattern[1024];
std::snprintf(pattern,1024,"%s/.jpg",folder);
const CImgList filenames = cimg::files(pattern,true,0,true);
CImgDisplay disp(1,1,0,0,1,1);
cimglist_for(filenames,l) {
const char
*const filename = filenames[l],
*const basename = cimg::basename(filename);
const CImg img(filename);
disp.resize(cimg_fitscreen(img.width(),img.height(),1),0);
disp.display(img).set_title(basename);
if (disp.is_keyESC()) std::exit(0);
cimg::wait(3000);
}
return 0;
}"程序运行完美,但图片没有像我那样全屏显示。我认为原因取决于大小的调整。我已经看到命令§set_fullscreen(),但是我没有实现这个解决方案。
我想要的是,这些图片是在全屏上观看的(就像Ubuntu照片管理器或Raspberry图像查看器那样),没有变形。
我希望你能给我一个例子,说明我应该如何编码。谢谢你,雷纳托·罗奇
发布于 2017-12-09 20:59:09
变化
disp.resize(cimg_fitscreen(img.width(),img.height(),1),0);转到
disp.resize(CImgDisplay::_fitscreen(img.width(),img.height(),1,0,-100,false),
CImgDisplay::_fitscreen(img.width(),img.height(),1,0,-100,true),0);如果您想要一个黑色背景,添加
CImgDisplay bg(CImgDisplay::screen_width(),CImgDisplay::screen_height(),0,0,1,0);在此之前
CImgDisplay disp(1,1,0,0,1,1);https://stackoverflow.com/questions/47535059
复制相似问题