Code Monkey home page Code Monkey logo

Comments (7)

BLumia avatar BLumia commented on August 10, 2024

假定你是 Windows 用户并且用的是我预编译好的版本,那添加这个支持需要做的事情就是在 CI 环境里编译好 LibHeif。

我最近不太有空去和 CI 打乒乓,如果你(或者任何看到这个 Issue 的人)有意愿的话,欢迎 PR :)

from pineapple-pictures.

cherub0507 avatar cherub0507 commented on August 10, 2024

“需要做的事情就是在 CI 环境里编译好 LibHeif” 是我做不到的事情
image

from pineapple-pictures.

BLumia avatar BLumia commented on August 10, 2024

我短期内可能没空做这件事情,那就只能等其他人贡献或者等我有空了。

from pineapple-pictures.

BLumia avatar BLumia commented on August 10, 2024

上周刚好有一点空于是就折腾了一下,插件是顺利编译出来了但我手头的测试文件却完全加载不了。相比 MSYS2 环境的现成依赖倒是可以工作的很正常,不清楚是不是还有什么别的依赖需要额外处理...

作为参考目前的修改是: 9743bd7 (位于名为 heif 的分支)

暂时没有更多精力折腾了,可能又要搁置一段时间。有兴趣的人可能可以参考上面的修改继续搞((

from pineapple-pictures.

lighter540923555 avatar lighter540923555 commented on August 10, 2024

能否使用网上第三方编译的libheif.dll添加到文件夹里使用?

from pineapple-pictures.

BLumia avatar BLumia commented on August 10, 2024

能否使用网上第三方编译的libheif.dll添加到文件夹里使用?

如果你指的是我在 release 里提供的版本的话,只放那个 DLL 不够,需要把 HEIF 的插件也构建出来(kimg_heif.dll)。

如果你指的是 #99 (comment) 里提到的版本的话,是的。但需要注意,这里 CI 使用的是 MinGW 进行的构建,所以不能使用 MSVC 版本的 DLL(否则就得包括程序本体和相关依赖也使用 MSVC 构建才行)。

不过事实上如果完全走 MSYS2 编译的话是默认支持 HEIF 格式的(需要 kimageformats,MSYS2 仓库里本身就有,直接装就行),不需要任何额外干预,甚至默认还支持更多其他格式。只是走 MSYS2 的话打包出来的 DLL 文件会比我目前提供的版本多出来很多,会减慢一点点启动速度,所以我提供的版本没选这种方案。

from pineapple-pictures.

BLumia avatar BLumia commented on August 10, 2024

新的进展。

既然我懒得折腾 MinGW 环境的构建,于是考虑干脆提供一个 MSVC 版本,这样可以复用别人构建好的依赖。目前 MSVC 的 CI 已经就绪了。当前体验步骤如下:

  1. 目前可以在 https://github.com/BLumia/pineapple-pictures/actions/runs/9817575459 下载 windows-msvc2022-qt6.5.3-cmake-package ,下载完毕后解压到自己偏好的位置。(后续这个 CI 会合入主干,可以自己找到对应的)
  2. 前往 jurplel/kimageformats-binaries 的 Release 页面 下载 msvc 与 qt 版本均对应的插件资源包,比如这个例子对应到 kimageformats-windows-2022-6.5.3-win64_msvc2019_64.zip(可能需要点击 Show all XX assets 展开显示完整资源列表)
  3. 将上述第二步下载到的资源包中 kimg_ 前缀的 DLL 文件解压到第一步看图程序所在位置的 imageformats 文件夹内
  4. 将上述第二步下载到的资源包中不是以 kimg_ 为前缀的 DLL 文件解压到 ppic.exe 主程序所在的文件夹内
  5. 完成,已经可以正常打开 HEIC 格式(以及包括 JXL 之类的其他格式)的图像文件了。

image

需要注意的是,截至目前,这个 CI 构建的 msvc 版本并未提供 EXIF 元信息支持,也就是说在属性对话框看到的信息会只有基本信息。后续可能会提供包含 EXIF 支持的版本,但这个和此 issue 就没有关系了。

from pineapple-pictures.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.