天天看點

【OpenXml】Pptx的邊框虛線轉為WPF的邊框虛線

首先,我們先安裝nuget的需要的有關的Openxml sdk,我們開源了解析pptx的Openxml拍平層,下面兩種方式都可以安裝:

nuget包管理器控制台:

csproj引用:

我這裡用PPTX的7種直線,分别設定7種能夠設定的虛線類型,PPTX的顯示效果是這樣的:

【OpenXml】Pptx的邊框虛線轉為WPF的邊框虛線

然後解析代碼如下,解析主要邏輯部分:

PPTX映射成WPF虛線的方法:

最終繪制線條的方法:

最終的效果:

【OpenXml】Pptx的邊框虛線轉為WPF的邊框虛線

我們可以看到幾乎是接近的效果了,當然你也可以根據我的代碼去微調更精确的值,隻需要稍微改下<code>GetDashArrayByPresetLineDashValues</code>方法内相對應的值即可

實際上,openxml文檔是給出了PresetDash的值的,大緻如下:

【OpenXml】Pptx的邊框虛線轉為WPF的邊框虛線

但是其值跟WPF的設定Dash的<code>DoubleCollection</code>不對應,是以以上的映射值都是我自己微調的

BlogCodeSample/PptDashConverToWpfSample at main · ZhengDaoWang/BlogCodeSample

繼續閱讀