首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cimg全屏显示

Cimg全屏显示
EN

Stack Overflow用户
提问于 2017-11-28 15:23:02
回答 1查看 818关注 0票数 0

我已经编写了一个C++程序来执行一个幻灯片放映,它在我的ubuntu桌面和目标Raspberry上完美地、随机地工作,幻灯片放映应该在那里运行。

这基本上是我用来显示的代码:

代码语言:javascript
复制
#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图像查看器那样),没有变形。

我希望你能给我一个例子,说明我应该如何编码。谢谢你,雷纳托·罗奇

EN

回答 1

Stack Overflow用户

发布于 2017-12-09 20:59:09

变化

代码语言:javascript
复制
disp.resize(cimg_fitscreen(img.width(),img.height(),1),0);

转到

代码语言:javascript
复制
disp.resize(CImgDisplay::_fitscreen(img.width(),img.height(),1,0,-100,false),
            CImgDisplay::_fitscreen(img.width(),img.height(),1,0,-100,true),0);

如果您想要一个黑色背景,添加

代码语言:javascript
复制
CImgDisplay bg(CImgDisplay::screen_width(),CImgDisplay::screen_height(),0,0,1,0);

在此之前

代码语言:javascript
复制
CImgDisplay disp(1,1,0,0,1,1);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47535059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档