{"id":17218523,"url":"https://github.com/novomesk/qt-jpegxl-image-plugin","last_synced_at":"2025-04-06T09:09:59.047Z","repository":{"id":48279034,"uuid":"316805330","full_name":"novomesk/qt-jpegxl-image-plugin","owner":"novomesk","description":"Qt plug-in to allow Qt and KDE based applications to read/write JXL images.","archived":false,"fork":false,"pushed_at":"2025-02-18T15:16:46.000Z","size":3496,"stargazers_count":100,"open_issues_count":1,"forks_count":8,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-30T08:09:56.074Z","etag":null,"topics":["imageformats","jpeg-xl","jpegxl","kde","qt"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/novomesk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-28T19:17:35.000Z","updated_at":"2025-03-06T11:11:55.000Z","dependencies_parsed_at":"2023-12-25T16:56:07.253Z","dependency_job_id":"20b538a2-f650-4b03-bffc-f1d56fc11998","html_url":"https://github.com/novomesk/qt-jpegxl-image-plugin","commit_stats":{"total_commits":95,"total_committers":5,"mean_commits":19.0,"dds":"0.052631578947368474","last_synced_commit":"fe618c56a090ecbcbedb8b29800d87e4e07d77cd"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novomesk%2Fqt-jpegxl-image-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novomesk%2Fqt-jpegxl-image-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novomesk%2Fqt-jpegxl-image-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novomesk%2Fqt-jpegxl-image-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/novomesk","download_url":"https://codeload.github.com/novomesk/qt-jpegxl-image-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247457803,"owners_count":20941906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["imageformats","jpeg-xl","jpegxl","kde","qt"],"created_at":"2024-10-15T03:47:11.782Z","updated_at":"2025-04-06T09:09:59.016Z","avatar_url":"https://github.com/novomesk.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# qt-jpegxl-image-plugin\n\n## Table of Contents\n\n1. [Description](#Description)\n2. [Installation](#Installation)\n3. [Test](#Test)\n\n# Description\n\nQt plug-in to allow Qt and KDE based applications to read/write JXL images.\n\nWork in progress experimental implementation using [libjxl](https://github.com/libjxl/libjxl)\n\n**kimageformats 5.89** contains almost identical plug-in like this one already. If you have `kimg_jxl.so` installed, don’t install qt-jpegxl-image-plugin. If your distribution maintainer built kimageformats without JPEG XL support, you may install qt-jpegxl-image-plugin. It is not recommended to have `libqjpegxl.so` and `kimg_jxl.so` installed at the same time.\n\n# Installation\n\n### 1. Clone, build and install JPEG-XL\n\n**!Important!** Clone must be `--recursive` to include third party packages\n\nCode for download and compilation:\n```\ngit clone --depth 1 https://github.com/libjxl/libjxl.git --recursive\ncd libjxl\nmkdir build\ncd build\ncmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DJPEGXL_ENABLE_PLUGINS=ON -DBUILD_TESTING=OFF -DJPEGXL_WARNINGS_AS_ERRORS=OFF -DJPEGXL_ENABLE_SJPEG=OFF ..\nmake\n```\nCode for installation (run as root):\n\n`make install`\n\n### 2. Update mime database file\n\nCheck if the `image-jxl.xml` file was installed to `/usr/share/mime/packages/` folder and run (as root):\n\n`update-mime-database /usr/share/mime/`\n\n### 3. Build qt-jpegxl-image-plugin\n\nMake sure that the Qt 5 base development packages (`qtbase5-dev` on Debian/Ubuntu) are installed. At least Qt 5.14 is required.\n\nDownload and build:\n```\ngit clone --depth 1 https://github.com/novomesk/qt-jpegxl-image-plugin\ncd qt-jpegxl-image-plugin\n./build_libqjpegxl_dynamic.sh\n```\nInstall (run as root):\n\n`make install`\n\n### 4. Add `image/jxl` to `/usr/share/kservices5/imagethumbnail.desktop`\n\n1. Open `/usr/share/kservices5/imagethumbnail.desktop` with editor of your choise\n2. Find line that starts with `MimeType=` and add `image/jxl;` to it's end, so line looks like `MimeType=image/cgm; ... ;image/rle;image/avif;image/jxl;`, save file.\n3. Run `update-desktop-database`\n\n# Test\n```\ncd testfiles\ngwenview jpegxl-logo.jxl\n```\n\nExpected result:\n\n![jpegxl-logo.jxl in gwenview](testfiles/gwenview.png)\n\n# Enjoy using JXL in applications\n\n### digiKam\n![JPEG XL in digiKam](imgs/digiKam.png)\n\nJPEG XL support has to be explicitly enabled in digiKam. Go to Settings -\u003e Configure digikam -\u003e Views -\u003e Mime Types and add `jxl` to the to the Additional image file extensions field:\n![How to enable JXL extension in digiKam](imgs/digiKam2.png)\n\n### KolourPaint\n![JPEG XL in KolourPaint](imgs/KolourPaint.png)\n\n### KPhotoAlbum\n![JPEG XL in KPhotoAlbum](imgs/KPhotoAlbum.png)\n\n### LXImage-Qt\n![JPEG XL in LXImage-Qt](imgs/LXImage-Qt.png)\n\n### qimgv\n![JPEG XL in qimgv](imgs/qimgv.png)\n\n### qView\n![JPEG XL in qView](imgs/qView.png)\n\n### PhotoQt\n![JPEG XL in PhotoQt](imgs/PhotoQt.png)\n\n### YACReader\n![JPEG XL in YACReader - Yet Another Comic Reader](imgs/YACReader.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovomesk%2Fqt-jpegxl-image-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovomesk%2Fqt-jpegxl-image-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovomesk%2Fqt-jpegxl-image-plugin/lists"}