2014-07-27 3 views
7

Кто-нибудь знает, можно ли импортировать полный SVG в документ PDFKit? В документах я вижу, что у него полная поддержка SVG, есть методы рисования путей и т. Д., Но я не вижу метода импорта полного документа SVG.Импорт полного SVG с PDFKit

ответ

2

К сожалению, начиная с V0.7 (ноябрь 2014), PDFKit не поддерживает вывод содержимого SVG в PDF. Hovever, большинство строительных блоков (функции, охватывающие большинство атрибутов SVG-презентаций + парсер SVG path), поэтому реализация этого вопроса будет связана с перемещением дерева документов SVG из корня, отслеживанием состояния преобразования и атрибута (в случай унаследованных значений) и рисование графических примитивов SVG (включая path с), с которыми вы сталкиваетесь. Конечно, некоторые вещи, такие как определения символов и фильтры, были бы сложнее реализовать, но для базовой геометрии & стиль не должен занимать больше нескольких часов, чтобы реализовать данные функции, предоставленные PDFKit.

+0

В конце концов, я решил использовать API для своих конверсий, я использую CloudConvert, который покажется вам замечательным. Если кому-то все еще нужна эта поддержка в PDFKit, то, как вы говорите, не похоже, что было бы слишком сложно добавить эту функцию и сделать запрос на pull. – jcvandan

+0

Я пытаюсь построить интерфейс между SVG и PDFKit, однако я столкнулся с проблемой при использовании преобразований. Матрица преобразования в формате pdf странно, не может найти, почему ... однако при использовании 'scale',' rotate' ... он отлично работает, будет изучать его, сообщим вам, если мне удастся заставить его работать без проблем –

+1

любые обновления на этом? – gaitat

1

При поиске ответа на этот вопрос я нашел небольшую библиотеку с открытым исходным кодом, которая делает трюк: SVG-to-PDFKit.

Если внедрение свой собственный интерфейс не очень удобно, это один довольно простой в использовании (образец кода из Readme):

PDFDocument.prototype.addSVG = function(svg, x, y, options) { 
    return SVGtoPDF(this, svg, x, y, options), this; 
}; 
doc.addSVG(svg, x, y, options); 

Параметры являются такие:

документ [PDFDocument ] = Ф документ, созданный с PDFKit

SVG [SVGElement или строка] = объект SVG или код XML

х, у [число] = положение, в котором SVG будет добавлен

Проверьте демонстрационную here.

 Смежные вопросы

  • Нет связанных вопросов^_^