Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: из .png в .svg  (Прочитано 4183 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
из .png в .svg
« : 10 Март 2017, 21:07:24 »
нужно конвертнуть картинку из из .png в .svg
сама картинка .png , 32 бит,с прозрачностью

векторизировать  не нужно .

так как картинок много то и сохранять по одной в inkskape  как то не комильфо для линуксоида .


пытался так:
1.
Цитировать
potrace -s *.png
ругается на формат файла и портит .svg  - который не читается
2.
Цитировать
rsvg-convert c_2.png -o c_2.svg
Error reading SVG:Error domain 1 code 4 on line 1 column 1 of file:///home/samsung/colour/c_2.png: Start tag expected, '<' not found
3.
Цитировать
convert c_2.png c_2.svg
работает файл .svg создает но inkskape  его не открывает ...

есть какие нибудь идеи ?
« Последнее редактирование: 10 Март 2017, 21:14:33 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн maks05

  • Старожил
  • *
  • Сообщений: 6780
    • Просмотр профиля
Re: из .png в .svg
« Ответ #1 : 10 Март 2017, 21:26:19 »
бамбук, не уверен, что это можно сделать без векторизации. Это же два принципиально разных формата. Другое дело, что, наверно, должен быть способ пакетно векторизовать... Не знаю, не сталкивался.

Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7169
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #2 : 10 Март 2017, 22:00:24 »
бамбук, версии imagemagick и Inkscape в студию. У меня на маленьких картинках всё открывает. И неплохо бы проблемный файл в студию, т.к. у меня есть подозрения, почему Inkscape может в очень редком случае работать с png некорректно. На самом деле задача довольно странная в такой постановке, но раз нужно, значит нужно.

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #3 : 10 Март 2017, 22:01:48 »
maks05
вектаризация это буквально когда весь рисунок нарисован изначально в редакторе векторной графики

но в svg - это контейнер - в нем  может присутствовать и шрифт и растр и векторная картинка и весь этот конструктор выглядит как единое изображение

в данном случае  - только растр . об этом написано в первом посте .

peregrine

исходник
https://cloud.mail.ru/public/ButF/4utRZf6n9

обработанное в инке работающее svg

https://cloud.mail.ru/public/2AET/RGzjrW8fy

файлов много - Я ленивый
как автоматизировать выполнение задачи ?

версия инки - 0.92
8:6.8.9.9-7ubuntu5.4  - версия пакета imagemagick
« Последнее редактирование: 10 Март 2017, 22:16:54 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4257
  • Capture the truth
    • Просмотр профиля
Re: из .png в .svg
« Ответ #4 : 10 Март 2017, 22:25:41 »
бамбук,
во-первых, svg - это НЕ контейнер растра, вектора и всех вместе.
во-вторых, SVG = Scalable Vector Graphic (ключевое слово - вектор)
в-третьих, результат ваших конвертаций - растровая картинка с никаким разрешением.
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн peregrine

  • FSM
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 7169
  • Gentoo x64 Ubuntu 16.04.1 x64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #5 : 10 Март 2017, 22:29:01 »
бамбук, convert c_2.png c_2.svg у меня прекрасно работает, результат открывается в Inkcape 0.92.1 из официальной репы проекта Inkcape, версия imagemagick такая же.

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #6 : 10 Март 2017, 22:50:12 »
peregrine

бамбук, convert c_2.png c_2.svg у меня прекрасно работает, результат открывается в Inkcape 0.92.1 из официальной репы проекта Inkcape, версия imagemagick такая же.

спасибо 
все так же конвертит
но не открывает . версия инки та же но линукс минт

щас из реп инки поставлю заново..

Пользователь добавил сообщение 10 Март 2017, 23:01:54:

нет ничего не изменилось
инка не открывает
проверил в лисе лиса тоже не открывает файл полученый в результате конвертации ...
Цитировать
синтаксическая ошибка строка 1

что у тебя за DE ? ..... а вижу в подписи
нашел поиском что при сборе пакета должен быть флаг с поддержкой .svg  для imagemagick
как раз гентушники писали .   :'(
« Последнее редактирование: 10 Март 2017, 23:06:31 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4257
  • Capture the truth
    • Просмотр профиля
Re: из .png в .svg
« Ответ #7 : 10 Март 2017, 23:44:08 »
бамбук, вы хотяб свой "сконвертированный" файл открывали?
разочарую:


то, что у вас получилось - не svg
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн maks05

  • Старожил
  • *
  • Сообщений: 6780
    • Просмотр профиля
Re: из .png в .svg
« Ответ #8 : 10 Март 2017, 23:46:48 »
вектаризация это буквально когда весь рисунок нарисован изначально в редакторе векторной графики
Векторизация - это процесс математической обработки пиксельной графики для превращения её в векторную. Я надеюсь, что вы понимаете разницу между пиксельной и векторной графикой? Если не вдаваться в подробности, то пиксельная графика - эта матрица, где каждой точке с конкретными координатами определён конкретный цвет (иногда и прозрачность), а векторная графика описывается формулами кривых с заливкой внутри контура, например (контур может растягиваться, поэтому и заливка, в отличие от пиксельной графики, - "безразмерная").

« Последнее редактирование: 11 Март 2017, 08:51:53 от maks05 »

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #9 : 12 Март 2017, 09:07:30 »
ALiEN175
maks05

1 . Конечно открывал
firefox и  Inkscape и gimp и Xviewer и программа в которой я думаю его использовать его открывают
мало того они знают что это .svg

так как сказать вам по сути заданных вопросов нечего
считаю ваши посты флудом
так как:
https://ru.wikipedia.org/wiki/SVG
Цитировать
предназначен для описания двумерной векторной и смешанной векторно/растровой графики в формате XML
2. Решение изложено в посте - peregrine

тему можно закрывать.
« Последнее редактирование: 12 Март 2017, 09:15:00 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн maks05

  • Старожил
  • *
  • Сообщений: 6780
    • Просмотр профиля
Re: из .png в .svg
« Ответ #10 : 12 Март 2017, 11:49:07 »
бамбук, вы можете считать что угодно, вот только полученный вами файл не является векторным рисунком, несмотря на то, что у него теперь есть расширение .svg. А команда от peregrine ни в коей мере не является решением.

Давайте проведём эксперимент.
Этап 1.
Рассмотрим svg-файл, полученный по вышеуказанной команде. По ПКМ в Naitilus (или другом файловом менеджере) откройте этот файл в Inkscape. Отметьте его мышкой  и попробуйте его "разгруппировать". Получается? Вряд ли. Теперь переключитесь на инструмент редактирования узлов (острая вытянутая треугольная стрелочка) и щёлкните по изображению. Если изображение покрылось "узлами" и каждый из них можно подвинуть, то изображение таки векторное. Но сдаётся мне, что этого не произойдёт (ибо я попробовал сам и убедился).
Этап 2.
По прежнему находясь в Inkscape переключаемся на обычный инструмент выделения (обычную строчку), щёлкаем по изображению, а затем в меню программы вызываем "Контур"/"Векторизовать растр...", что  откроет диалог выбора параметров векторизации. Всё равно, какие параметры выбрать. На выходе мы получим различные (в зависимости от заданных параметров) векторные рисунки. С помощью обычной стрелки их можно сместить в сторону, а если нажать на инструмент редактирования узлов, то эти самые узлы во множестве и проявятся. При этом первоначальное изображение останется неизменным, так как оно как было растровым, несмотря на расширение, так им и осталось.

Что же до открытия изображения с расширением .svg в разных программах, то это не показатель. В Linux расширения не имеют решающего значения, система смотрит на содержание самого файла, исключение могут составлять отдельные кроссплатформенные программы, для быстроты оперирующие расширениями. Поэтому GIMP открывает ваш ".svg" как один из стандартных для него пиксельных форматов (тот формат, из которого вы пытались его преобразовать); Inkscape тоже открывает, но "Импортирует"; за Xview не скажу, но в принципе, он может распознавать как по сути, так и по расширению, если таковое прописано в его ассоциациях; ну а firefox - ему всё равно - он же браузер и легко умеет много форматов.

В общем, всё что вы добились - поменяли расширение файла и, возможно, ещё какие-то параметры. А без векторизации, если, конечно, вы хотите получить настоящий векторный рисунок, вам не обойтись. А вот как это сделать пакетно - это уже другой вопрос. Но уж точно не так, как вы пытаетесь это сделать сейчас.
« Последнее редактирование: 12 Март 2017, 12:22:26 от maks05 »

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #11 : 12 Март 2017, 19:07:11 »
Все что нам нужно было добиться это массовой конвертации из .png в .svg
средствами линукс . Автоматизации этой рутинной задачи . Все .

Ликвидация моей безграмотности в современном изобразительном искусстве  целью не ставилось .

К сожалению Я ошибся и в посте выше сказал что задача решена, это не так . Так как в результате конвертации (утилитой convert) получается  не работоспособный файл .

Я нашел программу на java которая под виндоус справилась с этой задачей . Файлы работоспособны .
Но при этом не являются векторной картинкой но являются .svg файлом !!!!!!!!!!!!!!
Что изначально и задумывалось (см. 1 пост)

К  сожалению Я не знаю как она это делает ... но мне интересно было бы иметь один или несколько скриптов на bash вместо нее (а нет так нет). В качестве замены - так как бывают нужны разные размеры  и т.д. и переименовывать также файлы не удобно , но это я смогу переименовать скриптом без проблем ...

Вот ссылка на офсайт программы кому интересно - http://www.vigorish.ru/section61/topic3586.html
вот итоговая картинка опять же кому интересно - https://cloud.mail.ru/public/D8En/U7Y4RXmdZ

Желающих устроить в очередной раз  мне  ликбез  про векторные картинки и их отличие от растровых  в современном изобразительном искусстве, прошу не утруждаться .



Пользователь добавил сообщение 12 Март 2017, 20:21:30:
Вот тут из .png делают векторное изображение
http://stackoverflow.com/questions/1861382/how-to-convert-a-png-image-to-a-svg
с помощью :
Цитировать
Convert png to svg using imagemagick and potrace

#!/bin/bash

if [ "$1" == "" ]; then
  echo Usage: $0 pngfile
  exit 0;
fi

FILE=`basename $1 .png`

if [ ! -e $FILE.png ]; then
  echo $FILE.png does not exist
  exit 1;
fi

convert $FILE.png $FILE.pnm
potrace -s -o $FILE.svg $FILE.pnm
rm $FILE.pnm

но такая цель не стоит .
« Последнее редактирование: 12 Март 2017, 20:24:40 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4257
  • Capture the truth
    • Просмотр профиля
Re: из .png в .svg
« Ответ #12 : 12 Март 2017, 23:35:18 »
бамбук, А скажите-ка задачу и цель всего этого действия? Зачем конвертировать?
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн бамбук

  • Автор темы
  • Активист
  • *
  • Сообщений: 541
  • Kubuntu 20.04 LTS x86_64
    • Просмотр профиля
Re: из .png в .svg
« Ответ #13 : 13 Март 2017, 13:43:08 »
ALiEN175

бамбук, А скажите-ка задачу и цель всего этого действия? Зачем конвертировать?
Сообщить
0.   Вступление :
Ну отвечу я Вам и что это изменит ?
У меня самого возникают подобные мысли когда Я читаю темы написанные новичками ... как  у Вас возникли и  ВЫ задаете эти вопросы .
Мне всегда кажется что подобные темы они(новички) пишут что бы потролить линуксоидов . Что линукс что то там не умеет.
Поверьте это не так.
Посмотрите хотя бы на дату моей регистрации на этом форуме ...
Или ваш вопрос о комерческой стороне дела ?
Сразу отвечу это не комерческая задача , иначе Я бы и написал в условиях задачи что Я оплачу эту работу .

Тут другое ...
Линукс в общем ubuntu в частности позволят мне (Я думаю что и не только мне) научиться думать и придумывать разные подходы к решению дела:
- особенно при выполнении каких то несложных рутинных задач (цикличных)
и путем написания скриптов на bash или питоне с другими Я вообще не знаком хотя и знаю что они есть.

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

В частности Я знаю о пакете программ imagemagick - которые как мне кажется как раз таки и предназначены для пакетной обработки кучи файлов
- исполнения несложных но однообразных и повторяющихся задач (цикличных)

Так же Я знаю или по крайней мере делаю выводы на основе той информации с которой Я сталкивался
что в виндоус гораздо хуже организована наитивная работа с .svg файлами чем в линукс
виндоус как то ближе отображение и работа с .bmp и jpeg  - ИМХО .

1. Далее :
среда разработки указана ниже моего ника ..

2. Есть программа которая отображает картинки .svg на рабочем столе поверх работы другой программы .Акцент на информирование Меня о событиях произошедших в этой программе несколько секунд назад. Но уже не отображаемом на экране .
(разрешение и качество картинок в данном случае не имеют особого значения - так как они маленькие и качества исходника в данном случае хватает за глаза
Я мог бы нарисовать эти картинки в векторе с нуля , но чесно говоря мне лень .
Повторюсь мне достаточно качества искодника . Его качество даже избыточно  (для данного случая) .

3.  Я могу обработать эти картинки в инке по одной (в линукс   или пакетно  в виндоус  - ссылку на программу Я давал выше)  но их много и опять же мне лень делать по одному файлу.
Поэтому Я и спросил у комьюнити , так как думаю Я  не первый сталкиваюсь с подобными задачами . И возможно уже есть готовые или подобные решения .

4. Я "рисую"  в различных графических редакторах около 15 лет  и поверьте знаю чем отличается один файл от другого не понаслышке а так сказать практически ...

чесно говоря возможно Я косноязычен и не всегда могу выразить словами свои мысли - доступно и понятно для всех.

Спасибо .


5. Последнее - Я понял по информации которую нашел в интернете , что в свежем пакете imagemagick ubuntu - нет поддерки .svg
и для того чтобы ее получить нужно найти старые исходники imagemagick  ~ 6.0  и собрать пакет с флагом поддержки .svg
возможно  для это придется установить какой то старенький дистр

Фактически это единственный вопрос с которым Я не разобрался на сегодняшний момент (пункт 5)
если других решений нет

Но Я разберусь ...
« Последнее редактирование: 13 Март 2017, 14:01:52 от бамбук »
Chuwi LapBook 14.1   ревизия ноутбука-3.0

Оффлайн maks05

  • Старожил
  • *
  • Сообщений: 6780
    • Просмотр профиля
Re: из .png в .svg
« Ответ #14 : 13 Март 2017, 14:05:42 »
бамбук, вы так и не сказали самого главного: что это за картинки и зачем их надо переводить в svg. И спрашивают вас об этом, что бы предложить оптимальный алгоритм решения задачи, который может коренным образом отличаться от того, который вы запланировали.

Пока же лично я понял только две вещи:
1) Вы придумали искусственную задачу, что бы попрактиковаться в возможностях линкуса.
2) Несмотря на ваши навыки "рисования" вы плохо понимаете, чем отличаются векторная и пиксельная графика (либо же и правда настолько не умеете выражать свои мысли, что думаете одно, а пишете нечто противоположное). Учитывая неплохой стиль и даже наличие запятых, что в наше время редкость, я склонюсь к "непониманию".

Итак, без объяснения основного замысла, получаем две технические задачи (не факт, что обе верные и необходимые):
а) Сменить расширение файла на svg.
б) Получить реальный векторный файл.\

Вы нашли решение обеих задач, но почему-то решили, что вариант а) является верным. Однако, из всего вышеизложенного, верным должен быть вариант б), представленный найденным вами в интернете скриптом (если он, конечно, работает - я не проверял).

Поэтому вопрос остаётся в силе: что и, главное, зачем, вы пытаетесь перевести в svg.

 

Страница сгенерирована за 0.156 секунд. Запросов: 24.