1.打开附件170672 [详细信息]从错误#1412132.幻灯片中央有一个动画GIF在编辑模式下完全不可见。3.进入演示模式,您将看到动画GIF(24.2和24.8)。版本:24.8.0.0.alph0+(X86_64)/LibreOffice Community内部版本ID:dc92b9e9951ef118d823d54f022c2e41a27CPU线程数:12;操作系统:Linux 6.8;UI渲染:默认;VCL:gtk3区域设置:en-US(en_US.UTF-8);用户界面:en-US这是一个回归,GIF以编辑模式显示在版本:7.6.7.0.0+(X86_64)/LibleOffice社区内部版本ID:88f6a250076eb2a825084c84193b84f3b94ce112CPU线程数:12;操作系统:Linux 6.8;UI渲染:默认;VCL:gtk3区域设置:en-US(en_US.UTF-8);用户界面:en-US(在7.6和24.2之间有一个过渡犯罪81994cb2b8b32453a92bcb011830fcb884f22ff3日期:4月16日星期五20:33:10 2021+0200转换内部vcl位图格式透明度->alpha(II)导致了大约六次衰退;也许它修好了错误#141213同时还负责此回归?)
可复制版本:24.2.2.2(X86_64)/LibreOffice Community内部版本ID:d56cc158d8a96260b836f100efbef25d6f1a01CPU线程数:16;操作系统:Windows 10.0内部版本22631;UI渲染:滑雪/光栅;VCL:赢区域设置:es-es(es_es);用户界面:en-US计算:CL螺纹和版本:24.8.0.0.alph0+(X86_64)/LibreOffice Community内部版本ID:传真7c15593521c0ebceb043f82f916ee5ccf9dCPU线程数:16;操作系统:Windows 10.0内部版本22631;UI渲染:默认;VCL:赢区域设置:es-es(es_es);用户界面:en-US计算:CL螺纹
在windows10中对24.8进行了bibised9fb3970a1a599eae2447f67465978434ee758b(但不确定是否降级)将产品版本提升到24.8.0.0.alph0+。日期:12月8日星期五16:09:10 2023+0100
在windows10中对24.8进行了bibised9fb3970a1a599eae2447f67465978434ee758b(但不确定是否有所缓和)将产品版本提升到24.8.0.0.alph0+。日期:12月8日星期五16:09:10 2023+0100
参考了windows 10 24.8版,它指向cc60e2eacdf2d55e0f52754d1e0801479b199615作者:诺埃尔·格兰丁<noel.grandin@collabora.co.uk公司>作者日期:2024-03-16 07:31:14+0100审核日期:https://gerrit.libreoffice.org/c/core网站/+/164865提交消息:降低vcl中的符号可见性
我认为把结果一分为二是不对的。这在我出狱前的某个地方被打破了。
嗨,诺埃尔,让我再检查一下。
这似乎是从bibisect-repository/OS linux-64-24.2中的以下提交开始的。添加抄送:至Patrick Luby;你能看看这个吗?谢谢42ed678aa24ff8e42839898ae38662842452e9df2是第一次错误提交犯罪42ed678aa24ff8e42839898ae38662842452e9df2作者:Jenkins Build用户<tdf@pollux.tdf>日期:8月10日星期四14:04:04 2023+0200来源12fd870113a663添加5ceb38c61f1986a34095d0e155429:tdf编号156630绘制动画PNG图像时消除不透明部分|https://gerrit.libreoffice.org/c/core网站/+/155429
如果我应用以下调试补丁,那么在macOS上,此错误不再出现在文档窗口、打印或导出到PDF中。不幸的是,这种创建alpha掩码的代码交换导致tdf编号156630为了重现,动画图像之间必须有不同的东西。我将继续调试,并在有消息时再次发布:diff—git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx b/drawinglyer/source/primitive2d/graphipprimitiveHelper2d.cxx索引d756e6e3b74f。。03cecb5c6a7e 100644---a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx+++b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx@@-180,12+180,12@@namespace drawinglayer::primitive2d位图Ex位图;if(使用AlphaMask){-const AlphaMask aMask位图(maVirtualDeviceMask->GetBitmap(Point(),maVirtualDevice Mask->GetOutputSizePixel()));+常量位图aMaskBitmap(maVirtualDeviceMask->GetBitmap;bitmap=位图Ex(主位图,掩码位图);}其他的{-位图aMaskBitmap(maVirtualDeviceMask->GetBitmap(Point(),maVirtualDeviceMask->GetOutputSizePix()));+AlphaMask aMask位图(maVirtualDeviceMask->GetBitmap(Point(),maVirtualDevice Mask->GetOutputSizePixel()));//tdf编号156630反转alpha遮罩a掩码位图。反转();//从透明度转换为alphabitmap=位图Ex(主位图,掩码位图);
我想我找到了原因:16色或更少调色板的GIF图像需要额外处理。我有一个修复程序(请参阅下面的调试补丁),但我需要在提交之前进行更多测试,以确保不会导致tdf编号157635或tdf编号157793再次发生:diff—git a/vcl/source/filter/igif/gifread.cxx b/vcl/soource/filter/gifread.coxx索引c3151f3274d0..6c3deb4da3d0 100644---a/vcl/source/filter/igif/gifread.cxx+++b/vcl/source/filter/igif/gifread.cxx@@-683.10+683.10@@void GIFReader::CreateNewBitmaps()//由于在提交中从透明切换到alpha//81994cb2b8b32453a92bcb011830fcb884f22ff3,屏蔽黑色//位图中的像素。-if(b增强)-aAnimationFrame.maBitmapEx=位图Ex(aBmp8,aBmp9);-其他-aAnimationFrame.maBitmapEx=位图Ex(aBmp8);+位图aAlphaMask(aBmp8);+if(!b增强)+a阿尔法面罩。反转();+aAnimationFrame.maBitmapEx=位图Ex(aBmp8,aAlphaMask);}aAnimationFrame.maPositionPixel=点(nImagePosX,nImagePosY);
(回复Patrick Luby(志愿者)评论#9)>我想我找到了原因:GIF图像的调色板为16色或>较少需要额外处理。我有一个修复程序(请参阅下面的调试补丁),但>我需要在提交之前进行更多测试,以确保不会导致>tdf编号157635或tdf编号157793再次发生:更新:我提交了以下修复程序,但发现它会导致单元测试失败。单元测试代码看起来不错,所以我很清楚我的修复会导致一些意外的错误:https://gerrit.libreoffice.org/c/core网站/+/167563因此,我认为我需要重新修改修复程序修改的代码部分,以避免反转位图。当我有更多的新闻要报道时,我会再次发帖。
创建附件194114 [详细信息]使CppunitTest_sw_tiledrendering求值的GIF图像
Patrick Luby提交了与此问题相关的修补程序。它已被推到“master”:https://git.libreoffice.org/core/commit/2a9eb581f0edfae8123018006df5cc9de1e1fd45 tdf编号160690为非透明帧设置不透明alpha遮罩它将在24.8.0中提供。修补程序应包含在每日构建中,网址为https://dev-builds.libreoffice.org/每日/在接下来的24-48小时内。更多有关每日构建的信息,请访问:https://wiki.documentfoundation.org/Testing_Daily_Builds网站鼓励受影响的用户测试修复并报告反馈。
我已经修复了这个错误。修复应该在明天(2024年5月15日)的夜间主版本中进行:https://dev-builds.libreoffice.org/daily/master/current.htmlmacOS测试人员注意:夜间主版本安装在/Applications/LibreOfficeDev.app中。这些内部版本不像常规LibreOffice版本那样进行代码设计,因此您需要在安装后启动/Applications/LibreOfficeDev之前执行以下终端命令:xattr-d com.apple.quartainer/Applications/LibreOfficeDev.app
Patrick Luby提交了一个与此问题相关的补丁。它已被推到“图书馆-24-2”:https://git.libreoffice.org/core/commit/73b552139906e10f004bd56e53684cceed071bd6 tdf编号160690为非透明帧设置不透明alpha遮罩它将在24.2.4中提供。修补程序应包含在每日构建中,网址为https://dev-builds.libreoffice.org/每日/在接下来的24-48小时内。更多有关每日构建的信息,请访问:https://wiki.documentfoundation.org/Testing_Daily_Builds网站鼓励受影响的用户测试修复并报告反馈。
很高兴通过最后一次夜间快照验证此问题是否已解决:版本:24.8.0.0.alpha1+(X86_64)/LibreOffice Community内部版本ID:b45ca1aadcbeadccfc60e2a41eca8 cCPU线程数:12;操作系统:Linux 6.8;UI渲染:默认;VCL:gtk3区域设置:en-US(en_US.UTF-8);用户界面:en-US