【问题标题】:How to read data from clipboard when it is having mixed mode of data (image and Text)当剪贴板具有混合模式的数据(图像和文本)时如何从剪贴板中读取数据
【发布时间】:2017-02-16 00:48:11
【问题描述】:

我有混合数据,包括从 Word 文档复制的剪贴板上的图像和文本。现在我想检查剪贴板上是否存在混合数据。如何执行此检查。

ClipBoard.GetImage() 如果我在剪贴板上有混合模式的数据,则返回 false。

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    使用 Clipboard.GetDataObject() 将返回一个 IDataObject。

    通过调用 GetData 方法并在格式参数中指定数据格式,从 IDataObject 中检索存储的数据。将 autoConvert 参数设置为 false 以仅检索以指定格式存储的数据。要将存储的数据转换为指定格式,请将 autoConvert 设置为 true,或者不要使用 autoConvert。

    要确定存储在 IDataObject 中的数据格式,请使用以下 IDataObject 方法。

    调用 GetFormats 方法以检索数据可用的所有格式的数组。将 autoConvert 参数设置为 false 以仅获取存储数据的格式。要获取数据可用的所有格式,请将 autoConvert 设置为 true,或不使用此参数。 调用 GetDataPresent 方法来确定存储的数据是否以某种格式可用。如果您不希望将存储的数据转换为指定格式,请将 autoConvert 参数设置为 false。

    希望这会有所帮助。

    参考:IDataObject Interface

    How can I get an image out of the clipboard without losing the alpha channel in .NET?

    【讨论】:

    • 当我将文本或文本和图像从 word 文档复制到剪贴板时,我的格式相同。 Object Descriptor Rich Text Format HTML Format Text UnicodeText EnhancedMetafile MetaFilePict Embed Source Link Source Link Source Descriptor ObjectLink 有没有办法确定哪种格式有文本数据,哪种格式有图像数据。上述许多格式在两种情况下都返回内存流(文本或文本和图像)
    猜你喜欢
    • 1970-01-01
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多