Articles of svg

Преобразование SVG-изображения в PNG с помощью PHP

Я работаю над веб-проектом, который включает в себя динамически сгенерированную карту США, окрашивающих разные состояния на основе набора данных. Этот файл SVG дает мне хорошую пустую карту США и очень легко изменить цвет каждого состояния. Трудность заключается в том, что браузеры IE не поддерживают SVG, поэтому для того, чтобы я мог использовать удобный синтаксис, предлагаемый […]

Как преобразовать текст в пути SVG?

У меня есть шрифт в файле ttf и вы хотите сгенерировать SVG с текстом, превращенным в пути. Мне не нужен образ (так что использование возможностей imagettftext или Image Magick не достаточно), мне нужна форма, которую можно масштабировать вверх и вниз, и я хочу потерять информацию о используемом шрифте и не хочу ссылаться на нее в […]

Рендеринг SVG-файла в PNG или JPEG в PHP

Я искал столько, сколько мог, но я нашел только класс PHP, который требует, чтобы Inkscape отображал SVG, поэтому я прошу здесь: У меня есть файл SVG, сгенерированный каким-то образом (или загруженный клиентом). Мне нужно сделать это в JPG или PNG, используя только PHP и / или GDLib, поскольку SVG не поддерживается всеми браузерами. У меня […]

Как определить длину (в пикселях) строки, отображаемой на веб-странице?

Если я знаю размер шрифта (12) и семейство шрифтов (calibri), есть ли способ определить длину (в пикселях), какая строка будет взята после того, как она будет отображаться? Я абсолютно уверен в шрифте и размере. Существуют ли таблицы поиска для этой цели, чтобы определить длину в самом PHP-коде? Я пишу PHP-скрипт для динамического создания SVG-изображения, которое […]

Прокрутка элементов SVG с помощью PHP

Как я могу перебирать элементы SVG с помощью PHP? <?php $svgString = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="overflow: hidden; position: relative;" width="9140" version="1.1" height="3050"> <rect x="0" y="0" width="9140" height="3050" r="0" rx="0" ry="0" fill="#FFFF00" stroke="#000"/> <image x="-101.5" y="-113.5" width="203" height="227" xlink:href="1.jpg" stroke-width="1"></image> <image x="-201.5" y="-213.5" width="103" height="127" xlink:href="2.jpg" stroke-width="1"></image> </svg>'; $svg = new SimpleXMLElement( $svgString ); $result = […]

Выбор правильной технологии / библиотеки для добавления указанного пользователем текста по пути в ранее определенных областях

Я создаю админ-зону, используя CodeIgniter 2, где у администратора есть возможность добавлять определенные изображения, которые являются «пустыми», когда дело доходит до наложения текста. Когда они загружают изображение, у них должен быть способ определения определенных путей, по которым обычные пользователи могут добавлять желаемый текст. В принципе, это можно использовать для рубашек, кружек … любого типа пользовательских […]

Проблема Doctype, отображающая SVG с Safari

У меня есть несколько изображений SVG, которые я хотел бы разместить на странице. Firefox и Chrome не дали мне никаких проблем, но Safari только покажет изображение SVG, если и только если документ имеет расширение «.xhtml». Если я попытаюсь использовать PHP-код (и, следовательно, расширение «.php»), точная же разметка, которую я использовал в документе «.xhtml», больше не […]

Каков наилучший способ сериализации SVG из DOM клиента?

Я работаю над интерактивными интерфейсами SVG / AJAX, где элементы создаются и перемещаются пользователями «на лету». Я бы хотел, чтобы пользователи могли экспортировать свое текущее представление в PNG-изображение и / или документ SVG. Мне бы очень хотелось, чтобы документ SVG был как можно более простым (без большого количества вложенных преобразований). Есть ли какие-либо рамки, которые […]

PHP: DOMDocument – атрибуты с двоеточием в нем?

Я использую DOMDocument для анализа XML (SVG). Некоторые узлы имеют атрибуты с двоеточием в нем, например: <svg id="svg2" width="1000" height="1000" sodipodi:version="0.32" inkscape:version="0.48.1 " … > Но когда я сделаю : $node= DOMDocument->documentElement; foreach($node->childNodes as $key=>$childnode) { foreach($childnode->attributes as $attribute) { echo $attribute->name."\n"; } } атрибуты с: печатаются без первой части (пространства имен) Как получить пространство […]