二維碼解析使用的類庫是zxing(官網 https://github.com/zxing/zxing)。
這個類庫是谷歌的,原來有c++版本,後來的更新去掉了,zxing介紹了目前基於zxing的其他類庫。
glassechidna/zxing-cpp(https://github.com/glassechidna/zxing-cpp)已經好久不更新了,官網介紹也是使用的比較老的版本
nu-book/zxing-cpp(https://github.com/nu-book/zxing-cpp)這個是最新的
ZBar/ZBar(https://github.com/ZBar/ZBar)是c語言版本,也好久沒更新了。
所以我們使用nu-book
nu-book在官網介紹瞭如何編譯windows版本。但是沒有使用的介紹。
- 所以我們先clone這個工程到本地。
- 安裝cmake
- 用cmake編譯zxing-cpp/example目錄,生成ZXingExamples.sln
- 編譯,生成scan_png.exe
- 在cmd中執行scan_png.exe xxx.png,就可以看到解析出來的url
- 然後按照scan_png.cpp中main的方法修改到自己工程中
- 缺少的標頭檔案都可以在zxing-cpp中找到,因為一個個引用太麻煩,可以把zxing-cpp->core->src下的全部拷貝到自己目錄
- 然後把example中生成的lib拷貝到自己工程目錄,在工程中引用