mupdf是一个很好的开源pdf阅读器。它几乎满足了我的所有要求,除了它不能从右到左读取pdf。有人对此有任何想法吗?
实际上我对RTL的理解是我可以先导航到最后一页。然后从那里去。买我的问题是我怎么知道pdf是RTL的?
答案 0 :(得分:4)
MuPDF不支持RTL。您需要从最后一页开始本书并对MuPDFPageAdapter getView方法进行微小更改,如下所示:
public View getView(int pos, View convertView, ViewGroup parent) {
final int position;
if(mDirection == DIRECTION_RTL)
position = mCore.countPages() - pos - 1;
else
position = pos;
/** getView remaining code **/
}
基本上颠倒了页面顺序。索引0变为pageCount - 1,最后一页变为0。
您可以将当前页面设置为本书的最后一页,如下所示:
mDocView.setDisplayedViewIndex(mCore.countPages() - 1);
我已在此处上传了一份工作示例: https://github.com/mardawi/MuPDF-Android-RTL
答案 1 :(得分:0)
无法知道PDF文件的阅读方向。看起来你想要的不是从右到左,而是从前到后,从下到上。