.Docx ফাইলগুলি সরল পাঠ্যে রূপান্তর করা এবং লাইন নম্বর রেফারেন্সগুলি সংরক্ষণ করে উত্স নথিতে রেফারেন্স রেফারেন্স: কীভাবে এবং কীভাবে বোঝায়?


9

আমি এমএস ওয়ার্ডের সামগ্রীটি পাঠ্য ও ফাইল ইউটিলিটি সহ ব্যবহারের জন্য সরল পাঠ্যে রফতানি করছি । আমার সীমাবদ্ধতা রয়েছে যেখানে এমএস সফ্টওয়্যারটিতে লাইন নম্বর বৈশিষ্ট্য সক্ষম করা হয়েছে এবং চূড়ান্ত আউটপুটে লাইন সংখ্যাগুলির কোনও রেফারেন্স অবশ্যই সেই সংখ্যার সাথে মেলে। সুতরাং "সংখ্যায়ন লাইন" লিখুন:

এখানে চিত্র বর্ণনা লিখুন ( পো, ইএ )

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

our $config_newLine = "\n"; # Alternative is "\r\n".
our $config_lineWidth = 80; # Line width, used for short line justification.

আমি বদলে চেষ্টা \nজন্য \r\nকিন্তু যে আমার জন্য কাজ বলে মনে হচ্ছে না। সুতরাং আমি নিম্নলিখিত সেটিংসের মাধ্যমে ওয়ার্ড থেকে ডকুমেন্টগুলি সরাসরি রফতানি করার জন্য অবলম্বন করেছি ( v21,64pc তে সরল পাঠ্য হিসাবে সংরক্ষণ করুন):

  • ইউনিকোড (UTF-8)
  • (সিআর / এলএফ) এর সাথে লাইন বিরতি + শেষ লাইনগুলি সন্নিবেশ করান
  • চরিত্রের প্রতিস্থাপনের অনুমতি দিন

আর এখন তো যখন আমি ব্যবহার.txt ফাইল সেখানে উৎস সংখ্যায়ন বৈশিষ্ট্য এবং লাইন সংখ্যার মধ্যে একটি নিখুঁত ম্যাচ হয় grep -nআউটপুট।


  • আমার মতো কোনও নির্দিষ্ট কনফিগারেশন / প্রক্রিয়া docx2txtবা এমন একটি কমান্ড লাইন ইউটিলিটি সম্পর্কে জানা উচিত যা আমার মতো ওয়ার্ডের অবলম্বন না করে লাইন ব্রেকগুলি সংরক্ষণ করার সময় আমার .docx ফাইলগুলিকে প্লেইন পাঠ্যে রূপান্তর করতে পারত?
  • লাইন ব্রেক এবং ফর্ম্যাটিংয়ের ক্ষেত্রে ফাইল / পাঠ্য উপযোগিতা ব্যবহারের জন্য প্লেইন টেক্সটটিতে এমএস ওয়ার্ড ডকুমেন্টগুলি (যার মধ্যে উচ্চারণযুক্ত অক্ষর থাকতে পারে) রফতানির জন্য সর্বোত্তম অনুশীলনগুলি কী কী ; এবং আমি রফতানির জন্য সিআর / এলএফ serোকানোর জন্য যে সেটিংসকে বেছে নিয়েছি তার সাথে কি কোনও নেতিবাচক প্রভাব রয়েছে?

নমুনা

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


আপনি আমাদের উদাহরণ ফাইল দিতে পারেন?
cuonglm

আপনি কি ওয়ার্ড থেকে এটি একটি টেক্সট ফাইল হিসাবে সংরক্ষণ করতে পারবেন না? যদি এটি আপনাকে খারাপ ফর্ম্যাটিং দেয় তবে আমি সমস্যাটি সমাধানের জন্য ভিম বা ইম্যাক্স ব্যবহার করার পরামর্শ দেব (কারণ আমি নিশ্চিত যে এটি নমুনাযুক্ত)।
স্টিভেন ওয়ালটন

1
@ স্টিভেন ওয়ালটন আপনাকে ধন্যবাদ, হ্যাঁ আমি যখন ওয়ার্ড থেকে টেক্সট রফতানি করি তখন এটি কাজ করে। তবে আমি ওয়ার্ডটি ব্যবহার করতে চাই না আমার বিষয়। আমি ইচ্ছা করি এটি করতে আমি কেবল স্ক্রিপ্টের উপর নির্ভর করতে পারি। আমি ব্যাচের জন্য একটি প্রক্রিয়া চাই

@ জ্নুক নমুনা সরবরাহ করা হয়েছে। ধন্যবাদ!

উত্তর:


8

docx2txtdocxএক্সএমএল ফাইলগুলির একটি জিপ করা সেট যা ফাইলের তথ্যগুলিতে কাজ করে ।

.docxএক্সএমএল ডেটা মোড়কে রেখার ক্ষেত্রে কেবল অনুচ্ছেদ এবং হার্ড-ব্রেক সম্পর্কে তথ্য অন্তর্ভুক্ত থাকে, সফট ব্রেক সম্পর্কে নয়। সফট-ব্রেকগুলি নির্দিষ্ট ফন্ট, ফন্ট-আকার এবং পৃষ্ঠার প্রস্থে পাঠ্য রেন্ডার করার ফলাফল are docx2txtসাধারণত হরফ এবং হরফ আকারের জন্য কোন প্রকার ছাড়াই 80 টি কলামে (80 টি কলাম কনফিগারযোগ্য) মাপসই চেষ্টা করে। যদি আপনার .docxউইন্ডোজ সিস্টেম থেকে ফন্টের তথ্য থাকে যা ইউনিক্স / লিনাক্সে উপলব্ধ নয়, তবে .txtওপেন / লিব্রেঅফিসের মাধ্যমে রফতানি করার ফলে একই লেআউটের সম্ভাবনা কম, যদিও এটি একটি ভাল কাজ করার চেষ্টা করে ¹

সুতরাং docx2txtবা কমান্ডলাইন চালিত ওপেন / লিব্রেঅফিস প্রসেসিং সহ অন্য কোনও কমান্ডলাইন ইউটিলিটি, ওয়ার্ড ডেস² থেকে রফতানির মতো পাঠ্যটিকে একই লেআউটে রূপান্তর করার নিশ্চয়তা দিবে না ²

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

কেবল সিআর / এলএফ বা এলএফ, বা ইউটিএফ -8 বা অন্য কোনও এনকোডিং ব্যবহারের সিদ্ধান্তগুলি .txtমূলত ফলাফলগুলি কীভাবে ব্যবহৃত হয় তার উপর নির্ভর করে। যদি উইন্ডোজে ফলাফলগুলি ব্যবহৃত হয় তবে আমি অবশ্যই সিআর / এলএফ, ইউটিএফ -8 এবং একটি ইউটিএফ -8 বিওএমের সাথে যেতে পারি । লিনাক্সের আধুনিক প্রোগ্রামগুলি অনুমান করতে সক্ষম হয় যে কোনও ফাইলটি ইউটিএফ -8, তবে বিওএম এবং / অথবা সেই তথ্য ব্যবহার করে না। সামঞ্জস্যতার জন্য আপনার সমস্ত লক্ষ্য অ্যাপ্লিকেশনগুলি পরীক্ষা করা উচিত যদি সেগুলি সামনের দিকে পরিচিত থাকে।

¹ এই ধরণের বেমানান হ'ল প্রাথমিক কারণ হ'ল আমার কিছু বন্ধুরা উইন্ডোজ থেকে লিনাক্সে পরিবর্তন আনতে পারে না, যদিও তারা চায়। তাদের মাইক্রোসফ্ট ওয়ার্ডটি ওপেন / লিবারঅফিস হিসাবে একবার ব্যবহার করতে হবে যখন তারা ক্লায়েন্টদের সাথে বিনিময় করেন মঙ্গলেস পাঠ্য।
² আপনি ওয়ার্ড ফাইলগুলিতে ব্যবহৃত সমস্ত ফন্ট ইনস্টল করতে পারেন এবং কিছু লেখার জন্য ভাগ্যবান হতে পারেন, কিছু সময়।
From থেকে পিডিএফগুলি রেন্ডারিং.doc/.docx
প্রোগ্রামটি জিইউআই অটোমেশন ব্যবহার করে — যেন কেউ তার মেনুতে ক্লিক করছে — এবং কোনও এপিআইয়ের মাধ্যমে ওয়ার্ড ড্রাইভ করার চেষ্টা করে না। আমি পুরোপুরি নিশ্চিত যে পরবর্তীটিও কাজটি করা যেতে পারে এবং যদি শব্দটি আপগ্রেড হয় তবে জিনিসগুলি না ভাঙার সুবিধা হবে


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

শেষ পর্যন্ত এর অর্থ হ'ল যে কেউ এই জাতীয় কাজগুলিতে সোহু হয়ে যাচ্ছেন তার কয়েকটি লাইসেন্সের ব্যয়কে অভ্যন্তরীণ করার প্রয়োজন হতে পারে। হতে পারে একদিন তারা প্রতি ব্যবহারের এপিআই দিয়ে একটি স্তর করে। নরম-বিরতিতে রেখাগুলি ভাঙ্গা সম্পূর্ণরূপে একটি সরঞ্জাম ব্যবহারের গতিময় পরিবর্তন করে grep; লাইনগুলি দীর্ঘ হলে, আউটপুটে এটি "নির্ভুলতা" হ্রাস পাবে। আমার ধারণা, বিষয়বস্তুর প্রকৃতি এবং এটি কীভাবে ব্যবহৃত হয় তার সাথে বাধাগুলি পৃথক হয়। অন্যদিকে, ডকুমেন্টগুলি এখানে শব্দ সংখ্যা বৈশিষ্ট্যটির উপর নির্ভর না করে থাকলে এই জাতীয় প্রশ্নগুলি হবে না। উত্তরাধিকার সূত্রকে অন্তর্ভুক্ত করতে একটি নথির কাঠামো তৈরি করা গুরুতর ব্যবসা is চিয়ার্স!
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.