فایل Word شما در واقع یک ZIP است؛ اینطور میتوانید داخل آنیک فایل معمولی و بدون رمزنگاری با پسوند .docx را در کامپیوتر خود در نظر بگیرید. ابتدا از آن یک کپی تهیه کنید و سپس پسوند نسخه کپی را از .docx به .zip تغییر دهید. اگر ویندوز پسوند فایلها را در انتهای نامشان نمایش نمیدهد، ابتدا باید نمایش پسوند فایلها را در فایل اکسپلورر فعال کنید.
حالا روی فایل تغییرنامیافته دوبار کلیک کنید. ابزار آرشیو موردنظر شما میتواند آن را باز کند و خود ویندوز نیز امکان باز کردن و استخراج فایلهای ZIP را بدون نصب نرم افزار اضافی دارد.
داخل فایل، ساختاری از پوشهها و فایلها مشاهده خواهید کرد که شامل _rels و docProps و word و فایلی با نام [Content_Types].xml در ریشه آرشیو است.
این یک ترفند عجیب یا یک اتفاق تصادفی نیست. یک سند Word مدرن دقیقاً به همین شکل بستهبندی میشود و این ساختار از زمان Office 2007 مورد استفاده قرار گرفته است. پسوند .docx فقط آنقدر خوب سازوکار داخلی فایل را پنهان میکند که بیشتر کاربران هیچوقت دلیلی برای توجه به آن ندارند.
پوشهای که داخل هر فایل DOCX پنهان شده است
متن اصلی سند شما داخل XML قابل خواندن قرار دارد
پوشه word را در آرشیوی که پسوند آن را تغییر دادهاید باز کنید. در این پوشه فایلی با نام document.xml پیدا خواهید کرد. این فایل بدنه اصلی سند را در خود جای داده و متن آن در قالب WordprocessingML قرار دارد؛ زبان مبتنی بر XML که Word برای توصیف پاراگرافها و بخشهای متنی و قالببندی و سایر رفتارهای سند از آن استفاده میکند.
وقتی document.xml را از فایل آزمایشی باز کنید، جملههای کامل سند را بهصورت متنی قابل خواندن داخل عناصر XML خواهید دید. یک پاراگراف ساده مانند «Hello world» میتواند چیزی شبیه این باشد:
w:p><w:r><w:t>Hello world</w:t></w:r></w:p>
Word همین نشانهگذاری را به صفحه مرتب و قالببندیشدهای تبدیل میکند که معمولاً روی نمایشگر میبینید.
البته همه چیز داخل document.xml قرار ندارد. سرصفحهها و پابرگها و پاورقیها و دیدگاهها و سبکها و سایر اجزای سند میتوانند در فایلهای جداگانهای در بخشهای دیگر این بسته قرار داشته باشند. این موضوع یکی از ویژگیهای اصلی ساختار DOCX است. یک فایل DOCX یک توده عظیم از دادههای سند نیست، بلکه مجموعهای از بخشهای کوچکتر است که Word هنگام باز کردن فایل آنها را کنار هم قرار میدهد.
بقیه فایلهای آرشیو نیز نقش پشتیبان را ایفا میکنند. فایل [Content_Types].xml نوع محتوای ذخیرهشده در بسته را مشخص میکند و فایلهای _rels ارتباط میان اجزای مختلف را مشخص میکنند؛ از جمله ارتباط میان سند اصلی و تصاویر و سایر فایلهای موردنیاز.
تصاویر تعبیهشده نیز معمولاً در مسیر word/media بهصورت فایلهای جداگانه ذخیره میشوند و اغلب فرمت JPEG یا PNG دارند. در یک سند آزمایشی ممکن است این پوشه چندین فایل تصویری مجزا داشته باشد که هرکدام جدا از XML سند ذخیره شدهاند.
کل این سیستم با نام Office Open XML یا OOXML شناخته میشود و بعد از اینکه یکبار داخل فایل DOCX را ببینید، دلیل وجود حرف X در پسوند .docx بسیار منطقیتر به نظر میرسد.
چرا DOCX جایگزین DOC بهعنوان فرمت پیشفرض Word شد؟
فرمت قدیمی هم یک سیستم فایل داشت، اما بسیار عجیبتر بود
پیش از Office 2007، Word عمدتاً اسناد را با پسوند .doc و با استفاده از فرمت باینری مایکروسافت ذخیره میکرد. این فایلها صرفاً مجموعهای از متن و قالببندی نبودند که در یک جریان واحد قرار گرفته باشند. آنها از OLE Compound File Binary Format استفاده میکردند؛ ساختاری که تا حدی شبیه یک سیستم فایل کوچک است که داخل یک فایل واحد قرار گرفته و شامل جریانها و فضای ذخیرهسازی داخلی میشود.
تفاوت اصلی در میزان دسترسیپذیری بود. برای تفسیر مطمئن این ساختار باینری باید با مشخصات فرمت مایکروسافت آشنایی میداشتید و کار کردن با آن از طریق برنامهنویسی نیز بسیار دشوارتر از باز کردن یک آرشیو ZIP و تجزیه XML بود.
OOXML این مدل را با یک بسته مبتنی بر ZIP جایگزین کرد که از بخشهای جداگانه و قابل دسترسی تشکیل شده است. مایکروسافت این فرمت را به شکلی طراحی کرد که نرم افزارها بتوانند بخشهایی از یک سند را بدون اجرای Word تغییر دهند.
به عنوان مثال، یکی از کاربردهایی که مایکروسافت برای این قابلیت مطرح کرد، تعویض یک لوگو در هزاران سند ذخیرهشده بود؛ به این شکل که تصویر موجود در هر بسته جایگزین شود، بدون اینکه لازم باشد تکتک فایلها بهصورت دستی با Word باز شوند.
این فرمت در سال ۲۰۰۶ بهعنوان ECMA-376 استاندارد شد و بعدها در سال ۲۰۰۸ استاندارد ISO/IEC 29500 نیز برای آن تصویب شد. نتیجه عملی این استانداردسازی این است که توسعهدهندگان میتوانند ساختار پایه یک فایل DOCX را با ابزارهای معمول ZIP و XML که در بسیاری از محیطهای برنامهنویسی وجود دارند، بررسی کنند.
مستند بودن این فرمت همچنین باعث شده DOCX خارج از نرم افزارهای اختصاصی مایکروسافت نیز کاربردی باشد و جایگزینهای مدرن Word بتوانند مستقیماً با فایلهای DOCX کار کنند؛ هرچند میزان سازگاری آنها با قالببندیهای مختلف متفاوت است.
این موضوع به معنای ساده بودن بازسازی تمام قابلیتهای Word نیست. اسناد پیچیده ممکن است شامل ارتباطات میان فایلها و سبکها و اشیای تعبیهشده و تغییرات ثبتشده و تنظیمات سازگاری و قابلیتهای دیگری باشند که تفسیر دقیق کل بسته را بسیار دشوارتر میکنند.
با این حال، دسترسی به محتوای فایل دیگر نیازمند برخورد با آن بهعنوان یک فایل باینری کاملاً ناشناخته نیست.
فرمت قدیمی .doc لزوماً سادهتر نبود؛ فقط بررسی آن با ابزارهایی که بیشتر کاربران در اختیار دارند، بسیار دشوارتر بود.
باز کردن یک فایل DOCX چه امکاناتی در اختیار شما میگذارد؟
این ترفند بیشتر از چیزی که فکر میکنید کاربردی است
یکی از کاربردیترین موارد این ترفند، استخراج تصاویر است. اگر فردی یک سند ۵۰ صفحهای پر از عکس برای شما ارسال کند، لازم نیست روی تکتک تصاویر کلیک راست کنید و آنها را جداگانه ذخیره کنید.
پس از تغییر پسوند فایل، پوشه word/media را باز کنید تا بتوانید تمام فایلهای تصویری ذخیرهشده در سند را یکجا استخراج کنید.
البته یک نکته مهم وجود دارد. تضمینی نیست که این تصاویر دقیقاً همان فایلهای اصلی باشند که در ابتدا داخل سند قرار داده شدهاند؛ زیرا Word بسته به تنظیمات تصاویر میتواند آنها را فشرده یا بازنمونهبرداری کند. پوشه word/media چیزی را نشان میدهد که واقعاً داخل فایل DOCX ذخیره شده است و ممکن است با فایلهای منبع تفاوت داشته باشد.
ساختار بسته همچنین میتواند زمانی مفید باشد که Word از باز کردن یک سند آسیبدیده خودداری میکند. اگر خود محفظه ZIP همچنان سالم باشد، ممکن است بتوانید فایل document.xml را باز کنید و متن باقیمانده را مستقیماً بازیابی کنید و سپس تصاویر سالم موجود در word/media را نیز استخراج کنید.
کاربران حرفهایتر گاهی میتوانند XML معیوب را تعمیر کرده و بسته را دوباره بسازند، اما این کار آنقدر که در نگاه اول ساده به نظر میرسد قابل پیشبینی نیست. یک فایل DOCX خراب ممکن است XML نامعتبر و یک ارتباط آسیبدیده و یک فایل مفقود یا یک ورودی خراب ZIP داشته باشد یا بخشی از دادههای آن واقعاً از بین رفته باشد.
بنابراین باز کردن آرشیو را بهتر است یکی دیگر از روشهای بازیابی اطلاعات در نظر بگیرید، نه راهحلی تضمینی برای هر خطایی مانند "Word found unreadable content".
همچنین میتوانید با استفاده از این آرشیو بخشهایی را بررسی کنید که Word معمولاً آنها را بهعنوان اجزای یک سند واحد نمایش میدهد. بسته به فایل، این موارد میتوانند شامل سرصفحهها و پابرگها و ویژگیهای سند و دیدگاهها و اشیای تعبیهشده و تمها و سبکها و سایر دادههای پشتیبان باشند.
حتی اگر هیچکدام از این فایلها را ویرایش نکنید، یکبار مشاهده ساختار داخلی DOCX باعث میشود این فرمت بسیار کمتر مرموز به نظر برسد.
یک فایل Word یک بسته است، نه یک جعبه سیاه
این ترفند به نرم افزار ویژهای نیاز ندارد. تنها کافی است بدانید .docx در واقع برچسبی روی یک بسته مبتنی بر ZIP است که Word آن را میسازد تا سندی را که معمولاً روی صفحه میبینید، ایجاد کند.
وقتی یکبار داخل فایل DOCX را ببینید، اسناد Word دیگر چندان یکپارچه و غیرقابل دسترس به نظر نمیرسند. XML متن و ساختار سند را در اختیار شما میگذارد، پوشه رسانه تصاویر تعبیهشده را نگه میدارد و فایلهای دیگر نیز ارتباط میان اجزای مختلف را برقرار میکنند.
پسوند .docx یک سند مخفی و متفاوت را پنهان نکرده است؛ بلکه سازوکاری را پنهان کرده که باعث میشود سند همانطور که انتظار دارید کار کند.
سیارهی آیتی




