Если вы загрузили SDK Adobe XMP Toolkit, вы можете найти пример записи метаданных XMP в «ModifyingXMP.cpp» и пример чтения уже записанного файла XMP в файле «ReadingXMP.cpp». Обратите внимание, что я использую версию XMP-Toolkit-SDK-CC201607.
Вам потребуются статические файлы и файлы заголовков, чтобы позже включить их в проект iOS. Внимательно прочитайте инструкции о том, как их создавать, особенно о том, какие арки вам нужны. В моем случае я сгенерировал [arm64, armv7, armv7s] и [x86_64] по отдельности, а затем позже липолизовал их вместе.
Попробуйте изменить «ModifyingXMP.cpp» в соответствии с тем, что вам нужно. Включите эти исходные коды в свой проект приложения iOS как Objective-C++ (с расширением .mm). Не забудьте включить файл заголовка, файл libXMPCoreStatic.a, файл libXMPFilesStatic.a, сделать соединительный заголовок и настроить проект для импорта внешних статических библиотек. Если вы не понимаете, о чем я говорю, проверьте эти ссылки:
https://forums.adobe.com/thread/1360320
Как я могу использовать статическую библиотеку .a в Swift?
Вот как это выглядит в моем демонстрационном проекте: ![введите здесь описание изображения](https://i. stack.imgur.com/kvyPX.png)
Моя реализация на XmpWriter.h:
#import <Foundation/Foundation.h>
@interface XmpWriter : NSObject
+(BOOL) writeXmp:(const char *) imageUrl Param1:(const char *) Param1 Param2:(float) param2 Param3:(float) Param3;
+(BOOL) readXmp:(const char *) imageUrl;
@end
В моем файле XmpWriter.mm я изменяю createXMPFromRDF()
, чтобы принять мои параметры, например:
SXMPMeta createXMPFromRDF(const char *Param1, float Param2, float Param3)
Я надеюсь, что вы сможете приблизиться к тому, чего хотите достичь отсюда.
person
Kevin
schedule
03.01.2018