从C#序列化字体对象并在Java上反序列化
使用@Elad解决方案,我可以使用C#对字体进行序列化和反序列化,但我需要用Java对其进行反序列化。有没有办法做到这一点从C#序列化字体对象并在Java上反序列化,c#,java,serialization,fonts,C#,Java,Serialization,Fonts,使用@Elad解决方案,我可以使用C#对字体进行序列化和反序列化,但我需要用Java对其进行反序列化。有没有办法做到这一点 如果有人有关于为任何其他对象执行此操作的好文章,这可能会有所帮助。在Elad的回答中,System.Drawing.Font被转换为XML,然后转换为纯二进制形式。在Java方面,从二进制反序列化为XML是非常简单的,但是从那以后,您必须知道您打算用XML做什么。您有想要/需要使用的java类吗?您可以尝试协议缓冲区 它的序列化形式与语言无关,您可以在C#上使用它进行序列化
如果有人有关于为任何其他对象执行此操作的好文章,这可能会有所帮助。在Elad的回答中,System.Drawing.Font被转换为XML,然后转换为纯二进制形式。在Java方面,从二进制反序列化为XML是非常简单的,但是从那以后,您必须知道您打算用XML做什么。您有想要/需要使用的java类吗?您可以尝试协议缓冲区
它的序列化形式与语言无关,您可以在C#上使用它进行序列化,在java端使用它进行反序列化。所谓“序列化字体”,是指字体的关键属性(大小、样式、系列等)-或者您希望序列化实际字体吗?您确定font对象在java环境中有用吗?@MarcGravel是的,我的意思是序列化字体属性、大小、样式等。@KonstantinPribluda如果没有指定为XML的字体,我将使用任何字体,这仅对FontFamily有效,因为可以从反序列化对象加载大小样式ect。是的java.awt.Font@claymore1977根据java.awt.Font API doc()有一个接受映射的构造函数。我想你可以利用它来满足你的需要。我考虑过另一个解决方案,但这超出了我对Java的经验,如果我可以使用类似于accept的字体文件,那么传输字体文件就不难了。使用地图有什么错?另一方面,到处乱扔字体文件可能有用。。。。