Adobe RM SDK Аннотация

Вы, ребята, использовали RM SDK для iOS? RM SDK сохраняет аннотацию в следующем формате:

startBookmark = "#pdfloc(bd0d,0,101,5,2,0,0,1)"; endBookmark = "#pdfloc(bd0d,0,101,14,0,0,1,1)"; 

Как мы можем выйти из этих двух строк?

В ваших местоположениях PDF укажите конкретный объект в файле PDF. Этот объект напрямую не связан с координатой (x, y) на экране, поскольку это зависит от разрешения и DPI, которые вы используете для рендеринга PDF-файла. Это также зависит от механизма рендеринга, который вы используете для рендеринга файла.

Чтобы нарисовать ящик в iOS, вам нужно будет нарисовать его, используя (x, y) координаты. Вам нужно получить координаты (x, y), которые находятся вокруг аннотаций, с которыми вы работаете. Вы можете сделать это с помощью RMSDK, используя getRangeInfo . Вы также можете использовать расположенные выше поля PDF, чтобы перейти к конкретной аннотации. Обратите внимание, что поле, в которое вы вернетесь, действителен только для исполнения вашего файла с параметрами, которые у вас есть. Если вы измените любой из параметров – версию RMSDK, значения матрицы навигации, dpi, разрешение рендеринга, вам нужно будет получить новые значения для поля из RMSDK.

Ниже приведен код, который поможет вам получить координаты (x, y) из ваших двух мест с помощью RMSDK. Код предназначен для основной библиотеки C / C ++, так как я не уверен, как выглядит ваш слой Objective-C. Это может отличаться в зависимости от того, какую версию RMSDK вы используете.

 dpdoc::RangeInfo* rangeInfo = renderer->getRangeInfo(startBookmark, endBookmark); dpdoc::Rectangle* rect; rangeInfo->getBox(0, false, rect&); 

Затем переменная «rect» будет содержать (x, y) координаты для полей, которые нужно рисовать. Обратите внимание, что может быть несколько ящиков для каждых 2 наборов координат. В этом случае вам нужно будет пройти через них.

Если у вас есть слой Objective-C, который обычно поставляется с RMSDK, то он должен быть немного проще. Вы в этом случае должны выглядеть примерно так:

 NSArray *boxes = nil; RMRangeInfo *rangeInfo = [document getRangeInfoWithStart:startBookmark end:endBookmark]; boxes = rangeInfo.boxes 

Затем вы можете перебирать массив блоков, чтобы получить (x, y) и нарисовать их на экране. В большинстве случаев вы получите 1 поле, но вы должны учитывать случаи, когда у вас есть несколько ящиков для рисования. Простой цикл должен сделать трюк.

  • Создать PDF-форму в объекте c с изображением
  • Нарисуйте текст из uitextview в pdf, так как он
  • Как получить снимок UITableView в формате PDF
  • В iOS, как вы можете программно заполнить поле формы pdf?
  • Как я могу использовать библиотеку PoDoFo для аннотирования PDF-файлов на iOS?
  • Высота и ширина страницы PDF-файла
  • Приложение использует основные данные - как реализовать функцию «отчета о печати»?
  • как отображать pdf на ios
  • Могу ли я программно добавить аннотацию ссылки к PDF-файлам?
  • Можно ли удалить в UIwebview при отображении pdf?
  • Как сохранить локально PDF или другие файлы в iOS
  • Interesting Posts
    Давайте будем гением компьютера.