PDF锐化设置字体样式
PDF Sharp setting font styles
我有一个字体对话框,让用户可以选择字体名称、字体大小,还可以选择字体样式。
但是这段代码不起作用
XFont myFont = new XFont(txtP.Font.Name, txtP.Font.Size, txtP.Font.Style);
Error is: Error 2 Argument 3: cannot convert from
'System.Drawing.FontStyle' to 'PdfSharp.Drawing.XFontStyle' /
Error 1 The best overloaded method match for
'PdfSharp.Drawing.XFont.XFont(string, double,
PdfSharp.Drawing.XFontStyle)' has some invalid arguments
有解决办法吗?我真的很想让用户选择字体样式,而不仅仅是名称和大小。
XFontStyle
是由 PdfSharp 定义的枚举。正如错误所说,无法将 System.Drawing.FontStyle' 转换为 'PdfSharp.Drawing.XFontStyle'.
选项:
- 让用户select直接从 xFontStyle 值。
- 在 FontStyle 和 XFontStyle 之间创建一个转换器方法。
第二种方法有点复杂,因为你必须将第一个枚举中的值映射到第二个枚举中,正如你所看到的,它们并不完全相同,但可以做到。
我通过
解决了这个问题
XFont myFont = new XFont(txtP.Font.Name, txtP.Font.Size, (PdfSharp.Drawing.XFontStyle)fontStyle);
我有一个字体对话框,让用户可以选择字体名称、字体大小,还可以选择字体样式。
但是这段代码不起作用
XFont myFont = new XFont(txtP.Font.Name, txtP.Font.Size, txtP.Font.Style);
Error is: Error 2 Argument 3: cannot convert from 'System.Drawing.FontStyle' to 'PdfSharp.Drawing.XFontStyle' / Error 1 The best overloaded method match for 'PdfSharp.Drawing.XFont.XFont(string, double, PdfSharp.Drawing.XFontStyle)' has some invalid arguments
有解决办法吗?我真的很想让用户选择字体样式,而不仅仅是名称和大小。
XFontStyle
是由 PdfSharp 定义的枚举。正如错误所说,无法将 System.Drawing.FontStyle' 转换为 'PdfSharp.Drawing.XFontStyle'.
选项:
- 让用户select直接从 xFontStyle 值。
- 在 FontStyle 和 XFontStyle 之间创建一个转换器方法。
第二种方法有点复杂,因为你必须将第一个枚举中的值映射到第二个枚举中,正如你所看到的,它们并不完全相同,但可以做到。
我通过
解决了这个问题XFont myFont = new XFont(txtP.Font.Name, txtP.Font.Size, (PdfSharp.Drawing.XFontStyle)fontStyle);