मैं सॉफ्टवेयर का उपयोग करके PNG को SVG में कैसे परिवर्तित करूँ?


29

मैं एसवीजी रासायनिक संरचनाओं को पूरी तरह से तैयार करने में सक्षम होना चाहता हूं , ( इस प्रश्न को देखें ), जो कि मार्विनसेटेक का उपयोग करके बनाए गए थे और मुझे लगता है कि मैंने एक समाधान के बारे में सोचा होगा; मैं एक बड़ी PNG फ़ाइल बनाने के लिए MarvinSketch का उपयोग करता हूं, फिर GIMP का उपयोग करके फसल , और फिर PNG को SVG में परिवर्तित करता हूं । इसलिए मैं यह जानना चाहता हूं कि क्या कोई मुफ्त सॉफ्टवेयर जानता है जिसे मैं स्थापित कर सकता हूं (मुझे ऑनलाइन कन्वर्टर्स का उपयोग करना पसंद नहीं है क्योंकि मैं उबंटू पर उच्च गुणवत्ता वाले PNG-> SVG रूपांतरण के लिए हमेशा संदेह करता हूं)।


1
ठीक है कि जैसा दिखता है उसके लिए एक कोड क्या होगा? मैंने आपके ज्ञान से (जैसा मैं एक कोड नोब हूं) कोड को उलटने की कोशिश की। यह वह कोड है जिसका मैंने इस्तेमाल किया था`#{INKSCAPE_PATH} -z -f #{Guanidine.png} -w #{width} -j -e #{Guanidine.svg}
BH2017

1
करने के बाद cd ~/Documents/Chem Structures/जो डायरेक्टरी है जिसमें फाइल्स हैं।
BH2017

1
sudo apt-get install imagemagick फिर इस स्क्रिप्ट को सेव करें #! / bin / bash जबकि [$ # -gt 0]; do पिक्चर = $ 1 png_file = echo "$picture" | sed 's/\.\w*$/.png/' / usr / bin / Convert "$ पिक्चर" png: "$ png_file" शिफ्ट ~ / .लोकल / शेयर / नॉटिलस / स्क्रिप्ट्स में की गई और इसे क्रियान्वित करने के लिए याद रखें, बस राइट क्लिक करें फिर स्क्रैप करें फिर कभी। आप इस स्क्रिप्ट के तहत बचाने
zeitue

1
ठीक है, जैसा कि मैंने कहा कि मैं एक sudo apt-get install imagemagick
नॉब

2
आपको फिर भी पता होना चाहिए कि वेक्टर ग्राफिक्स जैसे कि एसवीजी और पीएनजी जैसे पिक्सेल ग्राफिक्स के बीच एक बुनियादी अंतर है। एक बार जब आप वेक्टर जानकारी को ढीला कर देते हैं, तो इसे पुनर्स्थापित करने का कोई तरीका (नुकसान मुक्त) नहीं है। इसलिए, भले ही आप पीएनजी से एसवीजी में "कन्वर्ट" करते हैं, आप मूल रूप से एक एसवीजी वेक्टर ग्राफिक्स फ़ाइल के भीतर पिक्सेल ग्राफिक्स (बेस 64 एन्कोडेड) को एम्बेड करने के रूप में और कुछ नहीं करते हैं। convertआदेश भी बदतर है: यह पिक्सेल ग्राफिक्स, क्या होता है बहुत बड़ी फ़ाइल आकार के लिए के हर पिक्सेल के लिए एक चक्र देता है। इसलिए मैं सीधे एसवीजी फ़ाइल को काटने की कोशिश करूँगा।
आत्मिक

जवाबों:


24

तो आप देख रहे हैं रेखापुंज करने के लिए वेक्टर ग्राफिक्स कनवर्टर / अनुरेखकpotraceऔर autotraceदोनों उबंटू के भंडार में हैं। अपने आप potraceसे पहले मैंने कोशिश की जिसके डिफ़ॉल्ट विकल्पों के साथ अच्छे परिणाम मिले। जैसा कि मुझे याद है, दोनों उपकरण संपीड़ित स्वरूपों का इनपुट के रूप में समर्थन नहीं करते हैं , केवल बिटमैप चित्र

पॉट्रेस के उदाहरण देखें

पॉट्रेस : बिटमैप्स को वेक्टर ग्राफिक्स में बदलने की उपयोगिता

पोट्रेस बिटमैप को ट्रेस करने के लिए एक उपयोगिता है, जिसका अर्थ है, बिटमैप को एक चिकनी, स्केलेबल छवि में बदलना। इनपुट एक बिटमैप (पीबीएम, पीजीएम, पीपीएम, या बीएमपी प्रारूप) है, और डिफ़ॉल्ट आउटपुट एक एन्क्रिप्टेड पोस्टस्क्रिप्ट फ़ाइल (ईपीएस) है। एक विशिष्ट उपयोग स्कैन की गई डेटा से ईपीएस फ़ाइलों को बनाने के लिए है, जैसे कि कंपनी या विश्वविद्यालय के लोगो, हस्तलिखित नोट्स, आदि। परिणामस्वरूप छवि बिटमैप की तरह "दांतेदार" नहीं है, लेकिन चिकनी है। फिर इसे किसी भी प्रस्ताव पर प्रस्तुत किया जा सकता है।

कमान:

potrace -s inputfile

AutoTrace : वेक्टर ग्राफिक्स कनवर्टर के लिए बिटमैप

ऑटोट्रेस वेक्टर ग्राफिक्स के लिए बिटमैप्स परिवर्तित करने का एक कार्यक्रम है। ऑटोट्रेस परियोजना का उद्देश्य CorelTrace या Adobe Streamline के समान स्वतंत्र रूप से उपलब्ध एप्लिकेशन का विकास है। कुछ पहलुओं में यह पहले से बेहतर है। मूल रूप से GIMP के लिए एक प्लगइन के रूप में बनाया गया, ऑटोट्रेस अब एक स्टैंडअलोन प्रोग्राम है।

कमान:

autotrace -output-format svg inputfile

संदर्भ:

  • man potrace
  • man autotrace

अद्यतन करें


1
मैं भागा autotrace -vector svg inputfile(इनपुटफाइल को fenfluramine.png में बदलने के बाद) और यह काम नहीं किया, मैंने आउटपुट-स्वरूप को svg में भी नहीं बदला। मैंने इसे स्थापित किया है।
BH2017

1
मैं भागा potrace -s inputfile(इनपुटफाइल फिर से fenfluramine.png होने के साथ) और इसने मुझे यह त्रुटि दी:potrace: /home/fusion809/Documents/Chem Structures/Fenfluramine.png: file format not recognized Possible input file formats are: pnm (pbm, pgm, ppm), bmp.
BH2017

1
@BrentonHorne, आपको PNG के बजाय PNM या BMP छवि बनाना चाहिए। दोनों उपकरण इनपुट (PNG, JPEG ...) के रूप में संपीड़ित स्वरूपों का समर्थन नहीं करते हैं, केवल बिटमैप चित्र (PNM, BMP, ...)। यदि आप अन्य निर्यात नहीं कर सकते हैं तो PNG फिर उन्हें 1 से BMP में बदलने का प्रयास करें।
user.dz

1
तब आपने मेरे सवाल का जवाब नहीं दिया। MarvinSketch BMP को निर्यात कर सकता है, लेकिन इसकी पृष्ठभूमि पारदर्शी नहीं है, यही वजह है कि मैंने पीएनजी को पहले स्थान पर सुझाया। यह PNM नहीं कर सकता।
BH2017

2
अहा, यह काम किया। धन्यवाद। मैंने सोचा था कि बीएमपी पारदर्शी नहीं था, कोई परिणाम भी नहीं होगा।
BH2017

19

इंकस्केप को एक भयानक ऑटो-अनुरेखण उपकरण मिला है।

  1. इंस्कैप का उपयोग करके इंस्टॉल करें sudo apt-get install inkscape
  2. अपनी छवि आयात करें
  3. अपनी छवि का चयन करें
  4. मेनू बार से, सेलेक्ट करें Path -> Trace Bitmap Item
  5. आवश्यकतानुसार ट्रेसिंग मापदंडों को समायोजित करें

अधिक जानकारी के लिए उनके अनुरेखण ट्यूटोरियल की जाँच करें ।

एक बार जब आप ट्रेसिंग विकल्पों के साथ सहज हो जाते हैं। आप Inkscape के CLI का उपयोग करके इसे स्वचालित कर सकते हैं ।


5
+1, धन्यवाद। यह सुनकर प्रसन्नता हुई कि Inkscape ने potraceGUI में आपके द्वारा उल्लिखित संदर्भ में कार्यक्षमता को एकीकृत किया है ।
user.dz

5
यह सही उत्तर है क्योंकि पोट्रेस आयात का समर्थन नहीं करता है, और रूपांतरणों के साथ पारदर्शिता आदि के साथ कठिनाइयों में प्रवेश करना आसान है।
ब्रायनलमेरिट

1
इसके अलावा जिम्प रंग छवियों का पता लगाने में सक्षम है, जो ग्रेस को याद आती है।
मुस्कुराहट

8

convertटर्मिनल में कमांड का उपयोग करें :

उदाहरण के लिए : convert EXAMPLE.png EXAMPLE.svg

यहाँ से कुछ जानकारी है:

convert(1) - Linux man page

Name

convert - convert between image formats as well as resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more.

Synopsis

convert [input-options] input-file [output-options] output-file


3
यह एक सदिश छवि में परिवर्तित करने के बजाय SVG में एक रेखापुंज छवि को एम्बेड करता है।
bk138

1
बहुत बहुत धन्यवाद ... यह वही है जो मैं ढूंढ रहा था ...
डैन ऑर्टेगा

2

मैंने अभी अद्भुत परिणामों के साथ जिम्प का उपयोग किया है। मैंने पहली बार पोट्रेस का उपयोग किया था लेकिन मुझे जो भी मिला वह सभी एक छवि थी जिसमें बहुत सारी विकृति थी। शायद मैंने इसे ठीक से इस्तेमाल नहीं किया, लेकिन जब मैंने जिम्प के साथ "eps" (file_name.eps) के रूप में निर्यात करने की कोशिश की, तो यह सब हो गया। मुझे बस 300 के मान के साथ रिज़ॉल्यूशन सेट करते हुए इसकी समीक्षा करनी थी। यही है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.