我是IDML文档的新手,想知道如何找到特定故事的页码。 Spread_XXXX.xml具有Page元素,它基本上描述了传播的页面数量以及引用故事的TextFrame。但是,我找不到它们之间的任何联系。
答案 0 :(得分:0)
我知道我参加聚会有点晚了,但也许答案会对其他人有所帮助。
虽然您的思路有点正确(页面上有一个文本框),但 InDesign/IDML 中的现实却完全不同。实际的依赖如下(简化):
Document:
|
|-Spread
|
|-Page
|-Page
|-TextFrame
|-TextFrame
|-Rectangle... and so on
如您所见,文本框架不是页面的子级,而是跨页。它是相对于传播的坐标系。
这有点道理。图片你有这样的布局:
|________Spread___________|
|___Page 1___|___Page 2___|
| |__Text 1__| |
| | | |
| |__________| |
|____________|____________|
问题是:Text 1
在哪个页面?你真的无法回答这个问题。您所能做的就是确定文本框架的一角是否在特定页面的边界框内。
引用 IDML 手册:
<块引用>默认情况下,页面项目位于展开坐标中。原点位于页面装订的中心点。通常,在页面坐标中工作更容易。这可以在 IDML 中通过调整页面项的 ItemTransform 矩阵来实现。从概念上讲,这是将原点从展开中心点移动到页面左上角的问题,如下所示:
例如,以下 TextFrame 位于绑定左侧的页面上;因此,它被水平转换为 -612 点,垂直转换为 -396 点。这将原点从绑定中心向左移动 612 点,向上移动 396 点。
<TextFrame ... ItemTransform="1 0 0 1 -612 -396">
...
<PathPointArray>
<PathPointType Anchor="36 36" LeftDirection="36 36"
RightDirection="36 36"/>
...