Articles

WxWidgets és Magick++ v/s Qt : Tapasztalataim a Photopallal

Photopal a neve egy egyszerű asztali alkalmazásnak, amin dolgoztam. A felhasználók egyszerűen áthúzzák a képet, és az a felhasználó által preferált felbontásra konvertálódik (alapértelmezett 72dpi). Drop nagyszámú képet vagy mappát, és hatékonyan konvertálja őket.

Elkészítettem ezt az alkalmazást két népszerű könyvtár segítségével – wxWidgets és Qt. Először mindkettőt elmagyarázom, ha valaki használni akarja őket, majd összehasonlítom mindkettőt.

Hogyan használjuk a WxWidgets-et Windowsban?

Töltse le a wxWidgets forrását a https://www.wxwidgets.org/downloads/ . Csomagolja ki a letöltött fájlt.

Most a wxWidgets mappa alatt navigáljon a /build/msw .
A különböző visual studio projektek neveit wx_vc néven találja a visual studio verziója után, pl. a visual studio 13 esetében ez wx_vc12 .
Nyissa meg a Visual Studio-ban és fordítsa le a kívánt konfigurációval pl. kiadás x64-ben .

A megfelelő fájlok létrejönnek a wxWidgets mappában az include és lib mappában. A wxWidgets számára szükséges fájlok generálódnak.

A projektbe való beépítéshez nyissa meg a projekt tulajdonságait.
A C/C++ tulajdonságok – Általános fül alatt adja meg a (wxWidgets)/include és (wxWidgets)/include/msvc mappák elérési útját a További beépítési könyvtárakban.

A C/C++ tulajdonságok – Preprocessor – Preprocessor Definitions alatt adja hozzá a WIN32 , WXUSINGDLL , _WXMSW , wxMSVC_VERSION_AUTO , _UNICODE és UNICODE.

Most a Linker – General – Link Library Dependencies alatt adja hozzá a lib/vc mappa elérési útját, amely tartalmazza a dll fájlokat e.pl. vc120_x64_dll.
A Linker – Input – Additional Dependencies alatt add hozzá a szükséges lib fájlokat pl. wxmsw31u_core.lib , wxmsw31u_gl.lib és wxbase31u.lib.
WxWidgets most már minden be van állítva.

Hogyan használjuk a Magick++-t Windowsban?

Töltse le a Magick++ forrását https://www.imagemagick.org/script/download.php és csomagolja ki.

Az igényeinek megfelelő munkaterület létrehozásához egyszerűen menjen a
VisualMagick\configure mappába, és nyissa meg a configure.dsw munkaterületet (a
Visual Studio 6 esetében) vagy a configure.sln-t (a Visual Studio 7 vagy 8 esetében).
A build konfigurációt állítsa Release vagy Debug értékre. Építse és futtassa a configure programot, és kövesse a képernyőn megjelenő utasításokat.

A sikeres építés után a VisualMagick\bin mappában található az összes szükséges fájl, amely a
minden parancssori eszköz futtatásához szükséges. Ez magában foglalja az EXE, DLL könyvtárakat és az ImageMagick konfigurációs fájlokat.
A projektben való futtatáshoz egyszerűen definiálja a fejlécfájlokra (include könyvtár) és a lib fájlokra (lib könyvtár ) való hivatkozást a Visual Studio-ban.
Egyébként hozzáadja a CORE_RL_Magick++_.lib és a CORE_RL_MagickCore_.lib a további függőségekhez a Linker – Input alatt .Szintén másolja az xml fájlokat a futtatható helyre.

Most jön a trükkös rész , az imagemagick csak azokon a rendszereken fut, ahol már telepítve van. Ennek a nehézségnek a leküzdéséhez , egyszerűen töltse le az imagemagick exe fájlját. Menjen a Program files/ imagemagick menüpontba és másolja a dll fájlokat a coders mappa alá. Most már az imagemagick készen áll a futtatásra.

Hogyan használható a WxWidgets Ubuntuban ?

Nyissa meg a terminált és írja be a
deb http://apt.wxwidgets.org/ natty-wx main
deb-src http://apt.wxwidgets.org/ natty-wx main

A digitális aláírás hozzáadásához írja be :
curl http://apt.wxwidgets.org/key.asc | sudo apt-key add –

Futtassa a következő parancsokat a terminálban:
sudo apt-get update
sudo apt-get install wx2.8-headers libwxgtk2.8-0 libwxgtk2.8-dev
cd /usr/include
ls | grep wx
sudo ln -sv wx-2.8/wx wx

Adja hozzá a `wx-config – cxxflags` `wx-config -libs` és a szükséges wxWidgets könyvtárakat a g++ parancshoz a WxWidgets projekt fordításakor.

Hogyan használjuk a Magick++-ot Ubuntuban?

Nyissa meg a terminált, és építse be a Magick++ alapvető eszközeit:
sudo apt-get install build-essential checkinstall && apt-get build-dep imagemagick -y

Most töltse le az ImageMagick-et a következő beírással:
sudo wget http://www.imagemagick.org/download/ImageMagick.tar.gz

Tömörítse ki a tar :
sudo tar xzvf ImageMagick.tar.gz

Futtassa a következő parancsokat a terminálban :
cd ImageMagick-7.0.4-5
./configure
make clean
make
checkinstall
ldconfig /usr/local/lib
ImageMagick készen áll a rendszerén.

Megközelítés 2 – Qt :

Hogyan használjuk a Qt-t?

Töltse le a Qt-t a hivatalos honlapról az online vagy az offline telepítővel – https://www.qt.io/download-open-source/

A telepítés után nyissa meg a Qt creator-t.Hozzon létre egy Qt projektet, és futtassa azt release vagy debug módban.

Készítsen egy disztribúciót a Qt-ben :
Menjen a C:\Qt\(verzió)\(fordító)\bin . pl. C:\Qt\5.9.1\msvc2013_64\bin
Nyissa meg itt a terminált és futtassa :
windeployqt (a bináris fájl helye) .
A forgalmazható futtatható állománya a szükséges dll-lel együtt automatikusan elkészül.

A WxWidget és a Magick++ vs Qt összehasonlítása :

A WxWidgets csak egy Gui könyvtár és a Magick++-ra volt szüksége a képfeldolgozáshoz, míg a Qt önmagában egy teljes értékű könyvtár volt és különböző segédprogramokat tartalmazott , amelyek közül az egyik a képfeldolgozás volt. Könnyen észrevehető, hogy a Qt használata kevésbé bonyolult, mint a WxWidgets . Még a Qt kódját is egyszerű megírni és megérteni.

De a könnyűséggel együtt jár az absztrakciós szint növekedése is. Qt sokkal absztraktabb, mint a WxWidgets, ami eléggé észrevehető volt, amikor dolgoztam pthread a wxWidgets és a Qt saját szál QThread. Tehát az alkalmazási területtől függ, hogy Qt-vel vagy WxWidgets-szel akarsz-e dolgozni. Az én particluar esetemben azonban a Qt volt a jobb választás.

Ha bármilyen nehézséggel szembesülsz bármelyik könyvtár megvalósításában , szívesen segítek.