Word DOCX তৈরি এবং প্রক্রিয়াকরণের জন্য বিনামূল্যে রুবি API
ওপেন সোর্স রুবি লাইব্রেরি যা প্রোগ্রামারদের পেশাদার অফিস ওয়ার্ড ডকুমেন্ট তৈরি করতে, DOCX ফাইলগুলি পরিবর্তন করতে, পৃষ্ঠা মার্জিন যোগ করতে, HTML-এর মতো সিনট্যাক্স ব্যবহার করে নেস্টেড টেবিলগুলি সন্নিবেশ করার ক্ষমতা দেয়।
ক্যারাকাল লাইব্রেরি রুবি ডেভেলপারদের তাদের নিজস্ব অ্যাপ্লিকেশনের মধ্যে HTML-এর মতো সিনট্যাক্স ব্যবহার করে পেশাদার অফিস ওয়ার্ড নথি তৈরি করার ক্ষমতা দেয়। লাইব্রেরি ডেভেলপারদের অফিস ওপেন এক্সএমএল (OOXML) তৈরি এবং পরিচালনা করতে কিছু সাধারণ কমান্ড ব্যবহার করতে সক্ষম করে তাদের কাজ সহজ করে তোলে। লাইব্রেরিটি ওপেন সোর্স এবং এমআইটি লাইসেন্সের অধীনে উপলব্ধ।
লাইব্রেরিটি খুব ভালোভাবে ডিজাইন করা হয়েছে এবং এটি প্রক্রিয়াকরণের নির্দেশাবলী থেকে নথি পার্স করার নির্দেশনাকে আলাদা করে। এই কৌশলটি রেন্ডারিং প্রক্রিয়াকে প্রচুর পরিমাণে নমনীয়তা দেয়। লাইব্রেরীতে ওয়ার্ড ডকুমেন্ট প্রসেসিং এর সাথে সম্পর্কিত বেশ কিছু গুরুত্বপূর্ণ বৈশিষ্ট্য অন্তর্ভুক্ত করা হয়েছে যেমন ওয়ার্ড ডকুমেন্ট তৈরি, পৃষ্ঠার আকার নির্ধারণ, পৃষ্ঠা মার্জিন সমর্থন, পৃষ্ঠা বিরতি, পৃষ্ঠা নম্বর, ফন্ট সমর্থন, শৈলী এবং বিন্যাস সমর্থন, একটি অনুচ্ছেদ যোগ করা, লিঙ্ক এবং বুকমার্ক ব্যবহার করা, সন্নিবেশ করা। টেবিল, নেস্টেড টেবিল সমর্থন, ছবি সমর্থন এবং আরো অনেক কিছু।
কারাকাল দিয়ে শুরু করা
লাইব্রেরির মসৃণ ব্যবহারের জন্য অনুগ্রহ করে নিম্নলিখিত কমান্ড অ্যাপ্লিকেশনের Gemfile যোগ করুন।
Application এর Gemfile এ কোড যোগ করে Caracal ইনস্টল করুন
gem 'caracal'
Application এর Gemfile এ কোড যোগ করে Caracal ইনস্টল করুন
bundle install
রুবি ব্যবহার করে Word Docx ফাইল তৈরি
ওপেন সোর্স কারাকাল লাইব্রেরি রুবি ডেভেলপারদের রুবি কোড ব্যবহার করে তাদের অ্যাপের মধ্যে DOCX ফাইল তৈরি করতে সক্ষম করে। DOCX ফাইল ফরম্যাট হল XML নথির একটি জিপ করা সংগ্রহ এবং OOXML স্ট্যান্ডার্ড ব্যবহার করে তৈরি করা হয়। লাইব্রেরি নথির সম্পূর্ণ কাঠামো তৈরি করে এবং আউটপুট নথিতে জিপ করে প্রোগ্রামারদের সাহায্য করে। লাইব্রেরি বিদ্যমান ফাইলগুলিকে সংশোধন করা, পৃষ্ঠার আকার সামঞ্জস্য করা, মার্জিন সেট করা, শৈলী প্রয়োগ করা এবং আরও অনেক কিছু সমর্থন করে।
রুবি কারাকাল লাইব্রেরির মাধ্যমে ওয়ার্ড ডকুমেন্ট তৈরি করুন
Caracal::Document.save 'example.docx' do |docx|
# page 1
docx.h1 'Page 1 Header'
docx.hr
docx.p
docx.h2 'Section 1'
docx.p 'Lorem ipsum dolor....'
docx.p
docx.table @my_data, border_size: 4 do
cell_style rows[0], background: 'cccccc', bold: true
end
# page 2
docx.page
docx.h1 'Page 2 Header'
docx.hr
docx.p
docx.h2 'Section 2'
docx.p 'Lorem ipsum dolor....'
docx.ul do
li 'Item 1'
li 'Item 2'
end
docx.p
docx.img 'https://www.example.com/logo.png', width: 500, height: 300
end
ওয়ার্ড ফাইলে টেবিল এবং নেস্টেড টেবিল যোগ করুন
বিনামূল্যের কারাকাল লাইব্রেরি সফ্টওয়্যার বিকাশকারীদের তাদের ওয়ার্ড ডকুমেন্টে রুবি কোডের মাত্র কয়েকটি লাইনের সাথে টেবিল যোগ এবং পরিবর্তন করতে সক্ষম করে। লাইব্রেরীতে বেশ কিছু গুরুত্বপূর্ণ ফাংশন সম্পর্কিত টেবিল ম্যানেজমেন্ট অন্তর্ভুক্ত করা হয়েছে যেমন শিরোনাম যোগ করা, নতুন কলাম এবং সারি যোগ করা, উপরে, নীচে বা বাম এবং ডানে স্টাইল করা, একটি নির্দিষ্ট কক্ষে শৈলী প্রয়োগ করা, ঘরগুলিকে একত্রিত করা বা বিভক্ত করা এবং আরও অনেক কিছু। লাইব্রেরিতে নেস্টেড টেবিলের জন্য সমর্থনও অন্তর্ভুক্ত ছিল।
ওয়ার্ড ডকুমেন্টের ভিতরে তালিকা ব্যবহার করুন
ওপেন সোর্স কারাকাল লাইব্রেরি রুবি কমান্ড ব্যবহার করে DOCX ফাইলের মধ্যে তালিকা ব্যবহার করার জন্য সমর্থন অন্তর্ভুক্ত করেছে। লাইব্রেরি ওয়ার্ড ডকুমেন্টের অভ্যন্তরে ক্রমানুসারে পাশাপাশি ক্রমবিহীন তালিকা যোগ করার অনুমতি দেয়। এটি গভীর নেস্টেড তালিকা এবং অন্যান্য সংমিশ্রণে মিশ্রণকে সমর্থন করে। আপনি সহজেই তালিকার জন্য শৈলী সংজ্ঞায়িত করতে পারেন। লাইব্রেরি ক্রমানুসারে এবং অপরিবর্তিত উভয় তালিকার জন্য 9 স্তরের ডিফল্ট শৈলী সমর্থন করে।
রুবি লাইব্রেরির মাধ্যমে ওয়ার্ড ডকুমেন্টের মধ্যে তালিকাগুলি কীভাবে ব্যবহার করবেন
docx.ol do
li 'First item'
li do
text 'Second item with a '
link 'link', 'http://www.google.com'
text '.'
br
text 'This sentence follows a line break.'
end
end
DOCX ফাইলে অনুচ্ছেদ এবং বুকমার্ক সন্নিবেশ করান
কারাকাল লাইব্রেরি সহজে তাদের শব্দ নথিতে অনুচ্ছেদ যোগ করার জন্য কার্যকারিতা প্রদান করেছে। লাইব্রেরীতে অনুচ্ছেদ পরিচালনার সাথে সম্পর্কিত বেশ কিছু ফাংশন অন্তর্ভুক্ত করা হয়েছে, যেমন টেক্সট সারিবদ্ধকরণ, ফন্ট নির্বাচন, ফন্টের রঙ এবং ফন্টের আকার নির্ধারণ পটভূমির রঙ, উল্লম্ব প্রান্তিককরণ প্রয়োগ করা ইত্যাদি। এটি সহজেই নথিতে বা অনুচ্ছেদ ব্লকের ভিতরে বুকমার্ক সন্নিবেশ করার জন্য সমর্থন প্রদান করে।
রুবি লাইব্রেরির মাধ্যমে ওয়ার্ড ডকুমেন্টে বুকমার্ক যোগ করুন
# document-level bookmark
dox.bookmark_start id: 's1', name: 'section1'
docx.h2 'Section Heading'
docx.bookmark_end id: 's1'
docx.p 'Section content.'
# pargraph-level bookmark
docx.h2 'Section Heading'
docx.p do
text 'Pretend this paragraph has a lot of text and we want to bookmark '
bookmark_start id: 'p1', name: 'phrase1'
text 'a single phrase'
bookmark_end id: 'p1'
text ' inside the larger block.'
end