.TH "dsr2html" 1 "Thu Jul 9 2026 18:43:40" "Version 3.7.0" "OFFIS DCMTK" \" -*- nroff -*- .nh .SH "نام (NAME)" dsr2html \- تبدیل و رندر فایل و مجموعه‌داده DICOM SR به HTML/XHTML .PP .SH "خلاصه دستور (SYNOPSIS)" .PP .PP .nf dsr2html [options] dsrfile-in [htmlfile-out] .fi .PP .SH "توضیحات (DESCRIPTION)" .PP ابزار \fBdsr2html\fP محتوای یک سند گزارش‌دهی ساختاریافته دایکام (DICOM SR) را (در قالب فایل یا مجموعه‌داده خام) به فرمت HTML (زبان نشانه‌گذاری ابرمتن) نسخه 3\&.2 یا 4\&.01 و همچنین XHTML (زبان نشانه‌گذاری ابرمتن توسعه‌پذیر) نسخه 1\&.1 تبدیل و رندر می‌کند\&. .PP اگر \fBdsr2html\fP یک مجموعه‌داده خام (داده‌های دایکام فاقد فراداده هدر فایل) را بخواند، تلاش می‌کند سینتکس انتقال (Transfer Syntax) را با بررسی چند بایت اول فایل حدس بزند\&. حدس زدن صحیح سینتکس انتقال همیشه ممکن نیست و بهتر است در صورت امکان، مجموعه‌داده با استفاده از ابزار \fBdcmconv\fP به قالب فایل استاندارد تبدیل شود\&. همچنین می‌توان از گزینه‌های \fI-f\fP و \fI-t[ieb]\fP برای اجبار \fBdsr2html\fP به خواندن مجموعه‌داده با یک سینتکس انتقال مشخص استفاده کرد\&. .SH "پارامترها (PARAMETERS)" .PP .PP .nf dsrfile-in نام فایل ورودی DICOM SR برای رندر شدن ("-" برای ورودی استاندارد stdin) htmlfile-out نام فایل خروجی HTML/XHTML (پیش‌فرض: خروجی استاندارد stdout) .fi .PP .SH "گزینه‌ها (OPTIONS)" .PP .SS "گزینه‌های عمومی (general options)" .PP .nf -h --help چاپ این متن راهنما و خروج --version چاپ اطلاعات نسخه و خروج --arguments چاپ آرگومان‌های بسط‌یافته خط فرمان -q --quiet حالت بی‌صدا، عدم چاپ هشدارها و خطاها -v --verbose حالت پرگو، چاپ جزئیات پردازش -d --debug حالت اشکال‌زدایی، چاپ اطلاعات دیباگ -ll --log-level [l]evel: string constant (fatal, error, warn, info, debug, trace) استفاده از سطح l برای ثبت‌کننده گزارش -lc --log-config [f]ilename: string استفاده از فایل پیکربندی f برای ثبت‌کننده گزارش .fi .PP .SS "گزینه‌های ورودی (input options)" .PP .nf قالب فایل ورودی: +f --read-file خواندن قالب فایل یا مجموعه‌داده (پیش‌فرض) +fo --read-file-only خواندن فقط قالب فایل -f --read-dataset خواندن مجموعه‌داده بدون اطلاعات فراداده فایل سینتکس انتقال ورودی: -t= --read-xfer-auto استفاده از تشخیص خودکار سینتکس انتقال (پیش‌فرض) -td --read-xfer-detect نادیده گرفتن سینتکس انتقال مشخص‌شده در هدر فایل -te --read-xfer-little خواندن با سینتکس انتقال explicit VR little endian -tb --read-xfer-big خواندن با سینتکس انتقال explicit VR big endian -ti --read-xfer-implicit خواندن با سینتکس انتقال implicit VR little endian .fi .PP .SS "گزینه‌های پردازش (processing options)" .PP .nf اطلاعات تکمیلی: -Ip --processing-details نمایش آیتم محتوایی که هم‌اکنون در حال پردازش است مدیریت خطا: -Er --unknown-relationship پذیرش نوع رابطه ناشناخته یا ناموجود -Ev --invalid-item-value پذیرش مقدار نامعتبر برای آیتم محتوا (برای مثال، نقض تعریف VR یا VM) -Ec --ignore-constraints نادیده گرفتن محدودیت‌های محتوایی رابطه -Ee --ignore-item-errors عدم توقف در صورت بروز خطای آیتم محتوا، فقط هشدار دادن (برای مثال، عدم وجود مشخصه‌های خاص نوع مقدار) -Ei --skip-invalid-items رد کردن آیتم‌های محتوای نامعتبر (شامل زیردرخت آن‌ها) -Dv --disable-vr-checker غیرفعال کردن بررسی انطباق مقادیر رشته‌ای با VR مجموعه نویسه‌های خاص (specific character set): +Cr --charset-require الزام اعلام مجموعه نویسه توسعه‌یافته (پیش‌فرض) +Ca --charset-assume [c]harset: string فرض کردن مجموعه نویسه c در صورت عدم اعلام مجموعه نویسه توسعه‌یافته --charset-check-all بررسی تمام عناصر داده با مقادیر رشته‌ای (پیش‌فرض: فقط PN, LO, LT, SH, ST, UC و UT) # این گزینه فقط برای بررسی توسعه‌یافته جهت لزوم حضور # مشخصه Specific Character Set (0008,0005) استفاده می‌شود، # اما برای تبدیل مقادیر عناصر نامتأثر به UTF-8 کاربرد ندارد # (مانند مقادیر عنصری با VR از نوع CS) +U8 --convert-to-utf8 تبدیل تمام مقادیر عناصر متأثر از Specific Character Set (0008,0005) به UTF-8 # نیازمند پشتیبانی از سوی کتابخانه کدگذاری نویسه زیرین است # (برای اطلاع از اینکه کدام‌یک موجود است، به خروجی --version مراجعه کنید) .fi .PP .SS "گزینه‌های خروجی (output options)" .PP .nf سازگاری HTML/XHTML: +H3 --html-3\&.2 استفاده از ویژگی‌های سازگار با HTML نسخه 3\&.2 تنها +H4 --html-4\&.0 مجاز دانستن تمام ویژگی‌های HTML نسخه 4\&.01 (پیش‌فرض) +X1 --xhtml-1\&.1 انطباق با مشخصات XHTML نسخه 1\&.1 +Hd --add-document-type افزودن ارجاع به تعریف نوع سند SGML شیوه‌نامه آبشاری (CSS)، همراه با HTML 3\&.2 قابل استفاده نیست: +Sr --css-reference URL: string افزودن ارجاع به CSS مشخص‌شده در سند +Sf --css-file [f]ilename: string قراردادن مستقیم محتوای CSS مشخص‌شده درون سند رندر عمومی: +Ri --expand-inline بسط آیتم‌های محتوای کوتاه درون‌خطی (پیش‌فرض) -Ri --never-expand-inline هرگز بسط ندادن آیتم‌های محتوا به صورت درون‌خطی +Ra --always-expand-inline همیشه بسط دادن آیتم‌های محتوا به صورت درون‌خطی +Rd --render-full-data رندر کامل داده‌های آیتم‌های محتوا +Rt --section-title-inline رندر عنوان‌های بخش به صورت درون‌خطی، نه جداگانه +Rh --hyperlink-url-prefix [p]refix: string استفاده از پیشوند URL p برای پیوندها به اشیاء ترکیبی (پیش‌فرض: http://localhost/dicom\&.cgi) رندر سند: +Dt --document-type-title استفاده از نوع سند به عنوان عنوان سند (پیش‌فرض) +Dp --patient-info-title استفاده از اطلاعات بیمار به عنوان عنوان سند -Dh --no-document-header عدم رندر اطلاعات عمومی سند رندر کدها: +Ci --render-inline-codes رندر کدها در بلوک‌های متنی پیوسته +Cn --concept-name-codes رندر کد نام‌های مفهوم (Concept Names) +Cu --numeric-unit-codes رندر کد واحدهای سنجش عددی +Cv --code-value-unit استفاده از مقدار کد به عنوان واحد سنجش (پیش‌فرض) +Cm --code-meaning-unit استفاده از مفهوم کد به عنوان واحد سنجش +Cc --render-all-codes رندر تمام کدها (شامل +Ci، +Cn و +Cu) +Ct --code-details-tooltip رندر جزئیات کد به صورت تول‌تیپ (راهنمای شناور) (شامل +Cc) .fi .PP .SH "نکات (NOTES)" .PP .SS "انطباق با دایکام (DICOM Conformance)" ابزار \fBdsr2html\fP از کلاس‌های SOP زیر پشتیبانی می‌کند: .PP .PP .nf SpectaclePrescriptionReportStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.78\&.6 MacularGridThicknessAndVolumeReportStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.79\&.1 BasicTextSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.11 EnhancedSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.22 ComprehensiveSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.33 Comprehensive3DSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.34 ProcedureLogStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.40 MammographyCADSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.50 KeyObjectSelectionDocumentStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.59 ChestCADSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.65 XRayRadiationDoseSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.67 RadiopharmaceuticalRadiationDoseSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.68 ColonCADSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.69 ImplantationPlanSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.70 AcquisitionContextSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.71 SimplifiedAdultEchoSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.72 PatientRadiationDoseSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.73 PlannedImagingAgentAdministrationSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.74 PerformedImagingAgentAdministrationSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.75 WaveformAnnotationSRStorage 1\&.2\&.840\&.10008\&.5\&.1\&.4\&.1\&.1\&.88\&.77 RenditionSelectionDocumentRealTimeCommunication 1\&.2\&.840\&.10008\&.10\&.4 (*) .fi .PP .PP (*) این یک کلاس SOP ذخیره‌سازی نیست، بلکه برای ارتباطات بی‌درنگ (Real-Time) استفاده می‌شود\&. .SS "کدگذاری نویسه‌ها (Character Encoding)" کدگذاری HTML/XHTML به صورت خودکار از مشخصه دایکام (0008,0005) با عنوان "Specific Character Set" و با استفاده از نگاشت زیر تعیین می‌شود: .PP .PP .nf ASCII (ISO_IR 6) => (none) UTF-8 "ISO_IR 192" => "UTF-8" ISO Latin 1 "ISO_IR 100" => "ISO-8859-1" ISO Latin 2 "ISO_IR 101" => "ISO-8859-2" ISO Latin 3 "ISO_IR 109" => "ISO-8859-3" ISO Latin 4 "ISO_IR 110" => "ISO-8859-4" ISO Latin 5 "ISO_IR 148" => "ISO-8859-9" ISO Latin 9 "ISO_IR 203" => "ISO-8859-15" Cyrillic "ISO_IR 144" => "ISO-8859-5" Arabic "ISO_IR 127" => "ISO-8859-6" Greek "ISO_IR 126" => "ISO-8859-7" Hebrew "ISO_IR 138" => "ISO-8859-8" Thai "ISO_IR 166" => "TIS-620" Japanese "ISO 2022 IR 13\\ISO 2022 IR 87" => "ISO-2022-JP" Korean "ISO 2022 IR 6\\ISO 2022 IR 149" => "ISO-2022-KR" Chinese "ISO 2022 IR 6\\ISO 2022 IR 58" => "ISO-2022-CN" Chinese "GB18030" => "GB18030" Chinese "GBK" => "GBK" .fi .PP .PP اگر این مشخصه دایکام در فایل ورودی موجود نباشد، با وجود اینکه به آن نیاز باشد، می‌توان از گزینه \fI--charset-assume\fP برای مشخص کردن دستی یک مجموعه نویسه مناسب (با استفاده از اصطلاحات تعریف‌شده دایکام) استفاده کرد\&. به دلایل سازگاری عقبروی با نسخه‌های پیشین این ابزار، اصطلاحات زیر نیز پشتیبانی شده و به صورت خودکار به اصطلاحات تعریف‌شده دایکام نگاشت می‌شوند: latin-1, latin-2, latin-3, latin-4, latin-5, latin-9, cyrillic, arabic, greek, hebrew\&. .PP گزینه \fI--convert-to-utf8\fP را می‌توان برای تبدیل فایل یا مجموعه‌داده دایکام به کدگذاری UTF-8 پیش از رندر به قالب HTML/XHTML استفاده کرد\&. .SS "امنیت (Security)" لطفاً توجه داشته باشید که استفاده از گزینه‌های \fI--css-reference\fP، \fI--css-file\fP یا \fI--hyperlink-url-prefix\fP می‌تواند منجر به مسائل امنیتی شود، زیرا ممکن است مهاجم از آن‌ها برای تزریق محتوای خطرناک به خروجی HTML/XHTML سوءاستفاده کند\&. مقادیر ارائه‌شده به این گزینه‌ها بررسی نمی‌شوند؛ نه URL و پیشوند آن و نه محتوای فایل CSS تعیین‌شده\&. .SH "ثبت گزارش‌ها (LOGGING)" .PP سطح جزئیات خروجی ثبت گزارش‌های (logging) ابزارهای خط فرمان گوناگون و کتابخانه‌های زیرین توسط کاربر قابل تعیین است\&. به طور پیش‌فرض، تنها خطاها و هشدارها در جریان خطای استاندارد (stderr) نوشته می‌شوند\&. با استفاده از گزینه \fI--verbose\fP پیام‌های اطلاع‌رسانی مانند جزئیات پردازش نیز گزارش می‌شوند\&. گزینه \fI--debug\fP را می‌توان برای دریافت جزئیات بیشتر درباره فعالیت‌های درونی (مثلاً برای اهداف اشکال‌زدایی) به کار برد\&. سایر سطوح گزارش‌گیری را می‌توان با استفاده از گزینه \fI--log-level\fP انتخاب کرد\&. در حالت \fI--quiet\fP فقط خطاهای مهلک گزارش می‌شوند\&. در چنین رویدادهای خطای بسیار شدیدی، برنامه معمولاً متوقف خواهد شد\&. برای جزئیات بیشتر در مورد سطوح مختلف ثبت گزارش، به مستندات ماژول "oflog" مراجعه کنید\&. .PP در صورتی که خروجی گزارش‌گیری باید در فایل ذخیره شود (اختیاری با چرخش فایل گزارش)، به syslog (در یونیکس) یا event log (در ویندوز) فرستاده شود، می‌توان از گزینه \fI--log-config\fP استفاده کرد\&. این فایل پیکربندی همچنین امکان هدایت پیام‌های خاص به جریان خروجی مشخص و فیلتر کردن پیام‌ها بر اساس ماژول یا برنامه‌ای که در آن ایجاد شده‌اند را فراهم می‌کند\&. یک نمونه فایل پیکربندی در مسیر \fI/logger\&.cfg\fP ارائه شده است\&. .SH "خط فرمان (COMMAND LINE)" .PP تمامی ابزارهای خط فرمان از نمادگذاری زیر برای پارامترها استفاده می‌کنند: کروشه‌ها مقادیر اختیاری را در بر می‌گیرند (0-1)، سه نقطه پایانی نشان‌دهنده مجاز بودن چندین مقدار است (1-n)، و ترکیبی از هر دو به معنای 0 تا n مقدار است\&. .PP گزینه‌های خط فرمان با علامت پیشوند '+' یا '-' از پارامترها متمایز می‌شوند\&. معمولاً ترتیب و موقعیت گزینه‌های خط فرمان اختیاری است (یعنی می‌توانند در هر جایی ظاهر شوند)\&. با این حال، اگر گزینه‌ها مانعة‌الجمع باشند، آخرین گزینه از سمت راست اعمال می‌شود\&. این رفتار با قوانین ارزیابی استاندارد پوسته‌های متداول یونیکس مطابقت دارد\&. .PP علاوه بر این، یک یا چند فایل حاوی دستور را می‌توان با پیشوند '@' قبل از نام فایل مشخص کرد (برای مثال \fI@command\&.txt\fP)\&. چنین آرگومان فرمانی قبل از هرگونه ارزیابی بیشتر، با محتوای فایل متنی متناظر جایگزین می‌شود (فاصله‌های متوالی مگر در میان نقل‌قول‌ها، به عنوان یک جداکننده واحد در نظر گرفته می‌شوند)\&. لطفاً توجه داشته باشید که یک فایل فرمان نمی‌تواند شامل فایل فرمان دیگری باشد\&. این رویکرد ساده اما کارآمد امکان خلاصه کردن ترکیب‌های متداول گزینه‌ها/پارامترها را فراهم کرده و از طولانی و گیج‌کننده شدن خطوط فرمان جلوگیری می‌کند (یک نمونه در فایل \fI/dumppat\&.txt\fP ارائه شده است)\&. .SH "محیط (ENVIRONMENT)" .PP ابزار \fBdsr2html\fP تلاش می‌کند دیکشنری‌های داده دایکام مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند\&. به طور پیش‌فرض، یعنی اگر متغیر محیطی \fIDCMDICTPATH\fP تنظیم نشده باشد، فایل \fI/dicom\&.dic\fP بارگذاری خواهد شد مگر اینکه دیکشنری به صورت توکار در برنامه گنجانده شده باشد (پیش‌فرض برای ویندوز)\&. .PP رفتار پیش‌فرض ارجح است و از متغیر محیطی \fIDCMDICTPATH\fP باید تنها زمانی استفاده شود که دیکشنری‌های داده جایگزین مورد نیاز باشند\&. متغیر محیطی \fIDCMDICTPATH\fP ساختاری مشابه متغیر \fIPATH\fP در پوسته یونیکس دارد که در آن دو نقطه (":") ورودی‌ها را جدا می‌کند\&. در سیستم‌های ویندوز، از نقطه ویرگول (";") به عنوان جداکننده استفاده می‌شود\&. کد دیکشنری داده تلاش می‌کند هر فایل مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند\&. اگر هیچ دیکشنری داده‌ای بارگذاری نشود، یک خطا رخ خواهد داد\&. .PP بسته به گزینه‌های خط فرمان مشخص‌شده، ابزار \fBdsr2html\fP تلاش می‌کند جدول‌های نگاشت مجموعه نویسه را بارگذاری کند\&. این اتفاق زمانی رخ می‌دهد که DCMTK با کتابخانه oficonv کامپایل شده باشد (که حالت پیش‌فرض است) و جدول‌های نگاشت در کتابخانه به صورت توکار نباشند (پیش‌فرض در زمانی که DCMTK از کتابخانه‌های مشترک shared libraries استفاده می‌کند)\&. .PP فایل‌های جدول نگاشت در مسیر \fI\fP متعلق به DCMTK مورد انتظار هستند\&. متغیر محیطی \fIDCMICONVPATH\fP را می‌توان برای تعیین یک مسیر دیگر به کار برد\&. در صورت تعیین مسیری متفاوت، آن جدول‌های نگاشت جایگزین هرگونه جدول توکار نیز خواهند شد\&. .SH "فایل‌ها (FILES)" .PP \fI/report\&.css\fP \- نمونه فایل شیوه‌نامه آبشاری برای HTML .br \fI/reportx\&.css\fP \- نمونه فایل شیوه‌نامه آبشاری برای XHTML .SH "همچنین ببینید (SEE ALSO)" .PP \fBdcmconv\fP(1) .SH "حق نشر (COPYRIGHT)" .PP Copyright (C) 2000-2025 by OFFIS e\&.V\&., Escherweg 2, 26121 Oldenburg, Germany\&.