dcmprscu(1) OFFIS DCMTK dcmprscu(1)

dcmprscu - کلاینت کاربری خدمات چاپ پروتکل DICOM

dcmprscu [options] [dcmfile-in...]

ابزار dcmprscu کلاس خدمات مدیریت چاپ پایه در مقیاس خاکستری DICOM (Basic Grayscale Print Management Service Class) را به عنوان SCU پیاده‌سازی می‌کند. این ابزار همچنین از کلاس‌های اختیاری SOP شامل جعبه حاشیه‌نویسی پایه (Basic Annotation Box) و جدول تبدیل نمایش (Presentation LUT) پشتیبانی می‌کند. این ابزار برای استفاده در نمایشگر DICOMscope در نظر گرفته شده است.

ابزار dcmprscu وظایف چاپ کامل متشکل از یک شیء چاپ ذخیره‌شده (Stored Print) و یک یا چند شیء تصویر خاکستری نسخه چاپی (Hardcopy Grayscale) را دریافت کرده و آن‌ها را به چاپگر ارسال (Spool) می‌کند. هیچ تلاشی برای بررسی اینکه آیا مشخصه‌های تعریف‌شده در شیء Stored Print توسط Print SCP پشتیبانی می‌شوند یا خیر انجام نمی‌شود. با این حال، در صورتی که خدمات اختیاری Annotation یا Presentation LUT با موفقیت با Print SCP مذاکره نشده باشند، اسپولر چاپ تلاشی برای استفاده از آن‌ها نخواهد کرد.

ابزار dcmprscu مشخصات چاپگری را که قرار است با آن ارتباط برقرار کند، از فایل پیکربندی می‌خواند. بسته به پشتیبانی چاپگر از Presentation LUT، در صورت نیاز هرگونه Presentation LUT موجود در وظیفه چاپ، پیش از ارسال به چاپگر بر روی تصاویر نسخه چاپی رندر خواهد شد. اگر چاپگر از ارسال تصویر با ۱۲ بیت در هر پیکسل (طبق فایل پیکربندی) پشتیبانی نکند، تصاویر نسخه چاپی مقیاس خاکستری پیش از ارسال به چاپگر به ۸ بیت در هر پیکسل کاهش نمونه (Down-sample) داده می‌شوند.

ابزار dcmprscu می‌تواند در «حالت چاپگر» (printer mode) اجرا شود که در این حالت باید نام فایل یک شیء Stored Print ارسال گردد، یا در «حالت اسپولر» (spool mode) که در این حالت دستورات به صورت دوره‌ای از یک دایرکتوری اسپول خوانده می‌شوند.

dcmfile-in   فایل(های) چاپ ذخیره‌شده (stored print) برای اسپول شدن ("-" برای ورودی استاندارد stdin)

-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 برای ثبت‌کننده وقایع

--noprint
  عدم ایجاد پرینت فیزیکی (عدم ارسال n-action-rq)
--session-print
  ارسال n-action-rq برای نشست فیلم (به جای جعبه فیلم film box)
--monochrome1
  انتقال تصاویر پایه مقیاس خاکستری در حالت MONOCHROME1

+p   --print
       حالت چاپگر، چاپ فایل(ها) و خاتمه برنامه (پیش‌فرض)
+s   --spool  [n]ame: string
       حالت اسپولر، استفاده از پیشوند وظیفه n

-c   --config  [f]ilename: string
       پردازش با استفاده از تنظیمات فایل پیکربندی
-p   --printer  [n]ame: string (پیش‌فرض: اولین چاپگر در فایل cfg)
       انتخاب چاپگر با شناسه n از فایل cfg
+d   --dump
       تخلیه و نمایش تمام پیام‌های DIMSE

--sleep  [d]elay: integer (پیش‌فرض: ۱)
  توقف به مدت d ثانیه بین بررسی‌های اسپولر

--copies  [v]alue: integer (1..100, پیش‌فرض: ۱)
  تنظیم تعداد نسخه‌های کپی بر روی v
--medium-type  [v]alue: string
  تنظیم نوع رسانه چاپ بر روی v
--destination  [v]alue: string
  تنظیم مقصد فیلم بر روی v
--label  [v]alue: string
  تنظیم برچسب نشست فیلم بر روی v
--priority  [v]alue: string
  تنظیم اولویت چاپ بر روی v
--owner  [v]alue: string
  تنظیم شناسه مالک نشست فیلم بر روی v

سطح خروجی ثبت وقایع ابزارهای مختلف خط فرمان و کتابخانه‌های زیرین می‌تواند توسط کاربر تعیین شود. به‌طور پیش‌فرض، تنها خطاها و هشدارها در جریان خطای استاندارد نوشته می‌شوند. با استفاده از گزینه --verbose پیام‌های اطلاعاتی مانند جزئیات پردازش نیز گزارش می‌شوند. گزینه --debug می‌تواند برای دریافت جزئیات بیشتر درباره فعالیت‌های داخلی، برای مثال جهت مقاصد اشکال‌زدایی استفاده شود. سایر سطوح ثبت وقایع را می‌توان با استفاده از گزینه --log-level انتخاب کرد. در حالت --quiet تنها خطاهای مهلک گزارش می‌شوند. در چنین شرایط خطای بسیار شدیدی، برنامه معمولاً خاتمه می‌یابد. برای جزئیات بیشتر درباره سطوح مختلف ثبت وقایع، به مستندات ماژول "oflog" مراجعه کنید.

در صورتی که خروجی ثبت وقایع باید در فایل نوشته شود (اختیاراً همراه با چرخش فایل وقایع)، یا به syslog (یونیکس) یا event log (ویندوز) فرستاده شود، گزینه --log-config می‌تواند استفاده شود. این فایل پیکربندی همچنین امکان هدایت تنها پیام‌های خاص به یک جریان خروجی مشخص و فیلتر کردن برخی پیام‌ها بر اساس ماژول یا برنامه‌ای که تولید شده‌اند را فراهم می‌کند. یک فایل پیکربندی نمونه در <etcdir>/logger.cfg ارائه شده است.

تمام ابزارهای خط فرمان از نمادگذاری زیر برای پارامترها استفاده می‌کنند: کروشه‌ها مقادیر اختیاری (۰-۱) را احاطه می‌کنند، سه نقطه انتهایی نشان می‌دهد که چند مقدار مجاز است (۱-n)، و ترکیبی از هر دو به معنی ۰ تا n مقدار است.

گزینه‌های خط فرمان به ترتیب با یک علامت پیشوند '+' یا '-' از پارامترها متمایز می‌شوند. معمولاً ترتیب و موقعیت گزینه‌های خط فرمان اختیاری است (یعنی می‌توانند در هر جایی ظاهر شوند). با این حال، اگر گزینه‌ها مانعة‌الجمع باشند، راست‌ترین مورد به کار گرفته می‌شود. این رفتار با قواعد ارزیابی استاندارد در شل‌های متداول یونیکس مطابقت دارد.

علاوه بر این، یک یا چند فایل دستور را می‌توان با استفاده از علامت '@' به عنوان پیشوند نام فایل مشخص کرد (مانند @command.txt). چنین آرگومان دستوری پیش از هر ارزیابی بیشتر، با محتوای فایل متنی مربوطه جایگزین می‌شود (فاصله‌های متوالی به عنوان یک جداکننده منفرد در نظر گرفته می‌شوند مگر اینکه میان دو علامت نقل قول قرار گیرند). لطفاً توجه داشته باشید که یک فایل دستور نمی‌تواند شامل فایل دستور دیگری باشد. این رویکرد ساده اما مؤثر امکان خلاصه کردن ترکیب‌های متداول گزینه‌ها/پارامترها را فراهم کرده و از خط فرمان‌های طولانی و گیج‌کننده جلوگیری می‌کند (یک مثال در فایل <datadir>/dumppat.txt ارائه شده است).

ابزار dcmprscu تلاش خواهد کرد واژه‌نامه‌های داده DICOM مشخص‌شده در متغیر محیطی DCMDICTPATH را بارگذاری کند. به‌طور پیش‌فرض، یعنی اگر متغیر محیطی DCMDICTPATH تنظیم نشده باشد، فایل <datadir>/dicom.dic بارگذاری خواهد شد مگر اینکه واژه‌نامه درون خود برنامه تعبیه شده باشد (پیش‌فرض برای ویندوز).

رفتار پیش‌فرض ارجحیت دارد و از متغیر محیطی DCMDICTPATH تنها زمانی باید استفاده شود که واژه‌نامه‌های داده جایگزین مورد نیاز باشند. متغیر محیطی DCMDICTPATH قالبی مشابه متغیر PATH در پوسته یونیکس دارد به این صورت که علامت دونقطه (":") ورودی‌ها را جدا می‌کند. در سیستم‌های ویندوز، از یک نقطه‌ویرگول (";") به عنوان جداکننده استفاده می‌شود. کد واژه‌نامه داده تلاش خواهد کرد تا هر فایل مشخص‌شده در متغیر محیطی DCMDICTPATH را بارگذاری کند. بارگذاری نشدن هیچ واژه‌نامه داده‌ای یک خطا محسوب می‌شود.

<etcdir>/dcmpstat.cfg, <etcdir>/printers.cfg - فایل‌های پیکربندی نمونه

dcmprscp(1)

Copyright (C) 1999-2025 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.

Thu Jul 9 2026 18:43:40 Version 3.7.0