在这种情况下,WIDTH的公式是什么?

时间:2018-02-07 23:48:57

标签: c# xml rect

我有一项任务,我需要创建一个从OmniPage XML ocr输出到ALTO XML的转换程序。

OmniPage XML的输出与ALTO XML完全不同。

我试图找到一个ALTO XML文件并试图弄清楚这些值来自何处。

我需要获得SP Tag WIDTH的公式。 下面是我试图弄清楚

的XML示例
<TextLine ID="P1_TL00002" HPOS="26.00" VPOS="98.00" WIDTH="1667.00" HEIGHT="130.00">
    <String ID="P1_ST00002" HPOS="26.00" VPOS="106.00" WIDTH="387.00" HEIGHT="95.00" CONTENT="Twenties" WC="0.99" CC="06370005"/>
    <SP ID="P1_SP00001" HPOS="413.00" VPOS="201.00" WIDTH="29.00"/>
    <String ID="P1_ST00003" HPOS="442.00" VPOS="98.00" WIDTH="246.00" HEIGHT="103.00" CONTENT="Glrls" WC="0.78" CC="00045"/>
    <SP ID="P1_SP00002" HPOS="688.00" VPOS="201.00" WIDTH="26.00"/>
    <String ID="P1_ST00004" HPOS="714.00" VPOS="98.00" WIDTH="178.00" HEIGHT="103.00" CONTENT="ancl" WC="0.54" CC="5660"/>
    <SP ID="P1_SP00003" HPOS="892.00" VPOS="201.00" WIDTH="39.00"/>
    <String ID="P1_ST00005" HPOS="931.00" VPOS="98.00" WIDTH="368.00" HEIGHT="130.00" CONTENT="FUppER" WC="0.83" CC="090000"/>
    <SP ID="P1_SP00004" HPOS="1299.00" VPOS="228.00" WIDTH="32.00"/>
    <String ID="P1_ST00006" HPOS="1331.00" VPOS="98.00" WIDTH="362.00" HEIGHT="106.00" CONTENT="PAshiON" WC="0.76" CC="0008206"/>
</TextLine>

我已经确定了HPOS和VPOS的值。 我使用了c#Rect class

Rect r = new Rect(26, 106, 387, 95);
Debug.WriteLine("BottomRight: " + r.BottomRight);
BottomRight: 413,201

但我无法确定SP代码WIDTH值的来源。

请帮帮我。

1 个答案:

答案 0 :(得分:0)

看起来它只是SP标签HPOS和以下String标签HPOS之间的区别,例如413.00 + 29.00 = 442.00,688.00 + 26.00 = 714.00,依此类推。