IDML 文件现在会保留你的更多文字
修复已于 9 月 15 日上线。如果你在 9 月 3 日到 9 月 15 日之间把文件转换成过 IDML,请再转一次。丢失的文字应该会回来,这不用额外付费。
这篇文章说明当时哪里出了问题、影响了谁、我们改了什么,以及我们自己的测试是怎么放行它的。
出了什么问题
很多 Publisher 文档里都画着一个环绕整页的大矩形:一个没有任何内容的轮廓,纯粹当装饰放在那里。通讯稿和教堂通讯单里到处都是这种东西。
在 InDesign 里,一个对象可以被标记为让文字绕开它排版,而不是从它下面穿过。放在栏中间的一张照片就需要这样处理。我们把这些装饰性边框也按同样的方式标记了。
这么大的一个边框几乎和整页一样大。于是文字四处找地方排进去,在这个框里哪儿都找不到空间,InDesign 就把整篇内容都扣住不放,而不是先放进去一部分。InDesign 把这种情况叫做 overset text(溢出文本,指超出显示范围的文字)。
没有任何内容丢失。每个字都还在文件里,待在我们放它进去的那条正文链里,只是从没到达页面。
影响了谁
IDML 文件。PDF、Word 和 ODG 的输出从未受到影响。
文字背后有一个大轮廓形状的文件。没有这种形状的文档原样通过。
在我们检查过、带有这种形状的文件里,大约四分之一丢失了十分之一或更多的文字。少数文件全部丢失。在一份通讯单上,边框盖住了大约四分之三的版面,那条正文里的两千个字符没有一个被排上页面。
怎么判断自己的文件是否中招
在 InDesign 里打开文件,看文本框右下角。那里出现一个小红色加号,说明这个框里还压着没显示出来的文字。Affinity Publisher 在同一个位置显示它自己的溢出标记。
最简单的办法:对同一个文件跑一次免费预览。这个问题从未影响过预览,所以如果预览里有一段文字,而你的 IDML 里没有,那就是这个问题。
我们修了什么
改了两处。
现在一个形状必须和文字之间存在真实关系,我们才会让文字绕开它排版。一个压在所有内容后面的装饰性边框不再满足这个条件。
而当一个文本框最终还是没有可用空间时,我们现在会告诉 InDesign 忽略绕排、直接把文字放上去,而不是继续扣住不放。一页文字稍微压在边框上,也好过整页没有文字。
这个修复的第一个版本又弄坏了别的东西。从母版跨页继承重复元素的页面,开始绕排到错误的对象上。我们在测试环节发现了它,修好后把两处改动一起发布。这里值得说清楚:这次修复本身还需要一次修复。
它是怎么从我们眼皮底下溜过去的
这部分值得写下来,因为我们不是第一次遇到这种情况。
每一次引擎改动,上线前都要在和 Publisher 自身输出的对比测试中胜出。这次的测试比较的是图片:渲染出我们的页面,渲染出 Publisher 的页面,测量两张图片有多相似。
一页丢了一段文字的页面,看起来仍然非常像一个正常页面。同样的边框,同样的标题,同样的照片,同样的颜色,文字大致落在原来的位置。相似度分数几乎没有变化。所以这项测量说这次改动没问题,而就它所测量的那一项而言,确实没问题。
十二天前,小册子那个问题溜过了一道只数页数、从没看过任何一页的测试。这一次,丢字的问题溜过了一道会看页面、却从没数过页面上有多少字的测试。同一种错误的形状,换了一个盲区。
现在我们会统计真正落在页面上的字符数,再和 Publisher 的字符数做比较。这样一个数字甩不掉丢失的文字,因为丢失的文字正是它唯一测量的东西。
你该怎么做
再转换一次这个文件。这不用额外付费,你已经购买的使用权限照常有效。
如果你还没有购买,预览是免费的,会在你决定之前先让你看到页面效果。下载功能是一次性支付 49 美元。