Подтвердить что ты не робот

Как сделать SVG-изображения в iphone без uiwebview?

Я хочу отображать SVG-изображения в iPhone без использования UIWebView. Как я могу это сделать?

Я проверил эти 2 ссылки:

http://www.splashdust.net/2010/09/svgquartzrenderer-a-basic-iphone-sdk-compatible-svg-renderer/ https://github.com/splashdust/SVGQuartzRenderer

В приведенном выше проекте Github показано 102 ошибки, отображающих UIKit framework, и другие, и я также не могу добавить эту структуру. Я думаю, что приложение предназначено для MacOS не для iOS.

http://maniacdev.com/2011/05/open-source-library-to-render-svg-graphics-as-core-animation-layers/
https://github.com/mattrajca/SVGKit

Проект на указанном выше URL-странице показывает ошибку при создании проекта.

Target указывает тип продукта "com.apple.product-type.framework", но нет такого типа продукта для платформы "iPhoneOS".

Кто-нибудь знает, как это решить? Или другие полезные рабочие примеры, которые я могу использовать для этого? Я хочу отображать SVG на iPhone.

ОБНОВЛЕНИЕ: Я работаю SVGKit, работая, читая инструкции. Но когда я попытался сделать работу над проектом, которую я загрузил из Github (https://github.com/splashdust/SVGQuartzRenderer ) У меня появились следующие ошибки:

1) UIKit/UIKit.h: Нет такого файла или каталога (я не могу добавить его, используя добавленную существующую инфраструктуру)
2) Libxml/tree.h: Нет такого файла или каталога
3) Ожидаемый спецификатор-квалификатор-listbefore 'xmlParserCtxtPtr'. Кто-нибудь знает, как решить проблему и заставить ее работать?

4b9b3361

Ответ 1

Джейсон Моррисси, автор чрезвычайно превосходного приложения Alien Blue, лучший клиент iOS Reddit в магазине (можете ли вы сказать, что я фанат? Я также бета-тестер.) недавно поднял свой SVGKit, которая отображает SVG-изображения в качестве слоев Core Animation. Я не использовал его, но знаю, что он существует.

И затем, посмотрите... Если вы просто получаете много ошибок при приведении в классы других людей, мое сильное подозрение в том, что вы не следуете инструкциям "как использовать". В основном они расскажут вам, какие рамки необходимы и какие платформы они поддерживают. Каждый раз, когда я пытался использовать что-то вроде этого и имел комбат крови, я вернулся и нашел какой-то шаг инструкции по установке, который я пропустил.

Ответ 2

Мне просто удалось скомпилировать SVGFlashRenderer. Для iOS вам нужно открыть проект из каталога SVGRendererTouch. И не забудьте отдельно загрузить содержимое каталога lib/MROGeometry из github (просто следуйте ссылке в исходном дереве).

P.S. Для меня лучшим рабочим решением был SVGKit, но не версия от Джейсона Морисси (упомянутая в другом ответе), но fork из reklis. У него исправлено множество ошибок и работает гораздо правильнее.

Ответ 3

Это легко.

SVGKImage *svgImg = [SVGKImage imageNamed:@"add-control-panel"];
SVGKFastImageView *imgView = [[SVGKFastImageView alloc] initWithFrame:CGRectMake(10, 100, 420, 280)];
imgView.image = svgImg;
[self.view addSubview:imgView];