এইচটিএমএল / পিডিএফ / ডকএক্সের জন্য প্যান্ডোকের সাহায্যে পিএনজি চিত্রগুলিকে সঠিকভাবে আকার দেওয়া izing


25

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

<div style="float:center" markdown="1">

![my caption](./figures/myimage.png)

</div>

এবং এটি সংকলন করুন:

# html
pandoc myarticle.md -c mystyle.css -o myarticle.html
# pdf
pandoc myarticle.md -V geometry:margin=1in -o myarticle.pdf
# docx
pandoc myarticle.md -o myarticle.docx

আমি লক্ষ্য করেছি যে কিছু পিএনজি চিত্রগুলির একই মাত্রা রয়েছে এইচটিএমএল এবং পিডিএফ ফর্ম্যাটে বিভিন্ন আকারের হয়। একটি রেজোলিউশন (p২ পিক্স / ইন) সহ একটি পিএনজি 250x256 পিক্সেল পিডিএফ এ ঠিক পৃষ্ঠাতে সঠিক আকার হিসাবে উপস্থিত হবে এবং এইচটিএমএলে একটি যুক্তিসঙ্গত আকারে প্রদর্শিত হবে, তবে একটি পিএনজি যা একই মাত্রা (250x256 পিএক্স) তবে এটি হাই-রেজ (300 পিক্স / ইন) পিডিএফ আউটপুটে পৃষ্ঠায় ক্ষুদ্র হতে পুনরায় আকার দিন। আমি পিএনজি চিত্রগুলি এমন একটি আকারে রাখতে চাই যা আমি নির্দিষ্ট করেছি এবং সেগুলি এইচটিএমএল / পিডিএফ / ডোকএক্স উভয় ফর্ম্যাটেই উপস্থিত হতে পারি।

আমি পিডিএফ / এইচটিএমএল পাওয়ার জন্য স্বয়ংক্রিয় ডকএক্স সমর্থন (বা পরে অনেকগুলি ম্যানুয়াল ফর্ম্যাটিংয়ের সাথে ডিল করতে) ইচ্ছুক।

আমি কীভাবে প্যান্ডোককে বলতে পারি পিডিএফ বা চিত্রের জন্য পিএনজির আকার পরিবর্তন না করা এবং সেগুলি তাদের সঠিক চিত্রগুলিতে প্রদর্শিত হবে? ধন্যবাদ।


2
একটি PNG 300dpi যে কিন্তু শুধুমাত্র 250x256px উচিত পৃষ্ঠাতে বেশ ছোট হয় তবে তা না? (এক ইঞ্চিরও কম বর্গক্ষেত্র।) একটি নিম্ন ডিপিআই সহ একটি পিএনজি পৃষ্ঠায় বড় হবে। পান্ডোক চিত্রগুলি আকার দেওয়ার ক্ষেত্রে ডিপিআই তথ্য, পাশাপাশি পিক্সেল আকার গ্রহণ করে। এবং এটা করা উচিত নয়? সম্ভবত আপনি এইচটিএমএলে উচ্চ-রেজোলিউশন চিত্রগুলি বিশ্বব্যাপী স্কেল করতে CSS ব্যবহার করতে পারেন।
জন ম্যাকফার্লেন

1
@ জনম্যাকফার্লেন: আমি দেখতে পাচ্ছি যে ডিপিআইকে আমলে নেওয়ার ক্ষেত্রে পান্ডোকের আচরণটি সঠিক - তবে আমি এটি ডিপিআইকে উপেক্ষা করে নিখুঁত আকারের সাথে আঁকিয়ে রাখতে চাই, যাতে আমি সমস্ত চিত্রের জন্য একক উচ্চতর পিএনজি রাখতে পারি। চিত্রগুলির নিম্ন রেজোলিউশন সংস্করণটি করার জন্য এটি করার সঠিক উপায়, বা প্যান্ডোককে কেবল চিত্রের মাত্রা ব্যবহার এবং রেজোলিউশন উপেক্ষা করার কোনও উপায় আছে? এটি আমার শেষ থেকে সহজ হবে
user46976

উত্তর:


17

এইচটিএমএল-জাতীয় বিন্যাসে আউটপুট জন্য মাত্রা পিক্সেল রূপান্তরিত হয়। প্রতি ইঞ্চিতে পিক্সেলের সংখ্যা নির্দিষ্ট করতে --dpi বিকল্পটি ব্যবহার করুন। ডিফল্টটি 96 ডিপিআই।

আপনার ছবিগুলিতে সর্বাধিক সাধারণ উপাদানটি সন্ধান করুন এবং এটি ব্যবহার করুন। কেবল ব্যতিক্রমগুলি সংশোধন করুন।


উদাহরণ: ডিপিআই, প্রস্থ, উচ্চতা।

আপনি যদি এটি ডিপিআই তথ্য দেন:

ডিফল্টকে ওভাররাইড করার জন্য বর্ণিত --dpi বিকল্পটি যুক্ত করুন।


আপনার ছবিগুলির বেশিরভাগের উচ্চতা বা প্রস্থ থাকলে তা সহজেই সংশোধন করা উচিত।

উদাহরণস্বরূপ, আপনি লাইনটি এতে পরিবর্তন করেছেন:

![my caption](./figures/myimage.png){ width=250px }

অথবা

![my caption](./figures/myimage.png){ height=256px }

বা সোজা এইচটিএমএল চিহ্নিতকরণে এটি করুন:

<img src="./figures/myimage.png" alt="my caption" style="width: 250px;"/>

অথবা

<img src="./figures/myimage.png" alt="my caption" style="height: 256px;"/>

এবং অনুপাতটি সঠিক হবে।


তথ্যসূত্র: পান্ডোক রেডমে

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

চিত্রগুলিতে প্রস্থ এবং উচ্চতার বৈশিষ্ট্যগুলি বিশেষভাবে বিবেচনা করা হয়। যখন ইউনিট ছাড়াই ব্যবহৃত হয়, ইউনিটটিকে পিক্সেল বলে ধরে নেওয়া হয়। তবে, নিম্নলিখিত ইউনিট শনাক্তকারীদের যে কোনওটি ব্যবহার করা যেতে পারে: px, সেমি, মিমি, ইন, ইঞ্চি এবং%।

ল্যাটেক্সের মতো পৃষ্ঠা-ভিত্তিক ফর্ম্যাটে আউটপুট দেওয়ার জন্য মাত্রাগুলি ইঞ্চিতে রূপান্তরিত হয়। এইচটিএমএল-জাতীয় বিন্যাসে আউটপুট জন্য মাত্রা পিক্সেল রূপান্তরিত হয়। প্রতি ইঞ্চিতে পিক্সেলের সংখ্যা নির্দিষ্ট করতে --dpi বিকল্পটি ব্যবহার করুন। ডিফল্টটি 96 ডিপিআই।

% ইউনিট সাধারণত কিছু উপলভ্য জায়গার সাথে সম্পর্কিত। উদাহরণস্বরূপ উপরের উদাহরণটি <img href="file.jpg" style="width: 50%;" />(এইচটিএমএল), \includegraphics[width=0.5\textwidth]{file.jpg} (LaTeX), or \externalfigure[file.jpg][width=0.5\textwidth](কনটেক্সট) রেন্ডার করবে ।

কিছু আউটপুট ফর্ম্যাটগুলির একটি শ্রেণি (কনটেক্সট) বা একটি অনন্য সনাক্তকারী (ল্যাটেক্স \ ক্যাপশন), বা উভয় (এইচটিএমএল) ধারণা রয়েছে।

যখন কোনও প্রস্থ বা উচ্চতার বৈশিষ্ট্য নির্দিষ্ট করা হয় না, তখন ফ্যালব্যাকটি চিত্রের রেজোলিউশন এবং চিত্র ফাইলটিতে এম্বেড করা ডিপিআই মেটাডেটা দেখতে হয়।


5
{ width=100% }সামগ্রিক স্ক্রিন / পৃষ্ঠা / লাইনউইথ আকারে আপেক্ষিক প্রস্থের জন্যও ব্যবহার করতে পারেন ।
rriemann

এটি কি pandoc-crossrefএস {#fig:refname}সিনট্যাক্সের সাথে ব্যবহার করা যেতে পারে ?
oarfish

2
আমার নিজের মন্তব্যের জবাব: {#fig:refname width=50%}কাজ করে।
oarfish
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.