টার্মিনালে কীভাবে একটি একক পিক্সেল আঁকবেন?


10

এখন অবধি আমি টার্মিনালে চিত্র, আকার ইত্যাদি আঁকার জন্য অক্ষর ব্যবহার করেছি।

একটি পিক্সেল অঙ্কন করা সম্ভব?

চল বলি:

foo 1 1 red

এটি স্থানাঙ্কিতে একটি লাল পিক্সেল আঁকবে (1, 1)

একটি বিদ্যমান আবেদন আছে যে এই কাজ করবে?

বর্তমানে উবুন্টু 14.04 চলছে।


3
আপনার কি ধরণের টার্মিনাল আছে? একটি ডিসি জিটি 40 ?
অ্যান্থন

@ অ্যানথন জোনোম-টার্মিনাল (এটি উবুন্টুর সাথে আসে)
আয়নিক বিজাউ

1
@ অ্যানথন এ DEC GT40দরকারী হবে তবে এটি খুব ব্যয়বহুল ... :-)
আয়নিক বিজাউ

1
@ ইটারডন আমি পুনরায় খুলতে ভোট দিয়েছি কারণ এটি অভ্যন্তরীণভাবে কোনও প্রোগ্রামিং প্রশ্ন নয় (আমি সি এবং সি ++ ট্যাগটি সরিয়ে দিয়েছি , কারণ আপনি যদি সি বা সি ++ কোড লিখতে চলেছেন তবে তা এখানে অফ-টপিক)। "এখানে কোনও বৈশিষ্ট্য নেই, আপনার এটি প্রোগ্রাম করার দরকার ছিল" এখানে একটি সঠিক উত্তর হতে পারে - এটি ভুল হতে পারে ব্যতীত: একটি ভাল উত্তর টেকট্রনিক্স এবং ডাব্লু 3 এম এর মতো টার্মিনাল উইন্ডোটির উপরে আঁকবে।
গিলস

1
@ গিলস যথেষ্ট ন্যায্য, আমি আবার খুললাম। আমি এটি বন্ধ করে দিয়েছিলাম কারণ এটি এসওতে স্থানান্তরিত হওয়ার প্রক্রিয়াধীন ছিল এবং সেখানে এটি স্বাগত নয়।
টেরডন

উত্তর:


10

টার্মিনালগুলি চরিত্র-সেল প্রদর্শন এবং পিক্সেল গ্রাফিক্স অঙ্কন সমর্থন করে না। এক্স 11 এ চলার সময়ও নয়; যদিও এক্স সার্ভারের সাথে সরাসরি কথা বলার সময় স্বতন্ত্র পিক্সেল আঁকানো সম্ভব, আপনার প্রোগ্রামটি যদি টার্মিনালের সাথে কথা বলছে তবে এটি কেবলমাত্র টার্মিনালটিকে অক্ষর প্রদর্শন করতে বলবে।

পাঠ্যের পরিবর্তে গ্রাফিক্স প্রদর্শন করতে আপনাকে এমন একটি প্রোগ্রাম লিখতে হবে যা এক্স সার্ভারের সাথে সরাসরি ইন্টারেক্ট করে। এটি সাধারণত একটি ইউআই টুলকিট লাইব্রেরির মাধ্যমে করা হয় যেমন জিটিকে , কিউটি বা ডাব্লুএক্সউজেটস


7
এখানে সব ধরণের টার্মিনাল রয়েছে, কিছু গ্রাফিকাল ক্ষমতা সহ (যেমন টেকট্রনিক্স মোডের xtermচিত্র বা এমবেডিং এর মতো terminology)। নোট করুন যে টার্মিনালটি এক্স 11 টার্মিনালগুলিকেও বোঝায় (টেকট্রোনিক্সের মতো জিনিসগুলির উত্তরসূরীরা)
স্টাফেন চেজেলাস

2
শান্ত! কিছু উত্সাহী xterm =) ডিমে
13.

যদি টার্মিনালটি কেবল চরগুলি "আঁকতে" পারে, তবে সম্ভবত পিক্সেলটি একটি চর তৈরি করা উচিত যাতে এটি আঁকতে পারে ...

10

কটাক্ষপাত আছে Drawille গ্রন্থাগার । এটি পিক্সেল আঁকতে UTF ব্রেইল অক্ষর ব্যবহার করে।


1
যতক্ষণ এই তাত্ত্বিক প্রশ্নের উত্তর হতে পারে, এটা বাঞ্ছনীয় হবে উত্তর অপরিহার্য অংশের এখানে অন্তর্ভুক্ত করা, এবং রেফারেন্স এর জন্য লিঙ্ক প্রদান।
slm

1

উইজার্ডের উল্লেখ অনুসারে আপনি নিজে যা করতে পারবেন না , নিজে প্রোগ্রাম করতে পারবেন না বা কাজের জন্য ইতিমধ্যে তৈরি একটি সরঞ্জাম (এটি টার্মিনাল-নির্দিষ্ট হতে পারে) না পেয়ে আপনি টার্মিনালে একক পিক্সেল রঙ আঁকতে পারবেন না । তবে ASCII এবং UTF-8 অক্ষর ব্যবহার করে আপনার টার্মিনালে 2D চিত্র আঁকার জন্য পৃথক অক্ষর সমন্বয়গুলি ব্যবহার করা সম্ভব। এর জন্য সরঞ্জামটি বলা হয় tput। এই সরঞ্জামটি আপনার বর্তমান টার্মিনালের স্থানাঙ্ক অনুযায়ী কার্সার অবস্থানের কৌশল দ্বারা কাজ করে। tputকার্যকারিতার একটি নমুনা তালিকা এখানে :

# tput Cursor Movement Capabilities:

tput cup Y X
    # Move cursor to screen location X,Y (top left is 0,0)

tput sc
    # Save the cursor position

tput rc
    # Restore the cursor position

tput lines
    # Output the number of lines of the terminal

tput cols
    # Output the number of columns of the terminal

tput cub N
    # Move N characters left

tput cuf N
    # Move N characters right

tput cuu N
    # up N lines

tput cud N
    # down N lines

1

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

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

আপনি আপনার ব্রাউজারের গ্রাফিকাল ক্ষমতাগুলিও বিবেচনা করতে পারেন, উদাহরণস্বরূপ কিছু ডেডিকেটেড ওয়েব অ্যাপ্লিকেশন কোড করে (কিছু HTTP সার্ভার লাইব্রেরি যেমন ডাব্লুটি বা libonion , Ajax, করা SVG, HTML5 এর, ক্যানভাস, WebSockets, মত ওয়েব প্রযুক্তি ইত্যাদি ...)

তবে বেশিরভাগ টার্মিনাল এমুলেটরগুলির কোনও গ্রাফিকাল ক্ষমতা বা খুব কম থাকে না (তাই কোনও জেনুইন পিক্সেল গ্রাফিক্স নেই)। সুতরাং ডিসপ্লে সার্ভারের সাথে এক্সেক্ট করার জন্য আপনার প্রোগ্রামটি কার্যত প্রয়োজন ( এক্স 11 , ওয়েল্যান্ড , ...)।

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