এক্স-সার্ভার কীভাবে ডিপিআই গণনা করে?


9

এক্সফেস ডক্স থেকে :

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

তবে এক্স-সার্ভার কীভাবে তার গণনা করে? প্রক্রিয়াটিতে কী অনুমান করা হয় এবং কিছু পরামিতিগুলি ওভাররাইড করা যায়?

এটি আমার ডিসপ্লেতে আমার কত পিক্সেল রয়েছে তা জানতে পারে তবে এটি কি যথেষ্ট?

উত্তর:


8

আমি যতদূর জানি, সংস্করণ 1.7 দিয়ে শুরু করে xorg ডিফল্ট96 dpi । আপনি কনফিগার ফাইলের DisplaySizeমাধ্যমে নির্দিষ্ট না করে এটি কোনও কিছুই গণনা করে না Xorg। এছাড়াও, xdpyinfoআউটপুট উপর নির্ভর করবেন না ।
আমার ল্যাপটপটি ইন্টেল স্যান্ডি ব্রিজে চালিত হয়। আমার কাছ থেকে Xorg.0.logএকটি তাজা আর্চলিনাক্স ইনস্টল এর অংশ:

(==) intel(0): DPI set to (96, 96)

চলমান

xdpyinfo | grep -E 'dimensions|resolution'

আয়:

dimensions:    1600x900 pixels (423x238 millimeters)
resolution:    96x96 dots per inch

যা সত্য হতে অনেক দূরে। আমি জানি যে আমার পর্দার আকার 344x193মিমি তাই স্পষ্টতই xdpyinfoপিক্সেল রেজোলিউশন ( 1600x900) এবং ডিফল্ট এর উপর ভিত্তি করে দৈহিক আকার গণনা করে 96 DPI। আমি যদি যোগ করি

........
DisplaySize     344 193
........

ইন /etc/X11/xorg.conf.d/monitor.confএবং পুনঃসূচনা, Xorg.0.logসঠিকভাবে রিপোর্ট:

(**) intel(0): Display dimensions: (344, 193) mm
(**) intel(0): DPI set to (118, 118)

তবে xdpyinfo | grep -E 'dimensions|resolution'সর্বদা ফিরে আসে:

dimensions:    1600x900 pixels (423x238 millimeters)
resolution:    96x96 dots per inch

তবুও, আমি জিনোম ব্যবহার করছি বলে কোনও চাক্ষুষ পরিবর্তন হয়নি, এবং 96 DPIএটি হার্ড-কোডডও gnome-settings-daemon। পরে প্যাচ করার পরে, আমি আমার নেটিভ উপভোগ করতে পারি 118 DPI। তবে এত xdpyinfoকিছুর পরেও এখনও ফিরে আসে:

dimensions:    1600x900 pixels (423x238 millimeters)
resolution:    96x96 dots per inch

7

এক্স-সার্ভার কীভাবে ডিপিআই গণনা করে?

এক্স সার্ভারের ডিপিআই নিম্নলিখিত পদ্ধতিতে নির্ধারিত হয়:

  1. -dpiকমান্ড লাইন বিকল্প সর্বোচ্চ অগ্রাধিকার হয়েছে।
  2. যদি DisplaySizeএটি ব্যবহার না করা হয় তবে স্ক্রিনের রেজোলিউশন প্রদত্ত এক্স কনফিগ ফাইলে সেটিংস ডিপিআই আহরণ করতে ব্যবহৃত হবে।
  3. যদি কোনও DisplaySizeদেওয়া না হয়, স্ক্রিন রেজোলিউশন প্রদত্ত ডিপিসি থেকে মনিটরের আকারের মানগুলি ডিপিআই প্রাপ্ত করতে ব্যবহৃত হয়।
  4. যদি ডিডিসি কোনও আকার নির্দিষ্ট না করে, 75 ডিপিআই ডিফল্টরূপে ব্যবহৃত হয়।

এটি আমার ডিসপ্লেতে আমার কত পিক্সেল রয়েছে তা জানতে পারে তবে এটি কি যথেষ্ট?

না, এটি কেবল পিক্সেলটিতে ভার্চুয়াল স্ক্রিনের আকারটিই জানে না (সাধারণত) মিলিমিটারগুলিতে শারীরিক প্রদর্শন আকারও। টার্মিনাল উইন্ডোতে নিম্নলিখিতটি চালিয়ে আপনি আপনার প্রদর্শনের মাত্রাগুলি পরীক্ষা করতে পারেন:

 ~ $ xdpyinfo | grep dimension
dimensions:    1366x768 pixels (361x203 millimeters)

আপনার এক্স সার্ভারটি নিরূপণটি নিম্নলিখিত:

  • 1366 পিক্সেল 361 মিলিমিটার দ্বারা বিভক্ত 25.4 মিলিমিটার প্রতি ইঞ্চি = 96.11191136 ইঞ্চি প্রতি বিন্দু (ডিপিআই) দিয়ে গুণিত হয়েছে।
  • 203 মিলিমিটার দ্বারা বিভক্ত 768 পিক্সেল প্রতি ইঞ্চিতে 25.4 মিলিমিটার = 96.09458128 ডট প্রতি ইঞ্চি দিয়ে গুণিত।

নীচের কমান্ডটি ব্যবহার করে আপনার এক্স সার্ভারটি কী ডিপিআই গণনা করেছে তা পরীক্ষা করতে পারেন:

 ~ $ xdpyinfo | grep resolution
 resolution:    96x96 dots per inch

দেখতে ভাল লাগছে, তাই না?

আরও পড়ার জন্য:


@ অ্যালোইস-মাহদল আমার ধারণা আমি প্রথমে প্রশ্নটি ভুল বুঝেছিলাম। আমি এক্স সার্ভার দ্বারা ব্যবহৃত প্রদর্শন মাত্রা যুক্ত উত্তর উন্নত করেছি।
আফার

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

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

0

প্রতি ইঞ্চি বিন্দু = বিন্দু (পিক্সেল) / ইঞ্চি (মনিটরের শারীরিক আকার)।

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