我目前正在使用AndroidPDFViewer在安卓上开发一个应用程序:https://github.com/barteksc/AndroidPdfViewer
我想创建一个功能,当用户触摸屏幕时,它把一个点在PDF上的这个位置。之后,我想测量两点之间的距离,但这是另一个问题。我不明白怎么做这个功能,把一个点在PDF上。我发现了这个:https://github.com/barteksc/AndroidPdfViewer/issues/554
所以这是可能的,但是如何实现呢?我还是不明白。我想我需要创建一个位图,但我不能在PDF上绘制,也不能放置标记。
耽误您时间,实在对不起。
发布于 2018-05-03 00:08:37
你在他的仓库里有一个样本文件。
如果你转到这个location,他已经创建了关于如何加载pdf的方法!然后,如果您转到to this link,您将看到他已经创建了这个类,并且包含了良好的注释
Render page fragment on {@link Surface}
Page must be opened before rendering.
public void renderPage(PdfDocument doc, Surface surface, int pageIndex,
int startX, int startY, int drawSizeX, int drawSizeY) {
renderPage(doc, surface, pageIndex, startX, startY, drawSizeX, drawSizeY, false);
}您正在搜索的方法是bookmark方法
/** Get table of contents (bookmarks) for given document */
public List<PdfDocument.Bookmark> getTableOfContents(PdfDocument doc) {
synchronized (lock) {
List<PdfDocument.Bookmark> topLevel = new ArrayList<>();
Long first = nativeGetFirstChildBookmark(doc.mNativeDocPtr, null);
if (first != null) {
recursiveGetBookmark(topLevel, doc, first);
}
return topLevel;
}
}但是,请记住,可能有必要使用异步任务来下载pdf!
https://stackoverflow.com/questions/50138409
复制相似问题