【问题标题】:How to hide a text inside a Powerpoint slide using OpenXML SDK?如何使用 OpenXML SDK 在 Powerpoint 幻灯片中隐藏文本?
【发布时间】:2020-01-14 08:47:23
【问题描述】:

我正在尝试使用 OpenXML SDK 在幻灯片(或 TextBox)中隐藏文本。如何隐藏文本而不让用户看到?

我尝试使用Drawing.Run 方法设置不透明度,但它不支持长度大于 6 的 HexCode。powerpoint 显示警告消息,之后修复演示文稿。

我试过的代码是:

 Drawing.RgbColorModelHex rgbColorModelHex2 = new Drawing.RgbColorModelHex() { Val = "00FFFFFF" };

根据我的研究,DocumentFormat.OpenXml.Wordprocessing 中有一个 vanish 属性,用于在 Word 上隐藏文本,但在 powerpoint 上找不到 vanish。 powerpoint 中是否有类似的属性?否则如何隐藏文本?

提前致谢

【问题讨论】:

    标签: c# powerpoint openxml openxml-sdk


    【解决方案1】:

    SDK 中包含 Open XML 生产力工具。在 PowerPoint 中制作一对文件,一个显示文本,另一个隐藏文本(使用选择窗格来执行此操作)。然后使用生产力工具中的比较文件功能。初始视图将显示存在差异的 XML 部分。然后点击查看包代码查看自动生成的 C# 代码,这将帮助您找出正确的语法。

    另一个对 Open XML 很有帮助的工具集是 Open XML Power Tools。这是它的 NuGet 页面:OpenXmlPowerTools 4.5.3.2

    【讨论】:

    • 嗨@john 感谢您的回答。实际上是 OpenXml SDK 和 PowerPoint 插件的新手。使用选择窗格,我将文本隐藏在 TextBox 内,但用户仍然可以使用 show all 属性查看文本。我可以避免吗?再次感谢您的回复
    • 根据您的目标,您可以使用 VBA 将文本添加到对象标签并使用 VBA 读取该文本。标签从不显示。或者您可以使文本的颜色与其所在的形状相同,这仅提供最低限度的安全性。或者您可以使用选择窗格隐藏文本,然后从功能区中删除选择窗格选项。最后一项工作量很大,因为您必须在 Home 选项卡上重建 Editing 组。
    • 谢谢@john。我找出了差异,它工作正常:)
    猜你喜欢
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    相关资源
    最近更新 更多