#include #include #include #include #include #include "UtilTool.h" constexpr int CLIENT_WIDTH = 800; constexpr int CLIENT_HEIGHT = 600; int main(int argc, char** argv){ spdlog::info("Current WorkDir Is: {}",argv[0]); if(argc != 2){ spdlog::error("Usage: mp filename "); return 0; } if(!UtilTool::CheckFileIsImage(argv[1])){ spdlog::info("Unsupport File Type: {}",argv[1]); return 0; } sf::Texture texture; texture.loadFromFile(argv[1]); sf::RenderWindow window(sf::VideoMode(CLIENT_WIDTH, CLIENT_HEIGHT), "mp"); sf::Sprite sprite; sprite.setTexture(texture); auto imgSize = texture.getSize(); auto scale = std::min(static_cast(CLIENT_WIDTH)/imgSize.x,static_cast(CLIENT_HEIGHT)/imgSize.y); sprite.setScale(scale, scale); bool running = true; while(running){ sf::Event event; while(window.pollEvent(event)){ if(event.type == sf::Event::Closed){ running = false; } if(event.type == sf::Event::KeyPressed){ if(event.key.code == sf::Keyboard::Escape){ running = false; } } } window.clear(); window.draw(sprite); window.display(); } return 0; }