我目前正在Android上使用AndroidPDFViewer开发一个应用程序:https://github.com/barteksc/AndroidPdfViewer
我想创建一个功能,当用户触摸屏幕时,它会在此位置的PDF上放置一个点。在我想测量2点之间的距离之后,这是另一个问题。 我不明白如何做这个功能,对PDF有所了解。我发现了这个:https://github.com/barteksc/AndroidPdfViewer/issues/554
所以它可能但是怎么样?我不明白。 我想我需要创建一个位图,但是我不能在PDF上绘图,或者放一个标记。
感谢您的时间。
答案 0 :(得分:0)
他的回购邮件中有一个示例文件。
如果你转到这个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);
}
您正在搜索的是书签方法
/** 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;
}
}
但请记住,可能需要使用Async Tasks下载pdf!