Foxit PDF Conversion SDK
foxit::conversion::md2pdf::Md2PDFSettingData类 参考

继承自 Object .

Public 成员函数

 Md2PDFSettingData ()
 构造函数。
 
 Md2PDFSettingData (float page_width, float page_height, float margin_top, float margin_bottom, float margin_left, float margin_right, float base_font_size, const wchar_t *custom_font_path, const wchar_t *style_config_path, bool is_embed_font)
 带参数的构造函数。 更多...
 
Md2PDFSettingData & operator= (const Md2PDFSettingData &data)
 赋值运算符。 更多...
 
void Set (float page_width, float page_height, float margin_top, float margin_bottom, float margin_left, float margin_right, float base_font_size, const wchar_t *custom_font_path, const wchar_t *style_config_path, bool is_embed_font)
 设置值。 更多...
 

Public 属性

float base_font_size
 正文基础字号,单位:点。默认值:10。 更多...
 
WString custom_font_path
 TrueType 字体文件路径,用于 CJK 或自定义字体支持。 更多...
 
bool is_embed_font
 是否将字体数据嵌入输出 PDF。默认值:false。
 
float margin_bottom
 下边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
 
float margin_left
 左边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
 
float margin_right
 右边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
 
float margin_top
 上边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
 
float page_height
 页面高度,单位:点。默认值:792。必须大于 0。
 
float page_width
 页面宽度,单位:点。默认值:612。必须大于 0。
 
WString style_config_path
 JSON 样式配置文件路径。 更多...
 

详细描述

此类表示将 Markdown 格式文件转换为 PDF 格式文件时使用的设置数据。

构造及析构函数说明

◆ Md2PDFSettingData()

foxit::conversion::md2pdf::Md2PDFSettingData::Md2PDFSettingData ( float  page_width,
float  page_height,
float  margin_top,
float  margin_bottom,
float  margin_left,
float  margin_right,
float  base_font_size,
const wchar_t *  custom_font_path,
const wchar_t *  style_config_path,
bool  is_embed_font 
)
inline

带参数的构造函数。

参数
[in]page_width页面宽度,单位:点。默认值:612。必须大于 0。
[in]page_height页面高度,单位:点。默认值:792。必须大于 0。
[in]margin_top上边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
[in]margin_bottom下边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
[in]margin_left左边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
[in]margin_right右边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
[in]base_font_size正文基础字号,单位:点。默认值:10。
[in]custom_font_pathTrueType 字体文件路径,用于 CJK 或自定义字体支持。空字符串表示使用标准 PDF 字体。
[in]style_config_pathJSON 样式配置文件路径。
[in]is_embed_font是否将字体数据嵌入输出 PDF。默认值:false。

成员函数说明

◆ operator=()

Md2PDFSettingData& foxit::conversion::md2pdf::Md2PDFSettingData::operator= ( const Md2PDFSettingData &  data)
inline

赋值运算符。

参数
[in]data另一个 Md2PDF 设置数据对象,其值将被赋给当前对象。
返回
当前对象自身的引用。

◆ Set()

void foxit::conversion::md2pdf::Md2PDFSettingData::Set ( float  page_width,
float  page_height,
float  margin_top,
float  margin_bottom,
float  margin_left,
float  margin_right,
float  base_font_size,
const wchar_t *  custom_font_path,
const wchar_t *  style_config_path,
bool  is_embed_font 
)
inline

设置值。

参数
[in]page_width页面宽度,单位:点。默认值:612。必须大于 0。
[in]page_height页面高度,单位:点。默认值:792。必须大于 0。
[in]margin_top上边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
[in]margin_bottom下边距,单位:点。默认值:72。必须大于或等于 0,且上、下边距之和必须小于页面高度。
[in]margin_left左边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
[in]margin_right右边距,单位:点。默认值:72。必须大于或等于 0,且左、右边距之和必须小于页面宽度。
[in]base_font_size正文基础字号,单位:点。
[in]custom_font_pathTrueType 字体文件路径,用于 CJK 或自定义字体支持。
[in]style_config_pathJSON 样式配置文件路径。
[in]is_embed_font是否将字体数据嵌入输出 PDF。
返回
无。

类成员变量说明

◆ base_font_size

float foxit::conversion::md2pdf::Md2PDFSettingData::base_font_size

正文基础字号,单位:点。默认值:10。

各级标题的字号以此值为基准倍数计算。

◆ custom_font_path

WString foxit::conversion::md2pdf::Md2PDFSettingData::custom_font_path

TrueType 字体文件路径,用于 CJK 或自定义字体支持。

非空时,将使用指定字体进行文本渲染。 默认值:空字符串。

◆ style_config_path

WString foxit::conversion::md2pdf::Md2PDFSettingData::style_config_path

JSON 样式配置文件路径。

非空时,将从指定 JSON 文件中加载各元素类型的字体、字号、颜色、粗体、斜体、 行间距等样式设置。 默认值:空字符串(使用内置默认样式)。

每个元素对象支持的 JSON 键 (适用元素:h1-h6、paragraph、code_block、block_quote、list_item、table_cell):

  • "font_size" : 浮点数,字号(单位:点),例如 14.0
  • "bold" : 布尔值,是否粗体
  • "italic" : 布尔值,是否斜体
  • "color_r/g/b" : 浮点数 0.0-1.0,RGB 颜色分量
  • "line_spacing" : 浮点数 0.5-5.0,行高倍数
  • "space_before" : 浮点数 0.0-10.0,块前间距,以 font_size 为单位的倍数。 仅对标题元素(h1-h6)生效,其他元素类型忽略此字段。
  • "space_after" : 浮点数 0.0-10.0,块后间距,以 font_size 为单位的倍数。

超出有效范围的值将被静默忽略,回退到内置默认间距。

JSON 文件示例:

{
"h1": {
"font_size": 28.0, "bold": true,
"space_before": 2.0, "space_after": 0.8
},
"h2": {
"font_size": 22.0, "bold": true,
"space_before": 1.5, "space_after": 0.6
},
"h3": {
"font_size": 18.0,
"space_before": 1.2, "space_after": 0.5
},
"paragraph": {
"font_size": 11.0, "line_spacing": 1.5,
"space_after": 1.0
},
"code_block": {
"font_size": 10.0,
"color_r": 0.1, "color_g": 0.4, "color_b": 0.1,
"space_after": 1.2
}
}