
یکپارچهسازی SDKهای نمایشگر سند با ذخیرهسازی ابری و پلتفرمهای همکاری

چرا نمایشگر سند بومی‑ابری برای برنامههای مدرن .NET مهم است
سازگاری چندپلتفرمی با یک هسته .NET واحد
شرکتها از ابزارهای سندی صرفاً دسکتاپی دور میشوند و تجربههای وب‑اول را که بر ویندوز اجرا میشوند، میپذیرند. موتور رندرینگ سمت‑سرور Doconut بر روی .NET 6 و بالاتر اجرا میشود و خروجی پیکسل‑پرفکتی یکسانی را صرفنظر از سیستمعامل پایه تضمین میکند. چون نمایشگر با استریمها کار میکند، میتوانید فایلی را از هر سطل ابری بکشید، مستقیماً به کامپوننت Doconut بدهید و صفحات یا تصویرهای کوچک رندرشده را بدون نوشتن فایل بر روی دیسک به کلاینت برگردانید.
کاهش تأخیر و پهنای باند
زمانی که یک سند در Azure Blob Storage ذخیره شده باشد، دانلود کل فایل به کلاینت فقط برای مشاهده صفحهٔ اول، تأخیر غیرضروری ایجاد میکند. Doconut از تولید تصویر کوچک بر‑تقاضا پشتیبانی میکند و به شما اجازه میدهد ابتدا پیشنمایش کمرزولوشن را درخواست کنید و رندر صفحهٔ کامل را فقط زمانی که کاربر اسکرول میکند، دریافت کنید. این الگو بهویژه برای نقشههای CAD بزرگ (DWG، DXF) که میتوانند صدها مگابایت باشند، ارزشمند است.
پردازش با اولویت امنیت
تمام کارهای سنگین روی سرور باقی میمانند. با استفاده از قابلیتهای پردازش سمت‑سرور Doconut، PDFهای محرمانه، قراردادهای قانونی یا سوابق پزشکی را داخل VNet خصوصی یا پشت فایروال سازمانی خود نگه میدارید. هیچ سرویس SaaS ثالثی فراخوانی نمیشود و نمایشگر هرگز بایتهای خام را به موتور سمت مرورگر نمیفرستد—فقط کاشیهای تصویری یا اسنیپتهای HTML که پشت صحنه تولید میکنید.
اتصال Doconut به سرویسهای محبوب ذخیرهسازی ابری
رویکرد کلی یکپارچهسازی
- دریافت استریم سند – از SDK ارائهدهندهٔ ابری انتخابی خود (Azure Blob، Amazon S3، Google Cloud Storage) استفاده کنید تا فایل را در یک شیء
Streamدانلود کنید. - ارسال استریم به Doconut – نمایشگر Doconut یک استریم به همراه گزینههای رندرینگ اختیاری میپذیرد. این کار نیاز به فایلهای موقت روی وبسرور را از بین میبرد.
- تولید توکن نمایشگر – Doconut توکنی برمیگرداند که سند باز شده را برای نشست جاری بهصورت یکتا شناسایی میکند. این توکن میتواند بهصورت JSON به فرانت‑اند بازگردانده شود و برای درخواستهای بعدی رندر صفحه یا حاشیهنویسی استفاده شود.
- رندر صفحات بر‑تقاضا – فرانت‑اند با توکن و شمارهٔ صفحهٔ موردنظر به نقطهٔ انتهایی Doconut فراخوانی میکند؛ Doconut تصویر یا قطعهٔ HTML را استریم میکند.
از آنجا که این جریان فقط بر پایهٔ استریمها است، تعویض کد Azure با Amazon S3 یا Google Cloud Storage تنها نیاز به تغییر فراخوانی SDK ابری برای ایجاد استریم دارد؛ بقیهٔ مسیر Doconut بدون تغییر میماند.
مدیریت ذخیرهسازی چندمستاجری
در یک DMS SaaS، هر مستاجر ممکن است سطل یا پیشوند جداگانهای داشته باشد. چون Doconut با استریمها کار میکند، میتوانید سطل صحیح را در زمان اجرا شناسایی کنید، سند را باز کنید و توکن را به ادعای کاربر فعلی محدود کنید. کش داخلی Doconut (IDistributedCache) میتواند برای استفاده از Redis یا Azure Cache for Redis پیکربندی شود تا درخواستهای مکرر برای همان صفحه از حافظه سرویس دریافت شوند نه از نو رندر شوند.
فعالسازی حاشیهنویسی زمان واقعی و OCR در جریانهای کاری همکاریمحور
افزونهٔ حاشیهنویسی: تبدیل یک نمایشگر ایستا به مرکز بررسی
Doconut با یک افزونهٔ حاشیهنویسی عرضه میشود که به کاربران اجازه میدهد متن را هایلایت کنند، یادداشتهای چسبان اضافه کنند یا شکلهای آزاد بکشند. پس از باز کردن سند، یک مدیر حاشیهنویسی را از نمایشگر دریافت میکنید، اشیای حاشیهنویسی را اضافه یا ویرایش میکنید و وضعیت حاشیهنویسی را بهصورت XML ذخیره مینمایید. ذخیرهٔ XML در کنار رکورد سند، تاریخچهٔ بازبینی نسخهبندیشده را امکانپذیر میکند و بارگذاری XML در بازگشاییهای بعدی، وضعیت بصری دقیق را بازمیگرداند.
جستجوی مبتنی بر OCR برای PDFهای اسکنشده
قراردادها، رسیدها یا تصاویر پزشکی اسکنشده اغلب بهصورت PDFهای فقط‑تصویری میآیند. افزونهٔ جستجو Doconut بهصورت خودکار OCR را روی سرور اجرا میکند هنگامی که در پیکربندی نمایشگر فعال شود. موتور OCR داخل استک سمت‑سرور قرار دارد، بنابراین متن استخراجشده هرگز از محیط محافظتشده شما خارج نمیشود. پس از اتمام OCR، میتوانید API جستجو را فراخوانی کنید تا شمارهٔ صفحات و مستطیلهای محدودهٔ مطابق را دریافت کنید؛ UI میتواند این مناطق را برجسته کند. چون OCR روی سرور اجرا میشود، میتوانید متن استخراجشده را در Azure Cognitive Search، Elasticsearch یا هر سرویس جستجوی دیگری ایندکس کنید تا جستجوی تمام‑متن فوری در کل مخزن شما فراهم شود.
همکاری از طریق توکنهای مشترک
در یکپارچهسازیهای Teams یا SharePoint، معمولاً یک توکن کوتاهمدت تولید میکنید که شناسهٔ سند، مجوزهای کاربر و زمانمهر را رمزگذاری میکند. رشتهٔ توکن Doconut که از فراخوانی OpenDocument برمیگردد میتواند در یک JWT بسته شود یا در یک ورودی کش ذخیره شود. وقتی کاربر دیگری روی لینک مشترک کلیک میکند، همان توکن برای بازآفرینی نمایشگر استفاده میشود و حاشیهنویسیها و لایههای OCR برای همهٔ افراد حفظ میشوند.
تبدیل ایمن سمت‑سرور و چاپ کنترلشده با Doconut
بسیاری از شرکتها نیاز دارند فایلهای Word، Excel یا CAD را به PDF برای بایگانی تبدیل کنند یا سیاست «چاپ‑فقط‑در‑صورت‑تأیید» را اعمال نمایند. افزونهٔ مبدل Doconut این سناریوها را بدون نیاز به Microsoft Office یا سرویسهای شخص ثالث مدیریت میکند. API تبدیل را روی سرور فراخوانی میکنید، مسیر فایل منبع (یا استریم) و فرمت خروجی موردنظر را میگذرانید. تبدیل بهصورت کامل روی بکاند انجام میشود و PDF تولیدشده میتواند در مخزن سند شما ذخیره شود.
پس از وجود PDF، میتوانید چاپ کنترلشده را مستقیماً در UI نمایشگر فعال کنید. Doconut روشی برای تنظیم مجوزهای چاپ برای یک توکن سند خاص فراهم میکند. وقتی کاربر دکمهٔ چاپ را میزند، Doconut پرچم را بررسی میکند و یا استریم تصویر چاپپذیر را رندر میکند یا پیام دوستانهٔ «چاپ غیرفعال است» را برمیگرداند. این رویکرد نیاز به JavaScript سفارشی برای مسدود کردن دیالوگ چاپ مرورگر را از بین میبرد.
ثبت فعالیت چاپ
از آنجا که درخواست چاپ از طریق میدلویر Doconut عبور میکند، میتوانید به خط لولهٔ لاگگیری ASP.NET Core وصل شوید تا ثبت کنید چه کسی چه چیزی و کی چاپ کرده است. ورودی حسابرسی را در یک جدول SQL ذخیره کنید یا به یک سیستم SIEM برای گزارشگیری انطباقی بفرستید—امری حیاتی برای راهحلهای فناوری حقوقی یا بهداشت که هر دسترسی به سند باید قابل ردیابی باشد.
بهترین شیوهها برای مقیاسپذیری و عملکرد در محیطهای چندپلتفرمی
- استفاده از کش توزیعشده – کش داخلی کاشیهای صفحهٔ Doconut میتواند توسط Redis، Azure Cache یا هر پیادهسازی
IDistributedCacheپشتیبانی شود. هش نسخهٔ سند را در کلیدهای کش بگنجانید تا از سرویسدهی تصاویر منقضیشده پس از تبدیل جلوگیری کنید. - کارهای پسزمینه برای تبدیل دستهای – هنگام بارگذاری یک آرشیو بزرگ، وظایف تبدیل را با Hangfire یا Azure Functions صف کنید. کلاس نمایشگر Doconut با کارگرهای
IHostedServiceسازگار است چون استریم میپذیرد و توکن برمیگرداند بدون نیاز به زمینهٔ HTTP. - تنظیم وضوح تصویر بر حسب دستگاه – دستگاههای موبایل از
ImageResolutionپایینتر (150‑200 DPI) بهره میبرند، در حالی که ایستگاههای کاری دسکتاپ میتوانند 300 DPI برای جزئیات CAD درخواست کنند. وضوح را بر اساس رشتهٔ کاربر‑عامل یا تنظیمات سمت کلاینت تنظیم کنید. - فعالسازی بارگذاری تنبل حاشیهنویسیها – XML حاشیهنویسی را در جدول جداگانهای ذخیره کنید و فقط زمانی که کاربر پنل حاشیهنویسی را باز میکند، بارگذاری کنید. این کار بار اولیه را کاهش میدهد و رندر صفحهٔ اول را سریعتر میکند.
- نظارت بر مصرف حافظه – رندر صفحات CAD با وضوح بالا میتواند حافظهٔ زیادی مصرف کند. GC .NET را در حالت سرور (
<gcServer enabled="true"/>) پیکربندی کنید و زمان‑انقضای معقولی برای جلوگیری از کارهای رندرینگ طولانیمدت تنظیم کنید. - بهکارگیری CDN برای داراییهای استاتیک – بستههای JavaScript و CSS نمایشگر استاتیک هستند. آنها را از Azure CDN، CloudFront یا Cloudflare سرو کنید تا میلیثانیههای اولیهٔ بارگذاری صفحه، بهویژه برای تیمهای توزیعشده جهانی، کاهش یابد.
با پیروی از این راهنما میتوانید هزاران کاربر همزمان را در سراسر قارهها پشتیبانی کنید و تأخیر زیر 200 ms برای صفحهٔ اول را حفظ کنید—معیاری که بسیاری از پورتالهای سازمانی هدفشان است.
شروع سریع با دورهٔ آزمایشی رایگان Doconut
سریعترین راه برای ارزیابی Doconut، دانلود دورهٔ آزمایشی رایگان از سایت رسمی، افزودن بسته NuGet به یک پروژهٔ جدید ASP.NET Core و پیروی از راهنمای شروع سریع است. در عرض چند دقیقه یک نمایشگر کاربردی خواهید داشت که میتواند اسناد را از Azure Blob بگیرد، حاشیهنویسی را فعال کند، جستجوی مبتنی بر OCR را اجرا کند و تبدیل ایمن سمت‑سرور را انجام دهد. برای دستورالعملهای گام‑به‑گام، به مستندات Doconut مراجعه کنید و امروز تجربهٔ سندی بومی‑ابری خود را بسازید.
آمادهاید تا گردش کارهای سندی خود را تحول بخشید؟ هماکنون برای دورهٔ آزمایشی رایگان Doconut ثبتنام کنید و ببینید چقدر آسان است که تجربههای سندی ایمن، جستجوپذیر و همکاری‑محور را در هر برنامهٔ .NET ارائه دهید.