یکپارچه‌سازی SDKهای نمایشگر سند با ذخیره‌سازی ابری و پلتفرم‌های همکاری
← Back to Blog9 min read

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

یکپارچه‌سازی SDKهای نمایشگر سند با ذخیره‌سازی ابری و پلتفرم‌های همکاری
یکپارچه‌سازی SDKهای نمایشگر سند با ذخیره‌سازی ابری و پلتفرم‌های همکاری
یکپارچه‌سازی یک SDK نمایشگر سند با ذخیره‌سازی ابری و پلتفرم‌های همکاری به شما امکان می‌دهد تجربه‌های سندی یکپارچه، ایمن و قابل جستجو را مستقیماً از برنامهٔ .NET خود ارائه دهید. با Doconut—یک نمایشگر سند جهانی برای بک‌اندهای .NET—می‌توانید PDFها، فایل‌های Office، نقشه‌های CAD و تصاویر را به‌صورت بومی رندر کنید، جستجوی مبتنی بر OCR اضافه کنید، حاشیه‌نویسی زمان واقعی را فعال کنید و چاپ را کنترل کنید، در حالی که داده‌ها در داخل ابر یا محیط داخلی انتخابی شما باقی می‌مانند. این راهنما به توسعه‌دهندگان ارشد و معماران نرم‌افزار نشان می‌دهد چگونه Doconut را به Azure Blob، Amazon S3 یا Google Cloud Storage متصل کنند و چگونه نمایشگر را از طریق پورتال‌های همکاری مانند Microsoft Teams، SharePoint یا فضاهای کاری سفارشی مبتنی بر React در دسترس قرار دهند.


چرا نمایش سند بومی ابری برای برنامه‌های مدرن .NET مهم است

سازگاری چندپلتفرمی با یک هسته .NET واحد

شرکت‌ها از ابزارهای سندی فقط دسکتاپی دور می‌شوند و به تجربه‌های وب‑اولویت‌دار که روی ویندوز اجرا می‌شوند، روی می‌آورند. موتور رندر سمت سرور Doconut بر روی .NET 6 و بالاتر اجرا می‌شود و خروجی پیکسل‑پرفکتی را صرف‌نظر از سیستم‌عامل زیرین تضمین می‌کند. چون نمایشگر با جریان‌ها کار می‌کند، می‌توانید فایلی را از هر bucket ابری بگیرید، مستقیماً به کامپوننت Doconut بدهید و صفحات یا تصویرهای کوچک رندر شده را بدون نوشتن فایل روی دیسک به کلاینت بازگردانید.

کاهش تأخیر و پهنای باند

هنگامی که سندی در Azure Blob Storage قرار دارد، دانلود کل فایل به کلاینت فقط برای مشاهدهٔ صفحهٔ اول تأخیر غیرضروری ایجاد می‌کند. Doconut از تولید تصویر کوچک بر‑تقاضا پشتیبانی می‌کند و به شما اجازه می‌دهد ابتدا پیش‌نمایش با وضوح پایین درخواست کنید و رندر صفحهٔ کامل را فقط زمانی که کاربر اسکرول می‌کند، دریافت کنید. این الگو به‌ویژه برای نقشه‌های CAD بزرگ (DWG، DXF) که می‌توانند صدها مگابایت باشند، ارزشمند است.

پردازش با اولویت امنیت

تمام کارهای سنگین بر روی سرور می‌مانند. با استفاده از قابلیت‌های پردازش سمت سرور Doconut، PDFهای محرمانه، قراردادهای قانونی یا سوابق پزشکی را داخل VNet خصوصی یا پشت فایروال شرکتی نگه می‌دارید. هیچ سرویس SaaS شخص ثالثی فراخوانی نمی‌شود و نمایشگر هرگز بایت‌های خام را به موتور سمت مرورگر نمی‌فرستد—فقط کاشی‌های تصویر یا قطعه‌های HTML که پشت صحنه تولید می‌کنید.


اتصال Doconut به سرویس‌های محبوب ذخیره‌سازی ابری

رویکرد کلی یکپارچه‌سازی

  1. دریافت جریان سند — از SDK ارائه‌دهنده ابری انتخابی خود (Azure Blob، Amazon S3، Google Cloud Storage) برای دانلود فایل به یک شیء Stream استفاده کنید.
  2. ارسال جریان به Doconut — نمایشگر Doconut یک جریان را به همراه گزینه‌های رندر اختیاری می‌پذیرد. این کار نیاز به فایل‌های موقت بر روی سرور وب را از بین می‌برد.
  3. تولید توکن نمایشگر — Doconut توکنی برمی‌گرداند که به‌طور یکتا سند باز شده را برای جلسه جاری شناسایی می‌کند. این توکن می‌تواند به‌صورت JSON به فرانت‌اند بازگردانده شود و برای درخواست‌های رندر صفحه یا حاشیه‌نویسی بعدی استفاده شود.
  4. رندر صفحات به‌صورت درخواست‌شده — فرانت‌اند با توکن و شماره صفحه موردنظر به نقطه انتهایی Doconut فراخوانی می‌کند؛ Doconut یک تصویر یا قطعه HTML را به‌صورت جریان باز می‌گرداند.

از آنجا که جریان کار فقط بر روی جریان‌ها وابسته است، تعویض کد Azure با Amazon S3 یا Google Cloud Storage تنها نیاز به تغییر فراخوانی cloud‑SDK دارد که جریان را ایجاد می‌کند؛ بقیهٔ مسیر Doconut همان‌گونه باقی می‌ماند.

مدیریت ذخیره‌سازی چندمستاجری

در یک DMS SaaS، هر مستاجر ممکن است یک bucket یا پیشوند جداگانه داشته باشد. از آنجا که Doconut با جریان‌ها کار می‌کند، می‌توانید bucket صحیح را در زمان اجرا شناسایی کنید، سند را باز کنید و توکن را به ادعای کاربر فعلی محدود کنید. کش داخلی Doconut (IDistributedCache) می‌تواند به‌گونه‌ای پیکربندی شود که از Redis یا Azure Cache for Redis استفاده کند، به‌طوری که درخواست‌های مکرر برای همان صفحه از حافظه سرویس‌گیری کنند نه اینکه دوباره رندر شوند.


فعال‌سازی حاشیه‌نویسی زمان واقعی و OCR در جریان‌های کاری همکاری‌محور

افزونه حاشیه‌نویسی: تبدیل یک نمایشگر ثابت به یک مرکز بازبینی

Doconut همراه با Annotation Plugin می‌آید که به کاربران اجازه می‌دهد متن را برجسته کنند، یادداشت‌های چسبان اضافه کنند یا اشکال آزاد رسم کنند. پس از باز شدن سند، یک مدیر حاشیه‌نویسی را از نمایشگر دریافت می‌کنید، اشیای حاشیه‌نویسی را اضافه یا اصلاح می‌کنید و وضعیت حاشیه‌نویسی را به‌صورت XML ذخیره می‌نمایید. ذخیرهٔ XML همراه با رکورد سند، تاریخچه‌های بازبینی نسخه‌بندی‌شده را امکان‌پذیر می‌کند و بارگذاری XML در بازگشایی‌های بعدی، وضعیت بصری دقیق را بازمی‌گرداند.

جستجوی مبتنی بر OCR برای PDFهای اسکن‌شده

قراردادها، رسیدها یا تصاویر پزشکی اسکن‌شده اغلب به‌صورت PDFهای فقط‑تصویری می‌آیند. Search Plugin Doconut به‌صورت خودکار OCR را بر روی سرور اجرا می‌کند وقتی آن را در پیکربندی نمایشگر فعال کنید. موتور OCR درون استک سمت سرور قرار دارد، بنابراین متن استخراج‌شده هرگز از محیط محافظت‌شده شما خارج نمی‌شود. پس از اتمام OCR، می‌توانید API جستجو را فراخوانی کنید تا شماره صفحات مطابقت‌دار و مستطیل‌های محدودکننده را دریافت کنید، که UI می‌تواند آنها را برجسته کند. از آنجا که OCR بر روی سرور اجرا می‌شود، می‌توانید متن استخراج‌شده را در Azure Cognitive Search، Elasticsearch یا هر سرویس جستجوی دیگری ایندکس کنید تا جستجوی کامل متن به‌صورت آنی در تمام مخزن شما فراهم شود.

همکاری از طریق توکن‌های اشتراکی

در ادغام‌های Teams یا SharePoint، معمولاً یک توکن کوتاه‌مدت تولید می‌کنید که شناسه سند، مجوزهای کاربر و یک زمان‌مهر را رمزگذاری می‌کند. رشتهٔ توکن Doconut که از فراخوانی OpenDocument برمی‌گردد می‌تواند در یک JWT بسته‌بندی شود یا در یک ورودی کش ذخیره شود. وقتی کاربر دیگری بر لینک اشتراکی کلیک می‌کند، همان توکن برای بازسازی نمایشگر استفاده می‌شود و حاشیه‌نویسی‌ها و لایه‌های OCR را برای همهٔ افراد حفظ می‌کند.


تبدیل امن سمت سرور و چاپ کنترل‌شده با Doconut

بسیاری از شرکت‌ها نیاز دارند فایل‌های Word، Excel یا CAD ورودی را به PDF برای بایگانی تبدیل کنند یا سیاست «چاپ فقط در صورت تأیید» را اعمال کنند. Converter Plugin Doconut این سناریوها را بدون نیاز به Microsoft Office یا سرویس‌های شخص ثالث مدیریت می‌کند. شما API تبدیل را بر روی سرور فراخوانی می‌کنید و مسیر فایل منبع (یا جریان) و قالب خروجی موردنظر را می‌گذارید. تبدیل به‌صورت کامل در بک‌اند اجرا می‌شود و PDF تولید می‌کند که می‌تواند در مخزن سند شما ذخیره شود.

پس از وجود PDF، می‌توانید Controlled Printing را مستقیماً در UI نمایشگر فعال کنید. Doconut یک متد برای تنظیم مجوزهای چاپ برای توکن سند خاصی ارائه می‌دهد. وقتی کاربر دکمه چاپ را می‌کشد، Doconut پرچم را بررسی می‌کند و یا یک جریان تصویر قابل چاپ رندر می‌کند یا پیام دوستانه «چاپ غیرفعال است» را برمی‌گرداند. این رویکرد نیاز به JavaScript سفارشی برای مسدود کردن دیالوگ چاپ مرورگر را از بین می‌برد.

حسابرسی فعالیت چاپ

از آنجا که درخواست چاپ از طریق میدل‌ویر Doconut عبور می‌کند، می‌توانید به خط لولهٔ لاگ‌گیری ASP.NET Core متصل شوید تا ثبت کنید چه کسی چه چیزی و چه زمانی چاپ کرده است. ورودی حسابرسی را در یک جدول SQL ذخیره کنید یا به یک سیستم SIEM برای گزارش‌گیری انطباقی ارسال کنید — که برای فناوری حقوقی یا راه‌حل‌های بهداشتی که هر دسترسی به سند باید قابل ردیابی باشد، حیاتی است.


بهترین شیوه‌ها برای مقیاس‌پذیری و عملکرد در محیط‌های چندپلتفرمی

  1. استفاده از کش توزیع‌شده — کش داخلی صفحه‑Tile Doconut می‌تواند توسط Redis، Azure Cache یا هر پیاده‌سازی IDistributedCache پشتیبانی شود. هش نسخه سند را در کلیدهای کش بگنجانید تا از ارائه تصاویر منقضی پس از تبدیل جلوگیری شود.
  2. استفاده از کارهای پس‌زمینه برای تبدیل دسته‌ای — هنگام وارد کردن یک آرشیو بزرگ، وظایف تبدیل را با Hangfire یا Azure Functions در صف قرار دهید. کلاس نمایشگر Doconut با کارگران IHostedService کار می‌کند زیرا جریان‌ها را می‌پذیرد و توکن‌ها را برمی‌گرداند بدون نیاز به زمینهٔ HTTP.
  3. تنظیم وضوح تصویر بر حسب دستگاه — دستگاه‌های موبایل از ImageResolution پایین‌تر (150‑200 DPI) بهره می‌برند، در حالی که ایستگاه‌های کاری دسکتاپ می‌توانند 300 DPI برای جزئیات CAD درخواست کنند. وضوح را بر اساس رشتهٔ user‑agent یا تنظیمات سمت کلاینت تنظیم کنید.
  4. فعال‌سازی بارگذاری تنبل حاشیه‌نویسی‌ها — XML حاشیه‌نویسی را در جدول جداگانه‌ای ذخیره کنید و فقط زمانی که کاربر پنل حاشیه‌نویسی را باز می‌کند، بارگذاری کنید. این کار بار اولیه را کاهش داده و رندر صفحهٔ اول را سرعت می‌بخشد.
  5. نظارت بر مصرف حافظه — رندر صفحات CAD با وضوح بالا می‌تواند حافظه‌بر باشد. GC .NET را برای استفاده از حالت سرور در محیط تولید پیکربندی کنید (<gcServer enabled="true"/>) و زمان‌پایان معقولی تنظیم کنید تا از کارهای رندر بی‌پایان جلوگیری شود.
  6. استفاده از CDN برای دارایی‌های استاتیک — بسته‌های JavaScript و CSS نمایشگر استاتیک هستند. آنها را از Azure CDN، CloudFront یا Cloudflare سرو کنید تا چند میلی‌ثانیه از زمان بارگذاری صفحهٔ اولیه کم شود، به‌ویژه برای تیم‌های توزیع‌شده جهانی.

با پیروی از این راهنماها، می‌توانید هزاران کاربر همزمان در سراسر قاره‌ها را پشتیبانی کنید در حالی که تأخیر صفحهٔ اول زیر ۲۰۰ ms باقی می‌ماند — معیاری که بسیاری از پورتال‌های سازمانی هدف‌گذاری می‌کنند.


شروع سریع با دوره آزمایشی رایگان Doconut

سریع‌ترین راه برای ارزیابی Doconut این است که دوره آزمایشی رایگان را از سایت رسمی دانلود کنید، بسته NuGet را به یک پروژهٔ جدید ASP.NET Core اضافه کنید و راهنمای شروع سریع را دنبال کنید. در عرض چند دقیقه یک نمایشگر کاربردی خواهید داشت که می‌تواند اسناد را از Azure Blob دریافت کند، حاشیه‌نویسی را فعال کند، جستجوی مبتنی بر OCR را اجرا کند و تبدیل امن سمت سرور را انجام دهد. برای دستورالعمل‌های گام‌به‌گام، به مستندات Doconut مراجعه کنید و امروز تجربه سند بومی ابری خود را بسازید.

آیا آماده‌اید تا گردش کارهای سندی خود را تحول بخشید؟
همین حالا برای دوره آزمایشی رایگان Doconut ثبت‌نام کنید و ببینید چقدر آسان است که تجربه‌های سندی ایمن، قابل جستجو و همکاری‌پذیر را در هر برنامهٔ .NET ارائه دهید.

#document viewer#.NET#cloud integration#collaboration#OCR#نمایشگر سند#یکپارچه‌سازی ابری#همکاری