错误160690 -动画GIF在编辑模式下完全不可见(GIF具有字母透明度)
总结: 动画GIF在编辑模式下完全不可见(GIF具有字母透明度)
状态: 已证实的固定的
别名:
产品: 办公套件
分类: 未分类
组件: 印象深刻(显示其他错误)
版本:
(最早受影响)
24.2.0.0字母0+
硬件: 全部全部
: 中等的正常的
受让人: Patrick Luby(志愿者)
网址:
白板: 目标:24.8.0目标:24.2.4
关键词: 二分、二分、回归
取决于:
阻碍: 印象-图像
  显示相关性图表
 
报道: 2024-04-16 10:13 UTC杰拉尔德·菲弗
被改进的: 2024-05-30 04:16协调世界时(历史)
9用户(显示)

另请参阅:
碰撞报告或碰撞签名:


附件
使CppunitTest_sw_tiledrendering求值的GIF图像 (41字节,图像/gif)
2024-05-14 12:58 UTC,Patrick Luby(志愿者)
细节

注释你需要登录在您可以评论或更改此bug之前。
描述 杰拉尔德·菲佛 2024-04-16 10:13:32协调世界时
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同时还负责此回归?)
评论1 m_a_riosv(_R) 2024-04-16 20:30:09 UTC(协调世界时)
可复制版本: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螺纹
评论2 格拉迪斯 2024-05-09 15:06:19协调世界时 注释隐藏(已过时)
评论3 格拉迪斯 2024-05-09 15:08:00 UTC 注释隐藏(已过时)
评论4 格拉迪斯 2024-05-11 06:57:25 UTC(世界协调时) 注释隐藏(已过时)
评论5 诺埃尔·格兰丁 2024-05-11 20:56:08 UTC(世界协调时) 注释隐藏(已过时)
评论6 格拉迪斯 2024-05-12 05:32:36协调世界时 注释隐藏(已过时)
评论7 拉尔 2024-05-12 06:16:17 UTC
这似乎是从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
评论8 Patrick Luby(志愿者) 2024-05-12 14:34:49协调世界时
如果我应用以下调试补丁,那么在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(主位图,掩码位图);
评论9 Patrick Luby(志愿者) 2024-05-12 15:31:18协调世界时
我想我找到了原因:16色或更少调色板的GIF图像需要额外处理。我有一个修复程序(请参阅下面的调试补丁),但我需要在提交之前进行更多测试,以确保不会导致tdf编号157635tdf编号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);
评论10 Patrick Luby(志愿者) 2024年5月13日13:48:17 UTC
(回复Patrick Luby(志愿者)评论#9)>我想我找到了原因:GIF图像的调色板为16色或>较少需要额外处理。我有一个修复程序(请参阅下面的调试补丁),但>我需要在提交之前进行更多测试,以确保不会导致>tdf编号157635tdf编号157793再次发生:更新:我提交了以下修复程序,但发现它会导致单元测试失败。单元测试代码看起来不错,所以我很清楚我的修复会导致一些意外的错误:https://gerrit.libreoffice.org/c/core网站/+/167563因此,我认为我需要重新修改修复程序修改的代码部分,以避免反转位图。当我有更多的新闻要报道时,我会再次发帖。
评论11 Patrick Luby(志愿者) 2024-05-14 12:58:01 UTC
创建附件194114 [详细信息]使CppunitTest_sw_tiledrendering求值的GIF图像
评论12 提交通知 2024-05-15 16:05:27 UTC
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网站鼓励受影响的用户测试修复并报告反馈。
评论13 Patrick Luby(志愿者) 2024-05-15 16:07:29 UTC
我已经修复了这个错误。修复应该在明天(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
评论14 提交通知 2024-05-15 17:54:47协调世界时
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网站鼓励受影响的用户测试修复并报告反馈。
评论15 杰拉尔德·菲弗 2024-05-16 22:39:25 UTC
很高兴通过最后一次夜间快照验证此问题是否已解决:版本: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