在Java Eclipse中使用AFP

3

我已经寻找了几天,想找到一种读取高级功能演示文件的方法,以便在控制台上输出有关文件的某些信息(例如有多少个文档,每个文档有多少页等)。

我已成功读取AFP文件的字节数。

public static void main(String[] args) {
  String filename = "xxx.afp";
  try {
    DataInputStream in = new DataInputStream(
                           new BufferedInputStream(
                             new FileInputStream(filename))))
    System.out.println(in.read());
  }
}

提前感谢您!


1
你能具体说明是哪个 AFP 吗?因为有七种不同的 AFP 存在。 - user2339071
对不起,您是指里面有什么类型的数据对象(例如图形、图像、条形码、文本等)? - user2902426
请查看 http://filext.com/file-extension/AFP。我猜你正在寻找高级功能演示吧..? - user2339071
是的,抱歉没有提到 :) 谢谢! - user2902426
2个回答

2

你看过AFP Renderer了吗?

如果它不能满足你的需求,那么恐怕你需要阅读规范,你可以按照这些说明获取。


1
AFP文件中的对象由所谓的三元组标记。您可以将它们视为3个字母的助记符。通常,它们具有相应对象的“开始”和“结束”分隔符。三元组由眼镜蛇字节序列引入,如果我没记错的话是0x5A(待检查)。
因此,要计算页面数,您应该浏览DataInputStream并计算“开始页面”三元组的出现次数。如果您想非常准确,可以尝试将它们与“结束页面”三元组进行匹配。三元组特定的十六进制值是需要在规范中检查的内容。
还有可用的商业SDK(commercial SDKs)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接