আমি কীভাবে একটি এসভিজিকে লিনাক্সের পিডিএফে রূপান্তর করব


126

আমি কীভাবে এসভিজি (ল্যাটিন পাঠের কয়েকটি শব্দ এবং কিছু সাধারণ ভেক্টর গ্রাফিক সহ) লিনাক্সের পিডিএফে কনভার্ট করব?

আমি উবুন্টু লুসিডে ইনকস্কেপ 0.47 চেষ্টা করেছিলাম, তবে এটি কিছু সাব-গ্রাফিকগুলি এলোমেলোভাবে সরানো হয় এবং এটি পিডিএফ থেকে আউটপুটটিতে কিছু লাইন সংক্ষিপ্ত করে তোলে। সুতরাং এটির ফলাফলটি অকেজো, কারণ গ্রাফিকগুলি সম্পূর্ণ আলাদা দেখায়।

আমি গুগল ক্রোম 16 এ এসভিজি খোলার এবং এটি পিডিএফে মুদ্রণের চেষ্টা করেছি, তবে এটি সমস্ত রঙ বিকৃত করে এবং এটি কিছু উপাদানও সরিয়ে দেয়। (এসভিজি স্ক্রিনে সূক্ষ্ম প্রদর্শিত হয় তবে এটি মুদ্রণ পূর্বরূপে ইতিমধ্যে খারাপ এবং উত্পন্ন পিডিএফটিও খারাপ)

আমি এসভিজিকে জালিয়াতি করতে বা রেন্ডার করতে চাই না। একটি সমাধান যা এসভিজিকে বিটম্যাপ চিত্রে রূপান্তর করে এবং এমবেডেড চিত্র সহ পিডিএফ তৈরি করে তা আমার প্রশ্নের উত্তর নয়। (এফওয়াইআই ইনস্কেপ 0.47 পিএনজিতে রেন্ডার করার সময় এন্টিঅ্যালেসিং ছাড়াই পাঠ্যটি খুব কুরুচিপূর্ণ উপায় nd

আমার আর কোন বিকল্প নেই?


1
রূপান্তর করার জন্য আপনার কাছে যদি কয়েকটি ছবি থাকে তবে আপনাকে অনলাইন রূপান্তরকারীদের কিছু ব্যবহার করা আরও সহজ হতে পারে। আমি ক্লাউডকনভার্ট চেষ্টা করেছিলাম এবং এটি এসভিজির অর্ধেক ফাইল আকারের সাথে খুব ভাল কাজ করে।
ফ্র্যাঙ্ক ব্রেইটলিং

উত্তর:


134

আরএসভিজি-রূপান্তর আমি যে রূপান্তর করতে চেয়েছিলাম সেই এসভিজির জন্য কৌশলটি করেছে:

$ sudo apt-get install librsvg2-bin
$ rsvg-convert -f pdf -o t.pdf t.svg

rsvg-convert -f pdfএসভিজিকে রাস্টেরাইজ করে না, এবং এটি ফন্টগুলি এম্বেড করে এবং সাবলেট করে (কমপক্ষে এটি আরিয়াল ফন্টের ব্যবহৃত অক্ষরগুলি এম্বেড করেছে)। কখনও কখনও ফন্ট এম্বেডিং ব্যর্থ হয় (যেমন LMRoman17 ফন্টের জন্য), এবং পুরো ফন্ট ফাইলটি উত্পন্ন পিডিএফ-তে অনুলিপি করে।

উবুন্টু লুসিডের উপর নির্ভরশীলতা:

  • libcairo.so.2
  • libgobject-2.0.so.0
  • libgthread-2.0.so.0
  • libglib-2.0.so.0
  • librsvg-2.so.2
  • libpthread.so.0
  • libc.so.6

ডিফল্টরূপে, libcairo এর libX11 প্রয়োজন, সুতরাং rsvg-রূপান্তর একটি হেডলেস সিস্টেমে ইনস্টল করা কঠিন হতে পারে।

দ্রষ্টব্য: ম্যান পেজটি rsvg-convertসূচিত করে যে সরঞ্জামটি সর্বদা রাস্টেরাইজ করে তবে এটি সত্য নয়। ম্যানুয়ালটি কেবল অপ্রচলিত। কখনও কখনও আপনার এসভিজি উত্পাদনকারী সরঞ্জামটি এসভিজি চিত্রটিকে আংশিকভাবে জোর করে তুলতে পারে যা আপনাকে বিভ্রান্তও করতে পারে।


4
আমি এখানে অনেক নির্ভরশীলতা দেখছি: কায়রো, লাইবফোটো, জিটিকে 3, লাইবসনে ... ওহ ভাল, যদি এটি কাজ করে ...
ShiDoiSi

4
@ আইবারকাজজগার এটি ইনসকেপটির দোষ - যখন আপনি কোনও ইনস্কেপ প্রকল্পটি সংরক্ষণ করেন, এটি ডিফল্টরূপে এটি একটি এসভিজি হিসাবে সংরক্ষণ করবে, তবে যে এসভিজির এটি সংরক্ষণ করে সেগুলিতে একগুচ্ছ নন স্ট্যান্ডার্ড ইঙ্কস্কেপ-নির্দিষ্ট ডেটা রয়েছে যা ঘন ঘন অন্যান্য প্রোগ্রামগুলিকে গোলমাল করতে পারে। আপনাকে কেবল এসভিজি হিসাবে সংরক্ষণের পরিবর্তে একটি এসভিজি হিসাবে রফতানি করতে হবে ।
এজেম্যানসফিল্ড

2
অনুসন্ধানে কিছুটা সময় বাঁচাতে পারে: সুস-সিস্টেমে থাকা প্যাকেজটিকে rsvg-convertবলা হয় rsvg-view
ট্রেন্ডফিশার

1
এটি আমার পক্ষে কাজ করেছে এবং পিডিএফের মান এসভিজির মতো। এর আগে পিডিএফ রূপান্তর করতে ইমেজম্যাগিক ব্যবহার করা হয়েছিল এবং বিশেষত এসভিজির জন্য মানটি খারাপ ছিল না।
প্রতীক সোনি

1
দুর্ভাগ্যক্রমে, এটি ম্যাকস-এ ফন্টগুলি এম্বেড করে না।
অ্যারফিশ

79

এটি উবুন্টু লুসিডে কাজ করে:

$ sudo apt-get install inkscape
$ inkscape t.svg --export-pdf=t.pdf

উপরের কমান্ড-লাইন ইনস্কেপ অনুরোধ জিইউআই ( DISPLAY=) ছাড়াই মাথাছাড়া মোডেও কাজ করে । যাইহোক, ইনস্কেপ ইনস্টল করা এক্স 11 সহ প্রচুর নির্ভরতা ইনস্টল করে।

দয়া করে নোট করুন যে ইনসস্ক্যাপের প্রস্থান স্থিতি সর্বদা 0 থাকে, এমনকি যদি কোনও ত্রুটি দেখা দেয় - তবে এর স্টাডারকে সন্ধান করুন।

রয়েছে inkscape --shell, একটি ব্যাচ অনেক কাগজপত্র রূপান্তরের জন্য উপযুক্ত। এটি প্রতিটি ফাইলের জন্য ধীর ইঙ্কস্কেপ শুরুর সময় এড়িয়ে যায়:

$ (echo t.svg --export-pdf=t.pdf;
   echo u.svg --export-pdf=u.pdf) |
  DISPLAY= inkscape --shell

ইনভিস্কেপ কোনও এসভিজি সরল করার জন্যও কার্যকর:

$ DISPLAY= inkscape t.svg --export-plain-svg=t.plain.svg

2
দুর্ভাগ্যক্রমে এটি OS X এ কাজ করছে বলে মনে হচ্ছে না Still তবুও, দুর্দান্ত উত্তর।
কনরাড রুডল্ফ

3
ওপি নির্দিষ্ট করে দিয়েছে যে ইনস্কেপে রেন্ডারিং বাগ রয়েছে; এটি আমার অভিজ্ঞতার সাথে মেলে।
ডিলান থারস্টন

3
ওএসএক্স-এ হোমব্রিউ ব্যবহার করে আপনি brew install inkscapeএই দিনগুলি ব্যবহার করে ইনস্কেপ ইনস্টল করতে পারেন । ফলস্বরূপ /usr/local/bin/inkscapeX11.app চালানো ছাড়া আমার পক্ষে কাজ করে।
অ্যালেক্স শ্রাইডার

2
ইঙ্কস্কেপটি dmgনিজের ওয়েবসাইটে বিতরণকৃত ওএস এক্সে ইনস্টল করা যাবে এবং তার পরে দুটি প্রতীকী লিঙ্ক তৈরি করার পরে কমান্ড লাইন থেকে ডেকে পাঠানো হবে: ln -s ~/Applications/Inkscape.app/Contents/Resources/bin/inkscape ~/bin/inkscapeএবং একইভাবে inkscape-bin(ধরে ~/binনেওয়া আপনার মধ্যে রয়েছে $PATH)।
আইওনিস ফিলিপিসিস

2
আপনি কেবল ব্যাচ মোডে চালানোর জন্য ইনকস্কেপযুক্ত -z(বা --without-gui) পতাকাটি ব্যবহার করতে পারেন (কোনও উইন্ডো একেবারেই খুলবে না)।
আর্টফ্যাক্ট 2

8

আমি কায়রোএসভিজি সফলভাবে ওএসএক্স এবং উবুন্টুতে ব্যবহার করেছি।

pip install cairosvg
cairosvg in.svg -o out.pdf

কায়রোএসভিজি ডকুমেন্টেশন


এমনকী পাইথন-বাইন্ডিংগুলিও আপনি ব্যবহার করতে পারেন। দুর্ভাগ্যক্রমে আমি আবিষ্কার করেছি যে এই পদ্ধতিটি বরং সীমাবদ্ধ, অর্থাত্ অনেকগুলি এসভিজি বৈশিষ্ট্য সমর্থিত নয়।
বোডো

7

আমি ইনস্কেপ (০.৪ too খুব) থেকে পিডিএফে মুদ্রণ থেকে এবং পিডিএফ হিসাবে সংরক্ষণের জন্য (তবে কিছুটা আলাদা) ভাল ফলাফল পেয়েছি তবে এটি গ্রাফিকের উপর নির্ভর করে।

নিম্ন রেজোলিউশন সহ একটি বিকল্প (এটি উন্নত করার জন্য আমি কোনও সুইচ চেষ্টা করিনি)

 convert file.svgz file.pdf 

convertImageMagickপ্যাকেজের অংশ । রাস্টারাইজার অন্য প্রোগ্রাম:

 rasterizer -m application/pdf file.svgz -d file.pdf 

আপনার সিস্টেমে কোন প্রোগ্রাম এসভিজেগুলি হ্যান্ডেল করে তা অনুসন্ধান করার জন্য, কেবল চেষ্টা করুন

 apropos -s 1 svg

এই প্রোগ্রামগুলির ম্যানপেজটি ব্যাখ্যা করতে হবে, তবে প্রোগ্রামটি এসডিজিকে পিডিএফ রূপান্তর করতে কার্যকর।


18
আপনার পরামর্শের জন্য ধন্যবাদ। এফওয়াইআই convertমূল প্রশ্নের উত্তর নয়, কারণ convertএসভিজিকে বিটম্যাপ ইমেজে জালাই করে তোলে এবং মূল প্রশ্নটি এমন কোনও সমাধান খুঁজছিল যা তা না করে।
পিটিএস

5

https://superuser.com/a/79064/19956 gsvg , ঘোস্টপিডিএলের অংশ উল্লেখ করেছে।

আমি উবুন্টু লুসিডে gsvg ghostpdl-9.06 চেষ্টা করেছি, তবে এটি ইনস্কেপ দ্বারা উত্পাদিত দুটি এসভিজির জন্য ব্যর্থ হয়েছে। একটি এসভিজির এতে পাঠ্য ছিল, অন্যটিতে কেবল ভেক্টর গ্রাফিক্স ছিল। এটি ইনসকেপ এক্সটেনশন বা ক্লিপ-পাথ ছাড়াই সাধারণ গ্রাফিক্সের জন্যও ব্যর্থ হয়েছিল। সুতরাং আমি জিএসভিগকে একটি ব্যবহারযোগ্য এসভিজি-টু-পিডিএফ রূপান্তরকারী হিসাবে বিবেচনা করি না।


3

ম্যাক ওএসে (আপনি ইতিমধ্যে ব্রিউ ইনস্টল করেছেন তা বিবেচনা করে) আমি করি:

$ brew install cairo libffi python3
$ pip3 install cairosvg

$ cairosvg -o blah.pdf ./blah.svg 

একই লিনাক্সে কাজ করা উচিত, তবে পরিবর্তে এপট-গেটের সাথে।


1
এটি পিডিএফ আউটপুট হিসাবে কাজ করে। বিপরীতে svg2pdfএবং rsvg-convert, এই ফন্ট অপরিবর্তিত।
oarfish

ধন্যবাদ, আমি ভুল এক্সটেনশন রেখেছি। আমি উদাহরণ আপডেট।
অ্যাড্রিয়েল জুনিয়র

মোহন মত কাজ!

1

আমি কেন আগে এটি উল্লেখ করা হয়নি তা ভাবছি, তবে আমি বিভিন্ন এসভিজি-> পিডিএফ রূপান্তরকারীগুলির একটি গুচ্ছ পরীক্ষা করেছি এবং দেখতে পেয়েছি যে সেরাটি হেডলেস ক্রোম । এটি আমার জন্য সবচেয়ে সুনির্দিষ্ট ফলাফল উত্পাদন করে। ক্রোমে স্যুইচ করার আগে, আমি ইনস্কেপ বাগের সাথে লড়াই করার চেষ্টা করছিলাম, তবে তাদের মধ্যে অনেকগুলি গুরুতর এবং আমি এটি সম্পর্কে তেমন কিছুই করতে পারি না (স্বচ্ছতা বাগ, ভুল ফন্ট ইত্যাদি)।

 chrome --headless --disable-gpu --print-to-pdf="output.pdf" "input.svg"

এটি কাস্টম পিডিএফ আকার (A4 ডিফল্ট) ব্যবহার করার জন্য কিছু টুইটের প্রয়োজন, তবে আমি কিছু গুগলিং এবং সিএসএস এবং এসভিজি বৈশিষ্ট্যগুলির সাথে খেলার পরে কাস্টম আকার সেট করতে সক্ষম হয়েছি ( স্ট্যাকওভারফ্লোতে এই উত্তরটি দেখুন )


সুপার ব্যবহারকারীকে স্বাগতম! বাহ্যিক লিঙ্কগুলি ভেঙে বা অনুপলব্ধ হতে পারে, এক্ষেত্রে আপনার উত্তরটি কেবল একটি টিজার হবে। লিঙ্কগুলি এখনও কাজ করার পরেও, বিষয়গুলি লোকেরা সমাধান খুঁজে পেতে সহায়তা করার জন্য সূচী করা যায় না। দয়া করে আপনার উত্তরের মধ্যে প্রয়োজনীয় তথ্য অন্তর্ভুক্ত করুন এবং এট্রিবিউশন এবং আরও পড়ার জন্য লিঙ্কটি ব্যবহার করুন। ধন্যবাদ।
ফিক্সার 1234

ডাব্লুএসএল থেকে আপনার কিছু অতিরিক্ত পতাকা দরকারchromium --no-sandbox --disable-setuid-sandbox --headless --disable-gpu --print-to-pdf=output.pdf input.svg
টিকাপিক্স

0

এসভিজি ফাইলটি Image Viewer(যাকে জিনোমের আইও বলা হয় eog) দিয়ে খুলুন এবং এটি একটি পিডিএফ ফাইলে মুদ্রণ করুন (বলুন image.pdf) এবং পিডিএফকে pdf2psকমান্ড ব্যবহার করে এপিএসে রূপান্তর করুন । সরল!

বর্ণিত পদক্ষেপ:

  1. Image Viewerএখনও না হয়ে থাকলে ইনস্টল করুন (আপনি যদি ব্যবহার করেন তবে অত্যন্ত সম্ভাব্য পদক্ষেপ gnome)

    sudo apt-get install eog
    
  2. এর সাথে এসভিজি ফাইলটি খুলুন eogএবং ফাইলটিতে মুদ্রণ image.pdfকরুন।

  3. (Alচ্ছিক) পিডিএফ ফাইল থেকে আশেপাশের সাদা স্থান সরান:

    pdfcrop image.pdf
    

    এটি image-crop.pdfআশেপাশের সাদা স্থান সরানো সহ উত্পন্ন করবে ।

  4. ক্রপড পিডিএফকে এপ্সে রূপান্তর করুন ( image.pdfআপনি পিডিএফ ক্রপ না করলে সরাসরি ব্যবহার করুন )

    pdf2ps image-crop.pdf image.eps
    

এটাই!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.