Я разрабатываю приложение, в котором пользователь может делиться файлами MS-Office. Под Windows я использую объекты Word Automation и виртуальный принтер для создания файлов .BMP из .doc и .ppt, которые затем читаю / отображаю и отправляю по сети.
Сейчас я портирую свое приложение на MAC.
На MAC я действительно не уверен, как этого добиться. Я искал и нашел способ получить растровое представление файлов под MAC через пользователя QuickLook API. Я также нашел здесь несколько сообщений, связанных с QuickLook.
Получить изображение предварительного просмотра QuickLook для файла
Предварительный просмотр Mac Quick Look в NSView или NSImage?
Но здесь мы застряли с QLThumbnailImageCreate , поскольку он дает только одно эскизное изображение для документа (1-я страница .doc и .ppt). Так что это не принесет мне никакой пользы.
Я немного исследовал и нашел команду qlmanage , которая с параметром -p будет генерировать фактический ПРОСМОТР документа, а не только его миниатюру. Но теперь он сохраняет только изображения внутри страниц как файлы .png и ничего не делает с текстом. Он дает единственный файл Preview.html вместе с PreviewProperties.plist, который содержит информацию о вложениях.
Та же самая команда qlmange делает что-то странное с файлами PowerPoint. Он сохраняет шаблон слайда как файл .pdf (а встроенные изображения как .png).
Существует ли в коде какой-то способ, с помощью которого я могу запросить генератор MS-Office QuickLook (office.qlgenerator), чтобы он предоставил мне объекты предварительного просмотра, а затем, используя этот объект предварительного просмотра, я конвертирую страницы в растровые изображения?
Finder / Spotlight, кажется, отлично понимает превью. Интересно, как эти приложения могут это делать? Apple скрывает от разработчиков эту функциональность ???
Может ли кто-нибудь, обладающий опытом QuickLook, помочь мне в этом или показать другой возможный способ, с QuickLook или без него, потому что на данный момент я думаю, что действительно застрял здесь.
Проще говоря, мне просто нужны необработанные изображения страниц / слайдов.
Любая помощь в этом отношении будет принята с благодарностью.
С уважением и уважением, LazyCoder7
1 ответ
Отвечая на свой вопрос кому-то, у кого такая же ситуация, как у меня.
Здесь нам потребуется двухэтапный процесс.
1.Любой документ -> .PDF.
Для этой части вы можете использовать информацию, представленную на Программирование фильтра / бэкэнда для печати в PDF с помощью CUPS из любого приложения Mac OS X. Это очень хорошо объяснено, вы также можете проверить эту ссылку https://bitbucket.org/codepoet/cups-pdf-for-mac-os-x/wiki/Home.
Как только вы поймете и поэкспериментируете с CUPS, вы сможете создавать файлы .PDF из .doc или, скажем, .ppt.
Теперь начинается вторая часть решения.
2. Преобразование .PDF в .JPG.
Для этой части вы можете использовать код по адресу Конвертируйте страницы PDF в изображения с помощью COCOA а>.
Код работает хорошо и дает желаемые результаты.
Итак, теперь в основном мы можем конвертировать любые файлы MS Office в изображения, и это тоже касается страниц, не используя способ QuickLook (который, однако, не будет работать в этом случае).
Надеюсь, это может кому-то помочь.
С Уважением,
CrazyCoder7.
Похожие вопросы
Связанные вопросы
Новые вопросы
macos
macOS (ранее известная как OS X или Mac OS X) - это операционная система для настольных ПК от Apple, установленная на компьютерах Macintosh. Используйте этот тег только в том случае, если ваш вопрос касается использования API-интерфейсов macOS или поведения, специфичного для macOS, а не потому, что вы запускаете свой код в macOS. Вопросы, связанные с использованием или устранением неполадок macOS, не относятся к теме и принадлежат сообществу «Спроси другое».