将 IF 语句添加到 DXL 脚本以检查对象类型?
Adding IF statement to DXL script to check object type?
我目前正在处理导出到 .tex 文件的 dxl 脚本,然后使用 TexWorks 将导出格式格式化为 pdf。我目前的问题是我在 DOORS 中的表格和图形都是 OLE 对象。我想知道我是否可以用一个 IF 语句来区分这两者,我将如何去做呢?我不确定对象类型的 DOORS DXL 脚本中的语法是什么。
void writeFigureHeadAndExport(Stream& oss, Object img, string outputDir)
{
if (o."Object Type""" == "Figure")
{
Module mod = module(img);
string n = mod."Prefix"img."Absolute Number"".png";
string s = exportPicture(img, outputDir "\" n, formatPNG);
oss << "\begin{figure}[ht]\n";
oss << "\centering\n";
oss << "\includegraphics[width=\textwidth]{"n"}\n";
}
else
{
Module mod = module(img);
string n = mod."Prefix"img."Absolute Number"".png";
string s = exportPicture(img, outputDir "\" n, formatPNG);
oss << "\begin{table}[ht]\n";
oss << "\centering\n";
oss << "\includegraphics[width=\textwidth]{"n"}\n";
}
}
发现Ole项的类型是可能的,但实现起来非常困难。我建议使用一个额外的属性来指定对象中是否包含 table 或数字,然后将其用于 IF 语句处理。
我目前正在处理导出到 .tex 文件的 dxl 脚本,然后使用 TexWorks 将导出格式格式化为 pdf。我目前的问题是我在 DOORS 中的表格和图形都是 OLE 对象。我想知道我是否可以用一个 IF 语句来区分这两者,我将如何去做呢?我不确定对象类型的 DOORS DXL 脚本中的语法是什么。
void writeFigureHeadAndExport(Stream& oss, Object img, string outputDir)
{
if (o."Object Type""" == "Figure")
{
Module mod = module(img);
string n = mod."Prefix"img."Absolute Number"".png";
string s = exportPicture(img, outputDir "\" n, formatPNG);
oss << "\begin{figure}[ht]\n";
oss << "\centering\n";
oss << "\includegraphics[width=\textwidth]{"n"}\n";
}
else
{
Module mod = module(img);
string n = mod."Prefix"img."Absolute Number"".png";
string s = exportPicture(img, outputDir "\" n, formatPNG);
oss << "\begin{table}[ht]\n";
oss << "\centering\n";
oss << "\includegraphics[width=\textwidth]{"n"}\n";
}
}
发现Ole项的类型是可能的,但实现起来非常困难。我建议使用一个额外的属性来指定对象中是否包含 table 或数字,然后将其用于 IF 语句处理。