delphi TFont类型和JSON互相转换的函数


本文整理自网络,侵删。

  做一个小项目中,要将TFont保存下来,想使用JSON格式,所以写了两个函数进行互相转换!


function FontToJson(AFont: TFont): string;
var
Json: ISuperObject;
begin
Json := so;
Json.s['name'] := AFont.Name;
Json.I['size'] := AFont.Size;
Json.I['color'] := AFont.Color;
Json.B['bold'] := fsBold in AFont.Style;
Json.B['italic'] := fsItalic in AFont.Style;
Json.B['underline'] := fsUnderline in AFont.Style;
Result := Json.AsString;
end;

function JsonToFont(AJson: string): TFont;
var
Json: ISuperObject;
begin
Result := TFont.Create;
Json := so(AJson);
Result.Name := Json.s['name'];
Result.Size := Json.I['size'];
Result.Color := Json.I['color'];
if Json.B['bold'] then
Result.Style := Result.Style + [fsBold]
else
Result.Style := Result.Style - [fsBold];
if Json.B['italic'] then
Result.Style := Result.Style + [fsItalic]
else
Result.Style := Result.Style - [fsItalic];
if Json.B['underline'] then
Result.Style := Result.Style + [fsUnderline]
else
Result.Style := Result.Style - [fsUnderline];
end;

相关阅读 >>

Delphi删除文件和文件夹

Delphi 字符串加密解密单元

Delphi 给变量加引号

Delphi speedbutton按钮动态加载图片(从image和imagelist)

Delphi access 导出 excel 表格

Delphi android 保持唤醒状态

Delphi 截取某个字符之前的字段

Delphi的tstreamreader逐行读取文本文件

Delphi流的操作

Delphi webbrowser1 网页提交按钮执行点击事件

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...