Ответ 1
Существует веб-сайт, на котором вы можете загрузить свое изображение и увидеть результат.
Но если вы хотите скачать svg-образ, вам необходимо зарегистрироваться. (Если вы зарегистрируетесь, вы получите 2 изображения бесплатно)
Как преобразовать PNG-изображение в SVG?
Существует веб-сайт, на котором вы можете загрузить свое изображение и увидеть результат.
Но если вы хотите скачать svg-образ, вам необходимо зарегистрироваться. (Если вы зарегистрируетесь, вы получите 2 изображения бесплатно)
potrace
не поддерживает PNG в качестве входного файл, но PNM.
Поэтому сначала convert
от PNG до PNM:
convert file.png file.pnm # PNG to PNM
potrace file.pnm -s -o file.svg # PNM to SVG
potrace -s
= > Выходной файл S VGpotrace -o file.svg
= > Запись вывода на file.svg
convert 2017.png 2017.pnm
Временной файл = 2017.pnm
potrace 2017.pnm -s -o 2017.svg
ykarikos предлагает script png2svg.sh что я улучшил:
#!/bin/bash
File_png="${1?:Usage: $0 file.png}"
if [[ ! -s "$File_png" ]]; then
echo >&2 "The first argument ($File_png)"
echo >&2 "must be a file having a size greater than zero"
( set -x ; ls -s "$File_png" )
exit 1
fi
File="${File_png%.*}"
convert "$File_png" "$File.pnm" # PNG to PNM
potrace "$File.pnm" -s -o "$File.svg" # PNM to SVG
rm "$File.pnm" # Remove PNM
Если вы хотите преобразовать много файлов, вы также можете использовать следующую команду:
( set -x ; for f_png in *.png ; do f="${f_png%.png}" ; convert "$f_png" "$f.pnm" && potrace "$f.pnm" -s -o "$f.svg" ; done )
См. также это хорошее сравнение растровых и векторных преобразователей в Википедии.
Png - стиль растрового изображения, а SVG - векторный графический дизайн, который поддерживает растровые изображения, поэтому он не может преобразовать изображение в векторы, а просто изображение, встроенное в векторный формат. Вы можете сделать это с помощью http://www.inkscape.org/, который является бесплатным. Он будет внедрять его, однако он также имеет движок Live Trace, который будет пытаться преобразовать его в пути, если вы хотите (используя potrace). См. Прямую трассировку в adobe illustrator (commericial) является примером:
http://graphicssoft.about.com/od/illustrator/ss/sflivetrace.htm
Вы можете посмотреть potrace.
с иллюстратором adobe:
Откройте Adobe Illustrator. Нажмите "Файл" и выберите "Открыть", чтобы загрузить файл .PNG в программу. Извлеките изображение по мере необходимости, прежде чем сохранять его как .SVG файл. Нажмите "Файл" и выберите "Сохранить как". Создайте новое имя файла или используйте существующее имя. Убедитесь, что выбранный тип файла - SVG. Выберите каталог и нажмите "Сохранить", чтобы сохранить файл.
или
онлайн-конвертер http://image.online-convert.com/convert-to-svg
Я предпочитаю AI, потому что вы можете внести любые изменения
удача
Легко
Как вы увидите, если вы хотите сделать много других умных файлов .svg, вы можете сделать это, используя Inkscape.
Нетехническое наблюдение: я лично предпочитаю этот метод по сравнению с "бесплатными" предложениями на сайте, потому что, помимо часто требующих регистрации, путем загрузки изображения на всех практических примерах он дает изображение владельцу веб-сайта.
К моему удивлению, potrace, оказывается, может обрабатывать только черно-белые. Это может быть хорошо, если вы используете случай, но некоторые могут считать отсутствие цветовой трассировки проблематичной.
Лично у меня были удовлетворительные результаты с Vector Magic
Тем не менее он не идеален.
Примечание для тех, кто использует potrace и imagemagick, преобразование PNG изображений с прозрачностью в PPM doesn Кажется, он работает очень хорошо. Вот пример, который использует флаг -flatten
на convert
для обработки этого:
sudo apt-get install potrace imagemagick
convert -flatten input.png output.ppm
potrace -s output.ppm -o output.svg
rm output.ppm
Еще одно интересное явление: вы можете использовать PPM (256 * 3 цвета, т.е. RGB), PGM (256 цветов, то есть оттенки серого) или PBM (2 цвета, то есть белый или только черный) в качестве формата ввода. Из моих ограниченных наблюдений казалось бы, что на изображениях, которые сглажены, PPM и PGM (которые, как я вижу, производят идентичные PBM расширяет цветную область (хотя и немного). Предположительно, это разница между тестом pixel > (256 / 2)
и тестом pixel > 0
. Вы можете переключаться между ними, изменяя расширение файла, т.е. следующее использование PBM:
sudo apt-get install potrace imagemagick
convert -flatten input.png output.pbm
potrace -s output.pbm -o output.svg
rm output.pbm
Я только что нашел этот вопрос и ответы, поскольку я пытаюсь сделать то же самое! Я не хотел использовать некоторые из других упомянутых инструментов. (Не хотите отсылать мою электронную почту и не хотите платить). Я обнаружил, что Inkscape (v0.91) может выполнять довольно хорошую работу. Этот tutorial быстро и понятен.
Это так же просто, как выбор растрового изображения в Inkskape и Shift + Alt + B.
Вы также можете попробовать http://image.online-convert.com/convert-to-svg
Я всегда использую его для своих нужд.
В зависимости от того, почему вы хотите конвертировать из .png в .svg, вам, возможно, не придется беспокоиться. Преобразование из .png(растр) в .svg(vector) может быть больно, если вы не очень хорошо знакомы с доступными инструментами или если вы не являетесь графическим дизайнером по профессии.
Если кто-то отправляет вам большой файл с высоким разрешением (например, 1024x1024), вы можете изменить его размер до практически любого размера, который вы хотите использовать в GIMP. Часто возникают проблемы с изменением размера изображения, если разрешение (количество пикселей на дюйм) слишком низкое. Чтобы исправить это в GIMP, вы можете:
File -> Open
: ваш .png файлImage -> Image Properties
: проверьте разрешение и цветовое пространство. Вы хотите разрешение около 300 ppi. В большинстве случаев вам нужно, чтобы цветовое пространство было RGB.Image -> Mode
: установить в RGBImage -> Scale Image
: оставьте размер отдельно, установите и Y-разрешение до 300 или больше. Шкала попадания.Image -> Scale Image
: разрешение должно теперь составлять 300, и теперь вы можете изменить размер изображения до практически любого размера, который вы хотите.Не так просто, как изменение размера .svg файла, но определенно проще и быстрее, чем пытаться преобразовать .png в .svg, если у вас уже есть большое изображение с высоким разрешением.
Я предполагаю, что вы хотите написать программное обеспечение для этого. Чтобы сделать это наивно, вы просто найдете линии и установите векторы. Чтобы сделать это разумно, вы пытаетесь приспособить фигуры к чертежу (подгонка модели). Кроме того, вы должны попытаться определить растровые области (регионы, которые вы не можете моделировать с помощью shames или применения текстур. Я бы не стал рекомендовать идти по этому маршруту, так как это займет довольно много времени и потребует немного знаний о графике и компьютерном видении. Тем не менее, выход будет значительно и значительно лучше, чем ваш исходный вывод.
http://online-converting.com/image/convert-to-svg/ хорошо работал для преобразования в svg
Этот инструмент работает очень хорошо прямо сейчас.
Если вы находитесь в какой-то системе Linux, imagemagick идеально подходит. То есть
convert somefile.png somefile.svg
Это работает с кучами разных форматов.
Для других носителей, таких как использование видео и аудио (ffmpeg) Однако я знаю, что вы четко указали png на svg; Это все еще связано с медиа.
ffmpeg -i somefile.mp3 somefile.ogg
Просто подскажите, хотите ли вы пройти через множество файлов; цикл с использованием основных трюков оболочки.
for f in *.jpg; do convert $f ${f%jpg}png; done
Это удаляет jpg и добавляет png, который сообщает конвертировать то, что вы хотите.