【问题标题】:Mark on PDF Android App在 PDF Android App 上标记
【发布时间】:2018-10-12 18:51:34
【问题描述】:

我目前正在使用 AndroidPDFViewer 在 Android 上开发应用程序:https://github.com/barteksc/AndroidPdfViewer

我想创建一个功能,当用户触摸屏幕时,它会在 PDF 上的这个位置放置一个点。在我想测量两点之间的距离之后,这是另一个问题。 我不明白如何执行此功能,请在 PDF 上指出一点。我发现了这个:https://github.com/barteksc/AndroidPdfViewer/issues/554

所以这是可能的,但如何?我不明白。 我想我需要创建一个位图,但我不能在 PDF 上绘图,也不能放置标记。

感谢您的宝贵时间。

【问题讨论】:

    标签: java android pdf kotlin marker


    【解决方案1】:

    你在他的 repo 中有一个示例文件。

    如果你去location,他已经创建了如何加载 pdf 的方法!然后如果你去to this link 你会看到他已经创建了这个类并且包含了好的 cmets

    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;
            }
        }
    

    但请记住,可能需要使用异步任务来下载 pdf!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-24
      • 1970-01-01
      • 2013-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-26
      相关资源
      最近更新 更多