diff --git a/html/arabic/net/html-extensions-and-conversions/_index.md b/html/arabic/net/html-extensions-and-conversions/_index.md index 980eb70131..b599eaff01 100644 --- a/html/arabic/net/html-extensions-and-conversions/_index.md +++ b/html/arabic/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ url: /ar/net/html-extensions-and-conversions/ تعلم كيفية حفظ مستند HTML كملف ZIP باستخدام Aspose.HTML في C# خطوة بخطوة. ### [حفظ HTML إلى ZIP في C# – مثال كامل في الذاكرة](./save-html-to-zip-in-c-complete-in-memory-example/) تعلم كيفية حفظ مستند HTML كملف ZIP في الذاكرة باستخدام C# ومكتبة Aspose.HTML. +### [حفظ HTML كملف ZIP – دليل كامل Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +دليل خطوة بخطوة لحفظ مستند HTML كملف ZIP باستخدام Aspose.HTML في C#. ## خاتمة diff --git a/html/arabic/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/arabic/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..82b13e0f64 --- /dev/null +++ b/html/arabic/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: تعلم كيفية حفظ HTML كأرشيف ZIP باستخدام Aspose.HTML. يتضمن معالج موارد + مخصصًا وكودًا خطوة بخطوة لتحويل HTML إلى ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: ar +lastmod: 2026-07-08 +og_description: كيفية حفظ HTML كأرشيف ZIP باستخدام Aspose.HTML. اتبع هذا الدليل لاستخدام + معالج موارد مخصص، وتحويل HTML إلى ZIP، وإنشاء ملفات HTML مضغوطة بصيغة ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: كيفية حفظ HTML كملف ZIP – دليل Aspose.HTML الكامل +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: كيفية حفظ HTML كملف ZIP – دليل Aspose.HTML الكامل +url: /ar/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# كيفية حفظ HTML كملف ZIP – دليل Aspose.HTML الكامل + +هل تساءلت يوماً **كيف تحفظ html** في حزمة واحدة محمولة؟ ربما تحتاج إلى شحن صفحة ويب مع جميع مواردها، أو تريد أرشفة تقارير مُولَّدة دون نشر الملفات في أماكن مختلفة. في كلتا الحالتين، الحل أبسط مما تتصور عندما تستخدم Aspose.HTML. + +في هذا الدرس سنستعرض مثالاً عملياً **يحوِّل html إلى zip**، يستخدم **معالج موارد مخصص**، وفي النهاية يوضح لك بالضبط كيفية **إنشاء zip html** يمكنك فك ضغطه في أي مكان. بنهاية الدرس ستحصل على برنامج C# جاهز للتنفيذ يقوم بكل الخطوات في أربع مراحل مرتبة. + +## المتطلبات المسبقة + +- .NET 6.0 أو أحدث (الكود يعمل أيضاً مع .NET Framework 4.7+) +- رخصة Aspose.HTML (الإصدار التجريبي المجاني يكفي للاختبار) +- بيئة تطوير مثل Visual Studio 2022 أو VS Code مع إضافات C# +- إلمام أساسي بـ C# async/await (ليس ضرورياً لكن مفيد) + +> **نصيحة محترف:** إذا كنت جديداً على Aspose.HTML، احصل على حزمة NuGet `Aspose.Html` وأضفها إلى مشروعك قبل البدء. + +## الخطوة 1: إعداد المشروع + +أولاً، أنشئ تطبيق console جديد: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +هذا كل شيء—لا توجد تبعيات إضافية. حزمة `Aspose.Html` تحتوي بالفعل على الفئات التي سنحتاجها لـ **كيفية حفظ html** كأرشيف ZIP. + +## الخطوة 2: تنفيذ معالج موارد مخصص + +عند حفظ Aspose.HTML لمستند، يحتاج إلى مكان لتخزين الموارد المرتبطة (صور، CSS، خطوط). بشكل افتراضي يكتبها إلى نظام الملفات، لكن يمكننا اعتراض هذه العملية باستخدام **معالج موارد مخصص**. يمنحنا ذلك سيطرة كاملة على مكان وضع كل مورد—مثالي لإنشاء ملف ZIP نظيف. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**لماذا نستخدم معالجًا مخصصًا؟** +- **المرونة:** يمكنك اختيار ضغط، تشفير، أو إعادة تسمية الموارد أثناء المعالجة. +- **الأداء:** الكتابة إلى الذاكرة تتجنب عمليات I/O على القرص عندما تحتاج فقط إلى أرشيف مؤقت. +- **التحكم:** تحدد بنية المجلدات داخل ZIP بدقة، وهو مفيد عندما **تنشئ zip html** للأنظمة المستهدفة. + +## الخطوة 3: بناء مستند HTML + +الآن سننشئ سلسلة HTML بسيطة. في مشروع حقيقي ربما تقوم بتحميلها من ملف، قاعدة بيانات، أو توليدها ديناميكياً. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +إذا كان لديك موارد خارجية (صور، ملفات CSS)، تأكد فقط من أن عناوين URL الخاصة بها قابلة للوصول—ستقوم Aspose بطلبها عبر **معالج الموارد المخصص** الذي عرفناه مسبقاً. + +## الخطوة 4: تكوين خيارات الحفظ لـ **تحويل HTML إلى ZIP** + +توفر Aspose.HTML عدة فئات فرعية من `HTMLSaveOptions`. لأرشيف ZIP نستخدم الفئة الأساسية `HTMLSaveOptions` ونعيّن خاصية `OutputStorage` إلى `MyHandler`. هذا يخبر المكتبة بـ **تحويل html إلى zip** باستخدام التيارات التي نوفرها. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +يمكنك أيضاً تعديل `saveOptions`: + +- `saveOptions.Compressed = true;` – يفعّل ضغط ZIP (مفعل افتراضياً). +- `saveOptions.ExportResources = true;` – يضمن تضمين الموارد المرتبطة. + +هذه التعديلات اختيارية لكن غالباً ما تكون مفيدة عندما **تنشئ zip html** للتوزيع. + +## الخطوة 5: حفظ أرشيف ZIP – **كيفية حفظ HTML** بشكل صحيح + +أخيراً، نستدعي `Save`. الوسيط الأول هو مسار ملف ZIP الناتج، والوسيط الثاني هو `HTMLSaveOptions` التي قمنا بتكوينها. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +عند تشغيل البرنامج (`dotnet run`)، ستظهر لك ملف `output.zip` بجوار الملف التنفيذي. افتحه بأي مدير أرشيف وستجد: + +- `index.html` – العلامات الأصلية. +- أي موارد (صور، CSS) تم الإشارة إليها، كل منها كملف منفصل داخل الأرشيف. + +هذا هو سير عمل **كيفية حفظ html** الكامل، من العلامات الخام إلى حزمة ZIP محمولة. + +## إضافي: معالجة الصور والموارد الخارجية + +إذا كان HTML يحتوي على ``، سيتلقى `MyHandler` استدعاءً بـ `info.Uri` يشير إلى `logo.png`. يمكنك تعديل المعالج لجلب الملف من القرص أو من عنوان URL بعيد: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +هذا المقتطف يوضح كيف يمكنك توسيع **معالج الموارد المخصص** ليتناسب مع أي استراتيجية تخزين، مما يجعل ناتج ZIP يعكس بنية أصول مشروعك بدقة. + +## الأخطاء الشائعة وكيفية تجنّبها + +| المشكلة | السبب | الحل | +|-------|----------------|-----| +| **ZIP فارغ** | `OutputStorage` تُعيد تدفقًا مغلقًا أو `null`. | تأكد دائماً من إرجاع `MemoryStream` أو `FileStream` جديد قابل للكتابة. | +| **غياب الصور** | الموارد محجوبة بسبب CORS أو غير متوفرة محليًا. | قم بتحميل الأصول مسبقًا أو عدّل `HandleResource` لتزويدها يدويًا. | +| **حجم ZIP كبير** | الموارد غير مضغوطة. | عيّن `saveOptions.Compressed = true;` (الإعداد الافتراضي) أو اضغط التيارات بنفسك قبل الإرجاع. | +| **أسماء ملفات غير صحيحة** | المعالج الافتراضي يطلق أسماء GUID للملفات. | عدّل `ResourceInfo.Name` داخل `HandleResource` وأعد تسمية التدفق وفقًا لذلك. | + +معالجة هذه القضايا تضمن تجربة **تحويل html إلى zip** سلسة في كل مرة. + +## مثال كامل يعمل + +فيما يلي البرنامج الكامل الذي يمكنك نسخه‑لصقه في `Program.cs`. يَـُـترجم ويعمل فورًا. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**الناتج المتوقع:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +افتح `output.zip` وسترى ملف `index.html` بالإضافة إلى أي موارد أضفتها. + +## الخاتمة + +لقد استعرضنا معًا **كيفية حفظ html** كأرشيف ZIP باستخدام Aspose.HTML، مع **معالج موارد مخصص** يمنحك تحكمًا كاملاً في عملية التعبئة. الآن تعرف كيف **تحول html إلى zip**، ويمكنك بسهولة تعديل الكود لإنشاء ملفات **zip html** للبريد الإلكتروني، الوثائق غير المتصلة بالإنترنت، أو نشر المواقع الثابتة. + +### ما الخطوة التالية؟ + +- **إضافة ملفات CSS/JS**: وسّع `MyHandler` لجلب ملفات الأنماط والسكريبتات من مجلد مشروعك. +- **تشفير ZIP**: غلف `MemoryStream` داخل `CryptoStream` قبل إرجاعه. +- **معالجة دفعات**: كرّر العملية على مجموعة من سلاسل HTML وأنشئ ZIP لكل صفحة. + +لا تتردد في التجربة، واترك تعليقًا إذا واجهت أي صعوبات. برمجة سعيدة! + +## ما الذي يجب أن تتعلمه بعد ذلك؟ + +الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات التي تم توضيحها في هذا الدليل. كل مورد يتضمن أمثلة شاملة مع شروحات خطوة‑بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/arabic/net/rendering-html-documents/_index.md b/html/arabic/net/rendering-html-documents/_index.md index 7d8baa5d70..43ea848c55 100644 --- a/html/arabic/net/rendering-html-documents/_index.md +++ b/html/arabic/net/rendering-html-documents/_index.md @@ -43,13 +43,18 @@ url: /ar/net/rendering-html-documents/ ### [عرض HTML بصيغة PNG في .NET باستخدام Aspose.HTML](./render-html-as-png/) تعلم كيفية العمل باستخدام Aspose.HTML لـ .NET: التعامل مع HTML وتحويله إلى تنسيقات مختلفة والمزيد. انغمس في هذا البرنامج التعليمي الشامل! +### [كيفية تمكين التنعيم عند تصيير HTML إلى PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +تعلم كيفية تمكين خاصية التنعيم أثناء تحويل مستندات HTML إلى صور PNG باستخدام Aspose.HTML في .NET. + ### [كيفية تحويل HTML إلى PNG – دليل C# كامل](./how-to-render-html-as-png-complete-c-guide/) تعلم خطوة بخطوة كيفية تحويل مستندات HTML إلى صور PNG باستخدام Aspose.HTML وC# في هذا الدليل الشامل. + ### [كيفية استخدام Aspose لتحويل HTML إلى PNG – دليل خطوة بخطوة](./how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) تعلم كيفية تحويل مستندات HTML إلى صور PNG باستخدام Aspose.HTML في .NET خطوة بخطوة. ### [إنشاء PNG من HTML – دليل كامل للتصيير باستخدام C#](./create-png-from-html-full-c-rendering-guide/) تعلم كيفية تحويل صفحات HTML إلى صور PNG باستخدام Aspose.HTML في دليل شامل يوضح كل خطوة في C#. + ### [عرض EPUB بتنسيق XPS في .NET باستخدام Aspose.HTML](./render-epub-as-xps/) تعرف على كيفية إنشاء مستندات HTML وعرضها باستخدام Aspose.HTML لـ .NET في هذا البرنامج التعليمي الشامل. انغمس في عالم معالجة HTML وكشط الويب والمزيد. diff --git a/html/arabic/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/arabic/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..ba2994576b --- /dev/null +++ b/html/arabic/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,216 @@ +--- +category: general +date: 2026-07-08 +description: تعلم كيفية تمكين تقنية التنعيم (antialiasing) عند تحويل HTML إلى PNG + باستخدام Aspose HTML. يغطي هذا الدليل أيضًا تحويل HTML إلى صورة وحفظ HTML كملف PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: ar +lastmod: 2026-07-08 +og_description: كيفية تمكين تقنية التنعيم (antialiasing) عند تحويل HTML إلى PNG باستخدام + Aspose HTML. اتبع هذا الدليل خطوة بخطوة لتحويل HTML إلى صورة وحفظ HTML كملف PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: كيفية تمكين التنعيم عند تحويل HTML إلى PNG – دليل Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: كيفية تمكين التنعيم عند تحويل HTML إلى PNG +url: /ar/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# كيفية تمكين مضاد التعرجات عند تحويل HTML إلى PNG + +هل تساءلت يومًا **كيف يتم تمكين مضاد التعرجات** أثناء تحويل صفحة ويب إلى صورة PNG واضحة؟ لست وحدك—العديد من المطورين يواجهون مشكلة عندما يكون الناتج متعرجًا أو ضبابيًا. الخبر السار هو أنه باستخدام Aspose.HTML يمكنك تنعيم تلك الحواف ببضع أسطر من الشيفرة فقط. في هذا الدرس سنستعرض الخطوات الدقيقة لتحويل HTML إلى PNG، وتحويل HTML إلى صورة، وأخيرًا **حفظ HTML كـ PNG** مع تمكين مضاد التعرجات. + +> **ما ستحصل عليه:** مثال كامل وجاهز للتنفيذ بلغة C#، شرح لكل خيار، ونصائح للتعامل مع الحالات الخاصة مثل الخطوط المخصصة أو الصفحات الكبيرة. + +## كيفية تمكين مضاد التعرجات عند تحويل HTML إلى PNG + +أول شيء تحتاج إلى فهمه هو **لماذا يُهم مضاد التعرجات**. عندما يرسم محرك العرض الأشكال أو النصوص، فإنه يقرّب المنحنيات باستخدام البكسلات. بدون مضاد التعرجات، تُنشئ هذه التقريبات تأثيرات "سلمية"—خاصةً على الخطوط المائلة أو الخطوط الرفيعة. تمكين مضاد التعرجات يُخبر المحرك بخلط البكسلات المجاورة، مما ينتج عنه نتيجة بصرية أكثر سلاسة. + +فيما يلي الشيفرة الأساسية التي توضح **كيفية تمكين مضاد التعرجات** باستخدام `ImageRenderingOptions` في Aspose.HTML. سنقسمها خطوة بخطوة لتتمكن من رؤية ما يفعله كل سطر بالضبط. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### لماذا كل جزء مهم + +1. **HTMLDocument** – يعمل بالكامل في الذاكرة، لذا لا تحتاج إلى أي ملفات `.html` فعلية. مثالي للتحويلات الفورية. +2. **WebFontStyle** – يوضح أنه يمكنك تنسيق النص قبل العرض؛ تركيبة الخط العريض-المائل هي مجرد مثال. +3. **ImageRenderingOptions.UseAntialiasing** – هذه العلامة هي الجواب على **كيفية تمكين مضاد التعرجات**؛ ضعها على `true` وسيقوم الـ rasterizer بتنعيم الحواف. +4. **TextOptions.UseHinting** – تحسين الـ hinting يزيد من وضوح الحروف، خاصةً في الأحجام الصغيرة. إنه مكمّل جيد لمضاد التعرجات. +5. **ImageSaveOptions** – يجمع بين خيارات العرض والنص، ثم يخبر Aspose بحفظ الملف بصيغة PNG. + +## تحويل HTML إلى PNG باستخدام Aspose + +الآن بعد أن عرفت **كيفية تمكين مضاد التعرجات**، دعنا نتحدث عن الصورة الأكبر لـ **تحويل HTML إلى PNG**. Aspose.HTML يخفف عنك العبء الثقيل: + +- **Automatic layout** – يقوم المحرك بتحليل CSS، حساب نماذج الصناديق، وتحديد مواضع العناصر تمامًا كما يفعل المتصفح. +- **Resolution control** – يمكنك تحديد DPI عبر `ImageRenderingOptions.Resolution`، وهو مفيد للطباعة عالية الدقة. +- **Background handling** – اضبط `imageOpts.BackgroundColor` إذا كنت تحتاج إلى خلفية شفافة أو ملونة. + +إليك تعديل سريع يضيف DPI مخصص: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **نصيحة محترف:** إذا كنت تحول صفحة تحتوي على موارد خارجية (صور، خطوط)، تأكد من ضبط `htmlDoc.BaseUrl` إلى المجلد الذي يحتوي على تلك الأصول. وإلا سيتجاهل المُعالج هذه الموارد. + +## تحويل HTML إلى صورة – خيارات متقدمة + +عبارة **convert html to image** غالبًا ما تعني أكثر من مجرد PNG. Aspose يدعم JPEG، BMP، TIFF، وحتى GIF. تغيير الصيغة يكون بسيطًا كاستبدال قيمة تعداد `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +عندما تحتاج إلى ناتج صديق للرسوم المتجهة، فكر في `SvgSaveOptions`. نفس خط أنابيب العرض يُطبق، لذا ستحصل على مضاد تعرجات متسق عبر الصيغ. + +### حالة خاصة: صفحات طويلة جدًا + +إذا كان HTML الخاص بك أطول من الشاشة المعتادة، سيقوم Aspose، بشكل افتراضي، بإنشاء صورة طويلة واحدة. هذا قد يستهلك الذاكرة بشكل كبير. لتخفيف ذلك، يمكنك تقسيم المستند إلى صفحات متعددة: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## حفظ HTML كـ PNG – الخطوة النهائية + +في هذه المرحلة رأيت **كيفية تمكين مضاد التعرجات**، وتعلمت **تحويل HTML إلى PNG**، واستكشفت خيارات **convert html to image**. الفعل الأخير—**save html as png**—مُظهر بالفعل في المقتطف الأصلي، لكن دعنا نغلفه في طريقة قابلة لإعادة الاستخدام: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +يمكنك الآن استدعاء `SaveHtmlAsPng("…", @"C:\temp\output.png")` من أي مكان في مشروعك. معلمة `antialias` تتيح لك تشغيل أو إيقاف ميزة الحواف السلسة، مما يمنحك التحكم الكامل في **كيفية تمكين مضاد التعرجات** أثناء التشغيل. + +## مثال كامل يعمل لتحويل Aspose HTML إلى PNG + +فيما يلي تطبيق Console مستقل يجمع كل شيء معًا. انسخه، عدّل العنصر النائب `YOUR_DIRECTORY`، وشغّله باستخدام .NET 6 أو أحدث. + + + +## ماذا يجب أن تتعلم بعد ذلك؟ + +الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات التي تم توضيحها في هذا الدليل. كل مصدر يتضمن أمثلة شيفرة كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك الخاصة. + +- [كيفية استخدام Aspose لتحويل HTML إلى PNG – دليل خطوة بخطوة](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [كيفية تحويل HTML إلى PNG باستخدام Aspose – دليل كامل](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [تحويل HTML إلى PNG في .NET باستخدام Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/chinese/net/html-extensions-and-conversions/_index.md b/html/chinese/net/html-extensions-and-conversions/_index.md index a6c24babf2..c137bd00b1 100644 --- a/html/chinese/net/html-extensions-and-conversions/_index.md +++ b/html/chinese/net/html-extensions-and-conversions/_index.md @@ -72,9 +72,12 @@ Aspose.HTML for .NET 不仅仅是一个库;它是 Web 开发领域的变革者 ### [使用 Aspose.HTML 在 .NET 中将 HTML 保存为 ZIP – 完整的 C# 教程](./save-html-as-zip-complete-c-tutorial/) 使用 Aspose.HTML for .NET 将 HTML 内容打包为 ZIP 文件的完整 C# 示例,包含代码演示和关键步骤。 -### [在 C# 中将 HTML 保存为 ZIP – 完整内存示例](./save-html-to-zip-in-c-complete-in-memory-example/) +## [在 C# 中将 HTML 保存为 ZIP – 完整内存示例](./save-html-to-zip-in-c-complete-in-memory-example/) 演示如何使用 Aspose.HTML for .NET 在 C# 中将 HTML 内容压缩为 ZIP 文件,完整的内存操作示例。 +### [如何将 HTML 保存为 ZIP – 完整 Aspose.HTML 指南](./how-to-save-html-as-zip-complete-aspose-html-guide/) +使用 Aspose.HTML for .NET 将 HTML 保存为 ZIP 的完整指南,提供代码示例和详细步骤。 + ## 结论 总之,HTML 扩展和转换是现代 Web 开发的基本要素。Aspose.HTML for .NET 简化了该过程,使各个级别的开发人员都可以使用它。通过学习我们的教程,您将成为一名拥有广泛技能的熟练 Web 开发人员。 diff --git a/html/chinese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/chinese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..b5018fdc4d --- /dev/null +++ b/html/chinese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,293 @@ +--- +category: general +date: 2026-07-08 +description: 学习如何使用 Aspose.HTML 将 HTML 保存为 ZIP 压缩包。包括自定义资源处理程序以及将 HTML 转换为 ZIP 的逐步代码。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: zh +lastmod: 2026-07-08 +og_description: 如何使用 Aspose.HTML 将 HTML 保存为 ZIP 压缩包。请按照本指南使用自定义资源处理程序,将 HTML 转换为 ZIP,并创建 + ZIP HTML 文件。 +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: 如何将HTML保存为ZIP – 完整的Aspose.HTML教程 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: 如何将HTML保存为ZIP – 完整的Aspose.HTML指南 +url: /zh/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何将 HTML 保存为 ZIP – 完整 Aspose.HTML 指南 + +是否曾想过 **如何将 html 保存** 为一个单一、可移植的包?也许你需要将网页连同所有资源一起发布,或者想要归档生成的报告而不让文件四散。无论哪种情况,只要使用 Aspose.HTML,解决方案比想象中更简单。 + +在本教程中,我们将通过一个真实案例演示 **将 html 转换为 zip**,使用 **自定义资源处理程序**,并最终展示如何 **创建 zip html** 文件,随时解压使用。完成后,你将拥有一个可直接运行的 C# 程序,四个步骤即可完成全部工作。 + +## 前置条件 + +- .NET 6.0 或更高(代码同样适用于 .NET Framework 4.7+) +- Aspose.HTML 许可证(免费试用版可用于测试) +- Visual Studio 2022 或带 C# 扩展的 VS Code 等 IDE +- 对 C# async/await 有基本了解(不是必需,但有帮助) + +> **专业提示:** 如果你是 Aspose.HTML 新手,请先获取 NuGet 包 `Aspose.Html` 并将其添加到项目中,然后再开始。 + +## 第一步:创建项目 + +首先,新建一个控制台应用: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +就这么简单——无需额外依赖。`Aspose.Html` 包已经包含了实现 **如何将 html 保存** 为 ZIP 所需的所有类。 + +## 第二步:实现自定义资源处理程序 + +当 Aspose.HTML 保存文档时,需要一个位置来存放链接的资源(图片、CSS、字体)。默认情况下,它会写入文件系统,但我们可以通过 **自定义资源处理程序** 拦截此过程。这样就能完全控制每个资源的去向——非常适合创建整洁的 ZIP 文件。 + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**为什么要使用自定义处理程序?** +- **灵活性:** 可以在运行时压缩、加密或重命名资源。 +- **性能:** 写入内存可避免磁盘 I/O,适用于仅需临时归档的场景。 +- **可控性:** 你可以决定 ZIP 内部的确切文件夹结构,这在 **创建 zip html** 用于下游系统时非常方便。 + +## 第三步:构建 HTML 文档 + +现在我们创建一个简单的 HTML 字符串。在真实项目中,你可能会从文件、数据库或动态生成它。 + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +如果有外部资产(图片、CSS 文件),只需确保它们的 URL 可访问——Aspose 会通过我们前面定义的 **自定义资源处理程序** 请求这些资源。 + +## 第四步:配置保存选项以 **将 HTML 转换为 ZIP** + +Aspose.HTML 提供了多个 `HTMLSaveOptions` 子类。对于 ZIP 包,我们使用基础的 `HTMLSaveOptions` 并将其 `OutputStorage` 设置为我们的 `MyHandler`。这告诉库使用我们提供的流 **将 html 转换为 zip**。 + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +你还可以微调 `saveOptions`: + +- `saveOptions.Compressed = true;` – 启用 ZIP 压缩(默认已开启)。 +- `saveOptions.ExportResources = true;` – 确保包含所有链接资源。 + +这些调整是可选的,但在 **创建 zip html** 用于分发时经常有用。 + +## 第五步:保存 ZIP 包 – 正确的 **如何保存 HTML** + +最后,调用 `Save`。第一个参数是生成的 ZIP 文件路径,第二个参数是我们刚配置好的 `HTMLSaveOptions`。 + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +运行程序(`dotnet run`)后,你会在可执行文件旁看到一个 `output.zip` 文件。用任意压缩管理器打开,你会看到: + +- `index.html` – 原始标记。 +- 所有被引用的资源(图片、CSS),每个都作为单独的条目存放。 + +这就是完整的 **如何将 html 保存** 工作流,从原始标记到可移植的 ZIP 包。 + +## 进阶:处理图片和外部资源 + +如果你的 HTML 包含 ``,`MyHandler` 将收到 `info.Uri` 指向 `logo.png` 的调用。你可以修改处理程序,从磁盘或远程 URL 获取文件: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +此代码片段展示了如何扩展 **自定义资源处理程序** 以适配任何存储策略,使 ZIP 输出真正反映项目的资产布局。 + +## 常见陷阱及规避方法 + +| 问题 | 产生原因 | 解决方案 | +|------|----------|----------| +| **ZIP 为空** | `OutputStorage` 返回了已关闭的流或 `null`。 | 始终返回全新的、可写的 `MemoryStream` 或 `FileStream`。 | +| **图片缺失** | 资源被 CORS 阻止或本地不可用。 | 预先下载资产或在 `HandleResource` 中手动提供它们。 | +| **ZIP 体积过大** | 资源未压缩。 | 设置 `saveOptions.Compressed = true;`(默认)或在返回前自行压缩流。 | +| **文件名不正确** | 默认处理程序使用 GUID 命名文件。 | 在 `HandleResource` 中覆盖 `ResourceInfo.Name` 并相应重命名流。 | + +解决这些问题即可每次顺利完成 **将 html 转换为 zip** 的体验。 + +## 完整示例代码 + +下面是可以直接复制到 `Program.cs` 的完整程序,开箱即用。 + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**预期输出:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +打开 `output.zip`,你会看到 `index.html` 文件以及所有你添加的资源。 + +## 小结 + +我们已经演示了如何使用 Aspose.HTML 将 **HTML 保存为 ZIP**,并通过 **自定义资源处理程序** 完全掌控打包过程。现在你已经掌握了 **将 html 转换为 zip** 的方法,并可以轻松地将代码改造成用于邮件、离线文档或静态站点部署的 **创建 zip html** 文件。 + +### 接下来可以做什么? + +- **添加 CSS/JS 文件**:扩展 `MyHandler` 从项目文件夹中获取样式表和脚本。 +- **加密 ZIP**:在返回前将 `MemoryStream` 包装在 `CryptoStream` 中。 +- **批量处理**:遍历多个 HTML 字符串,为每个页面生成一个 ZIP。 + +尽情实验吧,如有问题欢迎留言。祝编码愉快! + +## 接下来该学习什么? + +以下教程与本指南紧密相关,帮助你进一步掌握 API 功能并探索其他实现思路: + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/chinese/net/rendering-html-documents/_index.md b/html/chinese/net/rendering-html-documents/_index.md index 320ef98ccd..ecd6a5597a 100644 --- a/html/chinese/net/rendering-html-documents/_index.md +++ b/html/chinese/net/rendering-html-documents/_index.md @@ -43,6 +43,9 @@ Aspose.HTML for .NET 凭借其丰富的功能、出色的文档和活跃的社 ### [使用 Aspose.HTML 在 .NET 中将 HTML 渲染为 PNG](./render-html-as-png/) 学习使用 Aspose.HTML for .NET:操作 HTML、转换为各种格式等等。深入了解这个全面的教程! +### [如何在将 HTML 渲染为 PNG 时启用抗锯齿](./how-to-enable-antialiasing-rendering-html-to-png/) +学习在 Aspose.HTML for .NET 中启用抗锯齿,以提升 PNG 渲染质量的完整指南。 + ### [如何将 HTML 渲染为 PNG – 完整 C# 指南](./how-to-render-html-as-png-complete-c-guide/) 学习使用 Aspose.HTML for .NET 将 HTML 渲染为 PNG 的完整 C# 示例,涵盖关键步骤和最佳实践。 diff --git a/html/chinese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/chinese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..19819044f9 --- /dev/null +++ b/html/chinese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,216 @@ +--- +category: general +date: 2026-07-08 +description: 了解如何在使用 Aspose HTML 将 HTML 渲染为 PNG 时启用抗锯齿。本指南还涵盖将 HTML 转换为图像以及将 HTML + 保存为 PNG。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: zh +lastmod: 2026-07-08 +og_description: 如何在使用 Aspose HTML 将 HTML 渲染为 PNG 时启用抗锯齿。请按照本分步教程将 HTML 转换为图像并将 HTML + 保存为 PNG。 +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: 如何启用抗锯齿渲染 HTML 为 PNG – Aspose 指南 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: 如何在将HTML渲染为PNG时启用抗锯齿 +url: /zh/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在渲染 HTML 为 PNG 时启用抗锯齿 + +是否曾经想过在将网页转换为清晰的 PNG 图像时 **如何启用抗锯齿**?你并不孤单——许多开发者在输出出现锯齿或模糊时会遇到难题。好消息是,使用 Aspose.HTML 只需几行代码即可平滑这些边缘。在本教程中,我们将逐步演示将 HTML 渲染为 PNG、将 HTML 转换为图像,以及最终 **将 HTML 保存为 PNG** 并开启抗锯齿的完整步骤。 + +> **您将获得:** 一个完整、可直接运行的 C# 示例,对每个选项的解释,以及处理自定义字体或大页面等边缘情况的技巧。 + +## 在渲染 HTML 为 PNG 时如何启用抗锯齿 + +首先需要了解的是 **抗锯齿为何重要**。当渲染引擎绘制形状或文字时,会用像素近似曲线。若不使用抗锯齿,这些近似会产生阶梯状伪影——在对角线或细体字上尤为明显。启用抗锯齿会让引擎混合相邻像素,从而产生更平滑的视觉效果。 + +下面的核心代码演示了使用 Aspose.HTML 的 `ImageRenderingOptions` **如何启用抗锯齿**。我们将逐步拆解,以便您清楚每行代码的作用。 + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### 每个部分为何重要 + +1. **HTMLDocument** – 完全在内存中工作,因此无需任何实际的 `.html` 文件。非常适合即时转换。 +2. **WebFontStyle** – 展示了在渲染前可以为文本设置样式;粗斜体组合仅作演示。 +3. **ImageRenderingOptions.UseAntialiasing** – 该标志即 **如何启用抗锯齿** 的答案;将其设为 `true`,光栅化器将平滑边缘。 +4. **TextOptions.UseHinting** – Hinting 提升字形的清晰度,尤其在小尺寸时。它是抗锯齿的良好配合。 +5. **ImageSaveOptions** – 将渲染和文本选项打包,然后指示 Aspose 输出 PNG 文件。 + +## 使用 Aspose 将 HTML 渲染为 PNG + +既然您已经了解 **如何启用抗锯齿**,接下来讨论 **render html to png** 的更宏观概念。Aspose.HTML 抽象了繁重的工作: + +- **Automatic layout** – 引擎解析 CSS,计算盒模型,并像浏览器一样定位元素。 +- **Resolution control** – 您可以通过 `ImageRenderingOptions.Resolution` 指定 DPI,这对高分辨率打印非常有用。 +- **Background handling** – 如需透明或彩色画布,可设置 `imageOpts.BackgroundColor`。 + +下面是一个快速调整示例,添加自定义 DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **专业提示:** 如果您正在转换包含外部资源(图像、字体)的页面,请确保将 `htmlDoc.BaseUrl` 设置为包含这些资源的文件夹。否则渲染器会跳过它们。 + +## 将 HTML 转换为图像 – 高级选项 + +短语 **convert html to image** 通常意味着不仅限于 PNG。Aspose 支持 JPEG、BMP、TIFF,甚至 GIF。切换格式只需更改 `SaveFormat` 枚举即可: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +当您需要矢量友好的输出时,可考虑使用 `SvgSaveOptions`。相同的渲染管道适用,因而在各种格式中都能获得一致的抗锯齿效果。 + +### 边缘情况:超高页面 + +如果您的 HTML 长度超过普通屏幕,Aspose 默认会生成一张超高的单一图像。这可能导致内存占用激增。为缓解此问题,您可以将文档拆分为多页: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## 将 HTML 保存为 PNG – 最后一步 + +此时您已经了解 **如何启用抗锯齿**,学会了 **render html to png**,并探索了 **convert html to image** 选项。最后一步——**save html as png**——已在原始代码片段中演示,但我们仍将其封装为可复用的方法: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +现在您可以在项目的任何位置调用 `SaveHtmlAsPng("…", @"C:\temp\output.png")`。`antialias` 参数允许您切换平滑边缘功能,从而在运行时完全控制 **如何启用抗锯齿**。 + +## Aspose HTML 转 PNG – 完整工作示例 + +下面是一个独立的控制台应用程序,整合了所有内容。复制粘贴,调整 `YOUR_DIRECTORY` 占位符,然后使用 .NET 6 或更高版本运行。 + + + +## 接下来您应该学习什么? + +以下教程涵盖与本指南紧密相关的主题,基于所示技术进行深入。每个资源均包含完整的可运行代码示例和逐步解释,帮助您掌握更多 API 功能并在项目中探索替代实现方案。 + +- [如何使用 Aspose 将 HTML 渲染为 PNG – 步骤指南](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [使用 Aspose 将 HTML 渲染为 PNG – 完整指南](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [.NET 中使用 Aspose.HTML 将 HTML 渲染为 PNG](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/czech/net/html-extensions-and-conversions/_index.md b/html/czech/net/html-extensions-and-conversions/_index.md index dc8f6f072d..08a737b4cf 100644 --- a/html/czech/net/html-extensions-and-conversions/_index.md +++ b/html/czech/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Naučte se vytvořit HTML dokument se stylovaným textem a převést jej do PDF Naučte se, jak uložit HTML soubor jako ZIP archiv pomocí Aspose.HTML pro .NET v kompletním C# tutoriálu. ### [Uložte HTML do ZIP v C# – Kompletní příklad v paměti](./save-html-to-zip-in-c-complete-in-memory-example/) Naučte se, jak uložit HTML soubor do ZIP archivu v paměti pomocí Aspose.HTML pro .NET v C#. +### [Jak uložit HTML jako ZIP – Kompletní průvodce Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Naučte se, jak pomocí Aspose.HTML pro .NET uložit HTML soubor jako ZIP archiv v kompletním průvodci. ## Závěr diff --git a/html/czech/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/czech/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..c64eb09b31 --- /dev/null +++ b/html/czech/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,295 @@ +--- +category: general +date: 2026-07-08 +description: Naučte se, jak uložit HTML jako ZIP archiv pomocí Aspose.HTML. Obsahuje + vlastní správce zdrojů a krok za krokem kód pro převod HTML do ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: cs +lastmod: 2026-07-08 +og_description: Jak uložit HTML jako ZIP archiv pomocí Aspose.HTML. Postupujte podle + tohoto návodu, jak použít vlastní obslužný program zdrojů, převést HTML na ZIP a + vytvořit ZIP HTML soubory. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Jak uložit HTML jako ZIP – Kompletní tutoriál Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Jak uložit HTML jako ZIP – Kompletní průvodce Aspose.HTML +url: /cs/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak uložit HTML jako ZIP – Kompletní průvodce Aspose.HTML + +Už jste se někdy zamýšleli **jak uložit html** do jediného, přenosného balíčku? Možná potřebujete distribuovat webovou stránku se všemi jejími prostředky, nebo chcete archivovat generované zprávy, aniž byste rozptylovali soubory. Ať už je to jakkoli, řešení je jednodušší, než si myslíte, když použijete Aspose.HTML. + +V tomto tutoriálu projdeme reálný příklad, který **převádí html do zip**, využívá **vlastní manipulátor zdrojů** a nakonec vám ukáže přesně, jak **vytvořit zip html** soubory, které můžete rozbalit kdekoli. Na konci budete mít připravený C# program, který celý proces provede ve čtyřech přehledných krocích. + +## Požadavky + +- .NET 6.0 nebo novější (kód funguje také s .NET Framework 4.7+) +- Licence pro Aspose.HTML (pro testování stačí bezplatná zkušební verze) +- IDE, např. Visual Studio 2022 nebo VS Code s rozšířeními pro C# +- Základní znalost C# async/await (není povinná, ale užitečná) + +> **Pro tip:** Pokud jste v Aspose.HTML noví, stáhněte si NuGet balíček `Aspose.Html` a přidejte jej do svého projektu před zahájením práce. + +## Krok 1: Nastavte svůj projekt + +Nejprve vytvořte novou konzolovou aplikaci: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +A to je vše — žádné další závislosti. Balíček `Aspose.Html` již obsahuje třídy, které budeme potřebovat pro **jak uložit html** jako ZIP archiv. + +## Krok 2: Implementujte vlastní manipulátor zdrojů + +Když Aspose.HTML ukládá dokument, potřebuje místo pro uložení odkazovaných zdrojů (obrázky, CSS, fonty). Ve výchozím nastavení je zapisuje do souborového systému, ale můžeme tento proces zachytit pomocí **vlastního manipulátoru zdrojů**. To nám dává plnou kontrolu nad tím, kam každý zdroj skončí — ideální pro vytvoření čistého ZIP souboru. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Proč použít vlastní manipulátor?** +- **Flexibilita:** Můžete se rozhodnout, zda zdroje během běhu komprimovat, šifrovat nebo přejmenovávat. +- **Výkon:** Zapisování do paměti eliminuje diskové I/O, pokud potřebujete jen dočasný archiv. +- **Kontrola:** Určíte přesnou strukturu složek uvnitř ZIP, což je užitečné, když **vytváříte zip html** pro downstream systémy. + +## Krok 3: Vytvořte HTML dokument + +Nyní vytvoříme jednoduchý HTML řetězec. Ve skutečném projektu byste jej pravděpodobně načetli ze souboru, databáze nebo generovali dynamicky. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Pokud máte externí prostředky (obrázky, CSS soubory), ujistěte se, že jejich URL jsou dostupné — Aspose je načte prostřednictvím **vlastního manipulátoru zdrojů**, který jsme definovali dříve. + +## Krok 4: Nakonfigurujte možnosti uložení na **Convert HTML to ZIP** + +Aspose.HTML nabízí několik podtříd `HTMLSaveOptions`. Pro ZIP archiv použijeme základní `HTMLSaveOptions` a nastavíme jeho `OutputStorage` na náš `MyHandler`. Tím řekneme knihovně, aby **convert html to zip** pomocí streamů, které poskytneme. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Můžete také doladit `saveOptions`: + +- `saveOptions.Compressed = true;` – povolí ZIP kompresi (ve výchozím nastavení zapnutou). +- `saveOptions.ExportResources = true;` – zajistí zahrnutí odkazovaných zdrojů. + +Tyto úpravy jsou volitelné, ale často užitečné, když **vytváříte zip html** pro distribuci. + +## Krok 5: Uložte ZIP archiv – **How to Save HTML** správně + +Nakonec zavoláme `Save`. Prvním argumentem je cesta k výslednému ZIP souboru, druhým `HTMLSaveOptions`, které jsme právě nakonfigurovali. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Když spustíte program (`dotnet run`), objeví se soubor `output.zip` vedle spustitelného souboru. Otevřete jej libovolným archivátorem a uvidíte: + +- `index.html` – původní markup. +- Všechny zdroje (obrázky, CSS), které byly odkazovány, každá jako samostatná položka. + +To je kompletní workflow **jak uložit html**, od surového markup až po přenosný ZIP balíček. + +## Bonus: Práce s obrázky a externími zdroji + +Pokud váš HTML obsahuje ``, `MyHandler` obdrží volání s `info.Uri` ukazujícím na `logo.png`. Můžete manipulátor upravit tak, aby soubor načetl z disku nebo vzdálené URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Tento úryvek ukazuje, jak můžete rozšířit **vlastní manipulátor zdrojů** tak, aby vyhovoval jakékoli strategii ukládání, a tím zajistil, že výstupní ZIP skutečně odráží rozložení aktiv vašeho projektu. + +## Časté problémy a jak se jim vyhnout + +| Problém | Proč k tomu dochází | Řešení | +|---------|----------------------|--------| +| **Prázdný ZIP** | `OutputStorage` vrací uzavřený stream nebo `null`. | Vždy vraťte čerstvý, zapisovatelný `MemoryStream` nebo `FileStream`. | +| **Chybějící obrázky** | Zdroje jsou blokovány CORS nebo nejsou lokálně dostupné. | Předem stáhněte aktiva nebo upravte `HandleResource`, aby je poskytl ručně. | +| **Velká velikost ZIP** | Zdroje nejsou komprimovány. | Nastavte `saveOptions.Compressed = true;` (výchozí) nebo před vrácením komprimujte streamy sami. | +| **Nesprávné názvy souborů** | Výchozí manipulátor pojmenovává soubory GUIDy. | Přepište `ResourceInfo.Name` uvnitř `HandleResource` a přejmenujte stream podle potřeby. | + +Řešením těchto problémů zajistíte plynulý **convert html to zip** zážitek pokaždé. + +## Kompletní funkční příklad + +Níže je celý program, který můžete zkopírovat a vložit do `Program.cs`. Kompiluje se a spustí ihned. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Očekávaný výstup:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Otevřete `output.zip` a uvidíte soubor `index.html` plus všechny přidané zdroje. + +## Závěr + +Právě jsme ukázali **jak uložit html** jako ZIP archiv pomocí Aspose.HTML, kompletně s **vlastním manipulátorem zdrojů**, který vám dává úplnou kontrolu nad procesem balení. Nyní víte, jak **convert html to zip**, a můžete snadno přizpůsobit kód pro **vytvořit zip html** soubory pro e‑maily, offline dokumentaci nebo nasazení statických webů. + +### Co dál? + +- **Přidat CSS/JS soubory**: Rozšiřte `MyHandler`, aby načítal styly a skripty z adresáře projektu. +- **Šifrovat ZIP**: Zabalte `MemoryStream` do `CryptoStream` před jeho vrácením. +- **Dávkové zpracování**: Procházejte kolekci HTML řetězců a generujte ZIP pro každou stránku. + +Neváhejte experimentovat a zanechte komentář, pokud narazíte na potíže. Šťastné kódování! + +## Co byste se měli naučit dál? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční ukázky kódu s podrobnými vysvětleními, aby vám pomohl zvládnout další funkce API a prozkoumat alternativní implementační přístupy ve vašich projektech. + +- [Jak uložit HTML v C# – Kompletní průvodce s použitím vlastního manipulátoru zdrojů](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Jak zkomprimovat HTML v C# – Uložit HTML do ZIP](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Uložit HTML jako ZIP – Kompletní C# tutoriál](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/czech/net/rendering-html-documents/_index.md b/html/czech/net/rendering-html-documents/_index.md index 5e42f8047c..f5a068b29c 100644 --- a/html/czech/net/rendering-html-documents/_index.md +++ b/html/czech/net/rendering-html-documents/_index.md @@ -69,6 +69,9 @@ Kompletní návod, jak pomocí Aspose.HTML v .NET převést HTML soubory do PNG ### [Vytvořte PNG z HTML – Kompletní průvodce renderováním v C#](./create-png-from-html-full-c-rendering-guide/) Naučte se, jak pomocí Aspose.HTML pro .NET převést HTML do PNG pomocí kompletního C# průvodce. +### [Jak povolit antialiasing při vykreslování HTML do PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Naučte se, jak povolit antialiasing pro hladší výstup PNG při vykreslování HTML pomocí Aspose.HTML. + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/czech/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/czech/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..cad00e5490 --- /dev/null +++ b/html/czech/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Naučte se, jak povolit antialiasing při renderování HTML do PNG pomocí + Aspose HTML. Tento průvodce také pokrývá převod HTML na obrázek a uložení HTML jako + PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: cs +lastmod: 2026-07-08 +og_description: Jak povolit antialiasing při renderování HTML do PNG pomocí Aspose + HTML. Postupujte podle tohoto krok‑za‑krokem tutoriálu, abyste převáděli HTML na + obrázek a uložili HTML jako PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Jak povolit vyhlazování při renderování HTML do PNG – Průvodce Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Jak povolit antialiasing při renderování HTML do PNG +url: /cs/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak povolit antialiasing při renderování HTML do PNG + +Už jste se někdy zamysleli **jak povolit antialiasing** při převodu webové stránky na ostrý PNG obrázek? Nejste sami — mnoho vývojářů narazí na problém, když výstup vypadá zubatě nebo rozmazaně. Dobrou zprávou je, že s Aspose.HTML můžete tyto hrany vyhladit pomocí jen několika řádků kódu. V tomto tutoriálu projdeme přesné kroky k renderování HTML do PNG, převodu HTML na obrázek a nakonec **uložení HTML jako PNG** s povoleným antialiasingem. + +> **Co získáte:** kompletní, připravený příklad v C#, vysvětlení každé možnosti a tipy, jak zacházet s okrajovými případy, jako jsou vlastní fonty nebo velké stránky. + +## Jak povolit antialiasing při renderování HTML do PNG + +První věc, kterou musíte pochopit, je **proč je antialiasing důležitý**. Když renderovací engine kreslí tvary nebo text, aproximuje křivky pomocí pixelů. Bez antialiasingu tyto aproximace vytvářejí schodovité artefakty — zejména na šikmých čarách nebo tenkých fontech. Povolení antialiasingu říká enginu, aby smíchal sousední pixely, čímž vznikne hladší vizuální výsledek. + +Níže je jádrový kód, který ukazuje **jak povolit antialiasing** pomocí `ImageRenderingOptions` z Aspose.HTML. Rozložíme jej krok za krokem, abyste viděli přesně, co každá řádka dělá. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Proč je každá část důležitá + +1. **HTMLDocument** – funguje zcela v paměti, takže nepotřebujete žádné fyzické soubory `.html`. Ideální pro konverze za běhu. +2. **WebFontStyle** – ukazuje, že můžete stylovat text před renderováním; kombinace tučný‑kurzíva je jen ukázka. +3. **ImageRenderingOptions.UseAntialiasing** – tento příznak je odpovědí na **jak povolit antialiasing**; nastavte jej na `true` a rasterizér vyhladí hrany. +4. **TextOptions.UseHinting** – hinting zlepšuje čitelnost glyfů, zejména při malých velikostech. Je to pěkný doplněk k antialiasingu. +5. **ImageSaveOptions** – spojuje jak renderovací, tak textové možnosti a pak říká Aspose, aby výstupem byl PNG soubor. + +## Renderování HTML do PNG s Aspose + +Nyní, když už víte **jak povolit antialiasing**, pojďme se podívat na širší kontext **render html to png**. Aspose.HTML abstrahuje těžkou práci: + +- **Automatické rozvržení** – engine parsuje CSS, počítá box modely a umisťuje elementy stejně jako prohlížeč. +- **Řízení rozlišení** – můžete zadat DPI pomocí `ImageRenderingOptions.Resolution`, což se hodí pro tisk ve vysokém rozlišení. +- **Zpracování pozadí** – nastavte `imageOpts.BackgroundColor`, pokud potřebujete průhledné nebo barevné plátno. + +Zde je rychlá úprava, která přidává vlastní DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Pokud převádíte stránku, která obsahuje externí zdroje (obrázky, fonty), ujistěte se, že nastavíte `htmlDoc.BaseUrl` na složku obsahující tyto assety. Jinak je renderer přeskočí. + +## Převod HTML na obrázek – Pokročilé možnosti + +Výraz **convert html to image** často zahrnuje více než jen PNG. Aspose podporuje JPEG, BMP, TIFF a dokonce i GIF. Přepnutí formátu je tak jednoduché jako změna výčtu `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Když potřebujete výstup vhodný pro vektorovou grafiku, zvažte `SvgSaveOptions`. Stejný renderovací řetězec se použije, takže získáte konzistentní antialiasing napříč formáty. + +### Edge case: Velmi vysoké stránky + +Pokud je váš HTML delší než typická obrazovka, Aspose ve výchozím nastavení vytvoří jeden vysoký obrázek. To může výrazně zatížit paměť. Pro zmírnění tohoto problému můžete dokument rozdělit na více stránek: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Uložení HTML jako PNG – Poslední krok + +V tuto chvíli jste viděli **jak povolit antialiasing**, naučili se **render html to png** a prozkoumali možnosti **convert html to image**. Poslední akce — **save html as png** — je již ukázána v původním úryvku, ale zabalíme ji do znovupoužitelné metody: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Nyní můžete volat `SaveHtmlAsPng("…", @"C:\temp\output.png")` odkudkoli ve svém projektu. Parametr `antialias` vám umožní přepínat funkci vyhlazování hran, čímž získáte plnou kontrolu nad **jak povolit antialiasing** za běhu. + +## Aspose HTML do PNG – Kompletní funkční příklad + +Níže je samostatná konzolová aplikace, která spojuje všechny části. Zkopírujte, upravte zástupný text `YOUR_DIRECTORY` a spusťte s .NET 6 nebo novějším. + + + +## Co byste se měli naučit dál? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční ukázky kódu s podrobným krok‑za‑krokem vysvětlením, aby vám pomohl zvládnout další funkce API a prozkoumat alternativní přístupy ve vašich vlastních projektech. + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/dutch/net/html-extensions-and-conversions/_index.md b/html/dutch/net/html-extensions-and-conversions/_index.md index fd924a78c2..595712bea4 100644 --- a/html/dutch/net/html-extensions-and-conversions/_index.md +++ b/html/dutch/net/html-extensions-and-conversions/_index.md @@ -72,6 +72,7 @@ Leer hoe u met Aspose.HTML voor .NET PDF's genereert vanuit HTML met een duideli ### [HTML opslaan als ZIP – Complete C#-tutorial](./save-html-as-zip-complete-c-tutorial/) ### [HTML opslaan naar ZIP in C# – Volledig In‑Memory voorbeeld](./save-html-to-zip-in-c-complete-in-memory-example/) Leer hoe u HTML-inhoud in het geheugen comprimeert en opslaat als ZIP-bestand met Aspose.HTML voor .NET in C#. +### [HTML opslaan als ZIP – Complete Aspose.HTML-gids](./how-to-save-html-as-zip-complete-aspose-html-guide/) ## Conclusie diff --git a/html/dutch/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/dutch/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..7bfebe2d2f --- /dev/null +++ b/html/dutch/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,293 @@ +--- +category: general +date: 2026-07-08 +description: Leer hoe u HTML kunt opslaan als een ZIP‑archief met Aspose.HTML. Inclusief + een aangepaste resource‑handler en stapsgewijze code om HTML naar ZIP te converteren. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: nl +lastmod: 2026-07-08 +og_description: Hoe HTML op te slaan als een ZIP-archief met Aspose.HTML. Volg deze + gids om een aangepaste resourcehandler te gebruiken, HTML naar ZIP te converteren + en ZIP‑HTML‑bestanden te maken. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Hoe HTML opslaan als ZIP – Volledige Aspose.HTML‑tutorial +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Hoe HTML opslaan als ZIP – Complete Aspose.HTML-gids +url: /nl/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hoe HTML op te slaan als ZIP – Complete Aspose.HTML-gids + +Heb je je ooit afgevraagd **hoe je html kunt opslaan** in één draagbaar pakket? Misschien moet je een webpagina met al zijn assets verzenden, of wil je gegenereerde rapporten archiveren zonder bestanden verspreid te laten. Hoe dan ook, de oplossing is eenvoudiger dan je denkt wanneer je Aspose.HTML gebruikt. + +In deze tutorial lopen we een praktijkvoorbeeld door dat **html naar zip converteert**, gebruikmaakt van een **aangepaste resourcehandler**, en uiteindelijk precies laat zien hoe je **zip html**‑bestanden kunt maken die je overal kunt uitpakken. Aan het einde heb je een kant‑klaar C#‑programma dat de hele taak in vier nette stappen uitvoert. + +## Vereisten + +- .NET 6.0 of later (de code werkt ook met .NET Framework 4.7+) +- Een licentie voor Aspose.HTML (de gratis proefversie werkt voor testen) +- Een IDE zoals Visual Studio 2022 of VS Code met C#‑extensies +- Basiskennis van C# async/await (niet vereist maar handig) + +> **Pro tip:** Als je nieuw bent met Aspose.HTML, pak dan het NuGet‑pakket `Aspose.Html` en voeg het toe aan je project voordat je begint. + +## Stap 1: Stel je project in + +Eerst maak je een nieuwe console‑applicatie: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Dat is alles—geen extra afhankelijkheden. Het `Aspose.Html`‑pakket bevat al de klassen die we nodig hebben voor **hoe html op te slaan** als een ZIP‑archief. + +## Stap 2: Implementeer een aangepaste resourcehandler + +Wanneer Aspose.HTML een document opslaat, heeft het een plek nodig om gekoppelde resources (afbeeldingen, CSS, lettertypen) op te slaan. Standaard schrijft het deze naar het bestandssysteem, maar we kunnen dat proces onderscheppen met een **custom resource handler**. Dit geeft ons volledige controle over waar elke resource terechtkomt—perfect voor het maken van een schoon ZIP‑bestand. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Waarom een aangepaste handler gebruiken?** +- **Flexibiliteit:** Je kunt besluiten om resources on‑the‑fly te comprimeren, versleutelen of te hernoemen. +- **Prestaties:** Schrijven naar geheugen vermijdt schijf‑I/O wanneer je alleen een tijdelijk archief nodig hebt. +- **Controle:** Jij bepaalt de exacte mapstructuur binnen de ZIP, wat handig is wanneer je **zip html maken** voor downstream‑systemen. + +## Stap 3: Bouw het HTML‑document + +Nu maken we een eenvoudige HTML‑string. In een echt project zou je dit waarschijnlijk uit een bestand, een database of dynamisch genereren. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Als je externe assets (afbeeldingen, CSS‑bestanden) hebt, zorg er dan voor dat hun URL's bereikbaar zijn—Aspose zal ze opvragen via de **custom resource handler** die we eerder hebben gedefinieerd. + +## Stap 4: Configureer opslaan‑opties om **HTML naar ZIP te converteren** + +Aspose.HTML biedt verschillende `HTMLSaveOptions`‑subklassen. Voor een ZIP‑archief gebruiken we de basis `HTMLSaveOptions` en stellen we de `OutputStorage` in op onze `MyHandler`. Dit vertelt de bibliotheek om **html naar zip** te converteren met de streams die we leveren. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Je kunt ook `saveOptions` aanpassen: + +- `saveOptions.Compressed = true;` – schakelt ZIP‑compressie in (standaard aan). +- `saveOptions.ExportResources = true;` – zorgt ervoor dat gekoppelde resources worden opgenomen. + +Deze aanpassingen zijn optioneel maar vaak nuttig wanneer je **zip html maken** voor distributie. + +## Stap 5: Sla het ZIP‑archief op – **HTML correct opslaan** + +Tot slot roepen we `Save` aan. Het eerste argument is het pad naar het resulterende ZIP‑bestand, het tweede is de `HTMLSaveOptions` die we zojuist hebben geconfigureerd. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Wanneer je het programma uitvoert (`dotnet run`), zie je een `output.zip`‑bestand naast je executable. Open het met een archiefbeheerder en je vindt: + +- `index.html` – de oorspronkelijke markup. +- Alle resources (afbeeldingen, CSS) die werden verwezen, elk opgeslagen als een apart item. + +Dat is de volledige **hoe html op te slaan** workflow, van ruwe markup tot een draagbaar ZIP‑pakket. + +## Bonus: Afhandelen van afbeeldingen en externe resources + +Als je HTML `` bevat, ontvangt de `MyHandler` een oproep met `info.Uri` die naar `logo.png` wijst. Je kunt de handler aanpassen om het bestand van schijf of een externe URL op te halen: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Dit fragment laat zien hoe je de **custom resource handler** kunt uitbreiden voor elke opslagstrategie, zodat de ZIP‑output echt de asset‑structuur van je project weerspiegelt. + +## Veelvoorkomende valkuilen & hoe ze te vermijden + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` retourneert een gesloten stream of `null`. | Altijd een nieuwe, schrijfbare `MemoryStream` of `FileStream` retourneren. | +| **Missing images** | Resources worden geblokkeerd door CORS of zijn lokaal niet beschikbaar. | Pre‑download assets of pas `HandleResource` aan om ze handmatig te leveren. | +| **Large ZIP size** | Resources zijn niet gecomprimeerd. | Stel `saveOptions.Compressed = true;` in (standaard) of comprimeer streams zelf voordat je ze retourneert. | +| **Incorrect file names** | Standaardhandler geeft bestanden namen met GUIDs. | Overschrijf `ResourceInfo.Name` binnen `HandleResource` en hernoem de stream overeenkomstig. | + +## Volledig werkend voorbeeld + +Hieronder staat het complete programma dat je kunt copy‑pasten in `Program.cs`. Het compileert en werkt direct. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Verwachte output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Open `output.zip` en je ziet het `index.html`‑bestand plus alle toegevoegde resources. + +## Samenvatting + +We hebben zojuist laten zien **hoe html op te slaan** als een ZIP‑archief met Aspose.HTML, compleet met een **custom resource handler** die je volledige controle geeft over het verpakkingsproces. Je weet nu hoe je **html naar zip** kunt converteren, en je kunt de code eenvoudig aanpassen om **zip html**‑bestanden te maken voor e‑mails, offline documentatie of statische site‑deployments. + +### Wat is het volgende? + +- **CSS/JS‑bestanden toevoegen**: Breid `MyHandler` uit om stylesheets en scripts uit je projectmap te halen. +- **De ZIP versleutelen**: Wikkel de `MemoryStream` in een `CryptoStream` voordat je deze retourneert. +- **Batch‑verwerking**: Loop over een collectie HTML‑strings en genereer een ZIP per pagina. + +Voel je vrij om te experimenteren, en laat een reactie achter als je ergens tegenaan loopt. Veel programmeerplezier! + +## Wat moet je hierna leren? + +De volgende tutorials behandelen nauw verwante onderwerpen die voortbouwen op de technieken die in deze gids zijn gedemonstreerd. Elke bron bevat complete werkende code‑voorbeelden met stap‑voor‑stap uitleg om je te helpen extra API‑functies onder de knie te krijgen en alternatieve implementatie‑benaderingen in je eigen projecten te verkennen. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/dutch/net/rendering-html-documents/_index.md b/html/dutch/net/rendering-html-documents/_index.md index 088e7bab11..88dc18994c 100644 --- a/html/dutch/net/rendering-html-documents/_index.md +++ b/html/dutch/net/rendering-html-documents/_index.md @@ -42,6 +42,8 @@ Nu u Aspose.HTML voor .NET hebt ingesteld, is het tijd om de tutorials te verken ### [HTML als PNG renderen in .NET met Aspose.HTML](./render-html-as-png/) Leer werken met Aspose.HTML voor .NET: HTML manipuleren, converteren naar verschillende formaten en meer. Duik in deze uitgebreide tutorial! +### [Hoe antialiasing inschakelen bij het renderen van HTML naar PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Leer hoe u antialiasing activeert om HTML-rendering naar PNG met hoge kwaliteit te verkrijgen met Aspose.HTML. ### [HTML als PNG renderen – Complete C#-gids](./how-to-render-html-as-png-complete-c-guide/) Leer stap voor stap hoe u HTML naar PNG converteert met C# en Aspose.HTML in deze volledige gids. ### [EPUB renderen als XPS in .NET met Aspose.HTML](./render-epub-as-xps/) diff --git a/html/dutch/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/dutch/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..1e519f00df --- /dev/null +++ b/html/dutch/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Leer hoe u antialiasing inschakelt bij het renderen van HTML naar PNG + met Aspose HTML. Deze gids behandelt ook het converteren van HTML naar afbeelding + en het opslaan van HTML als PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: nl +lastmod: 2026-07-08 +og_description: Hoe antialiasing in te schakelen bij het renderen van HTML naar PNG + met Aspose HTML. Volg deze stapsgewijze tutorial om HTML naar een afbeelding te + converteren en HTML op te slaan als PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Hoe antialiasing inschakelen bij het renderen van HTML naar PNG – Aspose‑gids +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Hoe antialiasing in te schakelen bij het renderen van HTML naar PNG +url: /nl/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hoe antialiasing in te schakelen bij het renderen van HTML naar PNG + +Ever wondered **hoe antialiasing in te schakelen** while turning a web page into a crisp PNG image? You’re not alone—many developers hit a snag when the output looks jagged or blurry. The good news is that with Aspose.HTML you can smooth those edges in just a few lines of code. In this tutorial we’ll walk through the exact steps to render HTML to PNG, convert HTML to image, and finally **HTML opslaan als PNG** with antialiasing turned on. + +> **Wat je krijgt:** een compleet, kant‑klaar C#‑voorbeeld, een uitleg van elke optie, en tips voor het omgaan met randgevallen zoals aangepaste lettertypen of grote pagina's. + +## Hoe antialiasing in te schakelen bij het renderen van HTML naar PNG + +The first thing you need to understand is **waarom antialiasing belangrijk is**. When the rendering engine draws shapes or text, it approximates curves with pixels. Without antialiasing, those approximations create stair‑step artifacts—especially noticeable on diagonal lines or thin fonts. Enabling antialiasing tells the engine to blend neighboring pixels, producing a smoother visual result. + +Below is the core code that demonstrates **hoe antialiasing in te schakelen** using Aspose.HTML’s `ImageRenderingOptions`. We’ll break it down step‑by‑step so you can see exactly what each line does. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Waarom elk onderdeel belangrijk is + +1. **HTMLDocument** – werkt volledig in het geheugen, dus je hebt geen fysieke `.html`‑bestanden nodig. Perfect voor on‑the‑fly conversies. +2. **WebFontStyle** – toont dat je tekst kunt stylen vóór het renderen; de vet‑cursieve combinatie is slechts een demonstratie. +3. **ImageRenderingOptions.UseAntialiasing** – deze vlag is het antwoord op **hoe antialiasing in te schakelen**; zet deze op `true` en de rasterizer zal de randen verzachten. +4. **TextOptions.UseHinting** – hinting verbetert de duidelijkheid van glyphs, vooral bij kleine formaten. Het is een goede aanvulling op antialiasing. +5. **ImageSaveOptions** – bundelt zowel render‑ als tekstopties, en vertelt vervolgens Aspose om een PNG‑bestand uit te voeren. + +## HTML naar PNG renderen met Aspose + +Now that you know **hoe antialiasing in te schakelen**, let’s talk about the broader picture of **HTML renderen naar PNG**. Aspose.HTML abstracts away the heavy lifting: + +- **Automatische lay-out** – de engine parseert CSS, berekent box-modellen, en positioneert elementen net als een browser. +- **Resolutie‑controle** – je kunt DPI specificeren via `ImageRenderingOptions.Resolution`, wat handig is voor hoge‑resolutie afdrukken. +- **Achtergrondafhandeling** – stel `imageOpts.BackgroundColor` in als je een transparante of gekleurde canvas nodig hebt. + +Here’s a quick tweak that adds a custom DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Als je een pagina converteert die externe bronnen (afbeeldingen, lettertypen) bevat, zorg er dan voor dat je `htmlDoc.BaseUrl` instelt op de map die die assets bevat. Anders zal de renderer ze overslaan. + +## HTML naar afbeelding converteren – Geavanceerde opties + +The phrase **convert html to image** often implies more than just PNG. Aspose supports JPEG, BMP, TIFF, and even GIF. Switching formats is as simple as changing the `SaveFormat` enum: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +When you need vector‑friendly output, consider `SvgSaveOptions`. The same rendering pipeline applies, so you get consistent antialiasing across formats. + +### Randgeval: Zeer lange pagina's + +If your HTML is longer than a typical screen, Aspose will, by default, create a single tall image. That can blow up memory usage. To mitigate this, you can split the document into multiple pages: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML opslaan als PNG – De laatste stap + +At this point you’ve seen **hoe antialiasing in te schakelen**, you’ve learned to **HTML renderen naar PNG**, and you’ve explored **convert html to image** options. The final act—**HTML opslaan als PNG**—is already demonstrated in the original snippet, but let’s wrap it up in a reusable method: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +You can now call `SaveHtmlAsPng("…", @"C:\temp\output.png")` from anywhere in your project. The `antialias` parameter lets you toggle the smooth‑edge feature, giving you full control over **hoe antialiasing in te schakelen** at runtime. + +## Aspose HTML naar PNG – Volledig werkend voorbeeld + +Below is a self‑contained console application that puts everything together. Copy‑paste, adjust the `YOUR_DIRECTORY` placeholder, and run it with .NET 6 or later. + + + +## Wat je hierna zou moeten leren + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [Hoe Aspose te gebruiken om HTML naar PNG te renderen – Stapsgewijze gids](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [HTML naar PNG renderen met Aspose – Complete gids](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [HTML renderen als PNG in .NET met Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/english/net/html-extensions-and-conversions/_index.md b/html/english/net/html-extensions-and-conversions/_index.md index a50bc9ccba..3071483af7 100644 --- a/html/english/net/html-extensions-and-conversions/_index.md +++ b/html/english/net/html-extensions-and-conversions/_index.md @@ -18,7 +18,7 @@ Are you eager to enhance your web development skills and unlock the power of HTM ## What Is Aspose.HTML for .NET? -Before we dive into the tutorials, let's take a moment to understand what Aspose.HTML for .NET is. Aspose.HTML is a powerful library that empowers developers to work with HTML documents in a variety of ways, including conversion, extraction, and manipulation. Whether you are building a website, working on a web application, or dealing with data extraction, Aspose.HTML for .NET can be your go-to tool. +Before we dive into the tutorials, let's take a moment to understand what Aspose.HTML for .NET is. Aspose.HTML is a powerful library that empowers developers to work with HTML documents in a variety of ways, including conversion, extraction, and manipulation. Whether you are building a website, working on a web application, or dealing with data extraction, Aspose.HTML for .NET can be your go‑to tool. ## HTML Extensions Demystified @@ -30,55 +30,57 @@ Web development often involves converting HTML documents into different formats. ## Get Started with Aspose.HTML -Are you ready to get started? Aspose.HTML for .NET tutorials cater to both beginners and experienced developers. Whether you are new to HTML extensions and conversions or seeking advanced tips, our step-by-step guides are designed to suit your needs. +Are you ready to get started? Aspose.HTML for .NET tutorials cater to both beginners and experienced developers. Whether you are new to HTML extensions and conversions or seeking advanced tips, our step‑by‑step guides are designed to suit your needs. ## Why Aspose.HTML for .NET? -Aspose.HTML for .NET is not just a library; it's a game-changer in the world of web development. It offers an extensive range of features and tools that streamline your HTML-related tasks. By the end of these tutorials, you'll be equipped with the knowledge and skills to maximize the potential of Aspose.HTML for .NET. +Aspose.HTML for .NET is not just a library; it's a game‑changer in the world of web development. It offers an extensive range of features and tools that streamline your HTML‑related tasks. By the end of these tutorials, you'll be equipped with the knowledge and skills to maximize the potential of Aspose.HTML for .NET. ## HTML Extensions and Conversions Tutorials ### [Convert HTML to PDF in .NET with Aspose.HTML](./convert-html-to-pdf/) -Convert HTML to PDF effortlessly with Aspose.HTML for .NET. Follow our step-by-step guide and unleash the power of HTML-to-PDF conversion. +Convert HTML to PDF effortlessly with Aspose.HTML for .NET. Follow our step‑by‑step guide and unleash the power of HTML‑to‑PDF conversion. ### [Create PDF from HTML – C# Step‑by‑Step Guide](./create-pdf-from-html-c-step-by-step-guide/) Learn how to generate PDF files from HTML using Aspose.HTML for .NET with a detailed C# step‑by‑step guide. ### [Convert EPUB to Image in .NET with Aspose.HTML](./convert-epub-to-image/) -Learn how to convert EPUB to images using Aspose.HTML for .NET. Step-by-step tutorial with code examples and customizable options. +Learn how to convert EPUB to images using Aspose.HTML for .NET. Step‑by‑step tutorial with code examples and customizable options. ### [Convert EPUB to PDF in .NET with Aspose.HTML](./convert-epub-to-pdf/) -Learn how to convert EPUB to PDF using Aspose.HTML for .NET. This step-by-step guide covers customization options, FAQs, and more for seamless document conversion. +Learn how to convert EPUB to PDF using Aspose.HTML for .NET. This step‑by‑step guide covers customization options, FAQs, and more for seamless document conversion. ### [Convert EPUB to XPS in .NET with Aspose.HTML](./convert-epub-to-xps/) -Learn how to convert EPUB to XPS in .NET using Aspose.HTML for .NET. Follow our step-by-step guide for effortless conversions. +Learn how to convert EPUB to XPS in .NET using Aspose.HTML for .NET. Follow our step‑by‑step guide for effortless conversions. ### [Convert HTML to BMP in .NET with Aspose.HTML](./convert-html-to-bmp/) Learn how to convert HTML to BMP in .NET using Aspose.HTML for .NET. Comprehensive guide for web developers for Leveraging Aspose.HTML for .NET. ### [Convert HTML to DOC and DOCX in .NET with Aspose.HTML](./convert-html-to-doc-docx/) -Learn how to harness the power of Aspose.HTML for .NET in this step-by-step guide. Convert HTML to DOCX effortlessly and level up your .NET projects. Get started today! +Learn how to harness the power of Aspose.HTML for .NET in this step‑by‑step guide. Convert HTML to DOCX effortlessly and level up your .NET projects. Get started today! ### [Convert HTML to GIF in .NET with Aspose.HTML](./convert-html-to-gif/) -Discover the power of Aspose.HTML for .NET: A step-by-step guide to converting HTML to GIF. Prerequisites, code examples, FAQs, and more! Optimize your HTML manipulation with Aspose.HTML. +Discover the power of Aspose.HTML for .NET: A step‑by‑step guide to converting HTML to GIF. Prerequisites, code examples, FAQs, and more! Optimize your HTML manipulation with Aspose.HTML. ### [Convert HTML to JPEG in .NET with Aspose.HTML](./convert-html-to-jpeg/) -Learn how to convert HTML to JPEG in .NET with Aspose.HTML for .NET. A step-by-step guide to harnessing the power of Aspose.HTML for .NET. Optimize your web development tasks effortlessly. +Learn how to convert HTML to JPEG in .NET with Aspose.HTML for .NET. A step‑by‑step guide to harnessing the power of Aspose.HTML for .NET. Optimize your web development tasks effortlessly. ### [Convert HTML to Markdown in .NET with Aspose.HTML](./convert-html-to-markdown/) -Learn how to convert HTML to Markdown in .NET using Aspose.HTML for efficient content manipulation. Get step-by-step guidance for a seamless conversion process. +Learn how to convert HTML to Markdown in .NET using Aspose.HTML for efficient content manipulation. Get step‑by‑step guidance for a seamless conversion process. ### [Convert HTML to MHTML in .NET with Aspose.HTML](./convert-html-to-mhtml/) -Convert HTML to MHTML in .NET with Aspose.HTML - A step-by-step guide for efficient web content archiving. Learn how to use Aspose.HTML for .NET to create MHTML archives. +Convert HTML to MHTML in .NET with Aspose.HTML - A step‑by‑step guide for efficient web content archiving. Learn how to use Aspose.HTML for .NET to create MHTML archives. ### [Convert HTML to PNG in .NET with Aspose.HTML](./convert-html-to-png/) -Discover how to use Aspose.HTML for .NET to manipulate and convert HTML documents. Step-by-step guide for effective .NET development. +Discover how to use Aspose.HTML for .NET to manipulate and convert HTML documents. Step‑by‑step guide for effective .NET development. ### [Convert HTML to TIFF in .NET with Aspose.HTML](./convert-html-to-tiff/) -Learn how to convert HTML to TIFF with Aspose.HTML for .NET. Follow our step-by-step guide for efficient web content optimization. +Learn how to convert HTML to TIFF with Aspose.HTML for .NET. Follow our step‑by‑step guide for efficient web content optimization. ### [Convert HTML to XPS in .NET with Aspose.HTML](./convert-html-to-xps/) -Discover the power of Aspose.HTML for .NET: Convert HTML to XPS effortlessly. Prerequisites, step-by-step guide, and FAQs included. +Discover the power of Aspose.HTML for .NET: Convert HTML to XPS effortlessly. Prerequisites, step‑by‑step guide, and FAQs included. ### [How to Zip HTML in C# – Save HTML to Zip](./how-to-zip-html-in-c-save-html-to-zip/) -Learn how to zip HTML files in C# using Aspose.HTML, saving HTML content to a ZIP archive with step-by-step guidance. +Learn how to zip HTML files in C# using Aspose.HTML, saving HTML content to a ZIP archive with step‑by‑step guidance. ### [Create HTML Document with Styled Text and Export to PDF – Full Guide](./create-html-document-with-styled-text-and-export-to-pdf-full/) Learn how to create an HTML document with styled text and export it to PDF using Aspose.HTML for .NET in this comprehensive guide. ### [Save HTML as ZIP – Complete C# Tutorial](./save-html-as-zip-complete-c-tutorial/) Learn how to save HTML files as a ZIP archive using Aspose.HTML for .NET with a complete C# example. +### [How to Save HTML as ZIP – Complete Aspose.HTML Guide](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Learn how to save HTML as a ZIP archive using Aspose.HTML for .NET with a comprehensive step‑by‑step guide. ### [Convert EPUB to Image in .NET with Aspose.HTML](./convert-epub-to-image/) -Learn how to convert EPUB to images using Aspose.HTML for .NET. Step-by-step tutorial with code examples and customizable options. +Learn how to convert EPUB to images using Aspose.HTML for .NET. Step‑by‑step tutorial with code examples and customizable options. ### [Convert EPUB to PDF in .NET with Aspose.HTML](./convert-epub-to-pdf/) -Learn how to convert EPUB to PDF using Aspose.HTML for .NET. This step-by-step guide covers customization options, FAQs, and more for seamless document conversion. +Learn how to convert EPUB to PDF using Aspose.HTML for .NET. This step‑by‑step guide covers customization options, FAQs, and more for seamless document conversion. ### [Convert EPUB to XPS in .NET with Aspose.HTML](./convert-epub-to-xps/) -Learn how to convert EPUB to XPS in .NET using Aspose.HTML for .NET. Follow our step-by-step guide for effortless conversions. +Learn how to convert EPUB to XPS in .NET using Aspose.HTML for .NET. Follow our step‑by‑step guide for effortless conversions. ### [Save HTML to ZIP in C# – Complete In‑Memory Example](./save-html-to-zip-in-c-complete-in-memory-example/) -Learn how to save HTML content into a ZIP archive in memory using C# and Aspose.HTML for .NET in this step-by-step tutorial. +Learn how to save HTML content into a ZIP archive in memory using C# and Aspose.HTML for .NET in this step‑by‑step tutorial. ## Conclusion diff --git a/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..c0391e70c4 --- /dev/null +++ b/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes a + custom resource handler and step‑by‑step code to convert HTML to ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: en +lastmod: 2026-07-08 +og_description: How to save HTML as a ZIP archive with Aspose.HTML. Follow this guide + to use a custom resource handler, convert HTML to ZIP, and create ZIP HTML files. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: How to Save HTML as ZIP – Full Aspose.HTML Tutorial +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: How to Save HTML as ZIP – Complete Aspose.HTML Guide +url: /net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# How to Save HTML as ZIP – Complete Aspose.HTML Guide + +Ever wondered **how to save html** into a single, portable package? Maybe you need to ship a web page with all its assets, or you want to archive generated reports without scattering files around. Either way, the solution is simpler than you think when you use Aspose.HTML. + +In this tutorial we’ll walk through a real‑world example that **converts html to zip**, leverages a **custom resource handler**, and ultimately shows you exactly how to **create zip html** files you can unzip anywhere. By the end you’ll have a ready‑to‑run C# program that does the whole job in four tidy steps. + +## Prerequisites + +- .NET 6.0 or later (the code works with .NET Framework 4.7+ as well) +- A license for Aspose.HTML (the free trial works for testing) +- An IDE such as Visual Studio 2022 or VS Code with C# extensions +- Basic familiarity with C# async/await (not required but helpful) + +> **Pro tip:** If you’re new to Aspose.HTML, grab the NuGet package `Aspose.Html` and add it to your project before you start. + +## Step 1: Set Up Your Project + +First, create a new console app: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +That’s it—no extra dependencies. The `Aspose.Html` package already contains the classes we’ll need for **how to save html** as a ZIP archive. + +## Step 2: Implement a Custom Resource Handler + +When Aspose.HTML saves a document, it needs a place to store linked resources (images, CSS, fonts). By default it writes them to the file system, but we can intercept that process with a **custom resource handler**. This gives us full control over where each resource ends up—perfect for creating a clean ZIP file. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Why use a custom handler?** +- **Flexibility:** You can decide to compress, encrypt, or rename resources on the fly. +- **Performance:** Writing to memory avoids disk I/O when you only need a temporary archive. +- **Control:** You decide the exact folder structure inside the ZIP, which is handy when you **create zip html** for downstream systems. + +## Step 3: Build the HTML Document + +Now we’ll create a simple HTML string. In a real project you’d probably load this from a file, a database, or generate it dynamically. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +If you have external assets (images, CSS files), just make sure their URLs are reachable—Aspose will request them through the **custom resource handler** we defined earlier. + +## Step 4: Configure Save Options to **Convert HTML to ZIP** + +Aspose.HTML offers several `HTMLSaveOptions` subclasses. For a ZIP archive we use the base `HTMLSaveOptions` and set its `OutputStorage` to our `MyHandler`. This tells the library to **convert html to zip** using the streams we provide. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +You can also tweak `saveOptions`: + +- `saveOptions.Compressed = true;` – enables ZIP compression (on by default). +- `saveOptions.ExportResources = true;` – ensures linked resources are included. + +These tweaks are optional but often useful when you **create zip html** for distribution. + +## Step 5: Save the ZIP Archive – **How to Save HTML** Properly + +Finally, we call `Save`. The first argument is the path to the resulting ZIP file, the second is the `HTMLSaveOptions` we just configured. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +When you run the program (`dotnet run`), you’ll see a `output.zip` file next to your executable. Open it with any archive manager and you’ll find: + +- `index.html` – the original markup. +- Any resources (images, CSS) that were referenced, each stored as a separate entry. + +That’s the full **how to save html** workflow, from raw markup to a portable ZIP package. + +## Bonus: Handling Images and External Resources + +If your HTML contains ``, the `MyHandler` will receive a call with `info.Uri` pointing to `logo.png`. You can modify the handler to fetch the file from disk or a remote URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +This snippet shows how you can extend the **custom resource handler** to suit any storage strategy, making the ZIP output truly reflect your project's asset layout. + +## Common Pitfalls & How to Avoid Them + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` returns a closed stream or `null`. | Always return a fresh, writable `MemoryStream` or `FileStream`. | +| **Missing images** | Resources are blocked by CORS or unavailable locally. | Pre‑download assets or adjust `HandleResource` to supply them manually. | +| **Large ZIP size** | Resources are not compressed. | Set `saveOptions.Compressed = true;` (default) or compress streams yourself before returning. | +| **Incorrect file names** | Default handler names files with GUIDs. | Override `ResourceInfo.Name` inside `HandleResource` and rename the stream accordingly. | + +Addressing these issues ensures a smooth **convert html to zip** experience every time. + +## Full Working Example + +Below is the complete program you can copy‑paste into `Program.cs`. It compiles and runs out‑of‑the‑box. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Expected output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Open `output.zip` and you’ll see the `index.html` file plus any resources you added. + +## Wrap‑Up + +We’ve just demonstrated **how to save html** as a ZIP archive using Aspose.HTML, complete with a **custom resource handler** that gives you total control over the packaging process. You now know how to **convert html to zip**, and you can easily adapt the code to **create zip html** files for emails, offline documentation, or static site deployments. + +### What’s Next? + +- **Add CSS/JS files**: Extend `MyHandler` to pull stylesheets and scripts from your project folder. +- **Encrypt the ZIP**: Wrap the `MemoryStream` in a `CryptoStream` before returning it. +- **Batch processing**: Loop over a collection of HTML strings and generate a ZIP per page. + +Feel free to experiment, and drop a comment if you hit any snags. Happy coding! + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/og-image.png b/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/og-image.png new file mode 100644 index 0000000000..21c4b4325c Binary files /dev/null and b/html/english/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/og-image.png differ diff --git a/html/english/net/rendering-html-documents/_index.md b/html/english/net/rendering-html-documents/_index.md index e7f281cce5..b968d80855 100644 --- a/html/english/net/rendering-html-documents/_index.md +++ b/html/english/net/rendering-html-documents/_index.md @@ -50,6 +50,8 @@ Step by step guide to render HTML to PNG using Aspose.HTML for .NET. Learn the p Comprehensive guide to render HTML to PNG using Aspose.HTML for .NET. Includes code examples and best practices. ### [Create PNG from HTML – Full C# Rendering Guide](./create-png-from-html-full-c-rendering-guide/) Learn how to generate high-quality PNG images from HTML using Aspose.HTML for .NET with a complete C# rendering guide. +### [How to Enable Antialiasing Rendering HTML to PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Learn how to enable antialiasing when rendering HTML to PNG using Aspose.HTML for .NET for smoother image quality. ### [Render EPUB as XPS in .NET with Aspose.HTML](./render-epub-as-xps/) Learn how to create and render HTML documents with Aspose.HTML for .NET in this comprehensive tutorial. Dive into the world of HTML manipulation, web scraping, and more. ### [Rendering Timeout in .NET with Aspose.HTML](./rendering-timeout/) diff --git a/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..04d26d1656 --- /dev/null +++ b/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,248 @@ +--- +category: general +date: 2026-07-08 +description: Learn how to enable antialiasing when you render HTML to PNG using Aspose + HTML. This guide also covers convert html to image and save html as png. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: en +lastmod: 2026-07-08 +og_description: How to enable antialiasing when rendering HTML to PNG with Aspose + HTML. Follow this step‑by‑step tutorial to convert HTML to image and save HTML as + PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: How to Enable Antialiasing Rendering HTML to PNG – Aspose Guide +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: How to Enable Antialiasing Rendering HTML to PNG +url: /net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# How to Enable Antialiasing Rendering HTML to PNG + +Ever wondered **how to enable antialiasing** while turning a web page into a crisp PNG image? You’re not alone—many developers hit a snag when the output looks jagged or blurry. The good news is that with Aspose.HTML you can smooth those edges in just a few lines of code. In this tutorial we’ll walk through the exact steps to render HTML to PNG, convert HTML to image, and finally **save HTML as PNG** with antialiasing turned on. + +> **What you’ll get:** a complete, ready‑to‑run C# example, an explanation of every option, and tips for handling edge cases like custom fonts or large pages. + +## How to Enable Antialiasing When Rendering HTML to PNG + +The first thing you need to understand is **why antialiasing matters**. When the rendering engine draws shapes or text, it approximates curves with pixels. Without antialiasing, those approximations create stair‑step artifacts—especially noticeable on diagonal lines or thin fonts. Enabling antialiasing tells the engine to blend neighboring pixels, producing a smoother visual result. + +Below is the core code that demonstrates **how to enable antialiasing** using Aspose.HTML’s `ImageRenderingOptions`. We’ll break it down step‑by‑step so you can see exactly what each line does. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Why each piece matters + +1. **HTMLDocument** – works entirely in memory, so you don’t need any physical `.html` files. Perfect for on‑the‑fly conversions. +2. **WebFontStyle** – shows that you can style text before rendering; the bold‑italic combo is just a demo. +3. **ImageRenderingOptions.UseAntialiasing** – this flag is the answer to **how to enable antialiasing**; set it to `true` and the rasterizer will smooth edges. +4. **TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially at small sizes. It’s a nice companion to antialiasing. +5. **ImageSaveOptions** – bundles both rendering and text options, then tells Aspose to output a PNG file. + +## Render HTML to PNG with Aspose + +Now that you know **how to enable antialiasing**, let’s talk about the broader picture of **render html to png**. Aspose.HTML abstracts away the heavy lifting: + +- **Automatic layout** – the engine parses CSS, computes box models, and positions elements just like a browser. +- **Resolution control** – you can specify DPI via `ImageRenderingOptions.Resolution`, which is handy for high‑resolution prints. +- **Background handling** – set `imageOpts.BackgroundColor` if you need a transparent or colored canvas. + +Here’s a quick tweak that adds a custom DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** If you’re converting a page that contains external resources (images, fonts), make sure to set `htmlDoc.BaseUrl` to the folder containing those assets. Otherwise the renderer will skip them. + +## Convert HTML to Image – Advanced Options + +The phrase **convert html to image** often implies more than just PNG. Aspose supports JPEG, BMP, TIFF, and even GIF. Switching formats is as simple as changing the `SaveFormat` enum: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +When you need vector‑friendly output, consider `SvgSaveOptions`. The same rendering pipeline applies, so you get consistent antialiasing across formats. + +### Edge case: Very tall pages + +If your HTML is longer than a typical screen, Aspose will, by default, create a single tall image. That can blow up memory usage. To mitigate this, you can split the document into multiple pages: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Save HTML as PNG – The Final Step + +At this point you’ve seen **how to enable antialiasing**, you’ve learned to **render html to png**, and you’ve explored **convert html to image** options. The final act—**save html as png**—is already demonstrated in the original snippet, but let’s wrap it up in a reusable method: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +You can now call `SaveHtmlAsPng("…", @"C:\temp\output.png")` from anywhere in your project. The `antialias` parameter lets you toggle the smooth‑edge feature, giving you full control over **how to enable antialiasing** at runtime. + +## Aspose HTML to PNG – Full Working Example + +Below is a self‑contained console application that puts everything together. Copy‑paste, adjust the `YOUR_DIRECTORY` placeholder, and run it with .NET 6 or later. + +```csharp +using System; +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +class Program +{ + static void Main() + { + // HTML source – you could also read from a file or a web request + string html = @" + + + + + +

Antialiasing Demo

+

This image was rendered with antialiasing enabled.

+ + "; + + // Save path – make sure the folder exists + string outputPath = @"YOUR_DIRECTORY\antialias_demo.png"; + + // Call the helper method we defined earlier + Save + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/og-image.png b/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/og-image.png new file mode 100644 index 0000000000..a89de0913c Binary files /dev/null and b/html/english/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/og-image.png differ diff --git a/html/french/net/html-extensions-and-conversions/_index.md b/html/french/net/html-extensions-and-conversions/_index.md index f4e02735c9..e2f5d0c78d 100644 --- a/html/french/net/html-extensions-and-conversions/_index.md +++ b/html/french/net/html-extensions-and-conversions/_index.md @@ -74,6 +74,8 @@ Apprenez à compresser du HTML en un fichier zip avec C# grâce à notre guide d Apprenez à enregistrer un document HTML dans un fichier ZIP en C# avec Aspose.HTML pour .NET. Guide complet étape par étape. ### [Enregistrer HTML en ZIP en C# – Exemple complet en mémoire](./save-html-to-zip-in-c-complete-in-memory-example/) Enregistrez du HTML dans un fichier ZIP en mémoire avec Aspose.HTML pour .NET. +### [Comment enregistrer du HTML en ZIP – Guide complet Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Apprenez à enregistrer du HTML dans un fichier ZIP avec Aspose.HTML pour .NET. Guide complet étape par étape. ## Conclusion diff --git a/html/french/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/french/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..f3f87b2f5b --- /dev/null +++ b/html/french/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,298 @@ +--- +category: general +date: 2026-07-08 +description: Apprenez à enregistrer du HTML en tant qu’archive ZIP en utilisant Aspose.HTML. + Inclut un gestionnaire de ressources personnalisé et du code étape par étape pour + convertir le HTML en ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: fr +lastmod: 2026-07-08 +og_description: Comment enregistrer du HTML en tant qu’archive ZIP avec Aspose.HTML. + Suivez ce guide pour utiliser un gestionnaire de ressources personnalisé, convertir + le HTML en ZIP et créer des fichiers HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Comment enregistrer du HTML en ZIP – Tutoriel complet Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Comment enregistrer du HTML au format ZIP – Guide complet d’Aspose.HTML +url: /fr/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Comment enregistrer du HTML en ZIP – Guide complet Aspose.HTML + +Vous êtes-vous déjà demandé **comment enregistrer du html** dans un seul paquet portable ? Peut‑être devez‑vous livrer une page web avec tous ses actifs, ou vous voulez archiver des rapports générés sans disperser les fichiers. Dans les deux cas, la solution est plus simple que vous ne le pensez lorsque vous utilisez Aspose.HTML. + +Dans ce tutoriel, nous allons parcourir un exemple réel qui **convertit le html en zip**, utilise un **gestionnaire de ressources personnalisé**, et vous montre exactement comment **créer des fichiers zip html** que vous pouvez décompresser n’importe où. À la fin, vous disposerez d’un programme C# prêt à l’emploi qui effectue toute l’opération en quatre étapes bien ordonnées. + +## Prérequis + +- .NET 6.0 ou version ultérieure (le code fonctionne également avec .NET Framework 4.7+) +- Une licence pour Aspose.HTML (l’essai gratuit suffit pour les tests) +- Un IDE tel que Visual Studio 2022 ou VS Code avec les extensions C# +- Une connaissance de base de C# async/await (pas obligatoire mais utile) + +> **Astuce :** Si vous débutez avec Aspose.HTML, récupérez le package NuGet `Aspose.Html` et ajoutez‑le à votre projet avant de commencer. + +## Étape 1 : Configurer votre projet + +Tout d’abord, créez une nouvelle application console : + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +C’est tout — aucune dépendance supplémentaire. Le package `Aspose.Html` contient déjà les classes dont nous aurons besoin pour **comment enregistrer du html** en tant qu’archive ZIP. + +## Étape 2 : Implémenter un gestionnaire de ressources personnalisé + +Lorsque Aspose.HTML enregistre un document, il a besoin d’un endroit où stocker les ressources liées (images, CSS, polices). Par défaut, il les écrit sur le système de fichiers, mais nous pouvons intercepter ce processus avec un **gestionnaire de ressources personnalisé**. Cela nous donne un contrôle total sur l’emplacement de chaque ressource — parfait pour créer un fichier ZIP propre. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Pourquoi utiliser un gestionnaire personnalisé ?** +- **Flexibilité :** Vous pouvez décider de compresser, chiffrer ou renommer les ressources à la volée. +- **Performance :** Écrire en mémoire évite les I/O disque lorsque vous n’avez besoin que d’une archive temporaire. +- **Contrôle :** Vous décidez de la structure exacte des dossiers à l’intérieur du ZIP, ce qui est pratique lorsque vous **créez zip html** pour des systèmes en aval. + +## Étape 3 : Construire le document HTML + +Nous allons maintenant créer une simple chaîne HTML. Dans un vrai projet, vous chargeriez probablement cela depuis un fichier, une base de données ou le généreriez dynamiquement. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Si vous avez des actifs externes (images, fichiers CSS), assurez‑vous simplement que leurs URL sont accessibles — Aspose les demandera via le **gestionnaire de ressources personnalisé** que nous avons défini précédemment. + +## Étape 4 : Configurer les options d’enregistrement pour **Convertir HTML en ZIP** + +Aspose.HTML propose plusieurs sous‑classes de `HTMLSaveOptions`. Pour une archive ZIP, nous utilisons la classe de base `HTMLSaveOptions` et définissons son `OutputStorage` sur notre `MyHandler`. Cela indique à la bibliothèque de **convertir le html en zip** en utilisant les flux que nous fournissons. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Vous pouvez également ajuster `saveOptions` : + +- `saveOptions.Compressed = true;` – active la compression ZIP (activée par défaut). +- `saveOptions.ExportResources = true;` – garantit que les ressources liées sont incluses. + +Ces ajustements sont optionnels mais souvent utiles lorsque vous **créez zip html** pour la distribution. + +## Étape 5 : Enregistrer l’archive ZIP – **Comment enregistrer du HTML** correctement + +Enfin, nous appelons `Save`. Le premier argument est le chemin du fichier ZIP résultant, le second est le `HTMLSaveOptions` que nous venons de configurer. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Lorsque vous exécutez le programme (`dotnet run`), vous verrez un fichier `output.zip` à côté de votre exécutable. Ouvrez‑le avec n’importe quel gestionnaire d’archives et vous trouverez : + +- `index.html` – le balisage original. +- Toutes les ressources (images, CSS) qui ont été référencées, chacune stockée comme une entrée séparée. + +Voici le flux complet **comment enregistrer du html**, du balisage brut à un paquet ZIP portable. + +## Bonus : Gestion des images et des ressources externes + +Si votre HTML contient ``, le `MyHandler` recevra un appel avec `info.Uri` pointant vers `logo.png`. Vous pouvez modifier le gestionnaire pour récupérer le fichier depuis le disque ou une URL distante : + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Cet extrait montre comment étendre le **gestionnaire de ressources personnalisé** afin de s’adapter à n’importe quelle stratégie de stockage, rendant la sortie ZIP réellement conforme à la disposition des actifs de votre projet. + +## Pièges courants & Comment les éviter + +| Problème | Pourquoi cela se produit | Solution | +|----------|--------------------------|----------| +| **ZIP vide** | `OutputStorage` renvoie un flux fermé ou `null`. | Retournez toujours un nouveau `MemoryStream` ou `FileStream` en écriture. | +| **Images manquantes** | Les ressources sont bloquées par CORS ou indisponibles localement. | Pré‑téléchargez les actifs ou ajustez `HandleResource` pour les fournir manuellement. | +| **Taille de ZIP importante** | Les ressources ne sont pas compressées. | Définissez `saveOptions.Compressed = true;` (par défaut) ou compressez vous‑même les flux avant de les renvoyer. | +| **Noms de fichiers incorrects** | Le gestionnaire par défaut nomme les fichiers avec des GUID. | Surchargez `ResourceInfo.Name` dans `HandleResource` et renommez le flux en conséquence. | + +En traitant ces points, vous assurez une expérience fluide de **convertir html en zip** à chaque fois. + +## Exemple complet fonctionnel + +Voici le programme complet que vous pouvez copier‑coller dans `Program.cs`. Il compile et s’exécute immédiatement. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Sortie attendue :** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Ouvrez `output.zip` et vous verrez le fichier `index.html` ainsi que toutes les ressources que vous avez ajoutées. + +## Conclusion + +Nous venons de démontrer **comment enregistrer du html** en archive ZIP avec Aspose.HTML, en utilisant un **gestionnaire de ressources personnalisé** qui vous donne un contrôle total sur le processus d’empaquetage. Vous savez maintenant comment **convertir html en zip**, et vous pouvez facilement adapter le code pour **créer zip html** destinés aux e‑mails, à la documentation hors‑ligne ou aux déploiements de sites statiques. + +### Et après ? + +- **Ajouter des fichiers CSS/JS** : Étendez `MyHandler` pour récupérer les feuilles de style et les scripts depuis votre répertoire de projet. +- **Chiffrer le ZIP** : Enveloppez le `MemoryStream` dans un `CryptoStream` avant de le retourner. +- **Traitement par lots** : Parcourez une collection de chaînes HTML et générez un ZIP par page. + +N’hésitez pas à expérimenter, et laissez un commentaire si vous rencontrez des difficultés. Bon codage ! + + +## Que devez‑vous apprendre ensuite ? + + +Les tutoriels suivants couvrent des sujets étroitement liés qui s’appuient sur les techniques démontrées dans ce guide. Chaque ressource inclut des exemples de code complets avec des explications pas à pas pour vous aider à maîtriser d’autres fonctionnalités de l’API et explorer des approches d’implémentation alternatives dans vos propres projets. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/french/net/rendering-html-documents/_index.md b/html/french/net/rendering-html-documents/_index.md index b8ecffbeb1..3c8121af8a 100644 --- a/html/french/net/rendering-html-documents/_index.md +++ b/html/french/net/rendering-html-documents/_index.md @@ -48,6 +48,9 @@ Apprenez à convertir du HTML en images PNG avec Aspose.HTML pour .NET grâce à ### [Créer un PNG à partir de HTML – Guide complet de rendu C#](./create-png-from-html-full-c-rendering-guide/) Apprenez à générer des images PNG à partir de HTML en utilisant Aspose.HTML pour .NET avec un guide complet en C#. +### [Comment activer l'anticrénelage lors du rendu HTML en PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Apprenez à activer l'anticrénelage pour améliorer la qualité du rendu HTML en PNG avec Aspose.HTML pour .NET. + ### [Rendre EPUB en XPS dans .NET avec Aspose.HTML](./render-epub-as-xps/) Découvrez comment créer et restituer des documents HTML avec Aspose.HTML pour .NET dans ce didacticiel complet. Plongez dans le monde de la manipulation HTML, du scraping Web et bien plus encore. diff --git a/html/french/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/french/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..25b3003338 --- /dev/null +++ b/html/french/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Apprenez comment activer l'anticrénelage lors du rendu de HTML en PNG + avec Aspose HTML. Ce guide couvre également la conversion du HTML en image et l’enregistrement + du HTML au format PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: fr +lastmod: 2026-07-08 +og_description: Comment activer l'anticrénelage lors du rendu HTML en PNG avec Aspose + HTML. Suivez ce tutoriel étape par étape pour convertir le HTML en image et enregistrer + le HTML au format PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Comment activer l'anticrénelage du rendu HTML en PNG – Guide Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Comment activer l'anticrénelage lors du rendu HTML en PNG +url: /fr/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Comment activer l'anticrénelage lors du rendu HTML en PNG + +Vous êtes-vous déjà demandé **comment activer l'anticrénelage** en transformant une page web en une image PNG nette ? Vous n'êtes pas seul — de nombreux développeurs rencontrent des problèmes lorsque le rendu apparaît en dents de scie ou flou. La bonne nouvelle, c’est qu’avec Aspose.HTML vous pouvez lisser ces bords en quelques lignes de code seulement. Dans ce tutoriel, nous parcourrons les étapes exactes pour rendre du HTML en PNG, convertir du HTML en image, et enfin **enregistrer le HTML en PNG** avec l’anticrénelage activé. + +> **Ce que vous obtiendrez :** un exemple complet, prêt à l’exécution en C#, une explication de chaque option, et des astuces pour gérer les cas particuliers comme les polices personnalisées ou les pages volumineuses. + +## Comment activer l'anticrénelage lors du rendu HTML en PNG + +La première chose à comprendre est **pourquoi l'anticrénelage est important**. Lorsque le moteur de rendu dessine des formes ou du texte, il approxime les courbes avec des pixels. Sans anticrénelage, ces approximations créent des artefacts en escalier — particulièrement visibles sur les lignes diagonales ou les polices fines. Activer l'anticrénelage indique au moteur de mélanger les pixels voisins, produisant ainsi un résultat visuel plus lisse. + +Ci‑dessous se trouve le code principal qui montre **comment activer l'anticrénelage** à l’aide de `ImageRenderingOptions` d’Aspose.HTML. Nous le décortiquerons étape par étape afin que vous voyiez exactement ce que chaque ligne fait. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Pourquoi chaque élément est important + +1. **HTMLDocument** – fonctionne entièrement en mémoire, vous n’avez donc pas besoin de fichiers `.html` physiques. Idéal pour les conversions à la volée. +2. **WebFontStyle** – montre que vous pouvez styliser le texte avant le rendu ; la combinaison gras‑italique n’est qu’une démonstration. +3. **ImageRenderingOptions.UseAntialiasing** – ce drapeau répond à **comment activer l'anticrénelage** ; réglez‑le sur `true` et le rasteriseur lissera les bords. +4. **TextOptions.UseHinting** – le hinting améliore la clarté des glyphes, surtout à petite taille. C’est un bon complément à l’anticrénelage. +5. **ImageSaveOptions** – regroupe les options de rendu et de texte, puis indique à Aspose de générer un fichier PNG. + +## Rendre du HTML en PNG avec Aspose + +Maintenant que vous savez **comment activer l'anticrénelage**, parlons de la vision d’ensemble du **rendu HTML en PNG**. Aspose.HTML se charge du travail lourd : + +- **Mise en page automatique** – le moteur analyse le CSS, calcule les modèles de boîtes et positionne les éléments comme le ferait un navigateur. +- **Contrôle de la résolution** – vous pouvez spécifier le DPI via `ImageRenderingOptions.Resolution`, ce qui est pratique pour les impressions haute résolution. +- **Gestion de l’arrière‑plan** – définissez `imageOpts.BackgroundColor` si vous avez besoin d’un canevas transparent ou coloré. + +Voici un petit ajustement qui ajoute un DPI personnalisé : + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Astuce pro :** si vous convertissez une page contenant des ressources externes (images, polices), assurez‑vous de définir `htmlDoc.BaseUrl` sur le dossier contenant ces actifs. Sinon le moteur de rendu les ignorera. + +## Convertir du HTML en image – Options avancées + +L’expression **convertir HTML en image** implique souvent plus que le simple PNG. Aspose prend en charge JPEG, BMP, TIFF et même GIF. Changer de format est aussi simple que de modifier l’énumération `SaveFormat` : + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Lorsque vous avez besoin d’une sortie adaptée aux vecteurs, pensez à `SvgSaveOptions`. Le même pipeline de rendu s’applique, vous obtenez donc un anticrénelage cohérent quel que soit le format. + +### Cas particulier : pages très longues + +Si votre HTML dépasse la hauteur d’un écran typique, Aspose créera, par défaut, une image unique très haute. Cela peut exploser la consommation mémoire. Pour atténuer ce problème, vous pouvez diviser le document en plusieurs pages : + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Enregistrer le HTML en PNG – L’étape finale + +À ce stade, vous avez vu **comment activer l'anticrénelage**, vous avez appris à **rendre du HTML en PNG**, et vous avez exploré les options de **conversion du HTML en image**. L’acte final—**enregistrer le HTML en PNG**—est déjà illustré dans l’extrait original, mais encapsulons‑le dans une méthode réutilisable : + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Vous pouvez maintenant appeler `SaveHtmlAsPng("…", @"C:\temp\output.png")` depuis n’importe où dans votre projet. Le paramètre `antialias` vous permet de basculer la fonction de lissage des bords, vous donnant un contrôle complet sur **comment activer l'anticrénelage** à l’exécution. + +## Aspose HTML en PNG – Exemple complet fonctionnel + +Voici une application console autonome qui réunit tous les éléments. Copiez‑collez, ajustez le placeholder `YOUR_DIRECTORY`, puis exécutez avec .NET 6 ou une version ultérieure. + + + +## Que devriez‑vous apprendre ensuite ? + +Les tutoriels suivants couvrent des sujets étroitement liés qui s’appuient sur les techniques présentées dans ce guide. Chaque ressource inclut des exemples de code complets avec des explications pas à pas pour vous aider à maîtriser d’autres fonctionnalités de l’API et explorer des approches d’implémentation alternatives dans vos propres projets. + +- [Comment utiliser Aspose pour rendre HTML en PNG – Guide étape par étape](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Comment rendre HTML en PNG avec Aspose – Guide complet](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Rendre HTML en PNG dans .NET avec Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/german/net/html-extensions-and-conversions/_index.md b/html/german/net/html-extensions-and-conversions/_index.md index 607896d28b..512c9957a9 100644 --- a/html/german/net/html-extensions-and-conversions/_index.md +++ b/html/german/net/html-extensions-and-conversions/_index.md @@ -38,31 +38,31 @@ Aspose.HTML für .NET ist nicht nur eine Bibliothek; es verändert die Welt der ## Tutorials zu HTML-Erweiterungen und -Konvertierungen ### [Konvertieren Sie HTML in .NET in PDF mit Aspose.HTML](./convert-html-to-pdf/) -Konvertieren Sie HTML mühelos in PDF mit Aspose.HTML für .NET. Folgen Sie unserer Schritt-für-Schritt-Anleitung und entfesseln Sie die Leistungsfähigkeit der HTML-zu-PDF-Konvertierung. +Konvertieren Sie HTML mühelos in PDF mit Aspose.HTML für .NET. Folgen Sie unserer Schritt‑für‑Schritt‑Anleitung und entfesseln Sie die Leistungsfähigkeit der HTML-zu-PDF-Konvertierung. ### [Konvertieren Sie EPUB in .NET mit Aspose.HTML in ein Bild](./convert-epub-to-image/) -Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in Bilder konvertieren. Schritt-für-Schritt-Anleitung mit Codebeispielen und anpassbaren Optionen. +Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in Bilder konvertieren. Schritt‑für‑Schritt‑Anleitung mit Codebeispielen und anpassbaren Optionen. ### [Konvertieren Sie EPUB in .NET mit Aspose.HTML in PDF](./convert-epub-to-pdf/) -Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in PDF konvertieren. Diese Schritt-für-Schritt-Anleitung umfasst Anpassungsoptionen, FAQs und mehr für eine nahtlose Dokumentkonvertierung. +Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in PDF konvertieren. Diese Schritt‑für‑Schritt‑Anleitung umfasst Anpassungsoptionen, FAQs und mehr für eine nahtlose Dokumentkonvertierung. ### [Konvertieren Sie EPUB in XPS in .NET mit Aspose.HTML](./convert-epub-to-xps/) -Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in XPS in .NET konvertieren. Folgen Sie unserer Schritt-für-Schritt-Anleitung für mühelose Konvertierungen. +Erfahren Sie, wie Sie mit Aspose.HTML für .NET EPUB in XPS in .NET konvertieren. Folgen Sie unserer Schritt‑für‑Schritt‑Anleitung für mühelose Konvertierungen. ### [Konvertieren Sie HTML in BMP in .NET mit Aspose.HTML](./convert-html-to-bmp/) Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in BMP in .NET konvertieren. Umfassender Leitfaden für Webentwickler zur Nutzung von Aspose.HTML für .NET. ### [Konvertieren Sie HTML in .NET in DOC und DOCX mit Aspose.HTML](./convert-html-to-doc-docx/) -Erfahren Sie in dieser Schritt-für-Schritt-Anleitung, wie Sie die Leistung von Aspose.HTML für .NET nutzen. Konvertieren Sie HTML mühelos in DOCX und verbessern Sie Ihre .NET-Projekte. Legen Sie noch heute los! +Erfahren Sie in dieser Schritt‑für‑Schritt‑Anleitung, wie Sie die Leistung von Aspose.HTML für .NET nutzen. Konvertieren Sie HTML mühelos in DOCX und verbessern Sie Ihre .NET-Projekte. Legen Sie noch heute los! ### [Konvertieren Sie HTML in GIF in .NET mit Aspose.HTML](./convert-html-to-gif/) -Entdecken Sie die Leistungsfähigkeit von Aspose.HTML für .NET: Eine Schritt-für-Schritt-Anleitung zur Konvertierung von HTML in GIF. Voraussetzungen, Codebeispiele, FAQs und mehr! Optimieren Sie Ihre HTML-Manipulation mit Aspose.HTML. +Entdecken Sie die Leistungsfähigkeit von Aspose.HTML für .NET: Eine Schritt‑für‑Schritt‑Anleitung zur Konvertierung von HTML in GIF. Voraussetzungen, Codebeispiele, FAQs und mehr! Optimieren Sie Ihre HTML-Manipulation mit Aspose.HTML. ### [Konvertieren Sie HTML in JPEG in .NET mit Aspose.HTML](./convert-html-to-jpeg/) -Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in JPEG in .NET konvertieren. Eine Schritt-für-Schritt-Anleitung zur Nutzung der Leistungsfähigkeit von Aspose.HTML für .NET. Optimieren Sie Ihre Webentwicklungsaufgaben mühelos. +Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in JPEG in .NET konvertieren. Eine Schritt‑für‑Schritt‑Anleitung zur Nutzung der Leistungsfähigkeit von Aspose.HTML für .NET. Optimieren Sie Ihre Webentwicklungsaufgaben mühelos. ### [Konvertieren Sie HTML in .NET in Markdown mit Aspose.HTML](./convert-html-to-markdown/) -Erfahren Sie, wie Sie HTML in .NET mit Aspose.HTML in Markdown konvertieren, um Inhalte effizient zu bearbeiten. Erhalten Sie eine Schritt-für-Schritt-Anleitung für einen nahtlosen Konvertierungsprozess. +Erfahren Sie, wie Sie HTML in .NET mit Aspose.HTML in Markdown konvertieren, um Inhalte effizient zu bearbeiten. Erhalten Sie eine Schritt‑für‑Schritt‑Anleitung für einen nahtlosen Konvertierungsprozess. ### [Konvertieren Sie HTML in MHTML in .NET mit Aspose.HTML](./convert-html-to-mhtml/) -Konvertieren Sie HTML in .NET in MHTML mit Aspose.HTML – Eine Schritt-für-Schritt-Anleitung zum effizienten Archivieren von Webinhalten. Erfahren Sie, wie Sie mit Aspose.HTML für .NET MHTML-Archive erstellen. +Konvertieren Sie HTML in .NET in MHTML mit Aspose.HTML – Eine Schritt‑für‑Schritt‑Anleitung zum effizienten Archivieren von Webinhalten. Erfahren Sie, wie Sie mit Aspose.HTML für .NET MHTML-Archive erstellen. ### [Konvertieren Sie HTML in PNG in .NET mit Aspose.HTML](./convert-html-to-png/) -Entdecken Sie, wie Sie mit Aspose.HTML für .NET HTML-Dokumente bearbeiten und konvertieren. Schritt-für-Schritt-Anleitung für effektive .NET-Entwicklung. +Entdecken Sie, wie Sie mit Aspose.HTML für .NET HTML-Dokumente bearbeiten und konvertieren. Schritt‑für‑Schritt‑Anleitung für effektive .NET-Entwicklung. ### [Konvertieren Sie HTML in TIFF in .NET mit Aspose.HTML](./convert-html-to-tiff/) -Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in TIFF konvertieren. Folgen Sie unserer Schritt-für-Schritt-Anleitung zur effizienten Optimierung von Webinhalten. +Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in TIFF konvertieren. Folgen Sie unserer Schritt‑für‑Schritt‑Anleitung zur effizienten Optimierung von Webinhalten. ### [Konvertieren Sie HTML in XPS in .NET mit Aspose.HTML](./convert-html-to-xps/) -Entdecken Sie die Leistungsfähigkeit von Aspose.HTML für .NET: Konvertieren Sie HTML mühelos in XPS. Voraussetzungen, Schritt-für-Schritt-Anleitung und FAQs inklusive. +Entdecken Sie die Leistungsfähigkeit von Aspose.HTML für .NET: Konvertieren Sie HTML mühelos in XPS. Voraussetzungen, Schritt‑für‑Schritt‑Anleitung und FAQs inklusive. ### [HTML in C# zippen – HTML in Zip speichern](./how-to-zip-html-in-c-save-html-to-zip/) Erfahren Sie, wie Sie HTML-Inhalte mit Aspose.HTML für .NET in eine ZIP-Datei komprimieren und speichern. ### [HTML-Dokument mit formatiertem Text erstellen und in PDF exportieren – Vollständige Anleitung](./create-html-document-with-styled-text-and-export-to-pdf-full/) @@ -72,7 +72,9 @@ Erstellen Sie PDF aus HTML mit C# – eine detaillierte Schritt‑für‑Schritt ### [HTML als ZIP speichern – Komplettes C#‑Tutorial](./save-html-as-zip-complete-c-tutorial/) Erfahren Sie, wie Sie HTML‑Inhalte mit Aspose.HTML für .NET in ein ZIP‑Archiv speichern – vollständige Schritt‑für‑Schritt‑Anleitung in C#. ### [HTML in ZIP speichern in C# – Komplettes In‑Memory‑Beispiel](./save-html-to-zip-in-c-complete-in-memory-example/) -Speichern Sie HTML-Inhalte in ein ZIP-Archiv komplett im Speicher mit Aspose.HTML für .NET. Schritt‑für‑Schritt‑Anleitung. +Speichern Sie HTML‑Inhalte in ein ZIP‑Archiv komplett im Speicher mit Aspose.HTML für .NET. Schritt‑für‑Schritt‑Anleitung. +### [HTML als ZIP speichern – Vollständige Aspose.HTML‑Anleitung](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Erfahren Sie, wie Sie HTML‑Inhalte mit Aspose.HTML in ein ZIP‑Archiv komprimieren und speichern – vollständige Schritt‑für‑Schritt‑Anleitung. ## Abschluss diff --git a/html/german/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/german/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..b3687661db --- /dev/null +++ b/html/german/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Erfahren Sie, wie Sie HTML mit Aspose.HTML als ZIP‑Archiv speichern. + Enthält einen benutzerdefinierten Ressourcen‑Handler und Schritt‑für‑Schritt‑Code + zum Konvertieren von HTML in ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: de +lastmod: 2026-07-08 +og_description: Wie man HTML mit Aspose.HTML als ZIP‑Archiv speichert. Folgen Sie + dieser Anleitung, um einen benutzerdefinierten Ressourcen‑Handler zu verwenden, + HTML in ZIP zu konvertieren und ZIP‑HTML‑Dateien zu erstellen. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Wie man HTML als ZIP speichert – Vollständiges Aspose.HTML‑Tutorial +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Wie man HTML als ZIP speichert – Vollständiger Aspose.HTML‑Leitfaden +url: /de/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML als ZIP speichern – Vollständiger Aspose.HTML Leitfaden + +Haben Sie sich schon einmal gefragt, **wie man HTML** in ein einziges, portables Paket speichert? Vielleicht müssen Sie eine Webseite mit allen zugehörigen Assets ausliefern, oder Sie möchten generierte Berichte archivieren, ohne Dateien zu verstreuen. So oder so ist die Lösung einfacher, als Sie denken, wenn Sie Aspose.HTML verwenden. + +In diesem Tutorial gehen wir ein praxisnahes Beispiel durch, das **HTML zu ZIP konvertiert**, einen **benutzerdefinierten Ressourcen‑Handler** nutzt und Ihnen schließlich genau zeigt, wie Sie **ZIP‑HTML**‑Dateien erstellen, die Sie überall entpacken können. Am Ende haben Sie ein sofort ausführbares C#‑Programm, das die gesamte Arbeit in vier übersichtlichen Schritten erledigt. + +## Voraussetzungen + +- .NET 6.0 oder höher (der Code funktioniert auch mit .NET Framework 4.7+) +- Eine Lizenz für Aspose.HTML (die kostenlose Testversion reicht für Tests) +- Eine IDE wie Visual Studio 2022 oder VS Code mit C#‑Erweiterungen +- Grundlegende Kenntnisse von C# async/await (nicht zwingend, aber hilfreich) + +> **Pro‑Tipp:** Wenn Sie neu bei Aspose.HTML sind, holen Sie sich das NuGet‑Paket `Aspose.Html` und fügen Sie es Ihrem Projekt hinzu, bevor Sie starten. + +## Schritt 1: Projekt einrichten + +Erstellen Sie zunächst eine neue Konsolen‑App: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Das war’s – keine zusätzlichen Abhängigkeiten. Das `Aspose.Html`‑Paket enthält bereits die Klassen, die wir für **wie man HTML speichert** als ZIP‑Archiv benötigen. + +## Schritt 2: Benutzerdefinierten Ressourcen‑Handler implementieren + +Wenn Aspose.HTML ein Dokument speichert, benötigt es einen Ort, an dem verknüpfte Ressourcen (Bilder, CSS, Schriftarten) abgelegt werden. Standardmäßig schreibt es diese auf das Dateisystem, aber wir können diesen Vorgang mit einem **benutzerdefinierten Ressourcen‑Handler** abfangen. Das gibt uns die volle Kontrolle darüber, wo jede Ressource endet – perfekt, um eine saubere ZIP‑Datei zu erstellen. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Warum einen benutzerdefinierten Handler verwenden?** +- **Flexibilität:** Sie können Ressourcen on‑the‑fly komprimieren, verschlüsseln oder umbenennen. +- **Performance:** Schreiben in den Speicher vermeidet Festplatten‑I/O, wenn Sie nur ein temporäres Archiv benötigen. +- **Kontrolle:** Sie bestimmen die genaue Ordnerstruktur innerhalb der ZIP, was praktisch ist, wenn Sie **ZIP‑HTML** für nachgelagerte Systeme **erstellen**. + +## Schritt 3: HTML‑Dokument erstellen + +Jetzt erzeugen wir einen einfachen HTML‑String. In einem echten Projekt würden Sie diesen wahrscheinlich aus einer Datei, einer Datenbank oder dynamisch generieren. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Falls Sie externe Assets (Bilder, CSS‑Dateien) haben, stellen Sie sicher, dass deren URLs erreichbar sind – Aspose ruft sie über den **benutzerdefinierten Ressourcen‑Handler** ab, den wir zuvor definiert haben. + +## Schritt 4: Speicheroptionen konfigurieren, um **HTML zu ZIP zu konvertieren** + +Aspose.HTML bietet mehrere Unterklassen von `HTMLSaveOptions`. Für ein ZIP‑Archiv verwenden wir die Basisklasse `HTMLSaveOptions` und setzen deren `OutputStorage` auf unseren `MyHandler`. Das teilt der Bibliothek mit, **HTML zu ZIP zu konvertieren** über die von uns bereitgestellten Streams. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Sie können `saveOptions` außerdem anpassen: + +- `saveOptions.Compressed = true;` – aktiviert ZIP‑Kompression (standardmäßig aktiv). +- `saveOptions.ExportResources = true;` – sorgt dafür, dass verknüpfte Ressourcen eingeschlossen werden. + +Diese Anpassungen sind optional, aber oft nützlich, wenn Sie **ZIP‑HTML** für die Verteilung **erstellen**. + +## Schritt 5: ZIP‑Archiv speichern – **HTML korrekt speichern** + +Zum Schluss rufen wir `Save` auf. Das erste Argument ist der Pfad zur resultierenden ZIP‑Datei, das zweite die gerade konfigurierten `HTMLSaveOptions`. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Wenn Sie das Programm (`dotnet run`) ausführen, erscheint eine `output.zip`‑Datei neben Ihrer ausführbaren Datei. Öffnen Sie sie mit einem beliebigen Archiv‑Manager und Sie finden: + +- `index.html` – das ursprüngliche Markup. +- Alle Ressourcen (Bilder, CSS), die referenziert wurden, jeweils als separater Eintrag. + +Damit ist der komplette **wie man HTML speichert**‑Workflow von rohem Markup zu einem portablen ZIP‑Paket abgeschlossen. + +## Bonus: Bilder und externe Ressourcen verarbeiten + +Enthält Ihr HTML ``, erhält `MyHandler` einen Aufruf mit `info.Uri`, das auf `logo.png` zeigt. Sie können den Handler anpassen, um die Datei von der Festplatte oder einer Remote‑URL zu holen: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Dieses Snippet zeigt, wie Sie den **benutzerdefinierten Ressourcen‑Handler** erweitern können, um jede Speicherstrategie zu unterstützen und das ZIP‑Ergebnis exakt an das Asset‑Layout Ihres Projekts anzupassen. + +## Häufige Stolperfallen & wie man sie vermeidet + +| Problem | Warum es passiert | Lösung | +|---------|-------------------|--------| +| **Leere ZIP** | `OutputStorage` liefert einen geschlossenen Stream oder `null`. | Immer einen frischen, beschreibbaren `MemoryStream` oder `FileStream` zurückgeben. | +| **Bilder fehlen** | Ressourcen werden durch CORS blockiert oder sind lokal nicht verfügbar. | Assets vorher herunterladen oder `HandleResource` so anpassen, dass sie manuell bereitgestellt werden. | +| **Große ZIP‑Größe** | Ressourcen werden nicht komprimiert. | `saveOptions.Compressed = true;` setzen (Standard) oder Streams vor Rückgabe selbst komprimieren. | +| **Falsche Dateinamen** | Der Standard‑Handler benennt Dateien mit GUIDs. | `ResourceInfo.Name` innerhalb von `HandleResource` überschreiben und den Stream entsprechend umbenennen. | + +Durch das Beheben dieser Punkte stellen Sie jedes Mal ein reibungsloses **HTML zu ZIP konvertieren**‑Erlebnis sicher. + +## Vollständiges Beispiel + +Unten finden Sie das komplette Programm, das Sie in `Program.cs` einfügen können. Es kompiliert und läuft sofort. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Erwartete Ausgabe:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Öffnen Sie `output.zip` und Sie sehen die Datei `index.html` plus alle von Ihnen hinzugefügten Ressourcen. + +## Fazit + +Wir haben gerade demonstriert, **wie man HTML** als ZIP‑Archiv mit Aspose.HTML speichert, komplett mit einem **benutzerdefinierten Ressourcen‑Handler**, der Ihnen die totale Kontrolle über den Verpackungsprozess gibt. Sie wissen jetzt, wie man **HTML zu ZIP konvertiert**, und können den Code leicht anpassen, um **ZIP‑HTML**‑Dateien für E‑Mails, Offline‑Dokumentation oder statische Site‑Deployments zu **erstellen**. + +### Was kommt als Nächstes? + +- **CSS/JS‑Dateien hinzufügen**: Erweitern Sie `MyHandler`, um Stylesheets und Skripte aus Ihrem Projektordner zu holen. +- **ZIP verschlüsseln**: Wickeln Sie den `MemoryStream` in einen `CryptoStream`, bevor Sie ihn zurückgeben. +- **Batch‑Verarbeitung**: Durchlaufen Sie eine Sammlung von HTML‑Strings und erzeugen Sie pro Seite ein ZIP‑Archiv. + +Probieren Sie es aus und hinterlassen Sie einen Kommentar, falls Sie auf Probleme stoßen. Viel Spaß beim Coden! + +## Was sollten Sie als Nächstes lernen? + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden gezeigten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Code‑Beispiele mit Schritt‑für‑Schritt‑Erklärungen, damit Sie zusätzliche API‑Funktionen meistern und alternative Implementierungsansätze in Ihren eigenen Projekten erkunden können. + +- [Wie man HTML in C# speichert – Vollständiger Leitfaden mit benutzerdefiniertem Ressourcen‑Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Wie man HTML in C# zippt – HTML in ZIP speichern](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [HTML als ZIP speichern – Vollständiges C#‑Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/german/net/rendering-html-documents/_index.md b/html/german/net/rendering-html-documents/_index.md index ad113650fc..8854eefd0f 100644 --- a/html/german/net/rendering-html-documents/_index.md +++ b/html/german/net/rendering-html-documents/_index.md @@ -45,6 +45,7 @@ Erfahren Sie, wie Sie mit Aspose.HTML für .NET arbeiten: HTML bearbeiten, in ve ### [HTML als PNG rendern – Vollständiger C#-Leitfaden](./how-to-render-html-as-png-complete-c-guide/) Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in PNG konvertieren, inklusive vollständigem C#-Beispiel und Schritt‑für‑Schritt‑Anleitung. + ### [Wie Sie Aspose zum Rendern von HTML nach PNG verwenden – Schritt‑für‑Schritt‑Anleitung](./how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) Erfahren Sie, wie Sie mit Aspose.HTML HTML‑Inhalte in PNG‑Bilder umwandeln – detaillierte Schritt‑für‑Schritt‑Anleitung. @@ -53,6 +54,7 @@ Erfahren Sie, wie Sie HTML‑Inhalte mit Aspose in PNG‑Bilder umwandeln – ei ### [PNG aus HTML erstellen – Vollständiger C#-Rendering-Leitfaden](./create-png-from-html-full-c-rendering-guide/) Erfahren Sie, wie Sie mit Aspose.HTML für .NET HTML in PNG konvertieren – ein umfassender Leitfaden für C#-Entwickler. + ### [Rendern Sie EPUB als XPS in .NET mit Aspose.HTML](./render-epub-as-xps/) Erfahren Sie in diesem umfassenden Tutorial, wie Sie mit Aspose.HTML für .NET HTML-Dokumente erstellen und rendern. Tauchen Sie ein in die Welt der HTML-Manipulation, des Web Scraping und mehr. @@ -67,6 +69,10 @@ Erfahren Sie, wie Sie mit Aspose.HTML für .NET mehrere HTML-Dokumente rendern. ### [Rendern Sie SVG-Dokumente als PNG in .NET mit Aspose.HTML](./render-svg-doc-as-png/) Entfesseln Sie die Leistungsfähigkeit von Aspose.HTML für .NET! Erfahren Sie, wie Sie SVG-Dokumente mühelos als PNG rendern. Tauchen Sie ein in Schritt‑für‑Schritt‑Beispiele und FAQs. Jetzt loslegen! + +### [Wie man Antialiasing beim Rendern von HTML zu PNG aktiviert](./how-to-enable-antialiasing-rendering-html-to-png/) +Erfahren Sie, wie Sie Antialiasing beim Rendern von HTML zu PNG mit Aspose.HTML für .NET aktivieren und die Bildqualität verbessern. + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/german/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/german/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..50d0ce8f26 --- /dev/null +++ b/html/german/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Erfahren Sie, wie Sie Antialiasing aktivieren, wenn Sie HTML mit Aspose HTML + zu PNG rendern. Dieser Leitfaden behandelt außerdem die Konvertierung von HTML zu + Bild und das Speichern von HTML als PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: de +lastmod: 2026-07-08 +og_description: Wie man Antialiasing beim Rendern von HTML zu PNG mit Aspose HTML + aktiviert. Folgen Sie dieser Schritt‑für‑Schritt‑Anleitung, um HTML in ein Bild + zu konvertieren und HTML als PNG zu speichern. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Wie man Antialiasing beim Rendern von HTML zu PNG aktiviert – Aspose Leitfaden +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Wie man Antialiasing beim Rendern von HTML in PNG aktiviert +url: /de/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Wie man Antialiasing beim Rendern von HTML zu PNG aktiviert + +Haben Sie sich jemals gefragt, **wie man Antialiasing aktiviert**, während man eine Webseite in ein scharfes PNG‑Bild umwandelt? Sie sind nicht allein – viele Entwickler stoßen auf Probleme, wenn das Ergebnis gezackt oder verschwommen aussieht. Die gute Nachricht ist, dass Sie mit Aspose.HTML diese Kanten mit nur wenigen Codezeilen glätten können. In diesem Tutorial gehen wir die genauen Schritte durch, um HTML zu PNG zu rendern, HTML zu Bild zu konvertieren und schließlich **HTML als PNG speichern** mit aktiviertem Antialiasing. + +> **Was Sie erhalten:** ein vollständiges, sofort ausführbares C#‑Beispiel, eine Erklärung jeder Option und Tipps zum Umgang mit Sonderfällen wie benutzerdefinierten Schriftarten oder großen Seiten. + +## Wie man Antialiasing beim Rendern von HTML zu PNG aktiviert + +Das Erste, was Sie verstehen müssen, ist **warum Antialiasing wichtig ist**. Wenn die Rendering‑Engine Formen oder Text zeichnet, approximiert sie Kurven mit Pixeln. Ohne Antialiasing erzeugen diese Approximationen Treppeneffekte – besonders auffällig bei diagonalen Linien oder dünnen Schriften. Das Aktivieren von Antialiasing weist die Engine an, benachbarte Pixel zu mischen, was ein glatteres visuelles Ergebnis liefert. + +Unten finden Sie den Kerncode, der **wie man Antialiasing aktiviert** mit Aspose.HTML’s `ImageRenderingOptions` demonstriert. Wir zerlegen ihn Schritt für Schritt, damit Sie genau sehen, was jede Zeile bewirkt. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Warum jedes Element wichtig ist + +1. **HTMLDocument** – arbeitet vollständig im Speicher, sodass Sie keine physischen `.html`‑Dateien benötigen. Perfekt für Konvertierungen „on‑the‑fly“. +2. **WebFontStyle** – zeigt, dass Sie Text vor dem Rendern formatieren können; die fett‑kursiv‑Kombination ist nur ein Demo. +3. **ImageRenderingOptions.UseAntialiasing** – dieses Flag ist die Antwort auf **wie man Antialiasing aktiviert**; setzen Sie es auf `true` und der Rasterizer glättet die Kanten. +4. **TextOptions.UseHinting** – Hinting verbessert die Klarheit von Glyphen, besonders bei kleinen Größen. Es ist ein guter Begleiter zu Antialiasing. +5. **ImageSaveOptions** – bündelt sowohl Rendering‑ als auch Textoptionen und weist Aspose an, eine PNG‑Datei auszugeben. + +## HTML mit Aspose zu PNG rendern + +Jetzt, wo Sie **wie man Antialiasing aktiviert** kennen, sprechen wir über das größere Bild von **HTML zu PNG rendern**. Aspose.HTML nimmt Ihnen die schwere Arbeit ab: + +- **Automatic layout** – die Engine parst CSS, berechnet Box‑Modelle und positioniert Elemente genau wie ein Browser. +- **Resolution control** – Sie können DPI über `ImageRenderingOptions.Resolution` festlegen, was für hochauflösende Drucke praktisch ist. +- **Background handling** – setzen Sie `imageOpts.BackgroundColor`, wenn Sie eine transparente oder farbige Leinwand benötigen. + +Hier ein kurzer Hinweis, der eine benutzerdefinierte DPI hinzufügt: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Profi‑Tipp:** Wenn Sie eine Seite konvertieren, die externe Ressourcen (Bilder, Schriftarten) enthält, stellen Sie sicher, dass Sie `htmlDoc.BaseUrl` auf den Ordner setzen, der diese Assets enthält. Andernfalls wird der Renderer sie überspringen. + +## HTML zu Bild konvertieren – Erweiterte Optionen + +Der Ausdruck **HTML zu Bild konvertieren** impliziert oft mehr als nur PNG. Aspose unterstützt JPEG, BMP, TIFF und sogar GIF. Das Wechseln des Formats ist so einfach wie das Ändern des `SaveFormat`‑Enums: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Wenn Sie vektorfreundliche Ausgaben benötigen, sollten Sie `SvgSaveOptions` in Betracht ziehen. Die gleiche Rendering‑Pipeline wird verwendet, sodass Sie konsistentes Antialiasing über alle Formate hinweg erhalten. + +### Sonderfall: Sehr lange Seiten + +Wenn Ihr HTML länger ist als ein typischer Bildschirm, erstellt Aspose standardmäßig ein einzelnes hohes Bild. Das kann den Speicherverbrauch stark erhöhen. Um dem entgegenzuwirken, können Sie das Dokument in mehrere Seiten aufteilen: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML als PNG speichern – Der letzte Schritt + +An diesem Punkt haben Sie **wie man Antialiasing aktiviert** gesehen, Sie haben gelernt, **HTML zu PNG rendern**, und Sie haben die Optionen von **HTML zu Bild konvertieren** erkundet. Der letzte Akt—**HTML als PNG speichern**—ist bereits im ursprünglichen Snippet demonstriert, aber wir fassen es in einer wiederverwendbaren Methode zusammen: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Sie können jetzt `SaveHtmlAsPng("…", @"C:\temp\output.png")` von überall in Ihrem Projekt aufrufen. Der Parameter `antialias` ermöglicht es Ihnen, die Glättungsfunktion ein- oder auszuschalten, sodass Sie die vollständige Kontrolle über **wie man Antialiasing aktiviert** zur Laufzeit haben. + +## Aspose HTML zu PNG – Vollständiges funktionierendes Beispiel + +Unten finden Sie eine eigenständige Konsolenanwendung, die alles zusammenführt. Kopieren‑Sie den Code, passen Sie den Platzhalter `YOUR_DIRECTORY` an und führen Sie ihn mit .NET 6 oder höher aus. + + + +## Was sollten Sie als Nächstes lernen? + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden demonstrierten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Codebeispiele mit Schritt‑für‑Schritt‑Erklärungen, um Ihnen zu helfen, zusätzliche API‑Funktionen zu meistern und alternative Implementierungsansätze in Ihren eigenen Projekten zu erkunden. + +- [Wie man Aspose verwendet, um HTML zu PNG zu rendern – Schritt‑für‑Schritt‑Anleitung](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [HTML zu PNG mit Aspose rendern – Vollständige Anleitung](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [HTML als PNG in .NET mit Aspose.HTML rendern](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/greek/net/html-extensions-and-conversions/_index.md b/html/greek/net/html-extensions-and-conversions/_index.md index 013b0ec4b6..de3e32d4ca 100644 --- a/html/greek/net/html-extensions-and-conversions/_index.md +++ b/html/greek/net/html-extensions-and-conversions/_index.md @@ -64,7 +64,7 @@ url: /el/net/html-extensions-and-conversions/ ### [Μετατροπή HTML σε TIFF στο .NET με Aspose.HTML](./convert-html-to-tiff/) Μάθετε πώς να μετατρέπετε HTML σε TIFF με το Aspose.HTML για .NET. Ακολουθήστε τον βήμα προς βήμα οδηγό μας για αποτελεσματική βελτιστοποίηση περιεχομένου ιστού. ### [Μετατροπή HTML σε XPS σε .NET με Aspose.HTML](./convert-html-to-xps/) -Ανακαλύψτε τη δύναμη του Aspose.HTML για .NET: Μετατρέψτε HTML σε XPS χωρίς κόπο. Περιλαμβάνονται προαπαιτούμενα, οδηγός βήμα προς βήμα και συχνές ερωτήσεις. +Ανακαλύψτε τη δύναμη του Aspose.HTML για .NET: Μετατρέψτε HTML σε XPS χωρίς κόπο. Περιλαμβάνονται προαπαιτούμενα, οδηγός βήμα‑βήμα και συχνές ερωτήσεις. ### [Πώς να συμπιέσετε HTML σε C# – Αποθήκευση HTML σε Zip](./how-to-zip-html-in-c-save-html-to-zip/) Μάθετε πώς να συμπιέσετε αρχεία HTML σε αρχείο ZIP χρησιμοποιώντας το Aspose.HTML για .NET σε C#. ### [Δημιουργία εγγράφου HTML με μορφοποιημένο κείμενο και εξαγωγή σε PDF – Πλήρης οδηγός](./create-html-document-with-styled-text-and-export-to-pdf-full/) @@ -73,6 +73,8 @@ url: /el/net/html-extensions-and-conversions/ Μάθετε πώς να αποθηκεύετε HTML σε αρχείο ZIP με C# και Aspose.HTML. ### [Αποθήκευση HTML σε ZIP σε C# – Πλήρες Παράδειγμα Εντός Μνήμης](./save-html-to-zip-in-c-complete-in-memory-example/) Μάθετε πώς να αποθηκεύετε HTML σε αρχείο ZIP με C# χρησιμοποιώντας πλήρες παράδειγμα εντός μνήμης. +### [Πώς να αποθηκεύσετε HTML ως ZIP – Πλήρης οδηγός Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Μάθετε πώς να αποθηκεύετε HTML σε αρχείο ZIP χρησιμοποιώντας το Aspose.HTML με πλήρη οδηγίες βήμα‑βήμα. ## Σύναψη diff --git a/html/greek/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/greek/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..1a412fad01 --- /dev/null +++ b/html/greek/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: Μάθετε πώς να αποθηκεύσετε HTML ως αρχείο ZIP χρησιμοποιώντας το Aspose.HTML. + Περιλαμβάνει έναν προσαρμοσμένο διαχειριστή πόρων και κώδικα βήμα‑βήμα για τη μετατροπή + του HTML σε ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: el +lastmod: 2026-07-08 +og_description: Πώς να αποθηκεύσετε HTML ως αρχείο ZIP με το Aspose.HTML. Ακολουθήστε + αυτόν τον οδηγό για να χρησιμοποιήσετε έναν προσαρμοσμένο διαχειριστή πόρων, να + μετατρέψετε το HTML σε ZIP και να δημιουργήσετε αρχεία ZIP HTML. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Πώς να αποθηκεύσετε το HTML ως ZIP – Πλήρης οδηγός Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Πώς να αποθηκεύσετε HTML ως ZIP – Πλήρης οδηγός Aspose.HTML +url: /el/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Πώς να Αποθηκεύσετε HTML ως ZIP – Πλήρης Οδηγός Aspose.HTML + +Έχετε αναρωτηθεί ποτέ **πώς να αποθηκεύσετε html** σε ένα ενιαίο, φορητό πακέτο; Ίσως χρειάζεται να διανείμετε μια ιστοσελίδα με όλα τα περιουσιακά της στοιχεία, ή να αρχειοθετήσετε παραγόμενες αναφορές χωρίς να διασκορπίζετε αρχεία. Σε κάθε περίπτωση, η λύση είναι πιο απλή από ό,τι νομίζετε όταν χρησιμοποιείτε το Aspose.HTML. + +Σε αυτό το σεμινάριο θα περάσουμε από ένα πραγματικό παράδειγμα που **μετατρέπει html σε zip**, αξιοποιεί έναν **προσαρμοσμένο διαχειριστή πόρων**, και τελικά σας δείχνει ακριβώς πώς να **δημιουργήσετε zip html** αρχεία που μπορείτε να αποσυμπιέσετε οπουδήποτε. Στο τέλος θα έχετε ένα έτοιμο προς εκτέλεση πρόγραμμα C# που εκτελεί όλη τη δουλειά σε τέσσερα καθαρά βήματα. + +## Προαπαιτούμενα + +- .NET 6.0 ή νεότερο (ο κώδικας λειτουργεί επίσης με .NET Framework 4.7+) +- Άδεια για το Aspose.HTML (η δωρεάν δοκιμή λειτουργεί για δοκιμές) +- Ένα IDE όπως το Visual Studio 2022 ή το VS Code με επεκτάσεις C# +- Βασική εξοικείωση με C# async/await (δεν είναι υποχρεωτικό αλλά χρήσιμο) + +> **Pro tip:** Αν είστε νέοι στο Aspose.HTML, αποκτήστε το πακέτο NuGet `Aspose.Html` και προσθέστε το στο έργο σας πριν ξεκινήσετε. + +## Βήμα 1: Ρυθμίστε το Έργο σας + +Πρώτα, δημιουργήστε μια νέα εφαρμογή κονσόλας: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Αυτό είναι όλο—χωρίς επιπλέον εξαρτήσεις. Το πακέτο `Aspose.Html` περιέχει ήδη τις κλάσεις που θα χρειαστούμε για **πώς να αποθηκεύσετε html** ως αρχείο ZIP. + +## Βήμα 2: Υλοποιήστε έναν Προσαρμοσμένο Διαχειριστή Πόρων + +Όταν το Aspose.HTML αποθηκεύει ένα έγγραφο, χρειάζεται ένα μέρος για να αποθηκεύσει τους συνδεδεμένους πόρους (εικόνες, CSS, γραμματοσειρές). Από προεπιλογή τα γράφει στο σύστημα αρχείων, αλλά μπορούμε να παρεμβάλλουμε αυτή τη διαδικασία με έναν **προσαρμοσμένο διαχειριστή πόρων**. Αυτό μας δίνει πλήρη έλεγχο στο πού καταλήγει κάθε πόρος—ιδανικό για τη δημιουργία ενός καθαρού αρχείου ZIP. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Γιατί να χρησιμοποιήσετε προσαρμοσμένο διαχειριστή;** +- **Ευελιξία:** Μπορείτε να αποφασίσετε να συμπιέσετε, κρυπτογραφήσετε ή μετονομάσετε πόρους εν κινήσει. +- **Απόδοση:** Η εγγραφή στη μνήμη αποφεύγει I/O δίσκου όταν χρειάζεστε μόνο ένα προσωρινό αρχείο. +- **Έλεγχος:** Εσείς αποφασίζετε τη συγκεκριμένη δομή φακέλων μέσα στο ZIP, κάτι που είναι χρήσιμο όταν **δημιουργείτε zip html** για συστήματα downstream. + +## Βήμα 3: Δημιουργήστε το Έγγραφο HTML + +Τώρα θα δημιουργήσουμε μια απλή συμβολοσειρά HTML. Σε ένα πραγματικό έργο πιθανότατα θα το φορτώσετε από αρχείο, βάση δεδομένων ή θα το δημιουργήσετε δυναμικά. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Αν έχετε εξωτερικούς πόρους (εικόνες, αρχεία CSS), απλώς βεβαιωθείτε ότι τα URLs τους είναι προσβάσιμα—το Aspose θα τα ζητήσει μέσω του **προσαρμοσμένου διαχειριστή πόρων** που ορίσαμε νωρίτερα. + +## Βήμα 4: Διαμορφώστε τις Επιλογές Αποθήκευσης για **Μετατροπή HTML σε ZIP** + +Το Aspose.HTML προσφέρει διάφορες υποκλάσεις του `HTMLSaveOptions`. Για ένα αρχείο ZIP χρησιμοποιούμε το βασικό `HTMLSaveOptions` και ορίζουμε το `OutputStorage` στο `MyHandler`. Αυτό λέει στη βιβλιοθήκη να **μετατρέψει html σε zip** χρησιμοποιώντας τα streams που παρέχουμε. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Μπορείτε επίσης να ρυθμίσετε το `saveOptions`: + +- `saveOptions.Compressed = true;` – ενεργοποιεί τη συμπίεση ZIP (ενεργοποιημένο από προεπιλογή). +- `saveOptions.ExportResources = true;` – διασφαλίζει ότι οι συνδεδεμένοι πόροι περιλαμβάνονται. + +Αυτές οι ρυθμίσεις είναι προαιρετικές αλλά συχνά χρήσιμες όταν **δημιουργείτε zip html** για διανομή. + +## Βήμα 5: Αποθηκεύστε το Αρχείο ZIP – **Πώς να Αποθηκεύσετε HTML** Σωστά + +Τέλος, καλούμε το `Save`. Το πρώτο όρισμα είναι η διαδρομή του τελικού αρχείου ZIP, το δεύτερο είναι το `HTMLSaveOptions` που μόλις διαμορφώσαμε. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Όταν εκτελέσετε το πρόγραμμα (`dotnet run`), θα δείτε ένα αρχείο `output.zip` δίπλα στο εκτελέσιμο σας. Ανοίξτε το με οποιονδήποτε διαχειριστή αρχείων και θα βρείτε: + +- `index.html` – το αρχικό markup. +- Οποιονδήποτε πόρο (εικόνες, CSS) που αναφέρθηκε, αποθηκευμένο ως ξεχωριστή καταχώρηση. + +Αυτή είναι η πλήρης ροή εργασίας **πώς να αποθηκεύσετε html**, από ακατέργαστο markup σε ένα φορητό πακέτο ZIP. + +## Μπόνους: Διαχείριση Εικόνων και Εξωτερικών Πόρων + +Αν το HTML σας περιέχει ``, ο `MyHandler` θα λάβει κλήση με `info.Uri` που δείχνει στο `logo.png`. Μπορείτε να τροποποιήσετε τον διαχειριστή ώστε να φορτώνει το αρχείο από δίσκο ή απομακρυσμένο URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Αυτό το απόσπασμα δείχνει πώς μπορείτε να επεκτείνετε τον **προσαρμοσμένο διαχειριστή πόρων** για να ταιριάζει σε οποιαδήποτε στρατηγική αποθήκευσης, κάνοντας το αποτέλεσμα ZIP να αντανακλά πραγματικά τη διάταξη των πόρων του έργου σας. + +## Συνηθισμένα Προβλήματα & Πώς να τα Αποφύγετε + +| Πρόβλημα | Γιατί Συμβαίνει | Διόρθωση | +|----------|----------------|----------| +| **Κενό ZIP** | Το `OutputStorage` επιστρέφει ένα κλειστό stream ή `null`. | Πάντα να επιστρέφετε ένα νέο, εγγράψιμο `MemoryStream` ή `FileStream`. | +| **Λείπουν εικόνες** | Οι πόροι μπλοκάρονται από CORS ή δεν είναι διαθέσιμοι τοπικά. | Προκατεβάστε τους πόρους ή προσαρμόστε το `HandleResource` ώστε να τους παρέχει χειροκίνητα. | +| **Μεγάλο μέγεθος ZIP** | Οι πόροι δεν είναι συμπιεσμένοι. | Ορίστε `saveOptions.Compressed = true;` (προεπιλογή) ή συμπιέστε τα streams εσείς πριν τα επιστρέψετε. | +| **Λανθασμένα ονόματα αρχείων** | Ο προεπιλεγμένος διαχειριστής ονομάζει τα αρχεία με GUIDs. | Υπερισχύστε το `ResourceInfo.Name` μέσα στο `HandleResource` και μετονομάστε το stream αναλόγως. | + +## Πλήρες Παράδειγμα Εργασίας + +Παρακάτω είναι το πλήρες πρόγραμμα που μπορείτε να αντιγράψετε‑και‑επικολλήσετε στο `Program.cs`. Συγκεντρώνεται και εκτελείται αμέσως. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Αναμενόμενο αποτέλεσμα:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Ανοίξτε το `output.zip` και θα δείτε το αρχείο `index.html` συν οποιουσδήποτε πόρους προσθέσατε. + +## Συμπέρασμα + +Μόλις δείξαμε **πώς να αποθηκεύσετε html** ως αρχείο ZIP χρησιμοποιώντας το Aspose.HTML, με έναν **προσαρμοσμένο διαχειριστή πόρων** που σας δίνει πλήρη έλεγχο της διαδικασίας συσκευασίας. Τώρα ξέρετε πώς να **μετατρέψετε html σε zip**, και μπορείτε εύκολα να προσαρμόσετε τον κώδικα για να **δημιουργήσετε zip html** αρχεία για email, εκτός σύνδεσης τεκμηρίωση ή ανάπτυξη στατικών ιστότοπων. + +### Τι Ακολουθεί; + +- **Προσθέστε αρχεία CSS/JS**: Επεκτείνετε το `MyHandler` ώστε να αντλεί φύλλα στυλ και scripts από το φάκελο του έργου σας. +- **Κρυπτογραφήστε το ZIP**: Τυλίξτε το `MemoryStream` σε ένα `CryptoStream` πριν το επιστρέψετε. +- **Επεξεργασία σε παρτίδες**: Επανάληψη πάνω σε μια συλλογή συμβολοσειρών HTML και δημιουργία ZIP ανά σελίδα. + +Νιώστε ελεύθεροι να πειραματιστείτε, και αφήστε ένα σχόλιο αν αντιμετωπίσετε προβλήματα. Καλό κώδικα! + +## Τι Θα Πρέπει Να Μάθετε Στη Σειρά; + +Τα παρακάτω σεμινάρια καλύπτουν στενά σχετικές θεματικές που επεκτείνουν τις τεχνικές που παρουσιάστηκαν σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη παραδείγματα κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσουν να κατακτήσετε πρόσθετες δυνατότητες του API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας έργα. + +- [Πώς να Αποθηκεύσετε HTML σε C# – Πλήρης Οδηγός Χρήσης Προσαρμοσμένου Διαχειριστή Πόρων](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Πώς να Συμπιέσετε HTML σε C# – Αποθήκευση HTML σε Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Αποθήκευση HTML ως ZIP – Πλήρες Σεμινάριο C#](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/greek/net/rendering-html-documents/_index.md b/html/greek/net/rendering-html-documents/_index.md index f874e075cb..816f4b1d10 100644 --- a/html/greek/net/rendering-html-documents/_index.md +++ b/html/greek/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ url: /el/net/rendering-html-documents/ Μάθετε πώς να μετατρέψετε HTML σε PNG χρησιμοποιώντας το Aspose.HTML για .NET σε αυτόν τον πλήρη οδηγό. ### [Δημιουργία PNG από HTML – Πλήρης Οδηγός Απόδοσης C#](./create-png-from-html-full-c-rendering-guide/) Μάθετε πώς να δημιουργήσετε PNG από HTML χρησιμοποιώντας το Aspose.HTML για .NET με πλήρη οδηγό C#. +### [Πώς να ενεργοποιήσετε το antialiasing στην απόδοση HTML σε PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Μάθετε πώς να ενεργοποιήσετε το antialiasing για πιο ομαλή απόδοση HTML σε PNG με το Aspose.HTML για .NET. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/greek/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/greek/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..621689fdb5 --- /dev/null +++ b/html/greek/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,219 @@ +--- +category: general +date: 2026-07-08 +description: Μάθετε πώς να ενεργοποιήσετε το antialiasing όταν αποδίδετε HTML σε PNG + χρησιμοποιώντας το Aspose HTML. Αυτός ο οδηγός καλύπτει επίσης τη μετατροπή του + HTML σε εικόνα και την αποθήκευση του HTML ως PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: el +lastmod: 2026-07-08 +og_description: Πώς να ενεργοποιήσετε την εξομάλυνση κατά τη μετατροπή HTML σε PNG + με το Aspose HTML. Ακολουθήστε αυτό το βήμα‑βήμα οδηγό για να μετατρέψετε το HTML + σε εικόνα και να αποθηκεύσετε το HTML ως PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Πώς να ενεργοποιήσετε την εξομάλυνση κατά την απόδοση HTML σε PNG – Οδηγός + Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Πώς να ενεργοποιήσετε την εξομάλυνση κατά την απόδοση HTML σε PNG +url: /el/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Πώς να ενεργοποιήσετε το Antialiasing κατά τη μετατροπή HTML σε PNG + +Έχετε αναρωτηθεί ποτέ **πώς να ενεργοποιήσετε το antialiasing** ενώ μετατρέπετε μια ιστοσελίδα σε μια καθαρή εικόνα PNG; Δεν είστε μόνοι—πολλοί προγραμματιστές αντιμετωπίζουν προβλήματα όταν το αποτέλεσμα φαίνεται τριγωνικό ή θολό. Τα καλά νέα είναι ότι με το Aspose.HTML μπορείτε να λειάνετε αυτές τις άκρες με λίγες μόνο γραμμές κώδικα. Σε αυτό το tutorial θα περάσουμε βήμα προς βήμα τις ακριβείς διαδικασίες για να αποδώσετε HTML σε PNG, να μετατρέψετε HTML σε εικόνα, και τελικά **να αποθηκεύσετε HTML ως PNG** με ενεργοποιημένο το antialiasing. + +> **Τι θα πάρετε:** ένα πλήρες, έτοιμο‑για‑εκτέλεση παράδειγμα C#, μια εξήγηση κάθε επιλογής, και συμβουλές για τη διαχείριση ειδικών περιπτώσεων όπως προσαρμοσμένες γραμματοσειρές ή μεγάλες σελίδες. + +## Πώς να ενεργοποιήσετε το Antialiasing κατά την απόδοση HTML σε PNG + +Το πρώτο που πρέπει να καταλάβετε είναι **γιατί το antialiasing είναι σημαντικό**. Όταν η μηχανή απόδοσης σχεδιάζει σχήματα ή κείμενο, προσεγγίζει τις καμπύλες με εικονοστοιχεία. Χωρίς antialiasing, αυτές οι προσεγγίσεις δημιουργούν σκαλοπατιές—ιδιαίτερα εμφανείς σε διαγώνιες γραμμές ή λεπτές γραμματοσειρές. Η ενεργοποίηση του antialiasing λέει στη μηχανή να αναμειγνύει τα γειτονικά εικονοστοιχεία, παράγοντας ένα πιο ομαλό οπτικό αποτέλεσμα. + +Παρακάτω βρίσκεται ο βασικός κώδικας που δείχνει **πώς να ενεργοποιήσετε το antialiasing** χρησιμοποιώντας το `ImageRenderingOptions` του Aspose.HTML. Θα τον αναλύσουμε βήμα προς βήμα ώστε να δείτε ακριβώς τι κάνει κάθε γραμμή. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Γιατί κάθε μέρος είναι σημαντικό + +1. **HTMLDocument** – λειτουργεί εξ ολοκλήρου στη μνήμη, επομένως δεν χρειάζεστε πραγματικά αρχεία `.html`. Ιδανικό για μετατροπές εν κινήσει. +2. **WebFontStyle** – δείχνει ότι μπορείτε να μορφοποιήσετε το κείμενο πριν από την απόδοση· ο συνδυασμός έντονης-πλάγιας γραφής είναι μόνο μια επίδειξη. +3. **ImageRenderingOptions.UseAntialiasing** – αυτή η σημαία είναι η απάντηση στο **πώς να ενεργοποιήσετε το antialiasing**· ορίστε την σε `true` και ο rasterizer θα λειάνει τις άκρες. +4. **TextOptions.UseHinting** – το hinting βελτιώνει την καθαρότητα των γλυφών, ειδικά σε μικρά μεγέθη. Είναι ένας καλός σύντροφος του antialiasing. +5. **ImageSaveOptions** – συνδυάζει τόσο τις επιλογές απόδοσης όσο και κειμένου, και στη συνέχεια λέει στο Aspose να εξάγει ένα αρχείο PNG. + +## Απόδοση HTML σε PNG με το Aspose + +Τώρα που ξέρετε **πώς να ενεργοποιήσετε το antialiasing**, ας μιλήσουμε για τη γενικότερη εικόνα του **render html to png**. Το Aspose.HTML αφαιρεί το βαρέως έργου: + +- **Automatic layout** – η μηχανή αναλύει το CSS, υπολογίζει τα μοντέλα κουτιών και τοποθετεί τα στοιχεία όπως ένας φυλλομετρητής. +- **Resolution control** – μπορείτε να ορίσετε DPI μέσω του `ImageRenderingOptions.Resolution`, κάτι που είναι χρήσιμο για εκτυπώσεις υψηλής ανάλυσης. +- **Background handling** – ορίστε `imageOpts.BackgroundColor` αν χρειάζεστε ένα διαφανές ή χρωματιστό καμβά. + +Ακολουθεί μια γρήγορη τροποποίηση που προσθέτει προσαρμοσμένο DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Εάν μετατρέπετε μια σελίδα που περιέχει εξωτερικούς πόρους (εικόνες, γραμματοσειρές), βεβαιωθείτε ότι έχετε ορίσει το `htmlDoc.BaseUrl` στο φάκελο που περιέχει αυτά τα στοιχεία. Διαφορετικά η μηχανή απόδοσης θα τα παραλείψει. + +## Μετατροπή HTML σε Εικόνα – Προχωρημένες Επιλογές + +Η φράση **convert html to image** συχνά υποδηλώνει κάτι περισσότερο από PNG. Το Aspose υποστηρίζει JPEG, BMP, TIFF και ακόμη GIF. Η αλλαγή μορφής είναι τόσο απλή όσο η αλλαγή του enum `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Όταν χρειάζεστε έξοδο φιλική προς τα διανύσματα, σκεφτείτε το `SvgSaveOptions`. Η ίδια διαδικασία απόδοσης εφαρμόζεται, ώστε να έχετε συνεπές antialiasing σε όλες τις μορφές. + +### Ειδική περίπτωση: Πολύ ψηλές σελίδες + +Αν το HTML σας είναι μεγαλύτερο από μια τυπική οθόνη, το Aspose θα δημιουργήσει, από προεπιλογή, μια ενιαία ψηλή εικόνα. Αυτό μπορεί να αυξήσει τη χρήση μνήμης. Για να το περιορίσετε, μπορείτε να χωρίσετε το έγγραφο σε πολλαπλές σελίδες: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Αποθήκευση HTML ως PNG – Το Τελικό Βήμα + +Σε αυτό το σημείο έχετε δει **πώς να ενεργοποιήσετε το antialiasing**, έχετε μάθει να **render html to png**, και έχετε εξερευνήσει τις επιλογές **convert html to image**. Η τελική ενέργεια—**save html as png**—είναι ήδη δείχθηκε στο αρχικό απόσπασμα, αλλά ας το τυλίξουμε σε μια επαναχρησιμοποιήσιμη μέθοδο: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Τώρα μπορείτε να καλέσετε το `SaveHtmlAsPng("…", @"C:\temp\output.png")` από οπουδήποτε στο έργο σας. Η παράμετρος `antialias` σας επιτρέπει να ενεργοποιήσετε ή να απενεργοποιήσετε τη λειτουργία λειανής άκρης, δίνοντάς σας πλήρη έλεγχο πάνω στο **πώς να ενεργοποιήσετε το antialiasing** κατά το χρόνο εκτέλεσης. + +## Aspose HTML σε PNG – Πλήρες Παράδειγμα Εργασίας + +Παρακάτω υπάρχει μια αυτόνομη εφαρμογή κονσόλας που συνδυάζει όλα. Αντιγράψτε‑επικολλήστε, προσαρμόστε το placeholder `YOUR_DIRECTORY`, και εκτελέστε το με .NET 6 ή νεότερο. + + + +## Τι Θα Πρέπει Να Μάθετε Στη Σειρά; + +Τα παρακάτω tutorials καλύπτουν στενά σχετιζόμενα θέματα που βασίζονται στις τεχνικές που παρουσιάζονται σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη παραδείγματα κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσει να κυριαρχήσετε σε πρόσθετες δυνατότητες του API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας έργα. + +- [Πώς να χρησιμοποιήσετε το Aspose για να αποδώσετε HTML σε PNG – Οδηγός βήμα‑βήμα](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Πώς να αποδώσετε HTML σε PNG με το Aspose – Πλήρης Οδηγός](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Απόδοση HTML ως PNG σε .NET με το Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hindi/net/html-extensions-and-conversions/_index.md b/html/hindi/net/html-extensions-and-conversions/_index.md index 45408d5a1f..b35be896e1 100644 --- a/html/hindi/net/html-extensions-and-conversions/_index.md +++ b/html/hindi/net/html-extensions-and-conversions/_index.md @@ -30,7 +30,7 @@ HTML एक्सटेंशन डेवलपर्स के लिए ए ## Aspose.HTML के साथ आरंभ करें -क्या आप शुरू करने के लिए तैयार हैं? .NET के लिए Aspose.HTML ट्यूटोरियल शुरुआती और अनुभवी डेवलपर्स दोनों के लिए हैं। चाहे आप HTML एक्सटेंशन और रूपांतरणों के लिए नए हों या उन्नत युक्तियों की तलाश कर रहे हों, हमारे चरण-दर-चरण मार्गदर्शिकाएँ आपकी आवश्यकताओं के अनुरूप डिज़ाइन की गई हैं। +क्या आप शुरू करने के लिए तैयार हैं? .NET के लिए Aspose.HTML ट्यूटोरियल शुरुआती और अनुभवी डेवलपर्स दोनों के लिए हैं। चाहे आप HTML एक्सटेंशन और रूपांतरणों के लिए नए हों या उन्नत युक्तियों की तलाश कर रहे हों, हमारे चरण-दर-स्टेप मार्गदर्शिकाएँ आपकी आवश्यकताओं के अनुरूप डिज़ाइन की गई हैं। ## .NET के लिए Aspose.HTML क्यों? @@ -62,7 +62,7 @@ C# में Aspose.HTML का उपयोग करके HTML को PDF म .NET के लिए Aspose.HTML की शक्ति का पता लगाएं: HTML को GIF में बदलने के लिए चरण-दर-चरण मार्गदर्शिका। पूर्वापेक्षाएँ, कोड उदाहरण, FAQ, और बहुत कुछ! Aspose.HTML के साथ अपने HTML हेरफेर को अनुकूलित करें। ### [Aspose.HTML के साथ .NET में HTML को JPEG में बदलें](./convert-html-to-jpeg/) -.NET के लिए Aspose.HTML के साथ .NET में HTML को JPEG में बदलने का तरीका जानें। .NET के लिए Aspose.HTML की शक्ति का उपयोग करने के लिए चरण-दर-चरण मार्गदर्शिका। अपने वेब डेवलपमेंट कार्यों को आसानी से अनुकूलित करें। +.NET के लिए Aspose.HTML के साथ .NET में HTML को JPEG में बदलने का तरीका जानें। .NET के लिए Aspose.HTML की शक्ति का उपयोग करने के लिए चरण-दर-स्टेप मार्गदर्शिका। अपने वेब डेवलपमेंट कार्यों को आसानी से अनुकूलित करें। ### [Aspose.HTML के साथ .NET में HTML को Markdown में बदलें](./convert-html-to-markdown/) कुशल सामग्री हेरफेर के लिए Aspose.HTML का उपयोग करके .NET में HTML को Markdown में परिवर्तित करना सीखें। सहज रूपांतरण प्रक्रिया के लिए चरण-दर-चरण मार्गदर्शन प्राप्त करें। @@ -77,9 +77,12 @@ Aspose.HTML के साथ .NET में HTML को MHTML में बद .NET के लिए Aspose.HTML के साथ HTML को TIFF में कैसे बदलें, यह जानें। कुशल वेब सामग्री अनुकूलन के लिए हमारे चरण-दर-चरण मार्गदर्शिका का पालन करें। ### [Aspose.HTML के साथ .NET में HTML को XPS में बदलें](./convert-html-to-xps/) -.NET के लिए Aspose.HTML की शक्ति का पता लगाएं: HTML को XPS में आसानी से बदलें। पूर्वापेक्षाएँ, चरण-दर-चरण मार्गदर्शिका और FAQ शामिल हैं। +.NET के लिए Aspose.HTML की शक्ति का पता लगाएं: HTML को XPS में आसानी से बदलें। पूर्वापेक्षाएँ, चरण-दर-स्टेप मार्गदर्शिका और FAQ शामिल हैं। ### [HTML को ZIP के रूप में सहेजें – पूर्ण C# ट्यूटोरियल](./save-html-as-zip-complete-c-tutorial/) -HTML को ZIP फ़ाइल में सहेजने के चरण-दर-चरण मार्गदर्शन, C# कोड उदाहरण और अनुकूलन विकल्प। +HTML को ZIP फ़ाइल में सहेजने के चरण-दर-स्टेप मार्गदर्शन, C# कोड उदाहरण और अनुकूलन विकल्प। + +### [HTML को ZIP के रूप में सहेजें – पूर्ण Aspose.HTML गाइड](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aspose.HTML का उपयोग करके C# में HTML को ZIP फ़ाइल में सहेजने की पूरी प्रक्रिया सीखें। ### [C# में HTML को ज़िप कैसे करें – HTML को ज़िप में सहेजें](./how-to-zip-html-in-c-save-html-to-zip/) .NET के लिए Aspose.HTML का उपयोग करके C# में HTML को ज़िप फ़ाइल में सहेजने का तरीका सीखें। diff --git a/html/hindi/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/hindi/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..62cba53508 --- /dev/null +++ b/html/hindi/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Aspose.HTML का उपयोग करके HTML को ZIP आर्काइव के रूप में सहेजना सीखें। + इसमें एक कस्टम रिसोर्स हैंडलर और HTML को ZIP में बदलने के लिए चरण‑दर‑चरण कोड शामिल + है। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: hi +lastmod: 2026-07-08 +og_description: Aspose.HTML के साथ HTML को ZIP आर्काइव के रूप में कैसे सहेजें। इस + गाइड का पालन करके कस्टम रिसोर्स हैंडलर का उपयोग करें, HTML को ZIP में बदलें, और + ZIP HTML फ़ाइलें बनाएं। +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: HTML को ZIP के रूप में कैसे सहेजें – पूर्ण Aspose.HTML ट्यूटोरियल +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: HTML को ZIP के रूप में कैसे सहेजें – पूर्ण Aspose.HTML गाइड +url: /hi/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML को ZIP के रूप में सहेजें – पूर्ण Aspose.HTML गाइड + +क्या आपने कभी सोचा है **how to save html** को एक ही, पोर्टेबल पैकेज में कैसे रखें? शायद आपको सभी एसेट्स के साथ वेब पेज शिप करना है, या आप जेनरेटेड रिपोर्ट्स को फाइलों को बिखरे बिना आर्काइव करना चाहते हैं। चाहे जो भी कारण हो, Aspose.HTML का उपयोग करने पर समाधान आपकी सोच से कहीं आसान है। + +इस ट्यूटोरियल में हम एक वास्तविक‑दुनिया का उदाहरण देखेंगे जो **converts html to zip** करता है, एक **custom resource handler** का उपयोग करता है, और अंत में आपको दिखाता है कि **create zip html** फ़ाइलें कैसे बनाएं जिन्हें आप कहीं भी अनज़िप कर सकते हैं। अंत तक आपके पास एक तैयार‑चलाने‑योग्य C# प्रोग्राम होगा जो चार साफ‑सुथरे चरणों में पूरा काम कर देता है। + +## Prerequisites + +- .NET 6.0 या बाद का (कोड .NET Framework 4.7+ के साथ भी काम करता है) +- Aspose.HTML का लाइसेंस (टेस्टिंग के लिए फ्री ट्रायल चलाएगा) +- Visual Studio 2022 या VS Code + C# एक्सटेंशन जैसा IDE +- C# async/await की बुनियादी समझ (ज़रूरी नहीं लेकिन मददगार) + +> **Pro tip:** यदि आप Aspose.HTML में नए हैं, तो NuGet पैकेज `Aspose.Html` को अपने प्रोजेक्ट में जोड़ें और फिर शुरू करें। + +## Step 1: Set Up Your Project + +पहले, एक नया कंसोल ऐप बनाएं: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +बस इतना ही—कोई अतिरिक्त डिपेंडेंसी नहीं। `Aspose.Html` पैकेज में वही क्लासेज़ हैं जिनकी हमें **how to save html** को ZIP आर्काइव के रूप में सहेजने के लिए जरूरत है। + +## Step 2: Implement a Custom Resource Handler + +जब Aspose.HTML कोई डॉक्यूमेंट सहेजता है, तो उसे लिंक्ड रिसोर्सेज़ (इमेज, CSS, फ़ॉन्ट) को स्टोर करने की जगह चाहिए। डिफ़ॉल्ट रूप से यह उन्हें फ़ाइल सिस्टम पर लिखता है, लेकिन हम एक **custom resource handler** के साथ इस प्रक्रिया को इंटरसेप्ट कर सकते हैं। इससे हमें हर रिसोर्स के अंतिम स्थान पर पूरा कंट्रोल मिलता है—एक साफ़ ZIP फ़ाइल बनाने के लिए बिल्कुल उपयुक्त। + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**कस्टम हैंडलर क्यों उपयोग करें?** +- **Flexibility:** आप रन‑टाइम पर रिसोर्सेज़ को कॉम्प्रेस, एन्क्रिप्ट या रीनेम कर सकते हैं। +- **Performance:** मेमोरी में लिखने से डिस्क I/O बचता है, जब आपको केवल एक टेम्पररी आर्काइव चाहिए। +- **Control:** आप ZIP के अंदर सटीक फ़ोल्डर स्ट्रक्चर तय कर सकते हैं, जो **create zip html** को डाउनस्ट्रीम सिस्टम्स के लिए तैयार करता है। + +## Step 3: Build the HTML Document + +अब हम एक साधारण HTML स्ट्रिंग बनाएँगे। वास्तविक प्रोजेक्ट में आप इसे फ़ाइल, डेटाबेस या डायनामिक जेनरेशन से लोड कर सकते हैं। + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +यदि आपके पास बाहरी एसेट्स (इमेज, CSS फ़ाइलें) हैं, तो सुनिश्चित करें कि उनके URL पहुंच योग्य हों—Aspose उन तक **custom resource handler** के माध्यम से पहुँचेगा जो हमने पहले परिभाषित किया था। + +## Step 4: Configure Save Options to **Convert HTML to ZIP** + +Aspose.HTML कई `HTMLSaveOptions` सबक्लासेज़ प्रदान करता है। ZIP आर्काइव के लिए हम बेस `HTMLSaveOptions` का उपयोग करते हैं और उसका `OutputStorage` हमारे `MyHandler` पर सेट करते हैं। यह लाइब्रेरी को **convert html to zip** करने के लिए वह स्ट्रीम्स देता है जो हमने प्रदान किए हैं। + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +आप `saveOptions` को और भी ट्यून कर सकते हैं: + +- `saveOptions.Compressed = true;` – ZIP कॉम्प्रेशन सक्षम करता है (डिफ़ॉल्ट रूप से ऑन)। +- `saveOptions.ExportResources = true;` – लिंक्ड रिसोर्सेज़ को शामिल करता है। + +ये ट्यूनिंग वैकल्पिक हैं लेकिन अक्सर उपयोगी होती हैं जब आप **create zip html** को डिस्ट्रिब्यूशन के लिए तैयार करते हैं। + +## Step 5: Save the ZIP Archive – **How to Save HTML** Properly + +अंत में, हम `Save` को कॉल करते हैं। पहला आर्ग्यूमेंट परिणामस्वरूप ZIP फ़ाइल का पाथ है, दूसरा `HTMLSaveOptions` है जिसे हमने अभी कॉन्फ़िगर किया। + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +जब आप प्रोग्राम (`dotnet run`) चलाएँगे, तो आपके एक्सीक्यूटेबल के बगल में `output.zip` फ़ाइल बन जाएगी। इसे किसी भी आर्काइव मैनेजर से खोलें और आपको मिलेगा: + +- `index.html` – मूल मार्कअप। +- सभी रिसोर्सेज़ (इमेज, CSS) जो रेफ़रेंस किए गए थे, प्रत्येक एक अलग एंट्री के रूप में। + +यही पूरा **how to save html** वर्कफ़्लो है, कच्चे मार्कअप से लेकर पोर्टेबल ZIP पैकेज तक। + +## Bonus: Handling Images and External Resources + +यदि आपके HTML में `` है, तो `MyHandler` को `info.Uri` के साथ `logo.png` का कॉल मिलेगा। आप हैंडलर को इस तरह बदल सकते हैं कि फ़ाइल को डिस्क या रिमोट URL से फ़ेच करे: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +यह स्निपेट दिखाता है कि आप **custom resource handler** को किसी भी स्टोरेज स्ट्रैटेजी के अनुसार कैसे विस्तारित कर सकते हैं, जिससे ZIP आउटपुट आपके प्रोजेक्ट की एसेट लेआउट को सही‑सही दर्शाए। + +## Common Pitfalls & How to Avoid Them + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` बंद स्ट्रीम या `null` रिटर्न करता है। | हमेशा नया, लिखने योग्य `MemoryStream` या `FileStream` रिटर्न करें। | +| **Missing images** | रिसोर्सेज़ CORS द्वारा ब्लॉक हैं या लोकली उपलब्ध नहीं हैं। | एसेट्स को पहले से डाउनलोड करें या `HandleResource` को मैन्युअली सप्लाई करने के लिए एडजस्ट करें। | +| **Large ZIP size** | रिसोर्सेज़ कॉम्प्रेस नहीं हुए। | `saveOptions.Compressed = true;` (डिफ़ॉल्ट) सेट करें या स्ट्रीम को खुद कॉम्प्रेस करें। | +| **Incorrect file names** | डिफ़ॉल्ट हैंडलर फ़ाइलों को GUID से नाम देता है। | `HandleResource` के अंदर `ResourceInfo.Name` को ओवरराइड करें और स्ट्रीम का नाम उसी अनुसार बदलें। | + +इन मुद्दों को ठीक करने से हर बार एक स्मूथ **convert html to zip** अनुभव मिलता है। + +## Full Working Example + +नीचे पूरा प्रोग्राम दिया गया है जिसे आप `Program.cs` में कॉपी‑पेस्ट कर सकते हैं। यह बॉक्स से बाहर बिना किसी बदलाव के कम्पाइल और रन हो जाता है। + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Expected output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +`output.zip` खोलें और आपको `index.html` फ़ाइल के साथ सभी जोड़ी गई रिसोर्सेज़ दिखेंगे। + +## Wrap‑Up + +हमने अभी-अभी Aspose.HTML का उपयोग करके **how to save html** को ZIP आर्काइव के रूप में सहेजने का पूरा प्रोसेस दिखाया, साथ ही एक **custom resource handler** भी बनाया जो पैकेजिंग प्रक्रिया पर पूर्ण कंट्रोल देता है। अब आप जानते हैं कि **convert html to zip** कैसे किया जाता है, और आप आसानी से कोड को **create zip html** फ़ाइलों के लिए ई‑मेल, ऑफ़लाइन डॉक्यूमेंटेशन या स्टैटिक साइट डिप्लॉयमेंट में अनुकूलित कर सकते हैं। + +### What’s Next? + +- **Add CSS/JS files**: `MyHandler` को विस्तारित करके अपने प्रोजेक्ट फ़ोल्डर से स्टाइलशीट्स और स्क्रिप्ट्स लाएँ। +- **Encrypt the ZIP**: `MemoryStream` को `CryptoStream` में रैप करके रिटर्न करें। +- **Batch processing**: HTML स्ट्रिंग्स के कलेक्शन पर लूप चलाएँ और प्रत्येक पेज के लिए एक ZIP बनाएँ। + +इसे आज़माएँ, और यदि कोई समस्या आती है तो कमेंट करें। Happy coding! + +## What Should You Learn Next? + +निम्नलिखित ट्यूटोरियल्स उन विषयों को कवर करते हैं जो इस गाइड में दिखाए गए तकनीकों पर आधारित हैं। प्रत्येक रिसोर्स में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ हैं, जिससे आप अतिरिक्त API फीचर्स में महारत हासिल कर सकें और अपने प्रोजेक्ट्स में वैकल्पिक इम्प्लीमेंटेशन एप्रोचेज़ को एक्सप्लोर कर सकें। + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hindi/net/rendering-html-documents/_index.md b/html/hindi/net/rendering-html-documents/_index.md index f656f46367..d30ac6da99 100644 --- a/html/hindi/net/rendering-html-documents/_index.md +++ b/html/hindi/net/rendering-html-documents/_index.md @@ -58,7 +58,7 @@ Aspose.HTML for .NET में रेंडरिंग टाइमआउट ### [Aspose.HTML के साथ .NET में SVG दस्तावेज़ को PNG के रूप में प्रस्तुत करें](./render-svg-doc-as-png/) .NET के लिए Aspose.HTML की शक्ति अनलॉक करें! SVG Doc को आसानी से PNG के रूप में रेंडर करना सीखें। चरण-दर-चरण उदाहरणों और FAQ में गोता लगाएँ। अभी शुरू करें! ### [HTML को PNG के रूप में रेंडर करने का पूर्ण C# गाइड](./how-to-render-html-as-png-complete-c-guide/) -C# में Aspose.HTML का उपयोग करके HTML को PNG में बदलने के चरण-दर-चरण निर्देश। +C# में Aspose.HTML का उपयोग करके HTML को PNG में बदलने के चरण-दर-स्टेप निर्देश। ### [Aspose का उपयोग करके HTML को PNG में रेंडर करने का चरण‑दर‑चरण गाइड](./how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) Aspose.HTML के साथ HTML को PNG फ़ॉर्मेट में बदलने की पूरी प्रक्रिया सीखें, कोड उदाहरण और टिप्स के साथ। @@ -68,6 +68,9 @@ Aspose.HTML का उपयोग करके HTML को PNG फ़ॉर् ### [HTML से PNG बनाएं – पूर्ण C# रेंडरिंग गाइड](./create-png-from-html-full-c-rendering-guide/) HTML को PNG में बदलने के लिए पूर्ण C# रेंडरिंग चरणों को सीखें और Aspose.HTML का उपयोग करके उच्च गुणवत्ता वाले परिणाम प्राप्त करें। +### [HTML को PNG में रेंडर करने के लिए एंटीएलियासिंग सक्षम करने का तरीका](./how-to-enable-antialiasing-rendering-html-to-png/) +Aspose.HTML के साथ HTML को PNG में रेंडर करते समय एंटीएलियासिंग को सक्षम करने के चरण‑दर‑चरण निर्देश। + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/hindi/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/hindi/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..40b66a606d --- /dev/null +++ b/html/hindi/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,215 @@ +--- +category: general +date: 2026-07-08 +description: Aspose HTML का उपयोग करके HTML को PNG में रेंडर करते समय एंटी‑एलियासिंग + को कैसे सक्षम करें, सीखें। यह गाइड HTML को इमेज में बदलने और HTML को PNG के रूप + में सहेजने को भी कवर करता है। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: hi +lastmod: 2026-07-08 +og_description: Aspose HTML के साथ HTML को PNG में रेंडर करते समय एंटीएलियासिंग कैसे + सक्षम करें। HTML को इमेज में बदलने और HTML को PNG के रूप में सहेजने के लिए इस चरण‑दर‑चरण + ट्यूटोरियल का पालन करें। +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: HTML को PNG में रेंडर करने के लिए एंटीएलियासिंग कैसे सक्षम करें – Aspose + गाइड +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: HTML को PNG में रेंडर करते समय एंटीएलियासिंग कैसे सक्षम करें +url: /hi/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML को PNG में रेंडर करते समय एंटीएलियासिंग कैसे सक्षम करें + +क्या आपने कभी **how to enable antialiasing** के बारे में सोचा है जब आप एक वेब पेज को स्पष्ट PNG इमेज में बदलते हैं? आप अकेले नहीं हैं—कई डेवलपर्स को आउटपुट में जगर या ब्लरी दिखने पर समस्या आती है। अच्छी खबर यह है कि Aspose.HTML के साथ आप कुछ ही कोड लाइनों में उन किनारों को स्मूद कर सकते हैं। इस ट्यूटोरियल में हम HTML को PNG में रेंडर करने, HTML को इमेज में कन्वर्ट करने, और अंत में **save HTML as PNG** को एंटीएलियासिंग के साथ कैसे सक्षम करें, यह सटीक कदमों के साथ दिखाएंगे। + +> **आपको क्या मिलेगा:** एक पूर्ण, तैयार‑चलाने योग्य C# उदाहरण, प्रत्येक विकल्प की व्याख्या, और कस्टम फ़ॉन्ट्स या बड़े पृष्ठों जैसे किनारे के मामलों को संभालने के टिप्स। + +## HTML को PNG में रेंडर करते समय एंटीएलियासिंग कैसे सक्षम करें + +सबसे पहले आपको समझना चाहिए **why antialiasing matters**। जब रेंडरिंग इंजन आकार या टेक्स्ट ड्रॉ करता है, तो वह वक्रों को पिक्सेल से अनुमानित करता है। एंटीएलियासिंग के बिना, ये अनुमान सीढ़ी‑जैसे आर्टिफैक्ट बनाते हैं—विशेषकर तिरछी लाइनों या पतले फ़ॉन्ट्स पर स्पष्ट। एंटीएलियासिंग सक्षम करने से इंजन पड़ोसी पिक्सेल को ब्लेंड करता है, जिससे एक स्मूथ विज़ुअल परिणाम मिलता है। + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### प्रत्येक भाग क्यों महत्वपूर्ण है + +1. **HTMLDocument** – पूरी तरह मेमोरी में काम करता है, इसलिए आपको कोई भी भौतिक `.html` फ़ाइल की जरूरत नहीं है। ऑन‑द‑फ्लाई कन्वर्ज़न के लिए परफेक्ट। +2. **WebFontStyle** – दिखाता है कि आप रेंडरिंग से पहले टेक्स्ट को स्टाइल कर सकते हैं; बोल्ड‑इटैलिक कॉम्बो सिर्फ एक डेमो है। +3. **ImageRenderingOptions.UseAntialiasing** – यह फ़्लैग **how to enable antialiasing** का उत्तर है; इसे `true` सेट करें और रास्टराइज़र किनारों को स्मूद करेगा। +4. **TextOptions.UseHinting** – हिन्टिंग ग्लीफ़ की स्पष्टता सुधारता है, विशेषकर छोटे आकारों में। यह एंटीएलियासिंग का एक अच्छा साथी है। +5. **ImageSaveOptions** – रेंडरिंग और टेक्स्ट विकल्पों को एक साथ बंडल करता है, फिर Aspose को PNG फ़ाइल आउटपुट करने के लिए बताता है। + +## Aspose के साथ HTML को PNG में रेंडर करें + +अब जब आप **how to enable antialiasing** जानते हैं, चलिए **render html to png** की व्यापक तस्वीर पर चर्चा करते हैं। Aspose.HTML भारी काम को एब्स्ट्रैक्ट करता है: + +- **Automatic layout** – इंजन CSS को पार्स करता है, बॉक्स मॉडल की गणना करता है, और तत्वों को ब्राउज़र की तरह पोजिशन करता है। +- **Resolution control** – आप `ImageRenderingOptions.Resolution` के माध्यम से DPI निर्दिष्ट कर सकते हैं, जो हाई‑रेज़ोल्यूशन प्रिंट्स के लिए उपयोगी है। +- **Background handling** – यदि आपको ट्रांसपेरेंट या कलर्ड कैनवास चाहिए तो `imageOpts.BackgroundColor` सेट करें। + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** यदि आप ऐसे पेज को कन्वर्ट कर रहे हैं जिसमें बाहरी संसाधन (इमेज, फ़ॉन्ट) हैं, तो सुनिश्चित करें कि `htmlDoc.BaseUrl` को उन एसेट्स वाले फ़ोल्डर पर सेट किया गया हो। अन्यथा रेंडरर उन्हें स्किप कर देगा। + +## HTML को इमेज में कन्वर्ट करें – उन्नत विकल्प + +शब्द **convert html to image** अक्सर सिर्फ PNG से अधिक को दर्शाता है। Aspose JPEG, BMP, TIFF, और यहाँ तक कि GIF को भी सपोर्ट करता है। फॉर्मेट बदलना बस `SaveFormat` एनोम को बदलने जितना सरल है: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +जब आपको वेक्टर‑फ्रेंडली आउटपुट चाहिए, तो `SvgSaveOptions` पर विचार करें। वही रेंडरिंग पाइपलाइन लागू होती है, इसलिए आप फॉर्मेट्स में लगातार एंटीएलियासिंग प्राप्त करते हैं। + +### एज केस: बहुत लंबी पेजेज़ + +यदि आपका HTML सामान्य स्क्रीन से लंबा है, तो Aspose डिफ़ॉल्ट रूप से एक ही लंबी इमेज बनाता है। इससे मेमोरी उपयोग बढ़ सकता है। इसे कम करने के लिए, आप दस्तावेज़ को कई पेजेज़ में विभाजित कर सकते हैं: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML को PNG के रूप में सेव करें – अंतिम चरण + +अब तक आपने **how to enable antialiasing** देखा है, **render html to png** सीख लिया है, और **convert html to image** विकल्पों का अन्वेषण किया है। अंतिम कदम—**save html as png**—पहले ही मूल स्निपेट में दिखाया गया है, लेकिन चलिए इसे एक पुन: उपयोगी मेथड में लपेटते हैं: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +अब आप अपने प्रोजेक्ट में कहीं भी `SaveHtmlAsPng("…", @"C:\temp\output.png")` को कॉल कर सकते हैं। `antialias` पैरामीटर आपको स्मूद‑एज फीचर को टॉगल करने देता है, जिससे आप रनटाइम पर **how to enable antialiasing** पर पूर्ण नियंत्रण रख सकते हैं। + +## Aspose HTML से PNG – पूर्ण कार्यशील उदाहरण + +नीचे एक स्व-निहित कंसोल एप्लिकेशन है जो सब कुछ एक साथ जोड़ता है। कॉपी‑पेस्ट करें, `YOUR_DIRECTORY` प्लेसहोल्डर को समायोजित करें, और इसे .NET 6 या बाद के संस्करण के साथ चलाएँ। + + + +## अगला आपको क्या सीखना चाहिए? + +निम्नलिखित ट्यूटोरियल्स निकटतम संबंधित विषयों को कवर करते हैं जो इस गाइड में दिखाए गए तकनीकों पर आधारित हैं। प्रत्येक संसाधन में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ शामिल हैं, जो आपको अतिरिक्त API फीचर्स में महारत हासिल करने और अपने प्रोजेक्ट्स में वैकल्पिक इम्प्लीमेंटेशन अप्रोच को एक्सप्लोर करने में मदद करेंगे। + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hongkong/net/html-extensions-and-conversions/_index.md b/html/hongkong/net/html-extensions-and-conversions/_index.md index 3d146ada27..28c26c2801 100644 --- a/html/hongkong/net/html-extensions-and-conversions/_index.md +++ b/html/hongkong/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Aspose.HTML for .NET 不只是一個函式庫;它還是一個函式庫。它 使用 Aspose.HTML for .NET 將 HTML 文件壓縮為 ZIP 檔案,提供完整的 C# 範例與步驟說明。 ### [在 C# 中將 HTML 儲存為 ZIP – 完整的記憶體內示例](./save-html-to-zip-in-c-complete-in-memory-example/) 示範如何在 C# 中使用 Aspose.HTML 將 HTML 內容直接壓縮成 ZIP 檔案,全部在記憶體中完成。 +### [如何將 HTML 保存為 ZIP – 完整 Aspose.HTML 教學](./how-to-save-html-as-zip-complete-aspose-html-guide/) +使用 Aspose.HTML for .NET 在 C# 中將 HTML 壓縮為 ZIP,提供完整步驟與範例說明。 ## 結論 diff --git a/html/hongkong/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/hongkong/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..d4c781b20a --- /dev/null +++ b/html/hongkong/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: 學習如何使用 Aspose.HTML 將 HTML 儲存為 ZIP 壓縮檔。內容包括自訂資源處理程式以及一步一步的程式碼,將 HTML 轉換為 + ZIP。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: zh-hant +lastmod: 2026-07-08 +og_description: 如何使用 Aspose.HTML 將 HTML 儲存為 ZIP 壓縮檔。請參考本指南,了解如何使用自訂資源處理程式、將 HTML 轉換為 + ZIP,並建立 ZIP HTML 檔案。 +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: 如何將 HTML 儲存為 ZIP – 完整的 Aspose.HTML 教程 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: 如何將 HTML 儲存為 ZIP – 完整 Aspose.HTML 指南 +url: /zh-hant/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何將 HTML 儲存為 ZIP – 完整 Aspose.HTML 指南 + +有沒有想過 **如何將 html 儲存** 為單一、可攜帶的封包?也許你需要將整個網頁及其所有資源一起發佈,或是想要將產生的報告歸檔而不讓檔案散落各處。無論哪種情況,只要使用 Aspose.HTML,解決方案比你想像的還要簡單。 + +在本教學中,我們將示範一個實務範例,該範例 **將 html 轉換為 zip**,使用 **自訂資源處理程式**,最終向你展示如何 **建立 zip html** 檔案,讓你可以在任何地方解壓縮。完成後,你將擁有一個可直接執行的 C# 程式,僅需四個簡潔步驟即可完成全部工作。 + +## 前置條件 + +- .NET 6.0 或更新版本(程式碼同樣支援 .NET Framework 4.7 以上) +- Aspose.HTML 授權(免費試用版可用於測試) +- 開發環境,例如 Visual Studio 2022 或具備 C# 擴充功能的 VS Code +- 具備基本的 C# async/await 知識(非必須,但有助於理解) + +> **專業提示:** 若你是 Aspose.HTML 新手,請先取得 NuGet 套件 `Aspose.Html`,並在開始前將其加入專案中。 + +## 步驟 1:設定專案 + +首先,建立一個新的 Console 應用程式: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +就這樣——不需要額外的相依性。`Aspose.Html` 套件已經包含了我們在 **如何將 html 儲存** 為 ZIP 壓縮檔所需的類別。 + +## 步驟 2:實作自訂資源處理程式 + +當 Aspose.HTML 儲存文件時,需要一個位置來存放連結的資源(圖片、CSS、字型)。預設情況下,它會寫入檔案系統,但我們可以透過 **自訂資源處理程式** 攔截此過程。這讓我們能完全掌控每個資源的最終位置——非常適合建立乾淨的 ZIP 檔案。 + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**為什麼要使用自訂處理程式?** +- **彈性:** 可即時決定壓縮、加密或重新命名資源。 +- **效能:** 寫入記憶體可避免磁碟 I/O,適用於只需要暫存壓縮檔的情況。 +- **控制權:** 你可以自行決定 ZIP 內的資料夾結構,這在為下游系統 **建立 zip html** 時非常方便。 + +## 步驟 3:建立 HTML 文件 + +現在我們將建立一段簡單的 HTML 字串。在實際專案中,你可能會從檔案、資料庫或動態產生的內容載入它。 + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +如果有外部資產(圖片、CSS 檔案),只要確保其 URL 可被存取——Aspose 會透過先前定義的 **自訂資源處理程式** 來請求它們。 + +## 步驟 4:設定儲存選項以 **將 HTML 轉換為 ZIP** + +Aspose.HTML 提供多種 `HTMLSaveOptions` 子類別。對於 ZIP 壓縮檔,我們使用基礎的 `HTMLSaveOptions`,並將其 `OutputStorage` 設為我們的 `MyHandler`。這樣可告訴函式庫使用我們提供的串流來 **將 html 轉換為 zip**。 + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +你也可以微調 `saveOptions`: + +- `saveOptions.Compressed = true;` – 啟用 ZIP 壓縮(預設已開啟)。 +- `saveOptions.ExportResources = true;` – 確保包含連結的資源。 + +這些調整屬於可選項,但在為發佈 **建立 zip html** 時常常很有用。 + +## 步驟 5:儲存 ZIP 壓縮檔 – 正確的 **如何儲存 HTML** + +最後,我們呼叫 `Save`。第一個參數是產生的 ZIP 檔案路徑,第二個參數則是剛剛設定好的 `HTMLSaveOptions`。 + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +執行程式 (`dotnet run`) 後,你會在可執行檔旁看到 `output.zip` 檔案。使用任意壓縮檔管理工具開啟,你會看到: + +- `index.html` – 原始的標記檔。 +- 任何被引用的資源(圖片、CSS),皆以獨立條目儲存。 + +這就是完整的 **如何儲存 html** 工作流程,從原始標記到可攜帶的 ZIP 封裝。 + +## 加分項:處理圖片與外部資源 + +如果你的 HTML 包含 ``,`MyHandler` 會收到一個 `info.Uri` 指向 `logo.png` 的呼叫。你可以修改處理程式,從磁碟或遠端 URL 取得檔案: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +此程式碼片段示範如何擴充 **自訂資源處理程式** 以配合任何儲存策略,讓 ZIP 輸出真正反映專案的資產佈局。 + +## 常見陷阱與避免方法 + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` 回傳已關閉的串流或 `null`。 | 必須回傳全新、可寫入的 `MemoryStream` 或 `FileStream`。 | +| **Missing images** | 資源被 CORS 阻擋或本機無法取得。 | 先行下載資產,或調整 `HandleResource` 手動提供它們。 | +| **Large ZIP size** | 資源未被壓縮。 | 設定 `saveOptions.Compressed = true;`(預設)或在回傳前自行壓縮串流。 | +| **Incorrect file names** | 預設處理程式使用 GUID 為檔名。 | 在 `HandleResource` 內覆寫 `ResourceInfo.Name`,並相應重新命名串流。 | + +解決上述問題即可確保每次都有順暢的 **將 html 轉換為 zip** 體驗。 + +## 完整範例程式 + +以下是完整程式碼,你可以直接複製貼上到 `Program.cs`。它可直接編譯並執行。 + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**預期輸出:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +開啟 `output.zip` 後,你會看到 `index.html` 檔案以及所有已加入的資源。 + +## 總結 + +我們剛剛示範了如何使用 Aspose.HTML 將 **html 儲存為 ZIP** 壓縮檔,並搭配 **自訂資源處理程式**,讓你完整掌控封裝流程。現在你已了解如何 **將 html 轉換為 zip**,且可以輕鬆將程式碼改寫為產生 **zip html** 檔案,供電子郵件、離線文件或靜態網站部署使用。 + +### 接下來? + +- **加入 CSS/JS 檔案**:擴充 `MyHandler`,從專案資料夾取得樣式表與腳本。 +- **加密 ZIP**:在回傳前將 `MemoryStream` 包裝於 `CryptoStream` 中。 +- **批次處理**:遍歷 HTML 字串集合,為每個頁面產生一個 ZIP。 + +歡迎自行嘗試,若遇到任何問題請留下評論。祝開發愉快! + +## 接下來該學什麼? + +以下教學涵蓋與本指南密切相關的主題,並以此為基礎延伸。每篇資源皆提供完整可執行的程式碼範例與逐步說明,協助你精通更多 API 功能,並在自己的專案中探索替代實作方式。 + +- [如何在 C# 中儲存 HTML – 使用自訂資源處理程式的完整指南](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [如何在 C# 中壓縮 HTML 為 ZIP – 儲存 HTML 為 Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [將 HTML 儲存為 ZIP – 完整 C# 教學](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hongkong/net/rendering-html-documents/_index.md b/html/hongkong/net/rendering-html-documents/_index.md index dcea15c4c2..da8b552e33 100644 --- a/html/hongkong/net/rendering-html-documents/_index.md +++ b/html/hongkong/net/rendering-html-documents/_index.md @@ -43,6 +43,9 @@ Aspose.HTML for .NET 因其豐富的功能、優秀的文件和活躍的社群 ### [使用 Aspose.HTML 在 .NET 中將 HTML 渲染為 PNG](./render-html-as-png/) 學習使用 Aspose.HTML for .NET:操作 HTML、轉換為各種格式等等。深入學習這個綜合教學! +### [如何啟用抗鋸齒渲染 HTML 為 PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +學習如何在 Aspose.HTML for .NET 中啟用抗鋸齒,以提升渲染 PNG 圖像的品質。 + ### [如何將 HTML 渲染為 PNG – 完整 C# 指南](./how-to-render-html-as-png-complete-c-guide/) 學習使用 Aspose.HTML for .NET 在 C# 中將 HTML 渲染為 PNG,涵蓋完整步驟與最佳實踐。 ### [從 HTML 建立 PNG – 完整 C# 渲染指南](./create-png-from-html-full-c-rendering-guide/) diff --git a/html/hongkong/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/hongkong/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..07e6b1e435 --- /dev/null +++ b/html/hongkong/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,216 @@ +--- +category: general +date: 2026-07-08 +description: 了解如何在使用 Aspose HTML 將 HTML 渲染為 PNG 時啟用抗鋸齒。此指南亦涵蓋將 HTML 轉換為圖像以及將 HTML + 保存為 PNG。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: zh-hant +lastmod: 2026-07-08 +og_description: 如何在使用 Aspose HTML 將 HTML 渲染為 PNG 時啟用抗鋸齒。請按照此一步一步的教學將 HTML 轉換為圖像並將 + HTML 儲存為 PNG。 +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: 如何啟用抗鋸齒渲染 HTML 為 PNG – Aspose 指南 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: 如何啟用抗鋸齒渲染 HTML 為 PNG +url: /zh-hant/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在將 HTML 渲染為 PNG 時啟用抗鋸齒 + +有沒有想過在將網頁轉換為清晰的 PNG 圖像時**如何啟用抗鋸齒**?你並不孤單——許多開發者在輸出呈現鋸齒或模糊時會卡關。好消息是,使用 Aspose.HTML 只需幾行程式碼就能平滑這些邊緣。在本教學中,我們將逐步說明將 HTML 渲染為 PNG、將 HTML 轉換為圖像,最後**將 HTML 儲存為 PNG**且開啟抗鋸齒的完整流程。 + +> **你將獲得:** 完整、可直接執行的 C# 範例、每個選項的說明,以及處理自訂字型或大型頁面等邊緣案例的技巧。 + +## 在將 HTML 渲染為 PNG 時如何啟用抗鋸齒 + +首先你需要了解**為什麼抗鋸齒很重要**。當渲染引擎繪製形狀或文字時,會以像素近似曲線。若未啟用抗鋸齒,這些近似會產生階梯狀的鋸齒痕跡——在對角線或細字體上尤為明顯。啟用抗鋸齒會讓引擎混合相鄰像素,從而產生更平滑的視覺效果。 + +以下程式碼示範如何使用 Aspose.HTML 的 `ImageRenderingOptions` **啟用抗鋸齒**。我們會逐行說明,讓你清楚每一行的作用。 + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### 為何每個部分都很重要 + +1. **HTMLDocument** – 完全在記憶體中運作,無需實體 `.html` 檔案。非常適合即時轉換。 +2. **WebFontStyle** – 示範在渲染前即可設定文字樣式;粗斜體組合僅作示例。 +3. **ImageRenderingOptions.UseAntialiasing** – 此旗標即 **如何啟用抗鋸齒** 的答案;將其設為 `true` 後,光柵化程式會平滑邊緣。 +4. **TextOptions.UseHinting** – Hinting 能提升字形清晰度,特別是在小尺寸時。它是抗鋸齒的好搭檔。 +5. **ImageSaveOptions** – 將渲染與文字選項打包,然後指示 Aspose 輸出 PNG 檔案。 + +## 使用 Aspose 渲染 HTML 為 PNG + +既然你已了解**如何啟用抗鋸齒**,接下來談談**將 HTML 渲染為 PNG**的整體概念。Aspose.HTML 為你處理繁重的工作: + +- **自動版面配置** – 引擎會解析 CSS、計算盒模型,並像瀏覽器一樣定位元素。 +- **解析度控制** – 你可以透過 `ImageRenderingOptions.Resolution` 設定 DPI,對高解析度列印非常有用。 +- **背景處理** – 若需要透明或有色畫布,可設定 `imageOpts.BackgroundColor`。 + +以下是一個快速調整,加入自訂 DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **專業提示:** 若你正在轉換包含外部資源(圖片、字型)的頁面,務必將 `htmlDoc.BaseUrl` 設為該資產所在的資料夾。否則渲染器會忽略它們。 + +## 將 HTML 轉換為圖像 – 進階選項 + +**convert html to image** 這個說法通常不只指 PNG。Aspose 支援 JPEG、BMP、TIFF,甚至 GIF。只要變更 `SaveFormat` 列舉即可切換格式: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +若需要向量友好的輸出,可考慮使用 `SvgSaveOptions`。相同的渲染流程會套用於所有格式,確保抗鋸齒效果一致。 + +### 邊緣案例:極長頁面 + +如果你的 HTML 超過一般螢幕長度,Aspose 預設會產生一張超長的圖像,可能會導致記憶體使用激增。為了緩解此問題,你可以將文件拆分為多頁: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## 將 HTML 儲存為 PNG – 最後一步 + +此時你已了解**如何啟用抗鋸齒**、學會**將 HTML 渲染為 PNG**,並探索了**將 HTML 轉換為圖像**的選項。最後一步—**將 HTML 儲存為 PNG**—已在原始程式碼中示範,接下來我們把它封裝成可重用的方法: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +現在你可以在專案的任何位置呼叫 `SaveHtmlAsPng("…", @"C:\temp\output.png")`。`antialias` 參數讓你在執行時切換平滑邊緣功能,完整掌控**如何啟用抗鋸齒**。 + +## Aspose HTML 轉 PNG – 完整範例 + +以下是一個獨立的主控台應用程式,將所有步驟整合在一起。直接複製貼上,調整 `YOUR_DIRECTORY` 佔位符,然後以 .NET 6 或更新版本執行。 + + + +## 接下來該學什麼? + +以下教學涵蓋與本指南緊密相關的主題,進一步延伸本篇示範的技巧。每個資源皆提供完整可執行的程式碼範例與逐步說明,協助你精通更多 API 功能,並在專案中探索其他實作方式。 + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hungarian/net/html-extensions-and-conversions/_index.md b/html/hungarian/net/html-extensions-and-conversions/_index.md index 53dd8b575e..f6a5c2cf73 100644 --- a/html/hungarian/net/html-extensions-and-conversions/_index.md +++ b/html/hungarian/net/html-extensions-and-conversions/_index.md @@ -59,7 +59,8 @@ Hozzon létre HTML-dokumentumot formázott szöveggel, majd exportálja PDF-be a Ismerje meg, hogyan hozhat létre PDF-et HTML-ből C#‑ban az Aspose.HTML for .NET segítségével, részletes lépésről‑lépésre útmutatóval. ### [HTML mentése ZIP-ként – Teljes C# oktatóanyag](./save-html-as-zip-complete-c-tutorial/) ### [HTML mentése ZIP-be C#‑ban – Teljes memória‑beli példa](./save-html-to-zip-in-c-complete-in-memory-example/) -Mentse a HTML-t közvetlenül memóriában ZIP-archívumba az Aspose.HTML for .NET C#‑ban. +### [HTML mentése ZIP-be – Teljes Aspose.HTML útmutató](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Részletes útmutató az HTML fájlok ZIP-archívumba mentéséhez az Aspose.HTML for .NET használatával. ## Következtetés diff --git a/html/hungarian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/hungarian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..33d1dd3c64 --- /dev/null +++ b/html/hungarian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Ismerje meg, hogyan menthet HTML‑t ZIP archívumként az Aspose.HTML segítségével. + Tartalmaz egy egyedi erőforráskezelőt és lépésről‑lépésre bemutatott kódot a HTML + ZIP‑re konvertálásához. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: hu +lastmod: 2026-07-08 +og_description: Hogyan menthetünk HTML-t ZIP archívumba az Aspose.HTML segítségével. + Kövesse ezt az útmutatót a saját erőforráskezelő használatához, a HTML ZIP-re konvertálásához + és ZIP HTML fájlok létrehozásához. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Hogyan mentse el a HTML-t ZIP formátumban – Teljes Aspose.HTML útmutató +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: HTML mentése ZIP-be – Teljes Aspose.HTML útmutató +url: /hu/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hogyan mentse el a HTML-t ZIP‑ként – Teljes Aspose.HTML útmutató + +Gondolkodtál már azon, **hogyan mentse el a html**‑t egyetlen, hordozható csomagba? Lehet, hogy egy weboldalt szeretnél szállítani az összes erőforrásával, vagy archiválni akarod a generált jelentéseket anélkül, hogy a fájlok szétszóródnának. Bármelyik is legyen a cél, a megoldás egyszerűbb, mint gondolnád, ha az Aspose.HTML‑t használod. + +Ebben az útmutatóban egy valós példán keresztül mutatjuk be, hogyan **konvertáljuk a html‑t zip‑be**, egy **egyedi erőforráskezelőt** használva, és végül megmutatjuk, hogyan **hozzunk létre zip html** fájlokat, amelyeket bárhol ki lehet csomagolni. A végére egy kész C# programod lesz, amely négy egyszerű lépésben elvégzi a teljes feladatot. + +## Előfeltételek + +- .NET 6.0 vagy újabb (a kód .NET Framework 4.7+‑vel is működik) +- Aspose.HTML licenc (a ingyenes próbaverzió teszteléshez elegendő) +- IDE, például Visual Studio 2022 vagy VS Code C# kiegészítőkkel +- Alapvető ismeretek a C# async/await használatáról (nem kötelező, de hasznos) + +> **Pro tip:** Ha újonc vagy az Aspose.HTML‑ben, szerezd be a NuGet csomagot `Aspose.Html`, és add hozzá a projekthez, mielőtt elkezdenéd. + +## 1. lépés: A projekt beállítása + +Először hozz létre egy új konzolos alkalmazást: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Ennyi – nincs szükség extra függőségekre. Az `Aspose.Html` csomag már tartalmazza az összes osztályt, amire a **hogyan mentse el a html** ZIP‑archívumként szükség van. + +## 2. lépés: Egyedi erőforráskezelő megvalósítása + +Amikor az Aspose.HTML elment egy dokumentumot, szüksége van egy helyre, ahol a hivatkozott erőforrásokat (képek, CSS, betűkészletek) tárolja. Alapértelmezés szerint a fájlrendszerbe írja őket, de egy **egyedi erőforráskezelő** segítségével beavatkozhatunk ebbe a folyamatba. Ez teljes kontrollt ad arról, hogy minden erőforrás hová kerül – tökéletes egy tiszta ZIP fájl létrehozásához. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Miért használjunk egyedi kezelőt?** +- **Rugalmasság:** Futás közben dönthetsz a tömörítésről, titkosításról vagy az erőforrások átnevezéséről. +- **Teljesítmény:** Memóriába írás elkerüli a lemez‑I/O‑t, ha csak egy ideiglenes archívumra van szükség. +- **Kontroll:** Te határozod meg a ZIP‑en belüli pontos mappaszerkezetet, ami hasznos, amikor **zip html‑t hozol létre** downstream rendszereknek. + +## 3. lépés: HTML dokumentum felépítése + +Most egy egyszerű HTML‑stringet hozunk létre. Egy valódi projektben valószínűleg fájlból, adatbázisból vagy dinamikusan generálod majd. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Ha külső erőforrásaid (képek, CSS fájlok) vannak, győződj meg róla, hogy azok URL-jei elérhetők – az Aspose a **korábban definiált egyedi erőforráskezelőn** keresztül kérdezi le őket. + +## 4. lépés: Mentési beállítások konfigurálása a **HTML konvertálásához ZIP‑be** + +Az Aspose.HTML több `HTMLSaveOptions` alosztályt kínál. ZIP‑archívumhoz a `HTMLSaveOptions` alaposztályt használjuk, és a `OutputStorage`‑t a `MyHandler`‑re állítjuk. Ez azt mondja a könyvtárnak, hogy **konvertálja a html‑t zip‑be** a megadott stream‑ekkel. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +A `saveOptions` további finomhangolása is lehetséges: + +- `saveOptions.Compressed = true;` – engedélyezi a ZIP‑tömörítést (alapértelmezett). +- `saveOptions.ExportResources = true;` – biztosítja, hogy a hivatkozott erőforrások is bekerüljenek. + +Ezek a beállítások opcionálisak, de gyakran hasznosak, ha **zip html‑t hozol létre** terjesztéshez. + +## 5. lépés: ZIP archívum mentése – **Hogyan mentse el a HTML‑t** helyesen + +Végül meghívjuk a `Save` metódust. Az első argumentum a létrehozandó ZIP fájl elérési útja, a második pedig a korábban konfigurált `HTMLSaveOptions`. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +A program futtatásakor (`dotnet run`) egy `output.zip` fájlt találsz a futtatható mellé. Nyisd meg bármelyik archívumkezelővel, és a következőket fogod látni: + +- `index.html` – az eredeti markup. +- Az összes hivatkozott erőforrás (képek, CSS), mindegyik külön bejegyzésként. + +Ez a teljes **hogyan mentse el a html** munkafolyamat, a nyers markup‑tól egy hordozható ZIP‑csomagig. + +## Bónusz: Képek és külső erőforrások kezelése + +Ha a HTML‑ed tartalmaz `` elemet, a `MyHandler` egy hívást kap a `info.Uri`‑val, amely a `logo.png`‑re mutat. A kezelőt módosíthatod úgy, hogy a fájlt lemezről vagy távoli URL‑ről töltse be: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Ez a kódrészlet megmutatja, hogyan bővítheted a **egyedi erőforráskezelőt** bármilyen tárolási stratégia támogatására, így a ZIP kimenet valóban tükrözi a projekted erőforráselrendezését. + +## Gyakori hibák és elkerülésük + +| Probléma | Miért fordul elő | Megoldás | +|----------|------------------|----------| +| **Üres ZIP** | Az `OutputStorage` lezárt streamet vagy `null`‑t ad vissza. | Mindig adj vissza egy friss, írható `MemoryStream`‑et vagy `FileStream`‑et. | +| **Hiányzó képek** | Az erőforrásokat CORS blokkolja vagy helyileg nem elérhetők. | Töltsd le előre az asseteket, vagy állítsd be a `HandleResource`‑t, hogy manuálisan biztosítsa őket. | +| **Nagy ZIP méret** | Az erőforrások nincsenek tömörítve. | Állítsd be `saveOptions.Compressed = true;` (alapértelmezett) vagy tömörítsd a stream‑eket saját magad. | +| **Helytelen fájlnevek** | Az alapkezelő GUID‑okkal nevezi el a fájlokat. | Írd felül a `ResourceInfo.Name`‑t a `HandleResource`‑ben, és nevezd át a stream‑et ennek megfelelően. | + +Ezeknek a problémáknak a kezelése biztosítja, hogy minden alkalommal zökkenőmentes legyen a **konvertálás html‑ről zip‑be** élmény. + +## Teljes működő példa + +Az alábbi program a teljes kód, amelyet egyszerűen bemásolhatsz a `Program.cs`‑be. Közvetlenül lefordítható és futtatható. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Várt kimenet:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Nyisd meg az `output.zip`‑et, és láthatod az `index.html` fájlt plusz minden hozzáadott erőforrást. + +## Összegzés + +Most már tudod, **hogyan mentse el a html** ZIP‑archívumként az Aspose.HTML‑el, egy **egyedi erőforráskezelő** segítségével, amely teljes kontrollt ad a csomagolási folyamat felett. Megtanultad, hogyan **konvertálj html‑t zip‑be**, és könnyedén adaptálhatod a kódot **zip html** fájlok létrehozásához e‑mailhez, offline dokumentációhoz vagy statikus weboldal‑telepítésekhez. + +### Mi a következő lépés? + +- **CSS/JS fájlok hozzáadása:** Bővítsd a `MyHandler`‑t, hogy a stíluslapokat és szkripteket a projekt mappájából húzza be. +- **A ZIP titkosítása:** A `MemoryStream`‑et csomagold be egy `CryptoStream`‑be, mielőtt visszaadnád. +- **Kötegelt feldolgozás:** Iterálj egy HTML‑string gyűjteményen, és minden oldalhoz generálj egy ZIP‑et. + +Kísérletezz nyugodtan, és ha elakadsz, hagyj egy megjegyzést. Boldog kódolást! + +## Mit érdemes még megtanulni? + +Az alábbi oktatóanyagok szorosan kapcsolódó témákat fednek le, amelyek a jelen útmutatóban bemutatott technikákra építenek. Minden forrás tartalmaz teljes, működő kódrészleteket lépésről‑lépésre magyarázatokkal, hogy könnyedén elsajátíthasd az API további funkcióit és alternatív megvalósítási megközelítéseket a saját projektjeidben. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hungarian/net/rendering-html-documents/_index.md b/html/hungarian/net/rendering-html-documents/_index.md index 39529197da..009fdb48d3 100644 --- a/html/hungarian/net/rendering-html-documents/_index.md +++ b/html/hungarian/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ Tanulja meg, hogyan renderelhet HTML-t PNG formátumba az Aspose segítségével Ismerje meg, hogyan konvertálhatja a HTML-t PNG-be az Aspose segítségével .NET környezetben, lépésről lépésre. ### [PNG létrehozása HTML-ből – Teljes C# renderelési útmutató](./create-png-from-html-full-c-rendering-guide/) Tanulja meg, hogyan hozhat létre PNG képeket HTML-ből C#-ban az Aspose.HTML segítségével. +### [Hogyan engedélyezzük az antialiasingot a HTML PNG-re renderelés során](./how-to-enable-antialiasing-rendering-html-to-png/) +Ismerje meg, hogyan aktiválhatja az antialiasingot az Aspose.HTML for .NET használatával a HTML PNG formátumba történő rendereléshez. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/hungarian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/hungarian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..fc1040e0e0 --- /dev/null +++ b/html/hungarian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,219 @@ +--- +category: general +date: 2026-07-08 +description: Tanulja meg, hogyan engedélyezheti az antialiasingot, amikor az Aspose + HTML segítségével HTML-t renderel PNG-be. Ez az útmutató azt is lefedi, hogyan konvertálhatja + a HTML-t képpé, és hogyan mentheti a HTML-t PNG formátumban. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: hu +lastmod: 2026-07-08 +og_description: Hogyan lehet engedélyezni az antialiasingot HTML PNG-re renderelésekor + az Aspose HTML segítségével. Kövesse ezt a lépésről‑lépésre útmutatót a HTML kép + formátumba konvertálásához és a HTML PNG‑ként való mentéséhez. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Hogyan engedélyezzük az antialiasingot a HTML PNG-re történő renderelés + során – Aspose útmutató +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Hogyan engedélyezzük az antialiasingot HTML PNG-re történő rendereléskor +url: /hu/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hogyan engedélyezzük az antialiasing-et HTML PNG-re rendereléskor + +Gondolkodtál már azon, **hogyan engedélyezzük az antialiasing-et**, amikor egy weboldalt éles PNG képpé alakítunk? Nem vagy egyedül – sok fejlesztő akad el, ha a kimenet lépcsőzetes vagy homályos. A jó hír, hogy az Aspose.HTML segítségével néhány sor kóddal kisimíthatod ezeket a széleket. Ebben az útmutatóban lépésről lépésre bemutatjuk, hogyan rendereljük a HTML-t PNG-re, hogyan konvertáljuk a HTML-t képre, és végül **mentjük a HTML-t PNG-ként** antialiasing bekapcsolásával. + +> **Mit kapsz:** egy teljes, azonnal futtatható C# példát, minden opció magyarázatát, valamint tippeket a speciális esetek kezeléséhez, például egyedi betűtípusok vagy nagy oldalak esetén. + +## Hogyan engedélyezzük az antialiasing-et HTML PNG-re rendereléskor + +Az első dolog, amit meg kell értened, az **miért fontos az antialiasing**. Amikor a renderelő motor alakzatokat vagy szöveget rajzol, a görbéket pixelekkel közelíti. Antialiasing nélkül ezek a közelítések lépcsőzetes hibákat eredményeznek – különösen a diagonális vonalak vagy vékony betűk esetén. Az antialiasing bekapcsolása azt mondja a motornak, hogy keverje össze a szomszédos pixeleket, így simább vizuális eredményt kapunk. + +Az alábbiakban a központi kód látható, amely bemutatja, **hogyan engedélyezzük az antialiasing-et** az Aspose.HTML `ImageRenderingOptions` használatával. Lépésről lépésre bontjuk le, hogy pontosan lásd, mit csinál minden sor. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Miért fontos minden rész + +1. **HTMLDocument** – teljesen memóriában működik, így nem szükséges fizikai `.html` fájl. Tökéletes a futás közbeni konverziókhoz. +2. **WebFontStyle** – azt mutatja, hogy a szöveget a renderelés előtt is formázhatod; a félkövér‑dőlt kombináció csak egy bemutató. +3. **ImageRenderingOptions.UseAntialiasing** – ez a jelző a válasz a **hogyan engedélyezzük az antialiasing-et** kérdésre; állítsd `true`-ra, és a rasterizáló kisimítja a széleket. +4. **TextOptions.UseHinting** – a hinting javítja a glifek tisztaságát, különösen kis méreteknél. Szép kiegészítője az antialiasingnek. +5. **ImageSaveOptions** – egyesíti a renderelési és szövegbeállításokat, majd megmondja az Aspose-nak, hogy PNG fájlt állítson elő. + +## HTML renderelése PNG-re Aspose-szal + +Most, hogy már tudod, **hogyan engedélyezzük az antialiasing-et**, beszéljünk a **render html to png** átfogóbb képéről. Az Aspose.HTML leveszi a nehéz munkát a válladról: + +- **Automatikus elrendezés** – a motor elemzi a CSS-t, kiszámítja a dobozmodelleket, és elhelyezi az elemeket, mint egy böngésző. +- **Felbontás szabályozása** – a DPI-t a `ImageRenderingOptions.Resolution` segítségével adhatod meg, ami hasznos a nagy felbontású nyomtatásokhoz. +- **Háttér kezelése** – állítsd be a `imageOpts.BackgroundColor`-t, ha átlátszó vagy színes vászonra van szükséged. + +Itt egy gyors módosítás, amely egyedi DPI-t ad hozzá: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tipp:** Ha olyan oldalt konvertálsz, amely külső erőforrásokat (képeket, betűtípusokat) tartalmaz, győződj meg róla, hogy a `htmlDoc.BaseUrl`-t a megfelelő mappára állítod, amely ezeket az eszközöket tartalmazza. Ellenkező esetben a renderelő kihagyja őket. + +## HTML konvertálása képre – Haladó beállítások + +A **convert html to image** kifejezés gyakran a PNG-nél többet jelent. Az Aspose támogatja a JPEG, BMP, TIFF és akár a GIF formátumokat is. A formátum váltása olyan egyszerű, mint a `SaveFormat` enum módosítása: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Ha vektorbarát kimenetre van szükséged, vedd fontolóra a `SvgSaveOptions`-t. Ugyanaz a renderelési folyamat érvényes, így a formátumok között konzisztens antialiasing-et kapsz. + +### Különleges eset: Nagyon magas oldalak + +Ha a HTML hosszabb, mint egy tipikus képernyő, az Aspose alapértelmezés szerint egyetlen magas képet hoz létre. Ez jelentősen megnövelheti a memóriahasználatot. Ennek mérséklésére a dokumentumot több oldalra bonthatod: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML mentése PNG-ként – Az utolsó lépés + +Eddig már láttad, **hogyan engedélyezzük az antialiasing-et**, megtanultad a **render html to png** folyamatot, és felfedezted a **convert html to image** lehetőségeket. Az utolsó lépés – **save html as png** – már bemutatásra került az eredeti kódrészletben, de csomagoljuk be egy újrahasználható metódusba: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Most már bárhonnan a projektedben meghívhatod a `SaveHtmlAsPng("…", @"C:\temp\output.png")` metódust. Az `antialias` paraméterrel be- és kikapcsolhatod a sima szélek funkciót, így teljes irányítást kapsz a **hogyan engedélyezzük az antialiasing-et** futásidőben. + +## Aspose HTML PNG-re – Teljes működő példa + +Az alábbi önálló konzolalkalmazás mindent egy helyre gyűjt. Másold be, állítsd be a `YOUR_DIRECTORY` helyőrzőt, és futtasd .NET 6 vagy újabb verzióval. + + + +## Mit érdemes még megtanulni? + +Az alábbi útmutatók szorosan kapcsolódó témákat fednek le, amelyek a jelen útmutatóban bemutatott technikákra épülnek. Minden forrás tartalmaz teljes, működő kódrészleteket lépésről‑lépésre magyarázatokkal, hogy elsajátíthasd a további API funkciókat, és alternatív megvalósítási megközelítéseket fedezhess fel a saját projektjeidben. + +- [Hogyan használjuk az Aspose-t HTML PNG-re rendereléshez – Lépésről‑lépésre útmutató](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [HTML renderelése PNG-re Aspose-szal – Teljes útmutató](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [HTML renderelése PNG-ként .NET-ben az Aspose.HTML segítségével](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/indonesian/net/html-extensions-and-conversions/_index.md b/html/indonesian/net/html-extensions-and-conversions/_index.md index 6ac5368fff..ecf32b9f19 100644 --- a/html/indonesian/net/html-extensions-and-conversions/_index.md +++ b/html/indonesian/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Pelajari cara membuat dokumen HTML dengan teks berformat dan mengekspornya ke PD Pelajari cara menyimpan file HTML sebagai arsip ZIP menggunakan Aspose.HTML untuk .NET dengan contoh kode C# lengkap. ### [Simpan HTML ke ZIP di C# – Contoh In‑Memory Lengkap](./save-html-to-zip-in-c-complete-in-memory-example/) Pelajari cara menyimpan file HTML ke dalam arsip ZIP secara langsung di memori menggunakan C# dan Aspose.HTML. +### [Cara Menyimpan HTML sebagai ZIP – Panduan Lengkap Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Pelajari cara menyimpan HTML sebagai arsip ZIP secara lengkap menggunakan Aspose.HTML dengan contoh kode C#. ## Kesimpulan diff --git a/html/indonesian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/indonesian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..f1810b788d --- /dev/null +++ b/html/indonesian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Pelajari cara menyimpan HTML sebagai arsip ZIP menggunakan Aspose.HTML. + Termasuk penangan sumber daya khusus dan kode langkah demi langkah untuk mengonversi + HTML ke ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: id +lastmod: 2026-07-08 +og_description: Cara menyimpan HTML sebagai arsip ZIP dengan Aspose.HTML. Ikuti panduan + ini untuk menggunakan penangan sumber daya khusus, mengonversi HTML ke ZIP, dan + membuat file HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Cara Menyimpan HTML sebagai ZIP – Tutorial Lengkap Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Cara Menyimpan HTML sebagai ZIP – Panduan Lengkap Aspose.HTML +url: /id/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cara Menyimpan HTML sebagai ZIP – Panduan Lengkap Aspose.HTML + +Pernah bertanya-tanya **cara menyimpan html** ke dalam satu paket yang dapat dipindahkan? Mungkin Anda perlu mengirimkan sebuah halaman web beserta semua asetnya, atau Anda ingin mengarsipkan laporan yang dihasilkan tanpa menyebar file di mana‑mana. Bagaimanapun, solusinya lebih sederhana daripada yang Anda kira ketika menggunakan Aspose.HTML. + +Dalam tutorial ini kami akan menelusuri contoh dunia nyata yang **mengonversi html ke zip**, memanfaatkan **handler sumber daya khusus**, dan pada akhirnya menunjukkan secara tepat bagaimana **membuat zip html** yang dapat Anda ekstrak di mana saja. Pada akhir tutorial Anda akan memiliki program C# siap‑jalankan yang melakukan seluruh pekerjaan dalam empat langkah rapi. + +## Prasyarat + +- .NET 6.0 atau lebih baru (kode ini juga bekerja dengan .NET Framework 4.7+) +- Lisensi untuk Aspose.HTML (versi percobaan gratis cukup untuk pengujian) +- IDE seperti Visual Studio 2022 atau VS Code dengan ekstensi C# +- Familiaritas dasar dengan C# async/await (tidak wajib tetapi membantu) + +> **Pro tip:** Jika Anda baru mengenal Aspose.HTML, dapatkan paket NuGet `Aspose.Html` dan tambahkan ke proyek Anda sebelum memulai. + +## Langkah 1: Siapkan Proyek Anda + +Pertama, buat aplikasi console baru: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Itu saja—tidak ada dependensi tambahan. Paket `Aspose.Html` sudah berisi kelas‑kelas yang kami perlukan untuk **cara menyimpan html** sebagai arsip ZIP. + +## Langkah 2: Implementasikan Handler Sumber Daya Khusus + +Saat Aspose.HTML menyimpan dokumen, ia memerlukan tempat untuk menyimpan sumber daya yang terhubung (gambar, CSS, font). Secara default ia menuliskannya ke sistem file, tetapi kami dapat menyela proses tersebut dengan **handler sumber daya khusus**. Ini memberi kami kontrol penuh atas lokasi setiap sumber daya—sempurna untuk membuat file ZIP yang bersih. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Mengapa menggunakan handler khusus?** +- **Fleksibilitas:** Anda dapat memutuskan untuk mengompres, mengenkripsi, atau mengganti nama sumber daya secara dinamis. +- **Kinerja:** Menulis ke memori menghindari I/O disk ketika Anda hanya membutuhkan arsip sementara. +- **Kontrol:** Anda menentukan struktur folder tepat di dalam ZIP, yang berguna saat **membuat zip html** untuk sistem downstream. + +## Langkah 3: Bangun Dokumen HTML + +Sekarang kami akan membuat string HTML sederhana. Pada proyek nyata Anda mungkin memuatnya dari file, basis data, atau menghasilkan secara dinamis. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Jika Anda memiliki aset eksternal (gambar, file CSS), pastikan URL‑nya dapat diakses—Aspose akan memintanya melalui **handler sumber daya khusus** yang kami definisikan sebelumnya. + +## Langkah 4: Konfigurasikan Opsi Penyimpanan untuk **Mengonversi HTML ke ZIP** + +Aspose.HTML menawarkan beberapa subclass `HTMLSaveOptions`. Untuk arsip ZIP kami menggunakan `HTMLSaveOptions` dasar dan mengatur `OutputStorage` ke `MyHandler` kami. Ini memberi tahu perpustakaan untuk **mengonversi html ke zip** menggunakan aliran yang kami sediakan. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Anda juga dapat menyesuaikan `saveOptions`: + +- `saveOptions.Compressed = true;` – mengaktifkan kompresi ZIP (aktif secara default). +- `saveOptions.ExportResources = true;` – memastikan sumber daya yang terhubung disertakan. + +Penyesuaian ini opsional tetapi sering berguna ketika Anda **membuat zip html** untuk distribusi. + +## Langkah 5: Simpan Arsip ZIP – **Cara Menyimpan HTML** dengan Benar + +Akhirnya, panggil `Save`. Argumen pertama adalah jalur ke file ZIP yang dihasilkan, argumen kedua adalah `HTMLSaveOptions` yang baru saja kami konfigurasikan. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Saat Anda menjalankan program (`dotnet run`), Anda akan melihat file `output.zip` di samping executable Anda. Buka dengan pengelola arsip apa pun dan Anda akan menemukan: + +- `index.html` – markup asli. +- Semua sumber daya (gambar, CSS) yang direferensikan, masing‑masing disimpan sebagai entri terpisah. + +Itulah alur kerja lengkap **cara menyimpan html**, dari markup mentah hingga paket ZIP yang dapat dipindahkan. + +## Bonus: Menangani Gambar dan Sumber Daya Eksternal + +Jika HTML Anda berisi ``, `MyHandler` akan menerima panggilan dengan `info.Uri` yang mengarah ke `logo.png`. Anda dapat memodifikasi handler untuk mengambil file dari disk atau URL remote: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Cuplikan ini menunjukkan cara memperluas **handler sumber daya khusus** agar sesuai dengan strategi penyimpanan apa pun, sehingga output ZIP benar‑benar mencerminkan tata letak aset proyek Anda. + +## Kesalahan Umum & Cara Menghindarinya + +| Masalah | Mengapa Terjadi | Solusi | +|---------|----------------|--------| +| **ZIP Kosong** | `OutputStorage` mengembalikan stream yang sudah ditutup atau `null`. | Selalu kembalikan `MemoryStream` atau `FileStream` yang baru dan dapat ditulisi. | +| **Gambar Hilang** | Sumber daya diblokir oleh CORS atau tidak tersedia secara lokal. | Unduh aset terlebih dahulu atau sesuaikan `HandleResource` untuk menyediakannya secara manual. | +| **Ukuran ZIP Besar** | Sumber daya tidak dikompres. | Atur `saveOptions.Compressed = true;` (default) atau kompres aliran secara manual sebelum mengembalikannya. | +| **Nama File Salah** | Handler default memberi nama file dengan GUID. | Override `ResourceInfo.Name` di dalam `HandleResource` dan ubah nama stream sesuai kebutuhan. | + +Menangani hal‑hal ini memastikan pengalaman **mengonversi html ke zip** yang mulus setiap kali. + +## Contoh Kerja Lengkap + +Berikut adalah program lengkap yang dapat Anda salin‑tempel ke `Program.cs`. Program ini dapat dikompilasi dan dijalankan langsung. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Output yang diharapkan:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Buka `output.zip` dan Anda akan melihat file `index.html` serta semua sumber daya yang Anda tambahkan. + +## Penutup + +Kami baru saja mendemonstrasikan **cara menyimpan html** sebagai arsip ZIP menggunakan Aspose.HTML, lengkap dengan **handler sumber daya khusus** yang memberi Anda kontrol total atas proses pengemasan. Sekarang Anda tahu cara **mengonversi html ke zip**, dan Anda dapat dengan mudah menyesuaikan kode untuk **membuat zip html** untuk email, dokumentasi offline, atau penyebaran situs statis. + +### Apa Selanjutnya? + +- **Tambahkan file CSS/JS**: Perluas `MyHandler` untuk mengambil stylesheet dan skrip dari folder proyek Anda. +- **Enkripsi ZIP**: Bungkus `MemoryStream` dalam `CryptoStream` sebelum mengembalikannya. +- **Pemrosesan batch**: Loop melalui koleksi string HTML dan hasilkan ZIP per halaman. + +Silakan bereksperimen, dan tinggalkan komentar jika Anda menemukan kendala. Selamat coding! + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik terkait yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber daya menyertakan contoh kode lengkap dengan penjelasan langkah‑demi‑langkah untuk membantu Anda menguasai fitur API tambahan dan mengeksplorasi pendekatan implementasi alternatif dalam proyek Anda. + +- [Cara Menyimpan HTML di C# – Panduan Lengkap Menggunakan Handler Sumber Daya Khusus](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Cara Meng‑zip HTML di C# – Simpan HTML ke Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Simpan HTML sebagai ZIP – Tutorial Lengkap C#](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/indonesian/net/rendering-html-documents/_index.md b/html/indonesian/net/rendering-html-documents/_index.md index b7c974319f..d33e42d597 100644 --- a/html/indonesian/net/rendering-html-documents/_index.md +++ b/html/indonesian/net/rendering-html-documents/_index.md @@ -68,6 +68,9 @@ Pelajari cara menggunakan Aspose untuk mengonversi HTML menjadi PNG dengan pandu ### [Cara Merender HTML ke PNG dengan Aspose – Panduan Lengkap](./how-to-render-html-to-png-with-aspose-complete-guide/) Pelajari cara merender HTML menjadi PNG menggunakan Aspose dengan panduan lengkap langkah demi langkah. +### [Cara Mengaktifkan Antialiasing saat Merender HTML ke PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Pelajari cara mengaktifkan antialiasing saat merender HTML menjadi PNG menggunakan Aspose.HTML untuk .NET. + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/indonesian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/indonesian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..b041f74b88 --- /dev/null +++ b/html/indonesian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Pelajari cara mengaktifkan antialiasing saat Anda merender HTML ke PNG + menggunakan Aspose HTML. Panduan ini juga mencakup cara mengonversi HTML ke gambar + dan menyimpan HTML sebagai PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: id +lastmod: 2026-07-08 +og_description: Cara mengaktifkan antialiasing saat merender HTML ke PNG dengan Aspose + HTML. Ikuti tutorial langkah demi langkah ini untuk mengonversi HTML menjadi gambar + dan menyimpan HTML sebagai PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Cara Mengaktifkan Antialiasing pada Rendering HTML ke PNG – Panduan Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Cara Mengaktifkan Antialiasing Saat Merender HTML ke PNG +url: /id/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cara Mengaktifkan Antialiasing saat Merender HTML ke PNG + +Pernah bertanya-tanya **bagaimana cara mengaktifkan antialiasing** saat mengubah halaman web menjadi gambar PNG yang tajam? Anda tidak sendirian—banyak pengembang mengalami masalah ketika output terlihat bergerigi atau buram. Kabar baiknya, dengan Aspose.HTML Anda dapat menghaluskan tepi‑tepi tersebut hanya dengan beberapa baris kode. Dalam tutorial ini kami akan membahas langkah‑langkah tepat untuk merender HTML ke PNG, mengonversi HTML ke gambar, dan akhirnya **menyimpan HTML sebagai PNG** dengan antialiasing diaktifkan. + +> **Apa yang akan Anda dapatkan:** contoh C# lengkap yang siap dijalankan, penjelasan tentang setiap opsi, dan tip untuk menangani kasus tepi seperti font khusus atau halaman besar. + +## Cara Mengaktifkan Antialiasing saat Merender HTML ke PNG + +Hal pertama yang perlu Anda pahami adalah **mengapa antialiasing penting**. Ketika mesin rendering menggambar bentuk atau teks, ia memperkirakan kurva dengan piksel. Tanpa antialiasing, perkiraan tersebut menghasilkan artefak bertingkat—terutama terlihat pada garis diagonal atau font tipis. Mengaktifkan antialiasing memberi tahu mesin untuk mencampur piksel tetangga, menghasilkan tampilan visual yang lebih halus. + +Di bawah ini adalah kode inti yang menunjukkan **cara mengaktifkan antialiasing** menggunakan `ImageRenderingOptions` milik Aspose.HTML. Kami akan memecahnya langkah demi langkah sehingga Anda dapat melihat persis apa yang dilakukan setiap baris. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Mengapa setiap bagian penting + +1. **HTMLDocument** – beroperasi sepenuhnya di memori, sehingga Anda tidak memerlukan file `.html` fisik apa pun. Sempurna untuk konversi secara langsung. +2. **WebFontStyle** – menunjukkan bahwa Anda dapat menata teks sebelum rendering; kombinasi bold‑italic hanyalah demo. +3. **ImageRenderingOptions.UseAntialiasing** – flag ini adalah jawaban untuk **cara mengaktifkan antialiasing**; set ke `true` dan rasterizer akan menghaluskan tepi. +4. **TextOptions.UseHinting** – hinting meningkatkan kejelasan glyph, terutama pada ukuran kecil. Ini merupakan pendamping yang bagus untuk antialiasing. +5. **ImageSaveOptions** – menggabungkan opsi rendering dan teks, kemudian memberi tahu Aspose untuk menghasilkan file PNG. + +## Merender HTML ke PNG dengan Aspose + +Sekarang Anda sudah tahu **cara mengaktifkan antialiasing**, mari bahas gambaran lebih luas tentang **render html to png**. Aspose.HTML menyederhanakan pekerjaan berat: + +- **Automatic layout** – mesin mem-parsing CSS, menghitung model kotak, dan menempatkan elemen seperti pada browser. +- **Resolution control** – Anda dapat menentukan DPI melalui `ImageRenderingOptions.Resolution`, yang berguna untuk cetakan resolusi tinggi. +- **Background handling** – set `imageOpts.BackgroundColor` jika Anda memerlukan kanvas transparan atau berwarna. + +Berikut ini penyesuaian cepat yang menambahkan DPI khusus: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Jika Anda mengonversi halaman yang berisi sumber daya eksternal (gambar, font), pastikan untuk mengatur `htmlDoc.BaseUrl` ke folder yang berisi aset tersebut. Jika tidak, renderer akan melewatkannya. + +## Mengonversi HTML ke Gambar – Opsi Lanjutan + +Frasa **convert html to image** sering berarti lebih dari sekadar PNG. Aspose mendukung JPEG, BMP, TIFF, dan bahkan GIF. Mengganti format semudah mengubah enum `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Ketika Anda membutuhkan output yang ramah vektor, pertimbangkan `SvgSaveOptions`. Pipeline rendering yang sama diterapkan, sehingga Anda mendapatkan antialiasing yang konsisten di semua format. + +### Kasus tepi: Halaman sangat tinggi + +Jika HTML Anda lebih panjang dari layar tipikal, Aspose secara default akan membuat satu gambar tinggi. Hal ini dapat meningkatkan penggunaan memori. Untuk mengatasinya, Anda dapat membagi dokumen menjadi beberapa halaman: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Menyimpan HTML sebagai PNG – Langkah Akhir + +Pada titik ini Anda telah melihat **cara mengaktifkan antialiasing**, Anda telah belajar **render html ke png**, dan Anda telah menjelajahi opsi **convert html to image**. Langkah akhir—**save html as png**—sudah ditunjukkan dalam cuplikan asli, tetapi mari rangkum dalam metode yang dapat digunakan kembali: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Anda kini dapat memanggil `SaveHtmlAsPng("…", @"C:\temp\output.png")` dari mana saja dalam proyek Anda. Parameter `antialias` memungkinkan Anda mengaktifkan atau menonaktifkan fitur tepi‑halus, memberi Anda kontrol penuh atas **cara mengaktifkan antialiasing** saat runtime. + +## Aspose HTML ke PNG – Contoh Kerja Lengkap + +Di bawah ini adalah aplikasi konsol mandiri yang menggabungkan semuanya. Salin‑tempel, sesuaikan placeholder `YOUR_DIRECTORY`, dan jalankan dengan .NET 6 atau yang lebih baru. + + + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik terkait yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber menyertakan contoh kode lengkap yang berfungsi dengan penjelasan langkah demi langkah untuk membantu Anda menguasai fitur API tambahan dan mengeksplorasi pendekatan implementasi alternatif dalam proyek Anda. + +- [Cara Menggunakan Aspose untuk Merender HTML ke PNG – Panduan Langkah‑per‑Langkah](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Cara Merender HTML ke PNG dengan Aspose – Panduan Lengkap](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML sebagai PNG di .NET dengan Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/italian/net/html-extensions-and-conversions/_index.md b/html/italian/net/html-extensions-and-conversions/_index.md index fcf4daa304..a398ad9d35 100644 --- a/html/italian/net/html-extensions-and-conversions/_index.md +++ b/html/italian/net/html-extensions-and-conversions/_index.md @@ -71,6 +71,8 @@ Scopri come comprimere un documento HTML in un file ZIP usando Aspose.HTML per . Crea un PDF da HTML in C# con Aspose.HTML per .NET. Segui la nostra guida passo passo per una conversione semplice ed efficace. ### [Salva HTML come ZIP – Tutorial completo C#](./save-html-as-zip-complete-c-tutorial/) Salva HTML come archivio ZIP con Aspose.HTML per .NET. Guida passo passo per creare file ZIP contenenti HTML in C#. +### [Come salvare HTML in ZIP – Guida completa Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Scopri come comprimere un documento HTML in un archivio ZIP usando Aspose.HTML per .NET, con esempi dettagliati in C#. ### [Salva HTML in ZIP in C# – Esempio completo in memoria](./save-html-to-zip-in-c-complete-in-memory-example/) Scopri come salvare un documento HTML in un archivio ZIP interamente in memoria usando Aspose.HTML per .NET. diff --git a/html/italian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/italian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..292c1b8fd4 --- /dev/null +++ b/html/italian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Scopri come salvare l'HTML come archivio ZIP usando Aspose.HTML. Include + un gestore di risorse personalizzato e codice passo‑passo per convertire l'HTML + in ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: it +lastmod: 2026-07-08 +og_description: Come salvare HTML come archivio ZIP con Aspose.HTML. Segui questa + guida per utilizzare un gestore di risorse personalizzato, convertire HTML in ZIP + e creare file HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Come salvare HTML in ZIP – Tutorial completo di Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Come salvare HTML in ZIP – Guida completa a Aspose.HTML +url: /it/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Come salvare HTML come ZIP – Guida completa ad Aspose.HTML + +Ti sei mai chiesto **come salvare html** in un unico pacchetto portatile? Forse devi distribuire una pagina web con tutte le sue risorse, o vuoi archiviare i report generati senza spargere file ovunque. In ogni caso, la soluzione è più semplice di quanto pensi quando usi Aspose.HTML. + +In questo tutorial percorreremo un esempio reale che **converte html in zip**, utilizza un **gestore di risorse personalizzato**, e alla fine ti mostrerà esattamente come **creare zip html** file che puoi estrarre ovunque. Alla fine avrai un programma C# pronto all'uso che esegue l'intero lavoro in quattro semplici passaggi. + +## Prerequisiti + +- .NET 6.0 o successivo (il codice funziona anche con .NET Framework 4.7+) +- Una licenza per Aspose.HTML (la versione di prova gratuita è valida per i test) +- Un IDE come Visual Studio 2022 o VS Code con estensioni C# +- Familiarità di base con C# async/await (non obbligatorio ma utile) + +> **Suggerimento:** Se sei nuovo a Aspose.HTML, prendi il pacchetto NuGet `Aspose.Html` e aggiungilo al tuo progetto prima di iniziare. + +## Passo 1: Configura il tuo progetto + +Per prima cosa, crea una nuova applicazione console: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +È tutto—nessuna dipendenza aggiuntiva. Il pacchetto `Aspose.Html` contiene già le classi di cui avremo bisogno per **come salvare html** come archivio ZIP. + +## Passo 2: Implementa un gestore di risorse personalizzato + +Quando Aspose.HTML salva un documento, ha bisogno di un luogo dove memorizzare le risorse collegate (immagini, CSS, font). Per impostazione predefinita le scrive sul file system, ma possiamo intercettare quel processo con un **gestore di risorse personalizzato**. Questo ci dà il pieno controllo su dove finisce ogni risorsa—perfetto per creare un file ZIP pulito. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Perché usare un gestore personalizzato?** +- **Flessibilità:** Puoi decidere di comprimere, crittografare o rinominare le risorse al volo. +- **Prestazioni:** Scrivere in memoria evita I/O su disco quando ti serve solo un archivio temporaneo. +- **Controllo:** Decidi la struttura esatta delle cartelle all'interno del ZIP, utile quando **crei zip html** per sistemi a valle. + +## Passo 3: Costruisci il documento HTML + +Ora creeremo una semplice stringa HTML. In un progetto reale probabilmente la caricherai da un file, da un database o la genererai dinamicamente. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Se hai risorse esterne (immagini, file CSS), assicurati semplicemente che i loro URL siano raggiungibili—Aspose li richiederà tramite il **gestore di risorse personalizzato** definito in precedenza. + +## Passo 4: Configura le opzioni di salvataggio per **Convertire HTML in ZIP** + +Aspose.HTML offre diverse sottoclassi di `HTMLSaveOptions`. Per un archivio ZIP utilizziamo la classe base `HTMLSaveOptions` e impostiamo il suo `OutputStorage` sul nostro `MyHandler`. Questo indica alla libreria di **convertire html in zip** usando gli stream che forniamo. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Puoi anche modificare `saveOptions`: + +- `saveOptions.Compressed = true;` – abilita la compressione ZIP (attiva per impostazione predefinita). +- `saveOptions.ExportResources = true;` – garantisce che le risorse collegate siano incluse. + +Queste modifiche sono opzionali ma spesso utili quando **crei zip html** per la distribuzione. + +## Passo 5: Salva l'archivio ZIP – **Come salvare HTML** correttamente + +Infine, chiamiamo `Save`. Il primo argomento è il percorso del file ZIP risultante, il secondo è il `HTMLSaveOptions` appena configurato. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Quando esegui il programma (`dotnet run`), vedrai un file `output.zip` accanto al tuo eseguibile. Aprilo con qualsiasi gestore di archivi e troverai: + +- `index.html` – il markup originale. +- Qualsiasi risorsa (immagini, CSS) che è stata referenziata, ciascuna memorizzata come voce separata. + +Questo è l'intero flusso di lavoro **come salvare html**, dal markup grezzo a un pacchetto ZIP portatile. + +## Bonus: Gestione di immagini e risorse esterne + +Se il tuo HTML contiene ``, il `MyHandler` riceverà una chiamata con `info.Uri` che punta a `logo.png`. Puoi modificare il gestore per recuperare il file dal disco o da un URL remoto: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Questo frammento mostra come puoi estendere il **gestore di risorse personalizzato** per adattarlo a qualsiasi strategia di archiviazione, facendo sì che l'output ZIP rifletta realmente la disposizione delle risorse del tuo progetto. + +## Problemi comuni e come evitarli + +| Problema | Perché succede | Soluzione | +|----------|----------------|-----------| +| **ZIP vuoto** | `OutputStorage` restituisce uno stream chiuso o `null`. | Restituisci sempre un nuovo `MemoryStream` o `FileStream` scrivibile. | +| **Immagini mancanti** | Le risorse sono bloccate da CORS o non disponibili localmente. | Pre‑scarica le risorse o modifica `HandleResource` per fornirle manualmente. | +| **Dimensione ZIP grande** | Le risorse non sono compresse. | Imposta `saveOptions.Compressed = true;` (predefinito) o comprimi gli stream manualmente prima di restituirli. | +| **Nomi file errati** | Il gestore predefinito assegna nomi ai file con GUID. | Sovrascrivi `ResourceInfo.Name` all'interno di `HandleResource` e rinomina lo stream di conseguenza. | + +Affrontare questi problemi garantisce un'esperienza fluida di **convertire html in zip** ogni volta. + +## Esempio completo funzionante + +Di seguito trovi il programma completo che puoi copiare‑incollare in `Program.cs`. Compila ed esegue subito. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Output previsto:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Apri `output.zip` e vedrai il file `index.html` più tutte le risorse che hai aggiunto. + +## Conclusione + +Abbiamo appena dimostrato **come salvare html** come archivio ZIP usando Aspose.HTML, completo di un **gestore di risorse personalizzato** che ti dà il controllo totale sul processo di impacchettamento. Ora sai come **convertire html in zip**, e puoi facilmente adattare il codice per **creare zip html** per email, documentazione offline o distribuzioni di siti statici. + +### Cosa c'è dopo? + +- **Aggiungi file CSS/JS**: Estendi `MyHandler` per prelevare fogli di stile e script dalla cartella del tuo progetto. +- **Cifra il ZIP**: Avvolgi il `MemoryStream` in un `CryptoStream` prima di restituirlo. +- **Elaborazione batch**: Itera su una collezione di stringhe HTML e genera un ZIP per pagina. + +Sentiti libero di sperimentare e lascia un commento se incontri problemi. Buona programmazione! + +## Cosa dovresti imparare dopo? + +I seguenti tutorial coprono argomenti strettamente correlati che si basano sulle tecniche dimostrate in questa guida. Ogni risorsa include esempi di codice completi e funzionanti con spiegazioni passo‑passo per aiutarti a padroneggiare funzionalità aggiuntive dell'API ed esplorare approcci di implementazione alternativi nei tuoi progetti. + +- [Come salvare HTML in C# – Guida completa usando un gestore di risorse personalizzato](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Come comprimere HTML in ZIP in C# – Salva HTML in Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Salva HTML come ZIP – Tutorial completo C#](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/italian/net/rendering-html-documents/_index.md b/html/italian/net/rendering-html-documents/_index.md index 1239e762f3..d7f9366ebe 100644 --- a/html/italian/net/rendering-html-documents/_index.md +++ b/html/italian/net/rendering-html-documents/_index.md @@ -60,6 +60,9 @@ Scopri come controllare efficacemente i timeout di rendering in Aspose.HTML per Impara a eseguire il rendering di più documenti HTML utilizzando Aspose.HTML per .NET. Aumenta le tue capacità di elaborazione dei documenti con questa potente libreria. ### [Rendi il documento SVG come PNG in .NET con Aspose.HTML](./render-svg-doc-as-png/) Sblocca la potenza di Aspose.HTML per .NET! Scopri come rendere SVG Doc come PNG senza sforzo. Immergiti in esempi passo dopo passo e FAQ. Inizia subito! +### [Come abilitare l'anti-aliasing nel rendering di HTML in PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Scopri come attivare l'anti-aliasing per migliorare la qualità delle immagini PNG generate da HTML con Aspose.HTML. + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/italian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/italian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..6043b57050 --- /dev/null +++ b/html/italian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Scopri come abilitare l'antialiasing quando rendi HTML in PNG usando + Aspose HTML. Questa guida copre anche la conversione di HTML in immagine e il salvataggio + di HTML come PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: it +lastmod: 2026-07-08 +og_description: Come abilitare l'antialiasing durante il rendering di HTML in PNG + con Aspose HTML. Segui questo tutorial passo‑passo per convertire l'HTML in immagine + e salvare l'HTML come PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Come abilitare l'antialiasing nella resa di HTML in PNG – Guida Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Come abilitare l'antialiasing nel rendering di HTML in PNG +url: /it/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Come abilitare l'anti‑aliasing nel rendering di HTML in PNG + +Ti sei mai chiesto **come abilitare l'anti‑aliasing** mentre trasformi una pagina web in un’immagine PNG nitida? Non sei il solo—molti sviluppatori incontrano difficoltà quando il risultato appare seghettato o sfocato. La buona notizia è che con Aspose.HTML puoi levigare quei bordi con poche righe di codice. In questo tutorial percorreremo passo dopo passo le istruzioni per renderizzare HTML in PNG, convertire HTML in immagine e, infine, **salvare HTML come PNG** con l'anti‑aliasing attivato. + +> **Cosa otterrai:** un esempio completo, pronto‑da‑eseguire in C#, una spiegazione di ogni opzione e consigli per gestire casi particolari come font personalizzati o pagine di grandi dimensioni. + +## Come abilitare l'anti‑aliasing durante il rendering di HTML in PNG + +La prima cosa da capire è **perché l'anti‑aliasing è importante**. Quando il motore di rendering disegna forme o testo, approssima le curve con i pixel. Senza anti‑aliasing, queste approssimazioni creano artefatti a gradini—soprattutto su linee diagonali o caratteri sottili. Abilitare l'anti‑aliasing indica al motore di mescolare i pixel vicini, producendo un risultato visivo più fluido. + +Di seguito trovi il codice principale che dimostra **come abilitare l'anti‑aliasing** usando `ImageRenderingOptions` di Aspose.HTML. Lo analizzeremo passo dopo passo così potrai vedere esattamente cosa fa ogni riga. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Perché ogni elemento è importante + +1. **HTMLDocument** – funziona interamente in memoria, quindi non hai bisogno di file `.html` fisici. Perfetto per conversioni al volo. +2. **WebFontStyle** – dimostra che puoi stilizzare il testo prima del rendering; la combinazione grassetto‑corsivo è solo un esempio. +3. **ImageRenderingOptions.UseAntialiasing** – questo flag è la risposta a **come abilitare l'anti‑aliasing**; impostalo a `true` e il rasterizzatore levigherà i bordi. +4. **TextOptions.UseHinting** – l’hinting migliora la chiarezza dei glifi, soprattutto a dimensioni ridotte. È un ottimo complemento all'anti‑aliasing. +5. **ImageSaveOptions** – raggruppa le opzioni di rendering e di testo, quindi indica ad Aspose di generare un file PNG. + +## Renderizzare HTML in PNG con Aspose + +Ora che conosci **come abilitare l'anti‑aliasing**, parliamo della panoramica più ampia di **render html to png**. Aspose.HTML si occupa della parte più complessa: + +- **Layout automatico** – il motore analizza il CSS, calcola i modelli di box e posiziona gli elementi proprio come un browser. +- **Controllo della risoluzione** – puoi specificare i DPI tramite `ImageRenderingOptions.Resolution`, utile per stampe ad alta risoluzione. +- **Gestione dello sfondo** – imposta `imageOpts.BackgroundColor` se ti serve una tela trasparente o colorata. + +Ecco una rapida modifica che aggiunge un DPI personalizzato: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Se stai convertendo una pagina che contiene risorse esterne (immagini, font), assicurati di impostare `htmlDoc.BaseUrl` alla cartella che contiene tali asset. Altrimenti il renderer le ignorerà. + +## Convertire HTML in immagine – Opzioni avanzate + +L’espressione **convert html to image** spesso implica più di un semplice PNG. Aspose supporta JPEG, BMP, TIFF e persino GIF. Cambiare formato è semplice come modificare l’enumerazione `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Quando ti serve un output adatto ai vettori, considera `SvgSaveOptions`. La stessa pipeline di rendering si applica, così ottieni un anti‑aliasing coerente tra i formati. + +### Caso limite: pagine molto lunghe + +Se il tuo HTML è più lungo di uno schermo tipico, Aspose, per impostazione predefinita, crea un’unica immagine alta. Questo può aumentare notevolmente l’uso di memoria. Per mitigare il problema, puoi suddividere il documento in più pagine: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Salvare HTML come PNG – L'ultimo passo + +A questo punto hai visto **come abilitare l'anti‑aliasing**, hai imparato a **render html to png** e hai esplorato le opzioni di **convert html to image**. L’atto finale—**save html as png**—è già mostrato nello snippet originale, ma avvolgiamolo in un metodo riutilizzabile: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Ora puoi chiamare `SaveHtmlAsPng("…", @"C:\temp\output.png")` da qualsiasi punto del tuo progetto. Il parametro `antialias` ti permette di attivare o disattivare la levigatura dei bordi, dandoti pieno controllo su **come abilitare l'anti‑aliasing** a runtime. + +## Aspose HTML to PNG – Esempio completo funzionante + +Di seguito trovi un’applicazione console autonoma che mette insieme tutti gli elementi. Copia‑incolla, regola il segnaposto `YOUR_DIRECTORY` e esegui con .NET 6 o versioni successive. + + + +## Cosa dovresti imparare dopo? + +I tutorial seguenti trattano argomenti strettamente correlati che si basano sulle tecniche dimostrate in questa guida. Ogni risorsa include esempi di codice completi e funzionanti con spiegazioni passo passo per aiutarti a padroneggiare funzionalità aggiuntive dell’API e a esplorare approcci di implementazione alternativi nei tuoi progetti. + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/japanese/net/html-extensions-and-conversions/_index.md b/html/japanese/net/html-extensions-and-conversions/_index.md index 4110fd8e86..083e6606fb 100644 --- a/html/japanese/net/html-extensions-and-conversions/_index.md +++ b/html/japanese/net/html-extensions-and-conversions/_index.md @@ -78,6 +78,9 @@ C# と Aspose.HTML を使用して、HTML コンテンツを Zip アーカイブ ### [C# で HTML を ZIP に保存 – 完全インメモリ例](./save-html-to-zip-in-c-complete-in-memory-example/) Aspose.HTML for .NET を使用して、HTML をメモリ内で ZIP アーカイブに保存する手順をステップバイステップで解説します。 +### [HTML を ZIP に保存 – 完全 Aspose.HTML ガイド](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aspose.HTML for .NET を使用し、HTML を ZIP アーカイブとして保存する完全ガイドをステップバイステップで解説します。 + ## 結論 結論として、HTML の拡張と変換は、現代の Web 開発に不可欠な要素です。Aspose.HTML for .NET はプロセスを簡素化し、あらゆるレベルの開発者が利用できるようにします。当社のチュートリアルに従うことで、幅広いスキルを備えた熟練した Web 開発者になるための道を順調に進むことができます。 diff --git a/html/japanese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/japanese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..1d5905957c --- /dev/null +++ b/html/japanese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: Aspose.HTML を使用して HTML を ZIP アーカイブとして保存する方法を学びましょう。カスタムリソースハンドラと、HTML + を ZIP に変換するステップバイステップのコードが含まれています。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: ja +lastmod: 2026-07-08 +og_description: Aspose.HTML を使用して HTML を ZIP アーカイブとして保存する方法。このガイドに従ってカスタムリソースハンドラを使用し、HTML + を ZIP に変換し、ZIP HTML ファイルを作成します。 +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: HTMLをZIPとして保存する方法 – 完全なAspose.HTMLチュートリアル +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: HTML を ZIP に保存する方法 – 完全な Aspose.HTML ガイド +url: /ja/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML を ZIP として保存する方法 – 完全な Aspose.HTML ガイド + +単一のポータブルパッケージとして **HTML を保存する方法** を考えたことはありますか? Web ページとそのすべてのアセットを配布したい場合や、生成されたレポートをファイルを散らばらせずにアーカイブしたい場合に役立ちます。どちらにせよ、Aspose.HTML を使用すれば思ったよりもシンプルに解決できます。 + +このチュートリアルでは、**HTML を ZIP に変換** する実践的な例を通して、**カスタムリソースハンドラ** を活用し、最終的に **ZIP HTML を作成** してどこでも解凍できる方法を詳しく解説します。最後まで読めば、4 つの手順で完結する実行可能な C# プログラムが手に入ります。 + +## Prerequisites + +- .NET 6.0 以降(コードは .NET Framework 4.7+ でも動作します) +- Aspose.HTML のライセンス(無料トライアルはテストに使用可能) +- Visual Studio 2022 や C# 拡張機能が入った VS Code などの IDE +- C# の async/await の基本的な知識(必須ではありませんがあると便利です) + +> **Pro tip:** Aspose.HTML が初めての方は、NuGet パッケージ `Aspose.Html` を取得し、プロジェクトに追加してから始めてください。 + +## Step 1: Set Up Your Project + +First, create a new console app: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +それだけです—追加の依存関係は不要です。`Aspose.Html` パッケージには **HTML を ZIP として保存する方法** に必要なクラスがすでに含まれています。 + +## Step 2: Implement a Custom Resource Handler + +Aspose.HTML がドキュメントを保存するとき、リンクされたリソース(画像、CSS、フォント)を格納する場所が必要です。デフォルトではファイルシステムに書き込みますが、**カスタムリソースハンドラ** でこのプロセスをフックできます。これにより、各リソースの保存先を完全に制御でき、クリーンな ZIP ファイルを作成するのに最適です。 + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**カスタムハンドラを使う理由** +- **柔軟性:** 圧縮、暗号化、リネームなどをその場で実行できます。 +- **パフォーマンス:** メモリへ書き込むことで、一時的なアーカイブ作成時のディスク I/O を回避できます。 +- **制御性:** ZIP 内のフォルダー構造を自分で決められるため、**ZIP HTML を作成** して下流システムに渡す際に便利です。 + +## Step 3: Build the HTML Document + +Now we’ll create a simple HTML string. In a real project you’d probably load this from a file, a database, or generate it dynamically. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +外部アセット(画像、CSS ファイル)がある場合は、その URL がアクセス可能であることを確認してください—Aspose は先ほど定義した **カスタムリソースハンドラ** を通してそれらを取得します。 + +## Step 4: Configure Save Options to **Convert HTML to ZIP** + +Aspose.HTML にはいくつかの `HTMLSaveOptions` サブクラスがあります。ZIP アーカイブの場合は基本の `HTMLSaveOptions` を使用し、`OutputStorage` に `MyHandler` を設定します。これにより、ライブラリは提供したストリームを使って **HTML を ZIP に変換** します。 + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +`saveOptions` も調整可能です: + +- `saveOptions.Compressed = true;` – ZIP 圧縮を有効にします(デフォルトで有効)。 +- `saveOptions.ExportResources = true;` – リンクされたリソースがすべて含まれるようにします。 + +これらの調整は任意ですが、**ZIP HTML を作成** して配布する際に便利です。 + +## Step 5: Save the ZIP Archive – **How to Save HTML** Properly + +Finally, we call `Save`. The first argument is the path to the resulting ZIP file, the second is the `HTMLSaveOptions` we just configured. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +プログラムを実行すると(`dotnet run`)、実行ファイルの隣に `output.zip` が生成されます。任意のアーカイブマネージャで開くと、以下が確認できます: + +- `index.html` – 元のマークアップ。 +- 参照されたリソース(画像、CSS)それぞれが個別のエントリとして格納。 + +これが **HTML を ZIP として保存する方法** の全工程です。生のマークアップからポータブルな ZIP パッケージまで完了です。 + +## Bonus: Handling Images and External Resources + +HTML に `` が含まれている場合、`MyHandler` は `info.Uri` が `logo.png` を指す呼び出しを受け取ります。ハンドラを拡張してディスクやリモート URL からファイルを取得できるようにしましょう: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +このスニペットは、**カスタムリソースハンドラ** を任意のストレージ戦略に合わせて拡張し、ZIP 出力がプロジェクトのアセットレイアウトを正確に反映する方法を示しています。 + +## Common Pitfalls & How to Avoid Them + +| 問題 | 発生原因 | 対策 | +|------|----------|------| +| **Empty ZIP** | `OutputStorage` が閉じたストリームまたは `null` を返す | 常に新しい書き込み可能な `MemoryStream` または `FileStream` を返す | +| **Missing images** | リソースが CORS にブロックされるかローカルに存在しない | アセットを事前にダウンロードするか、`HandleResource` を調整して手動で供給 | +| **Large ZIP size** | リソースが圧縮されていない | `saveOptions.Compressed = true;`(デフォルト)を設定するか、返す前に自分でストリームを圧縮 | +| **Incorrect file names** | デフォルトハンドラが GUID でファイル名を付ける | `HandleResource` 内で `ResourceInfo.Name` を上書きし、ストリームに適切な名前を付ける | + +これらのポイントに注意すれば、毎回スムーズに **HTML を ZIP に変換** できます。 + +## Full Working Example + +Below is the complete program you can copy‑paste into `Program.cs`. It compiles and runs out‑of‑the‑box. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Expected output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +`output.zip` を開くと、`index.html` ファイルと追加したリソースがすべて確認できます。 + +## Wrap‑Up + +Aspose.HTML を使用して **HTML を ZIP アーカイブとして保存する方法** を、**カスタムリソースハンドラ** とともに実演しました。これで **HTML を ZIP に変換** でき、メール、オフラインドキュメント、静的サイトのデプロイなど、さまざまなシナリオに合わせて **ZIP HTML を作成** できるようになりました。 + +### What’s Next? + +- **CSS/JS ファイルを追加:** `MyHandler` を拡張して、プロジェクトフォルダーからスタイルシートやスクリプトを取得します。 +- **ZIP を暗号化:** `MemoryStream` を `CryptoStream` でラップしてから返します。 +- **バッチ処理:** HTML 文字列のコレクションをループし、ページごとに ZIP を生成します。 + +自由に試してみて、問題があればコメントを残してください。ハッピーコーディング! + +## What Should You Learn Next? + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [C# で HTML を保存する方法 – カスタムリソースハンドラを使用した完全ガイド](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [C# で HTML を ZIP にする方法 – HTML を ZIP に保存](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [HTML を ZIP として保存 – 完全な C# チュートリアル](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/japanese/net/rendering-html-documents/_index.md b/html/japanese/net/rendering-html-documents/_index.md index 0d786f01cb..974a2838d8 100644 --- a/html/japanese/net/rendering-html-documents/_index.md +++ b/html/japanese/net/rendering-html-documents/_index.md @@ -68,6 +68,9 @@ Aspose.HTML for .NET を使い、HTML を高品質な PNG 画像に変換する ### [HTML から PNG を作成 – 完全な C# レンダリング ガイド](./create-png-from-html-full-c-rendering-guide/) Aspose.HTML for .NET を使用して、HTML を PNG 画像に変換する完全な C# ガイドです。ステップバイステップで解説します。 +### [HTML を PNG にレンダリングする際にアンチエイリアシングを有効にする方法](./how-to-enable-antialiasing-rendering-html-to-png/) +Aspose.HTML for .NET で HTML を PNG に変換する際に、アンチエイリアシングを有効にして高品質な画像を生成する手順を解説します。 + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/japanese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/japanese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..0e7c4fdbb3 --- /dev/null +++ b/html/japanese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,212 @@ +--- +category: general +date: 2026-07-08 +description: Aspose HTML を使用して HTML を PNG にレンダリングする際にアンチエイリアシングを有効にする方法を学びます。このガイドでは、HTML + を画像に変換し、HTML を PNG として保存する方法もカバーしています。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: ja +lastmod: 2026-07-08 +og_description: Aspose HTML を使用して HTML を PNG にレンダリングする際にアンチエイリアシングを有効にする方法。HTML を画像に変換し、PNG + として保存するステップバイステップのチュートリアルをご覧ください。 +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: HTML を PNG にレンダリングする際のアンチエイリアシングを有効にする方法 – Aspose ガイド +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: HTMLをPNGにレンダリングする際にアンチエイリアスを有効にする方法 +url: /ja/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTMLをPNGにレンダリングする際のアンチエイリアシングの有効化方法 + +ウェブページを鮮明な PNG 画像に変換する際に、**アンチエイリアシングを有効にする方法**を疑問に思ったことはありませんか? あなただけではありません—多くの開発者が出力がギザギザしたりぼやけたりして問題に直面しています。 良いニュースは、Aspose.HTML を使用すれば、数行のコードでエッジを滑らかにできることです。このチュートリアルでは、HTML を PNG にレンダリングし、HTML を画像に変換し、最後に **アンチエイリアシングをオンにした状態で HTML を PNG として保存**する正確な手順を解説します。 + +> **得られるもの:** 完全な、すぐに実行できる C# のサンプル、すべてのオプションの説明、そしてカスタムフォントや大きなページといったエッジケースの処理に関するヒント。 + +## HTMLをPNGにレンダリングする際のアンチエイリアシングの有効化方法 + +最初に理解すべきは **アンチエイリアシングが重要な理由** です。レンダリングエンジンが形状やテキストを描画する際、曲線をピクセルで近似します。アンチエイリアシングが無いと、これらの近似が階段状のアーティファクトを生み、特に斜めの線や細いフォントで目立ちます。アンチエイリアシングを有効にすると、エンジンは隣接するピクセルをブレンドし、より滑らかな視覚結果を生成します。 + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### 各要素が重要な理由 + +1. **HTMLDocument** – 完全にメモリ上で動作するため、実際の `.html` ファイルは不要です。オンザフライの変換に最適です。 +2. **WebFontStyle** – レンダリング前にテキストのスタイルを設定できることを示します。太字と斜体の組み合わせはデモ用です。 +3. **ImageRenderingOptions.UseAntialiasing** – このフラグが **アンチエイリアシングを有効にする方法** の答えです。`true` に設定すると、ラスタライザがエッジを滑らかにします。 +4. **TextOptions.UseHinting** – ヒンティングは特に小さいサイズで文字の明瞭さを向上させます。アンチエイリアシングの良いパートナーです。 +5. **ImageSaveOptions** – レンダリングオプションとテキストオプションをまとめ、Aspose に PNG ファイルとして出力させます。 + +## Aspose を使用した HTML の PNG へのレンダリング + +**アンチエイリアシングの有効化方法** が分かったところで、次は **HTML を PNG にレンダリング** という広い視点について説明します。Aspose.HTML は重い処理を抽象化します: + +- **自動レイアウト** – エンジンは CSS を解析し、ボックスモデルを計算し、要素をブラウザと同様に配置します。 +- **解像度制御** – `ImageRenderingOptions.Resolution` で DPI を指定でき、高解像度印刷に便利です。 +- **背景処理** – 透明またはカラーのキャンバスが必要な場合は `imageOpts.BackgroundColor` を設定します。 + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **プロのコツ:** 外部リソース(画像、フォント)を含むページを変換する場合は、`htmlDoc.BaseUrl` をそれらのアセットが格納されたフォルダーに設定してください。設定しないと、レンダラはそれらをスキップしてしまいます。 + +## HTML を画像に変換 – 詳細オプション + +**convert html to image** というフレーズは、PNG だけでなく JPEG、BMP、TIFF、さらには GIF も含むことを意味します。フォーマットの切り替えは `SaveFormat` 列挙体を変更するだけで簡単です。 + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +ベクターフレンドリーな出力が必要な場合は `SvgSaveOptions` を検討してください。同じレンダリングパイプラインが適用されるため、フォーマット間で一貫したアンチエイリアシングが得られます。 + +### エッジケース: 非常に長いページ + +HTML が典型的な画面よりも長い場合、Aspose はデフォルトで単一の長い画像を作成します。これによりメモリ使用量が急増する可能性があります。対策として、ドキュメントを複数のページに分割できます: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML を PNG として保存 – 最終ステップ + +ここまでで **アンチエイリアシングを有効にする方法** を確認し、**HTML を PNG にレンダリング** の手順を学び、**HTML を画像に変換** のオプションも検討しました。最終ステップである **HTML を PNG として保存** は元のスニペットですでに示されていますが、再利用可能なメソッドとしてまとめてみましょう: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +これでプロジェクトの任意の場所から `SaveHtmlAsPng("…", @"C:\temp\output.png")` を呼び出すことができます。`antialias` パラメータで滑らかなエッジ機能のオンオフを切り替えられ、実行時に **アンチエイリアシングを有効にする方法** を完全に制御できます。 + +## Aspose HTML to PNG – 完全動作サンプル + +以下はすべてを統合した自己完結型コンソールアプリケーションです。コピー&ペーストし、`YOUR_DIRECTORY` プレースホルダーを調整して、.NET 6 以降で実行してください。 + + + +## 次に学ぶべきことは? + +以下のチュートリアルは、本ガイドで示した手法を基にした密接に関連するトピックをカバーしています。各リソースには、ステップバイステップの解説と完全な動作コード例が含まれており、追加の API 機能を習得し、プロジェクトで代替実装アプローチを探求するのに役立ちます。 + +- [Aspose を使用して HTML を PNG にレンダリングする方法 – ステップバイステップガイド](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Aspose で HTML を PNG にレンダリングする方法 – 完全ガイド](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [.NET で Aspose.HTML を使用して HTML を PNG にレンダリングする方法](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/korean/net/html-extensions-and-conversions/_index.md b/html/korean/net/html-extensions-and-conversions/_index.md index 38fc3bd7e6..0301244fac 100644 --- a/html/korean/net/html-extensions-and-conversions/_index.md +++ b/html/korean/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Aspose.HTML for .NET을 사용하여 스타일이 적용된 텍스트가 포함 Aspose.HTML for .NET을 사용해 HTML을 ZIP 파일로 저장하는 전체 C# 단계별 튜토리얼. ### [C#에서 HTML을 ZIP으로 저장 – 완전 인메모리 예제](./save-html-to-zip-in-c-complete-in-memory-example/) Aspose.HTML for .NET을 사용하여 메모리 내에서 HTML을 ZIP 파일로 저장하는 방법을 단계별로 안내합니다. +### [HTML을 ZIP으로 저장하는 방법 – 전체 Aspose.HTML 가이드](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aspose.HTML for .NET을 사용하여 HTML을 ZIP 파일로 저장하는 전체 단계별 가이드를 확인하세요. ## 결론 diff --git a/html/korean/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/korean/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..754b9e3056 --- /dev/null +++ b/html/korean/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: Aspose.HTML를 사용하여 HTML을 ZIP 아카이브로 저장하는 방법을 배웁니다. 사용자 정의 리소스 핸들러와 HTML을 + ZIP으로 변환하는 단계별 코드를 포함합니다. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: ko +lastmod: 2026-07-08 +og_description: Aspose.HTML를 사용하여 HTML을 ZIP 아카이브로 저장하는 방법. 이 가이드를 따라 맞춤 리소스 핸들러를 사용하고, + HTML을 ZIP으로 변환하며, ZIP HTML 파일을 생성하세요. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: HTML을 ZIP으로 저장하는 방법 – 전체 Aspose.HTML 튜토리얼 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: HTML을 ZIP으로 저장하는 방법 – 완전한 Aspose.HTML 가이드 +url: /ko/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML을 ZIP으로 저장하는 방법 – Aspose.HTML 완전 가이드 + +HTML을 **단일 포터블 패키지**로 저장하고 싶으신가요? 웹 페이지와 모든 자산을 함께 배포하거나, 파일이 흩어지지 않도록 생성된 보고서를 보관해야 할 때가 있습니다. Aspose.HTML을 사용하면 생각보다 간단하게 해결할 수 있습니다. + +이 튜토리얼에서는 **HTML을 ZIP으로 변환**하는 실제 예제를 단계별로 살펴보고, **커스텀 리소스 핸들러**를 활용하여 **ZIP HTML** 파일을 어디서든 풀어쓸 수 있는 방법을 보여드립니다. 마지막에는 네 단계만으로 전체 작업을 수행하는 C# 프로그램을 완성하게 됩니다. + +## 사전 요구 사항 + +- .NET 6.0 이상 (.NET Framework 4.7+에서도 동작) +- Aspose.HTML 라이선스 (테스트용 무료 평가판 사용 가능) +- Visual Studio 2022 또는 C# 확장 기능이 설치된 VS Code 등 IDE +- C# async/await에 대한 기본 지식 (필수는 아니지만 도움이 됩니다) + +> **Pro tip:** Aspose.HTML을 처음 사용한다면 NuGet 패키지 `Aspose.Html`을 프로젝트에 추가하고 시작하세요. + +## 1단계: 프로젝트 설정 + +먼저 새로운 콘솔 앱을 만듭니다: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +그게 전부입니다—추가 종속성은 필요 없습니다. `Aspose.Html` 패키지에 **HTML을 ZIP으로 저장**하는 데 필요한 모든 클래스가 포함되어 있습니다. + +## 2단계: 커스텀 리소스 핸들러 구현 + +Aspose.HTML이 문서를 저장할 때는 연결된 리소스(이미지, CSS, 폰트)를 저장할 위치가 필요합니다. 기본적으로 파일 시스템에 기록하지만, **커스텀 리소스 핸들러**를 사용하면 이 과정을 가로챌 수 있습니다. 이를 통해 각 리소스가 어디에 들어갈지 완전히 제어할 수 있어 깔끔한 ZIP 파일을 만들기에 최적입니다. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**커스텀 핸들러를 사용하는 이유** +- **유연성:** 압축, 암호화 또는 이름 변경을 실시간으로 수행할 수 있습니다. +- **성능:** 메모리로 직접 쓰면 디스크 I/O를 피할 수 있어 임시 아카이브 생성에 유리합니다. +- **제어:** ZIP 내부 폴더 구조를 직접 정의할 수 있어 **ZIP HTML**을 downstream 시스템에 전달할 때 편리합니다. + +## 3단계: HTML 문서 빌드 + +간단한 HTML 문자열을 만들어 보겠습니다. 실제 프로젝트에서는 파일, 데이터베이스, 혹은 동적으로 생성된 문자열을 사용할 수 있습니다. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +외부 자산(이미지, CSS 파일 등)이 있다면 해당 URL이 접근 가능하도록 해두세요—Aspose는 앞서 정의한 **커스텀 리소스 핸들러**를 통해 이를 요청합니다. + +## 4단계: **HTML을 ZIP으로 변환**하기 위한 저장 옵션 구성 + +Aspose.HTML에는 여러 `HTMLSaveOptions` 하위 클래스가 있습니다. ZIP 아카이브를 만들 때는 기본 `HTMLSaveOptions`를 사용하고 `OutputStorage`를 우리의 `MyHandler`로 지정합니다. 이렇게 하면 제공한 스트림을 통해 **HTML을 ZIP으로 변환**하도록 라이브러리에 지시하게 됩니다. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +`saveOptions`를 추가로 조정할 수도 있습니다: + +- `saveOptions.Compressed = true;` – ZIP 압축 활성화(기본값). +- `saveOptions.ExportResources = true;` – 연결된 리소스가 포함되도록 보장. + +이 옵션들은 선택 사항이지만 **ZIP HTML**을 배포용으로 만들 때 흔히 사용됩니다. + +## 5단계: ZIP 아카이브 저장 – **HTML 저장** 올바르게 수행하기 + +이제 `Save`를 호출합니다. 첫 번째 인자는 결과 ZIP 파일 경로이고, 두 번째 인자는 방금 구성한 `HTMLSaveOptions`입니다. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +프로그램을 실행(`dotnet run`)하면 실행 파일 옆에 `output.zip` 파일이 생성됩니다. 압축 관리 프로그램으로 열어 보면: + +- `index.html` – 원본 마크업. +- 참조된 모든 리소스(이미지, CSS 등)가 각각 별개의 엔트리로 저장됨. + +이것이 **HTML을 ZIP으로 저장**하는 전체 흐름이며, 원시 마크업에서 포터블 ZIP 패키지까지 한 번에 처리합니다. + +## 보너스: 이미지 및 외부 리소스 처리 + +HTML에 ``와 같은 태그가 있다면, `MyHandler`는 `info.Uri`가 `logo.png`를 가리키는 호출을 받게 됩니다. 핸들러를 수정해 디스크나 원격 URL에서 파일을 가져오도록 할 수 있습니다: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +이 스니펫은 **커스텀 리소스 핸들러**를 여러분의 저장 전략에 맞게 확장하는 방법을 보여줍니다. 이를 통해 ZIP 출력이 프로젝트의 자산 레이아웃을 정확히 반영하도록 할 수 있습니다. + +## 흔히 발생하는 문제와 해결 방법 + +| 문제 | 발생 원인 | 해결 방법 | +|------|----------|-----------| +| **빈 ZIP** | `OutputStorage`가 닫힌 스트림이나 `null`을 반환 | 항상 새롭고 쓰기 가능한 `MemoryStream` 또는 `FileStream`을 반환 | +| **이미지 누락** | CORS 차단 또는 로컬에서 접근 불가 | 자산을 미리 다운로드하거나 `HandleResource`에서 직접 제공 | +| **ZIP 크기 과다** | 리소스가 압축되지 않음 | `saveOptions.Compressed = true;`(기본) 혹은 스트림을 직접 압축 | +| **파일명 오류** | 기본 핸들러가 GUID로 파일명 지정 | `HandleResource` 내부에서 `ResourceInfo.Name`을 재정의하고 스트림 이름을 변경 | + +위 사항들을 점검하면 **HTML을 ZIP으로 변환**할 때마다 원활한 결과를 얻을 수 있습니다. + +## 전체 작업 예제 + +아래는 `Program.cs`에 그대로 복사해 넣을 수 있는 완전한 프로그램입니다. 별도 설정 없이 바로 컴파일·실행됩니다. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**예상 출력:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +`output.zip`을 열면 `index.html` 파일과 추가한 모든 리소스를 확인할 수 있습니다. + +## 정리 + +이번 가이드를 통해 Aspose.HTML을 사용해 **HTML을 ZIP 아카이브**로 저장하는 방법을 살펴보았습니다. **커스텀 리소스 핸들러**를 활용하면 패키징 과정을 완전히 제어할 수 있습니다. 이제 **HTML을 ZIP으로 변환**하는 방법을 알게 되었으니, 이메일, 오프라인 문서, 정적 사이트 배포 등 다양한 시나리오에 맞게 **ZIP HTML** 파일을 손쉽게 생성할 수 있습니다. + +### 다음 단계 + +- **CSS/JS 파일 추가**: `MyHandler`를 확장해 프로젝트 폴더에서 스타일시트와 스크립트를 가져오기. +- **ZIP 암호화**: 반환하기 전에 `MemoryStream`을 `CryptoStream`으로 감싸기. +- **배치 처리**: 여러 HTML 문자열을 순회하며 페이지당 ZIP을 생성하기. + +실험해 보시고, 문제가 생기면 댓글로 알려 주세요. 즐거운 코딩 되세요! + +## 다음에 배울 내용은? + +다음 튜토리얼들은 이번 가이드에서 다룬 기술을 기반으로 하며, 추가 API 기능을 마스터하고 다양한 구현 방식을 탐색하는 데 도움이 됩니다. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/korean/net/rendering-html-documents/_index.md b/html/korean/net/rendering-html-documents/_index.md index 7178d36b08..3f71160a31 100644 --- a/html/korean/net/rendering-html-documents/_index.md +++ b/html/korean/net/rendering-html-documents/_index.md @@ -42,6 +42,8 @@ Aspose.HTML for .NET은 풍부한 기능, 훌륭한 설명서, 활발한 커뮤 ### [Aspose.HTML을 사용하여 .NET에서 HTML을 PNG로 렌더링합니다.](./render-html-as-png/) .NET용 Aspose.HTML을 사용하는 방법을 배우세요: HTML을 조작하고, 다양한 형식으로 변환하고, 더 많은 것을 하세요. 이 포괄적인 튜토리얼에 뛰어드세요! +### [HTML을 PNG로 렌더링할 때 안티앨리어싱 활성화 방법](./how-to-enable-antialiasing-rendering-html-to-png/) +Aspose.HTML for .NET에서 안티앨리어싱을 적용하여 HTML을 고품질 PNG 이미지로 렌더링하는 방법을 단계별로 안내합니다. ### [HTML을 PNG로 렌더링하는 방법 – 완전한 C# 가이드](./how-to-render-html-as-png-complete-c-guide/) Aspose.HTML for .NET을 사용해 C#으로 HTML을 PNG 이미지로 변환하는 전체 과정을 단계별로 안내합니다. diff --git a/html/korean/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/korean/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..3a94e3f32a --- /dev/null +++ b/html/korean/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,216 @@ +--- +category: general +date: 2026-07-08 +description: Aspose HTML을 사용하여 HTML을 PNG로 렌더링할 때 안티앨리어싱을 활성화하는 방법을 배웁니다. 이 가이드는 HTML을 + 이미지로 변환하고 HTML을 PNG로 저장하는 방법도 다룹니다. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: ko +lastmod: 2026-07-08 +og_description: Aspose HTML을 사용하여 HTML을 PNG로 렌더링할 때 안티앨리어싱을 활성화하는 방법. HTML을 이미지로 변환하고 + PNG로 저장하는 단계별 튜토리얼을 따라보세요. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: HTML을 PNG로 렌더링할 때 안티앨리어싱을 활성화하는 방법 – Aspose 가이드 +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: HTML을 PNG로 렌더링할 때 안티앨리어싱을 활성화하는 방법 +url: /ko/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML을 PNG로 렌더링할 때 안티앨리어싱 활성화 방법 + +웹 페이지를 선명한 PNG 이미지로 변환하면서 **안티앨리어싱을 어떻게 활성화할 수 있는지** 궁금해 본 적 있나요? 당신만 그런 것이 아닙니다—많은 개발자들이 출력이 들쭉날쭉하거나 흐릿하게 나오는 문제에 부딪히곤 합니다. 좋은 소식은 Aspose.HTML을 사용하면 몇 줄의 코드만으로 그 가장자리를 부드럽게 만들 수 있다는 점입니다. 이 튜토리얼에서는 HTML을 PNG로 렌더링하고, HTML을 이미지로 변환하며, 마지막으로 안티앨리어싱을 켠 **HTML을 PNG로 저장**하는 정확한 단계를 살펴보겠습니다. + +> **얻을 수 있는 것:** 완전한 실행 가능한 C# 예제, 모든 옵션에 대한 설명, 그리고 사용자 정의 폰트나 큰 페이지와 같은 엣지 케이스를 처리하기 위한 팁. + +## HTML을 PNG로 렌더링할 때 안티앨리어싱을 활성화하는 방법 + +먼저 이해해야 할 것은 **왜 안티앨리어싱이 중요한지**입니다. 렌더링 엔진이 도형이나 텍스트를 그릴 때 곡선을 픽셀로 근사합니다. 안티앨리어싱이 없으면 이러한 근사로 인해 계단 모양의 아티팩트가 생기며, 특히 대각선 선이나 얇은 폰트에서 눈에 띕니다. 안티앨리어싱을 활성화하면 엔진이 인접 픽셀을 혼합하여 보다 부드러운 시각적 결과를 제공합니다. + +아래는 Aspose.HTML의 `ImageRenderingOptions`를 사용하여 **안티앨리어싱을 활성화하는 방법**을 보여주는 핵심 코드입니다. 각 줄이 정확히 무엇을 하는지 단계별로 살펴보겠습니다. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### 각 요소가 중요한 이유 + +1. **HTMLDocument** – 메모리 내에서 완전히 작동하므로 실제 `.html` 파일이 필요 없습니다. 실시간 변환에 이상적입니다. +2. **WebFontStyle** – 렌더링 전에 텍스트에 스타일을 적용할 수 있음을 보여줍니다; 굵은‑이탤릭 조합은 단순한 데모일 뿐입니다. +3. **ImageRenderingOptions.UseAntialiasing** – 이 플래그가 **안티앨리어싱을 활성화하는 방법**에 대한 답입니다; `true`로 설정하면 래스터라이저가 가장자리를 부드럽게 합니다. +4. **TextOptions.UseHinting** – 힌팅은 특히 작은 크기에서 글리프의 선명도를 향상시킵니다. 안티앨리어싱과 좋은 조합을 이룹니다. +5. **ImageSaveOptions** – 렌더링 옵션과 텍스트 옵션을 모두 묶어 Aspose에게 PNG 파일을 출력하도록 지시합니다. + +## Aspose를 사용하여 HTML을 PNG로 렌더링 + +이제 **안티앨리어싱을 활성화하는 방법**을 알았으니, **HTML을 PNG로 렌더링**하는 전체적인 흐름에 대해 이야기해 보겠습니다. Aspose.HTML은 복잡한 작업을 추상화합니다: + +- **자동 레이아웃** – 엔진이 CSS를 파싱하고, 박스 모델을 계산하며, 요소를 브라우저와 동일하게 배치합니다. +- **해상도 제어** – `ImageRenderingOptions.Resolution`을 통해 DPI를 지정할 수 있어 고해상도 인쇄에 유용합니다. +- **배경 처리** – 투명하거나 색상이 있는 캔버스가 필요하면 `imageOpts.BackgroundColor`를 설정합니다. + +다음은 사용자 정의 DPI를 추가하는 간단한 수정 예시입니다: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **프로 팁:** 외부 리소스(이미지, 폰트)가 포함된 페이지를 변환하는 경우, 해당 자산이 들어 있는 폴더를 `htmlDoc.BaseUrl`에 설정하십시오. 그렇지 않으면 렌더러가 이를 건너뛰게 됩니다. + +## HTML을 이미지로 변환 – 고급 옵션 + +**convert html to image**라는 문구는 종종 PNG뿐만 아니라 다른 포맷도 포함합니다. Aspose는 JPEG, BMP, TIFF, 심지어 GIF도 지원합니다. 포맷을 전환하려면 `SaveFormat` 열거형을 변경하기만 하면 됩니다: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +벡터 친화적인 출력이 필요할 때는 `SvgSaveOptions`를 고려하십시오. 동일한 렌더링 파이프라인이 적용되므로 포맷 전반에 걸쳐 일관된 안티앨리어싱을 얻을 수 있습니다. + +### 엣지 케이스: 매우 긴 페이지 + +HTML이 일반 화면보다 길 경우, Aspose는 기본적으로 하나의 긴 이미지를 생성합니다. 이는 메모리 사용량을 크게 늘릴 수 있습니다. 이를 완화하려면 문서를 여러 페이지로 나눌 수 있습니다: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML을 PNG로 저장 – 최종 단계 + +이제 **안티앨리어싱을 활성화하는 방법**을 확인했고, **HTML을 PNG로 렌더링**하는 방법을 배웠으며, **HTML을 이미지로 변환** 옵션도 살펴보았습니다. 최종 단계인 **HTML을 PNG로 저장**은 원본 스니펫에 이미 시연되어 있지만, 재사용 가능한 메서드로 정리해 보겠습니다: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +이제 프로젝트 어디서든 `SaveHtmlAsPng("…", @"C:\temp\output.png")`를 호출할 수 있습니다. `antialias` 매개변수를 사용하면 부드러운 가장자리 기능을 토글할 수 있어 런타임에 **안티앨리어싱을 활성화하는 방법**을 완전히 제어할 수 있습니다. + +## Aspose HTML to PNG – 전체 작동 예제 + +아래는 모든 요소를 하나로 묶은 독립 실행형 콘솔 애플리케이션입니다. 복사‑붙여넣기하고 `YOUR_DIRECTORY` 자리표시자를 조정한 뒤 .NET 6 이상에서 실행하십시오. + + + +## 다음에 배울 내용은? + +다음 튜토리얼은 이 가이드에서 시연한 기술을 기반으로 하는 밀접한 관련 주제를 다룹니다. 각 자료에는 단계별 설명과 함께 완전한 동작 코드 예제가 포함되어 있어 추가 API 기능을 마스터하고 자체 프로젝트에서 대체 구현 방식을 탐색하는 데 도움이 됩니다. + +- [Aspose를 사용하여 HTML을 PNG로 렌더링하는 방법 – 단계별 가이드](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Aspose와 함께 HTML을 PNG로 렌더링 – 완전 가이드](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Aspose.HTML을 사용하여 .NET에서 HTML을 PNG로 렌더링](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/polish/net/html-extensions-and-conversions/_index.md b/html/polish/net/html-extensions-and-conversions/_index.md index 5b553b0026..61519d2484 100644 --- a/html/polish/net/html-extensions-and-conversions/_index.md +++ b/html/polish/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Dowiedz się, jak stworzyć dokument HTML z formatowanym tekstem i wyeksportowa Zapisz dokument HTML jako archiwum ZIP w C# przy użyciu Aspose.HTML – kompletny przewodnik krok po kroku. ### [Zapisz HTML do ZIP w C# – Kompletny przykład w pamięci](./save-html-to-zip-in-c-complete-in-memory-example/) Zapisz dokument HTML do archiwum ZIP w pamięci przy użyciu Aspose.HTML w C#. +### [Zapisz HTML jako ZIP – Kompletny przewodnik Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Zapisz dokument HTML jako archiwum ZIP przy użyciu Aspose.HTML – kompletny przewodnik krok po kroku. ## Wniosek diff --git a/html/polish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/polish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..abbdd568d6 --- /dev/null +++ b/html/polish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,295 @@ +--- +category: general +date: 2026-07-08 +description: Dowiedz się, jak zapisać HTML jako archiwum ZIP przy użyciu Aspose.HTML. + Zawiera własny obsługiwacz zasobów oraz kod krok po kroku konwertujący HTML na ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: pl +lastmod: 2026-07-08 +og_description: Jak zapisać HTML jako archiwum ZIP przy użyciu Aspose.HTML. Skorzystaj + z tego przewodnika, aby używać własnego obsługiwacza zasobów, konwertować HTML na + ZIP i tworzyć pliki ZIP HTML. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Jak zapisać HTML jako ZIP – Pełny samouczek Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Jak zapisać HTML jako ZIP – Kompletny przewodnik Aspose.HTML +url: /pl/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak zapisać HTML jako ZIP – Kompletny przewodnik Aspose.HTML + +Zastanawiałeś się kiedyś **jak zapisać html** w jednym, przenośnym pakiecie? Być może musisz udostępnić stronę internetową ze wszystkimi jej zasobami, albo chcesz archiwizować generowane raporty bez rozpraszania plików. Tak czy inaczej, rozwiązanie jest prostsze niż myślisz, gdy używasz Aspose.HTML. + +W tym samouczku przeprowadzimy Cię przez rzeczywisty przykład, który **konwertuje html do zip**, wykorzystuje **niestandardowy obsługiwacz zasobów**, i ostatecznie pokaże dokładnie, jak **tworzyć zip html** pliki, które możesz rozpakować gdziekolwiek. Po zakończeniu będziesz mieć gotowy do uruchomienia program w C#, który wykona całą pracę w czterech prostych krokach. + +## Wymagania wstępne + +- .NET 6.0 lub nowszy (kod działa również z .NET Framework 4.7+) +- Licencja na Aspose.HTML (darmowa wersja próbna wystarczy do testów) +- IDE, takie jak Visual Studio 2022 lub VS Code z rozszerzeniami C# +- Podstawowa znajomość C# async/await (nie wymagana, ale przydatna) + +> **Wskazówka:** Jeśli jesteś nowy w Aspose.HTML, pobierz pakiet NuGet `Aspose.Html` i dodaj go do swojego projektu przed rozpoczęciem. + +## Krok 1: Przygotuj projekt + +First, create a new console app: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +To wszystko—bez dodatkowych zależności. Pakiet `Aspose.Html` już zawiera klasy, których będziemy potrzebować do **jak zapisać html** jako archiwum ZIP. + +## Krok 2: Implementacja niestandardowego obsługiwacza zasobów + +Gdy Aspose.HTML zapisuje dokument, potrzebuje miejsca do przechowywania powiązanych zasobów (obrazy, CSS, czcionki). Domyślnie zapisuje je w systemie plików, ale możemy przechwycić ten proces za pomocą **niestandardowego obsługiwacza zasobów**. Daje nam to pełną kontrolę nad tym, gdzie trafia każdy zasób — idealne do tworzenia czystego pliku ZIP. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Dlaczego używać niestandardowego obsługiwacza?** +- **Elastyczność:** Możesz zdecydować się na kompresję, szyfrowanie lub zmianę nazw zasobów w locie. +- **Wydajność:** Zapisywanie do pamięci unika operacji I/O na dysku, gdy potrzebujesz tylko tymczasowego archiwum. +- **Kontrola:** Decydujesz o dokładnej strukturze folderów w ZIP, co jest przydatne, gdy **tworzysz zip html** dla systemów downstream. + +## Krok 3: Budowa dokumentu HTML + +Teraz utworzymy prosty ciąg HTML. W rzeczywistym projekcie prawdopodobnie załadujesz go z pliku, bazy danych lub wygenerujesz dynamicznie. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Jeśli masz zewnętrzne zasoby (obrazy, pliki CSS), upewnij się, że ich URL-e są dostępne — Aspose pobierze je za pośrednictwem **niestandardowego obsługiwacza zasobów**, który zdefiniowaliśmy wcześniej. + +## Krok 4: Konfiguracja opcji zapisu do **Konwersji HTML do ZIP** + +Aspose.HTML oferuje kilka podklas `HTMLSaveOptions`. Do archiwum ZIP używamy podstawowego `HTMLSaveOptions` i ustawiamy jego `OutputStorage` na nasz `MyHandler`. To informuje bibliotekę, aby **konwertowała html do zip** przy użyciu dostarczonych strumieni. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Możesz także dostosować `saveOptions`: + +- `saveOptions.Compressed = true;` – włącza kompresję ZIP (domyślnie włączona). +- `saveOptions.ExportResources = true;` – zapewnia, że powiązane zasoby zostaną dołączone. + +Te zmiany są opcjonalne, ale często przydatne, gdy **tworzysz zip html** do dystrybucji. + +## Krok 5: Zapisz archiwum ZIP – **Jak poprawnie zapisać HTML** + +Na koniec wywołujemy `Save`. Pierwszy argument to ścieżka do wynikowego pliku ZIP, drugi to `HTMLSaveOptions`, które właśnie skonfigurowaliśmy. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Gdy uruchomisz program (`dotnet run`), zobaczysz plik `output.zip` obok swojego pliku wykonywalnego. Otwórz go dowolnym menedżerem archiwów i znajdziesz: + +- `index.html` – oryginalny znacznik. +- Wszystkie zasoby (obrazy, CSS), które były odwoływane, każdy zapisany jako osobny wpis. + +To pełny przepływ **jak zapisać html**, od surowego kodu po przenośny pakiet ZIP. + +## Bonus: Obsługa obrazów i zasobów zewnętrznych + +Jeśli Twój HTML zawiera ``, `MyHandler` otrzyma wywołanie z `info.Uri` wskazującym na `logo.png`. Możesz zmodyfikować obsługiwacz, aby pobrać plik z dysku lub zdalnego URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Ten fragment pokazuje, jak możesz rozszerzyć **niestandardowy obsługiwacz zasobów**, aby dopasować go do dowolnej strategii przechowywania, sprawiając, że wyjściowy ZIP naprawdę odzwierciedla układ zasobów Twojego projektu. + +## Częste pułapki i jak ich unikać + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Pusty ZIP** | `OutputStorage` zwraca zamknięty strumień lub `null`. | Zawsze zwracaj nowy, zapisywalny `MemoryStream` lub `FileStream`. | +| **Brakujące obrazy** | Zasoby są zablokowane przez CORS lub niedostępne lokalnie. | Pobierz zasoby wcześniej lub dostosuj `HandleResource`, aby dostarczyć je ręcznie. | +| **Duży rozmiar ZIP** | Zasoby nie są skompresowane. | Ustaw `saveOptions.Compressed = true;` (domyślnie) lub skompresuj strumienie samodzielnie przed zwróceniem. | +| **Nieprawidłowe nazwy plików** | Domyślny obsługiwacz nazywa pliki przy użyciu GUID‑ów. | Nadpisz `ResourceInfo.Name` w `HandleResource` i odpowiednio zmień nazwę strumienia. | + +Rozwiązanie tych problemów zapewnia płynne doświadczenie **konwersji html do zip** za każdym razem. + +## Pełny działający przykład + +Poniżej znajduje się kompletny program, który możesz skopiować i wkleić do `Program.cs`. Kompiluje się i działa od razu. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Oczekiwany wynik:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Otwórz `output.zip` i zobaczysz plik `index.html` oraz wszystkie dodane zasoby. + +## Podsumowanie + +Właśnie pokazaliśmy **jak zapisać html** jako archiwum ZIP przy użyciu Aspose.HTML, wraz z **niestandardowym obsługiwaczem zasobów**, który daje pełną kontrolę nad procesem pakowania. Teraz wiesz, jak **konwertować html do zip**, i możesz łatwo dostosować kod, aby **tworzyć zip html** pliki dla e‑maili, dokumentacji offline lub wdrożeń statycznych stron. + +### Co dalej? + +- **Dodaj pliki CSS/JS**: Rozszerz `MyHandler`, aby pobierał arkusze stylów i skrypty z folderu projektu. +- **Zaszyfruj ZIP**: Owiń `MemoryStream` w `CryptoStream` przed zwróceniem. +- **Przetwarzanie wsadowe**: Iteruj po kolekcji ciągów HTML i generuj ZIP dla każdej strony. + +Śmiało eksperymentuj i zostaw komentarz, jeśli napotkasz problemy. Szczęśliwego kodowania! + +## Co powinieneś nauczyć się dalej? + +Poniższe samouczki obejmują ściśle powiązane tematy, które rozwijają techniki przedstawione w tym przewodniku. Każdy zasób zawiera kompletne przykłady kodu z wyjaśnieniami krok po kroku, aby pomóc Ci opanować dodatkowe funkcje API i odkrywać alternatywne podejścia implementacyjne w własnych projektach. + +- [Jak zapisać HTML w C# – Kompletny przewodnik z użyciem niestandardowego obsługiwacza zasobów](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Jak spakować HTML w C# – Zapisz HTML do Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Zapisz HTML jako ZIP – Kompletny samouczek C#](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/polish/net/rendering-html-documents/_index.md b/html/polish/net/rendering-html-documents/_index.md index 41f09366ad..75244bc01a 100644 --- a/html/polish/net/rendering-html-documents/_index.md +++ b/html/polish/net/rendering-html-documents/_index.md @@ -43,6 +43,9 @@ Teraz, gdy masz już skonfigurowany Aspose.HTML dla .NET, czas zapoznać się z ### [Renderuj HTML jako PNG w .NET za pomocą Aspose.HTML](./render-html-as-png/) Naucz się pracować z Aspose.HTML dla .NET: Manipuluj HTML, konwertuj do różnych formatów i nie tylko. Zanurz się w tym kompleksowym samouczku! +### [Jak włączyć antyaliasing przy renderowaniu HTML do PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Dowiedz się, jak włączyć antyaliasing podczas renderowania HTML do formatu PNG przy użyciu Aspose.HTML. + ### [Jak renderować HTML jako PNG – Kompletny przewodnik C#](./how-to-render-html-as-png-complete-c-guide/) Pełny przewodnik C# pokazujący, jak przy użyciu Aspose.HTML renderować HTML jako PNG, krok po kroku. ### [Jak używać Aspose do renderowania HTML do PNG – przewodnik krok po kroku](./how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) diff --git a/html/polish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/polish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..a51a53a01b --- /dev/null +++ b/html/polish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Dowiedz się, jak włączyć antyaliasing podczas renderowania HTML do PNG + przy użyciu Aspose HTML. Ten przewodnik obejmuje także konwersję HTML na obraz oraz + zapisywanie HTML jako PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: pl +lastmod: 2026-07-08 +og_description: Jak włączyć antyaliasing przy renderowaniu HTML do PNG przy użyciu + Aspose HTML. Postępuj zgodnie z tym krok‑po‑kroku poradnikiem, aby przekonwertować + HTML na obraz i zapisać HTML jako PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Jak włączyć antyaliasing przy renderowaniu HTML do PNG – Przewodnik Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Jak włączyć antyaliasing przy renderowaniu HTML do PNG +url: /pl/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak włączyć antyaliasing przy renderowaniu HTML do PNG + +Zastanawiałeś się kiedyś **jak włączyć antyaliasing** podczas zamiany strony internetowej na wyraźny obraz PNG? Nie jesteś sam — wielu programistów napotyka problem, gdy wynik wygląda ząbkowanie lub rozmycie. Dobrą wiadomością jest to, że z Aspose.HTML możesz wygładzić te krawędzie w kilku linijkach kodu. W tym tutorialu przeprowadzimy Cię przez dokładne kroki renderowania HTML do PNG, konwersji HTML na obraz oraz w końcu **zapisania HTML jako PNG** z włączonym antyaliasingiem. + +> **Co otrzymasz:** pełny, gotowy‑do‑uruchomienia przykład w C#, wyjaśnienie każdej opcji oraz wskazówki dotyczące obsługi przypadków brzegowych, takich jak własne czcionki czy duże strony. + +## Jak włączyć antyaliasing przy renderowaniu HTML do PNG + +Pierwszą rzeczą, którą musisz zrozumieć, jest **dlaczego antyaliasing ma znaczenie**. Gdy silnik renderujący rysuje kształty lub tekst, przybliża krzywe pikselami. Bez antyaliasingu te przybliżenia tworzą artefakty schodkowe — szczególnie widoczne na liniach ukośnych lub cienkich czcionkach. Włączenie antyaliasingu nakazuje silnikowi mieszać sąsiednie piksele, co daje płynniejszy efekt wizualny. + +Poniżej znajduje się podstawowy kod, który demonstruje **jak włączyć antyaliasing** przy użyciu `ImageRenderingOptions` z Aspose.HTML. Rozłożymy go krok po kroku, abyś dokładnie widział, co robi każda linia. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Dlaczego każdy element ma znaczenie + +1. **HTMLDocument** – działa w całości w pamięci, więc nie potrzebujesz żadnych fizycznych plików `.html`. Idealny do konwersji w locie. +2. **WebFontStyle** – pokazuje, że możesz stylizować tekst przed renderowaniem; kombinacja pogrubienia‑pochylenia to tylko demonstracja. +3. **ImageRenderingOptions.UseAntialiasing** – ten znacznik jest odpowiedzią na **jak włączyć antyaliasing**; ustaw go na `true`, a rasteryzator wygładzi krawędzie. +4. **TextOptions.UseHinting** – hinting poprawia czytelność glifów, szczególnie przy małych rozmiarach. To dobry towarzysz antyaliasingu. +5. **ImageSaveOptions** – łączy zarówno opcje renderowania, jak i tekstu, a następnie instruuje Aspose, aby wyeksportował plik PNG. + +## Renderowanie HTML do PNG z Aspose + +Teraz, gdy wiesz **jak włączyć antyaliasing**, porozmawiajmy o szerszym kontekście **renderowania HTML do PNG**. Aspose.HTML ukrywa ciężką pracę: + +- **Automatic layout** – silnik parsuje CSS, oblicza modele pudełkowe i pozycjonuje elementy tak jak przeglądarka. +- **Resolution control** – możesz określić DPI za pomocą `ImageRenderingOptions.Resolution`, co jest przydatne przy wydrukach wysokiej rozdzielczości. +- **Background handling** – ustaw `imageOpts.BackgroundColor`, jeśli potrzebujesz przezroczystego lub kolorowego tła. + +Oto szybka modyfikacja, która dodaje własne DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Jeśli konwertujesz stronę zawierającą zewnętrzne zasoby (obrazy, czcionki), upewnij się, że ustawisz `htmlDoc.BaseUrl` na folder zawierający te zasoby. W przeciwnym razie renderer je pominie. + +## Konwersja HTML do obrazu – zaawansowane opcje + +Wyrażenie **convert html to image** często oznacza coś więcej niż tylko PNG. Aspose obsługuje JPEG, BMP, TIFF i nawet GIF. Zmiana formatu jest tak prosta, jak zmiana wartości wyliczenia `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Gdy potrzebujesz wyjścia przyjaznego wektorom, rozważ `SvgSaveOptions`. Ten sam pipeline renderowania ma zastosowanie, więc uzyskasz spójny antyaliasing we wszystkich formatach. + +### Przypadek brzegowy: bardzo wysokie strony + +Jeśli Twój HTML jest dłuższy niż typowy ekran, Aspose domyślnie utworzy jeden bardzo wysoki obraz. Może to znacząco zwiększyć zużycie pamięci. Aby temu zaradzić, możesz podzielić dokument na wiele stron: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Zapisz HTML jako PNG – ostatni krok + +W tym momencie widziałeś **jak włączyć antyaliasing**, nauczyłeś się **renderować HTML do PNG**, a także poznałeś opcje **konwersji HTML do obrazu**. Ostatni krok — **zapisanie HTML jako PNG** — jest już pokazany w oryginalnym fragmencie, ale opakujmy go w metodę, którą można wielokrotnie używać: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Teraz możesz wywołać `SaveHtmlAsPng("…", @"C:\temp\output.png")` z dowolnego miejsca w swoim projekcie. Parametr `antialias` pozwala przełączać funkcję wygładzania krawędzi, dając pełną kontrolę nad **jak włączyć antyaliasing** w czasie wykonywania. + +## Aspose HTML do PNG – pełny działający przykład + +Poniżej znajduje się samodzielna aplikacja konsolowa, która łączy wszystkie elementy. Skopiuj‑wklej, dostosuj placeholder `YOUR_DIRECTORY` i uruchom ją z .NET 6 lub nowszym. + + + +## Co warto się nauczyć dalej? + +Poniższe tutoriale obejmują tematy ściśle powiązane, które rozwijają techniki przedstawione w tym przewodniku. Każde źródło zawiera kompletne działające przykłady kodu z wyjaśnieniami krok po kroku, aby pomóc Ci opanować dodatkowe funkcje API i odkrywać alternatywne podejścia implementacyjne w własnych projektach. + +- [Jak używać Aspose do renderowania HTML do PNG – przewodnik krok po kroku](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Jak renderować HTML do PNG z Aspose – kompletny przewodnik](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Renderowanie HTML jako PNG w .NET z Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/portuguese/net/html-extensions-and-conversions/_index.md b/html/portuguese/net/html-extensions-and-conversions/_index.md index 8971d46a58..e8f57604b9 100644 --- a/html/portuguese/net/html-extensions-and-conversions/_index.md +++ b/html/portuguese/net/html-extensions-and-conversions/_index.md @@ -75,9 +75,13 @@ Aprenda a salvar documentos HTML em arquivos ZIP usando Aspose.HTML para .NET co ### [Como compactar HTML em C# – Salvar HTML em ZIP](./how-to-zip-html-in-c-save-html-to-zip/) Aprenda a criar um arquivo ZIP contendo arquivos HTML usando Aspose.HTML para .NET em C#. + ### [Salvar HTML em ZIP em C# – Exemplo Completo em Memória](./save-html-to-zip-in-c-complete-in-memory-example/) Aprenda a salvar arquivos HTML em um arquivo ZIP usando C# com um exemplo completo totalmente em memória. +### [Como salvar HTML como ZIP – Guia completo Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aprenda a salvar HTML como ZIP usando Aspose.HTML, com um guia completo passo a passo. + ## Conclusão Concluindo, extensões e conversões HTML são elementos essenciais do desenvolvimento web moderno. O Aspose.HTML para .NET simplifica o processo e o torna acessível a desenvolvedores de todos os níveis. Ao seguir nossos tutoriais, você estará no caminho certo para se tornar um desenvolvedor web proficiente com um amplo conjunto de habilidades. diff --git a/html/portuguese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/portuguese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..73be912b45 --- /dev/null +++ b/html/portuguese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Aprenda a salvar HTML como um arquivo ZIP usando Aspose.HTML. Inclui + um manipulador de recursos personalizado e código passo a passo para converter HTML + em ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: pt +lastmod: 2026-07-08 +og_description: Como salvar HTML como um arquivo ZIP com Aspose.HTML. Siga este guia + para usar um manipulador de recursos personalizado, converter HTML em ZIP e criar + arquivos HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Como salvar HTML como ZIP – Tutorial completo do Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Como salvar HTML como ZIP – Guia completo do Aspose.HTML +url: /pt/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Como Salvar HTML como ZIP – Guia Completo do Aspose.HTML + +Já se perguntou **como salvar html** em um único pacote portátil? Talvez você precise distribuir uma página web com todos os seus recursos, ou queira arquivar relatórios gerados sem espalhar arquivos. De qualquer forma, a solução é mais simples do que você imagina quando usa o Aspose.HTML. + +Neste tutorial vamos percorrer um exemplo real‑world que **converte html to zip**, utiliza um **custom resource handler**, e, ao final, mostra exatamente como **create zip html** arquivos que podem ser descompactados em qualquer lugar. Ao terminar, você terá um programa C# pronto‑para‑executar que realiza todo o trabalho em quatro etapas organizadas. + +## Prerequisites + +- .NET 6.0 ou superior (o código também funciona com .NET Framework 4.7+) +- Uma licença para Aspose.HTML (a versão de avaliação gratuita serve para testes) +- Uma IDE como Visual Studio 2022 ou VS Code com extensões C# +- Familiaridade básica com C# async/await (não obrigatório, mas útil) + +> **Pro tip:** Se você é novo no Aspose.HTML, obtenha o pacote NuGet `Aspose.Html` e adicione‑o ao seu projeto antes de começar. + +## Step 1: Set Up Your Project + +Primeiro, crie um novo console app: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +É só isso—nenhuma dependência extra. O pacote `Aspose.Html` já contém as classes que precisamos para **how to save html** como um arquivo ZIP. + +## Step 2: Implement a Custom Resource Handler + +Quando o Aspose.HTML salva um documento, ele precisa de um local para armazenar recursos vinculados (imagens, CSS, fontes). Por padrão ele grava esses recursos no sistema de arquivos, mas podemos interceptar esse processo com um **custom resource handler**. Isso nos dá controle total sobre onde cada recurso termina—perfeito para criar um arquivo ZIP limpo. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Por que usar um handler customizado?** +- **Flexibilidade:** Você pode decidir comprimir, criptografar ou renomear recursos em tempo real. +- **Desempenho:** Gravar na memória evita I/O de disco quando você só precisa de um arquivo temporário. +- **Controle:** Você define a estrutura de pastas exata dentro do ZIP, o que é útil quando você **create zip html** para sistemas downstream. + +## Step 3: Build the HTML Document + +Agora vamos criar uma string HTML simples. Em um projeto real você provavelmente carregaria isso de um arquivo, de um banco de dados ou o geraria dinamicamente. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Se você tem ativos externos (imagens, arquivos CSS), basta garantir que suas URLs estejam acessíveis—o Aspose solicitará esses recursos através do **custom resource handler** que definimos anteriormente. + +## Step 4: Configure Save Options to **Convert HTML to ZIP** + +O Aspose.HTML oferece várias subclasses de `HTMLSaveOptions`. Para um arquivo ZIP usamos a classe base `HTMLSaveOptions` e definimos seu `OutputStorage` para o nosso `MyHandler`. Isso indica à biblioteca para **convert html to zip** usando os streams que fornecemos. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Você também pode ajustar `saveOptions`: + +- `saveOptions.Compressed = true;` – habilita compressão ZIP (ativado por padrão). +- `saveOptions.ExportResources = true;` – garante que recursos vinculados sejam incluídos. + +Esses ajustes são opcionais, mas frequentemente úteis quando você **create zip html** para distribuição. + +## Step 5: Save the ZIP Archive – **How to Save HTML** Properly + +Por fim, chamamos `Save`. O primeiro argumento é o caminho para o arquivo ZIP resultante, o segundo é o `HTMLSaveOptions` que acabamos de configurar. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Quando você executar o programa (`dotnet run`), verá um arquivo `output.zip` ao lado do seu executável. Abra‑o com qualquer gerenciador de arquivos e encontrará: + +- `index.html` – o markup original. +- Qualquer recurso (imagens, CSS) que foi referenciado, cada um armazenado como uma entrada separada. + +Esse é o fluxo completo de **how to save html**, do markup bruto a um pacote ZIP portátil. + +## Bonus: Handling Images and External Resources + +Se o seu HTML contém ``, o `MyHandler` receberá uma chamada com `info.Uri` apontando para `logo.png`. Você pode modificar o handler para buscar o arquivo no disco ou em uma URL remota: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Este trecho mostra como você pode estender o **custom resource handler** para se adequar a qualquer estratégia de armazenamento, fazendo com que a saída ZIP reflita verdadeiramente o layout de ativos do seu projeto. + +## Common Pitfalls & How to Avoid Them + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` returns a closed stream or `null`. | Always return a fresh, writable `MemoryStream` or `FileStream`. | +| **Missing images** | Resources are blocked by CORS or unavailable locally. | Pre‑download assets or adjust `HandleResource` to supply them manually. | +| **Large ZIP size** | Resources are not compressed. | Set `saveOptions.Compressed = true;` (default) or compress streams yourself before returning. | +| **Incorrect file names** | Default handler names files with GUIDs. | Override `ResourceInfo.Name` inside `HandleResource` and rename the stream accordingly. | + +Abordar esses problemas garante uma experiência tranquila de **convert html to zip** toda vez. + +## Full Working Example + +Abaixo está o programa completo que você pode copiar‑colar em `Program.cs`. Ele compila e roda pronto‑para‑usar. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Expected output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Abra `output.zip` e você verá o arquivo `index.html` mais quaisquer recursos que você adicionou. + +## Wrap‑Up + +Acabamos de demonstrar **how to save html** como um arquivo ZIP usando o Aspose.HTML, completo com um **custom resource handler** que oferece controle total sobre o processo de empacotamento. Agora você sabe como **convert html to zip**, e pode adaptar o código facilmente para **create zip html** arquivos para e‑mails, documentação offline ou implantações de sites estáticos. + +### What’s Next? + +- **Add CSS/JS files**: Extend `MyHandler` to pull stylesheets and scripts from your project folder. +- **Encrypt the ZIP**: Wrap the `MemoryStream` in a `CryptoStream` before returning it. +- **Batch processing**: Loop over a collection of HTML strings and generate a ZIP per page. + +Feel free to experiment, and drop a comment if you hit any snags. Happy coding! + +## What Should You Learn Next? + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/portuguese/net/rendering-html-documents/_index.md b/html/portuguese/net/rendering-html-documents/_index.md index 3646fe0939..7832111b05 100644 --- a/html/portuguese/net/rendering-html-documents/_index.md +++ b/html/portuguese/net/rendering-html-documents/_index.md @@ -42,6 +42,8 @@ Agora que você configurou o Aspose.HTML para .NET, é hora de explorar os tutor ### [Renderizar HTML como PNG em .NET com Aspose.HTML](./render-html-as-png/) Aprenda a trabalhar com Aspose.HTML para .NET: Manipule HTML, converta para vários formatos e muito mais. Mergulhe neste tutorial abrangente! +### [Como habilitar antialiasing ao renderizar HTML para PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Aprenda a ativar o antialiasing ao renderizar documentos HTML como PNG usando Aspose.HTML para .NET, melhorando a qualidade da imagem. ### [Como renderizar HTML como PNG – Guia completo em C#](./how-to-render-html-as-png-complete-c-guide/) Aprenda a renderizar HTML como PNG com Aspose.HTML para .NET usando um guia completo em C#. diff --git a/html/portuguese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/portuguese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..23fd137f97 --- /dev/null +++ b/html/portuguese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,248 @@ +--- +category: general +date: 2026-07-08 +description: Aprenda como habilitar o antialiasing ao renderizar HTML para PNG usando + o Aspose HTML. Este guia também aborda como converter HTML em imagem e salvar HTML + como PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: pt +lastmod: 2026-07-08 +og_description: Como habilitar o antialiasing ao renderizar HTML para PNG com Aspose + HTML. Siga este tutorial passo a passo para converter HTML em imagem e salvar HTML + como PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Como habilitar o antialiasing na renderização de HTML para PNG – Guia Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Como habilitar antialiasing na renderização de HTML para PNG +url: /pt/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Como habilitar antialiasing ao renderizar HTML para PNG + +Já se perguntou **como habilitar antialiasing** ao transformar uma página da web em uma imagem PNG nítida? Você não está sozinho — muitos desenvolvedores encontram um obstáculo quando o resultado parece serrilhado ou borrado. A boa notícia é que, com Aspose.HTML, você pode suavizar essas bordas em apenas algumas linhas de código. Neste tutorial, percorreremos os passos exatos para renderizar HTML para PNG, converter HTML em imagem e, finalmente, **salvar HTML como PNG** com antialiasing ativado. + +> **O que você receberá:** um exemplo completo em C# pronto‑para‑executar, uma explicação de cada opção e dicas para lidar com casos especiais, como fontes personalizadas ou páginas grandes. + +## Como habilitar antialiasing ao renderizar HTML para PNG + +A primeira coisa que você precisa entender é **por que o antialiasing é importante**. Quando o motor de renderização desenha formas ou texto, ele aproxima curvas com pixels. Sem antialiasing, essas aproximações criam artefatos em degrau — especialmente perceptíveis em linhas diagonais ou fontes finas. Habilitar o antialiasing indica ao motor que ele deve mesclar os pixels vizinhos, produzindo um resultado visual mais suave. + +A seguir está o código central que demonstra **como habilitar antialiasing** usando `ImageRenderingOptions` do Aspose.HTML. Vamos detalhá‑lo passo a passo para que você veja exatamente o que cada linha faz. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Por que cada parte importa + +1. **HTMLDocument** – funciona totalmente na memória, portanto você não precisa de arquivos físicos `.html`. Perfeito para conversões em tempo real. +2. **WebFontStyle** – mostra que você pode estilizar o texto antes da renderização; a combinação negrito‑itálico é apenas uma demonstração. +3. **ImageRenderingOptions.UseAntialiasing** – esta bandeira é a resposta para **como habilitar antialiasing**; defina‑a como `true` e o rasterizador suavizará as bordas. +4. **TextOptions.UseHinting** – o hinting melhora a clareza dos glifos, especialmente em tamanhos pequenos. É um ótimo complemento ao antialiasing. +5. **ImageSaveOptions** – agrupa as opções de renderização e de texto, e então instrui o Aspose a gerar um arquivo PNG. + +## Renderizar HTML para PNG com Aspose + +Agora que você sabe **como habilitar antialiasing**, vamos falar sobre o panorama mais amplo de **renderizar html para png**. Aspose.HTML abstrai todo o trabalho pesado: + +- **Layout automático** – o motor analisa CSS, calcula modelos de caixa e posiciona os elementos como um navegador. +- **Controle de resolução** – você pode especificar DPI via `ImageRenderingOptions.Resolution`, o que é útil para impressões de alta resolução. +- **Manipulação de fundo** – defina `imageOpts.BackgroundColor` se precisar de uma tela transparente ou colorida. + +Aqui está um ajuste rápido que adiciona um DPI personalizado: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Dica de especialista:** Se você estiver convertendo uma página que contém recursos externos (imagens, fontes), certifique‑se de definir `htmlDoc.BaseUrl` para a pasta que contém esses ativos. Caso contrário, o renderizador os ignorará. + +## Converter HTML em Imagem – Opções avançadas + +A expressão **convert html to image** costuma implicar mais do que apenas PNG. Aspose suporta JPEG, BMP, TIFF e até GIF. Trocar de formato é tão simples quanto alterar o enum `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Quando precisar de saída compatível com vetores, considere `SvgSaveOptions`. O mesmo pipeline de renderização se aplica, garantindo antialiasing consistente entre os formatos. + +### Caso especial: páginas muito altas + +Se o seu HTML for maior que uma tela típica, o Aspose, por padrão, criará uma única imagem alta. Isso pode consumir muita memória. Para mitigar esse problema, você pode dividir o documento em várias páginas: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Salvar HTML como PNG – O passo final + +Neste ponto, você já viu **como habilitar antialiasing**, aprendeu a **renderizar html para png** e explorou as opções de **convert html to image**. O ato final — **save html as png** — já está demonstrado no trecho original, mas vamos encapsulá‑lo em um método reutilizável: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Agora você pode chamar `SaveHtmlAsPng("…", @"C:\temp\output.png")` de qualquer lugar do seu projeto. O parâmetro `antialias` permite alternar o recurso de bordas suaves, dando a você controle total sobre **como habilitar antialiasing** em tempo de execução. + +## Aspose HTML para PNG – Exemplo completo funcional + +Abaixo está um aplicativo de console autônomo que reúne tudo. Copie‑e‑cole, ajuste o placeholder `YOUR_DIRECTORY` e execute com .NET 6 ou superior. + +```csharp +using System; +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +class Program +{ + static void Main() + { + // HTML source – you could also read from a file or a web request + string html = @" + + + + + +

Antialiasing Demo

+

This image was rendered with antialiasing enabled.

+ + "; + + // Save path – make sure the folder exists + string outputPath = @"YOUR_DIRECTORY\antialias_demo.png"; + + // Call the helper method we defined earlier + Save + + +## O que você deve aprender a seguir? + +Os tutoriais a seguir abordam tópicos intimamente relacionados que ampliam as técnicas demonstradas neste guia. Cada recurso inclui exemplos de código completos e funcionais com explicações passo a passo para ajudá‑lo a dominar recursos adicionais da API e explorar abordagens de implementação alternativas em seus próprios projetos. + +- [Como usar Aspose para renderizar HTML para PNG – Guia passo a passo](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Como renderizar HTML para PNG com Aspose – Guia completo](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Renderizar HTML como PNG em .NET com Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/russian/net/html-extensions-and-conversions/_index.md b/html/russian/net/html-extensions-and-conversions/_index.md index 00354e6733..3357c24b4a 100644 --- a/html/russian/net/html-extensions-and-conversions/_index.md +++ b/html/russian/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Aspose.HTML для .NET — это не просто библиотека; эт Узнайте, как сохранить HTML‑страницу в архив ZIP с помощью Aspose.HTML для .NET, используя C# в полном пошаговом руководстве. ### [Сохраните HTML в ZIP в C# – Полный пример в памяти](./save-html-to-zip-in-c-complete-in-memory-example/) Сохраните HTML в архив ZIP полностью в памяти с помощью Aspose.HTML для .NET, используя C#. +### [Как сохранить HTML в ZIP – Полное руководство Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Узнайте, как сохранить HTML‑страницу в архив ZIP с помощью Aspose.HTML, используя C# в полном пошаговом руководстве. ## Заключение diff --git a/html/russian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/russian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..b22aa0c866 --- /dev/null +++ b/html/russian/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Узнайте, как сохранить HTML в виде ZIP‑архива с помощью Aspose.HTML. + Включает пользовательский обработчик ресурсов и пошаговый код для преобразования + HTML в ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: ru +lastmod: 2026-07-08 +og_description: Как сохранить HTML в виде ZIP‑архива с помощью Aspose.HTML. Следуйте + этому руководству, чтобы использовать пользовательский обработчик ресурсов, конвертировать + HTML в ZIP и создавать ZIP‑файлы HTML. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Как сохранить HTML в ZIP – Полный учебник Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Как сохранить HTML в ZIP – Полное руководство по Aspose.HTML +url: /ru/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Как сохранить HTML в ZIP – Полное руководство по Aspose.HTML + +Когда‑нибудь задумывались **как сохранить html** в один переносимый пакет? Возможно, вам нужно отправить веб‑страницу со всеми её ресурсами, или вы хотите архивировать сгенерированные отчёты, не разбросав файлы. В любом случае решение проще, чем кажется, когда вы используете Aspose.HTML. + +В этом руководстве мы пройдём реальный пример, который **converts html to zip**, использует **custom resource handler**, и в итоге покажет, как именно **create zip html** файлы, которые можно распаковать где угодно. К концу вы получите готовую к запуску программу на C#, выполняющую всю работу в четырёх простых шагах. + +## Требования + +- .NET 6.0 или новее (код также работает с .NET Framework 4.7+) +- Лицензия на Aspose.HTML (бесплатная пробная версия подходит для тестирования) +- IDE, например Visual Studio 2022 или VS Code с расширениями C# +- Базовое знакомство с C# async/await (необязательно, но полезно) + +> **Pro tip:** Если вы новичок в Aspose.HTML, скачайте NuGet‑пакет `Aspose.Html` и добавьте его в проект перед началом работы. + +## Шаг 1: Настройте проект + +Сначала создайте новое консольное приложение: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Это всё — никаких дополнительных зависимостей. Пакет `Aspose.Html` уже содержит необходимые классы для **how to save html** в виде ZIP‑архива. + +## Шаг 2: Реализуйте пользовательский обработчик ресурсов + +Когда Aspose.HTML сохраняет документ, ему нужно место для хранения связанных ресурсов (изображения, CSS, шрифты). По умолчанию они записываются в файловую систему, но мы можем перехватить этот процесс с помощью **custom resource handler**. Это даёт полный контроль над тем, куда попадает каждый ресурс — идеально для создания чистого ZIP‑файла. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Зачем использовать пользовательский обработчик?** +- **Flexibility:** Вы можете сжимать, шифровать или переименовывать ресурсы «на лету». +- **Performance:** Запись в память избавляет от ввода‑вывода на диск, когда нужен лишь временный архив. +- **Control:** Вы задаёте точную структуру папок внутри ZIP, что удобно, когда вы **create zip html** для downstream‑систем. + +## Шаг 3: Создайте HTML‑документ + +Теперь мы создадим простую строку HTML. В реальном проекте вы, вероятно, будете загружать её из файла, базы данных или генерировать динамически. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Если у вас есть внешние ресурсы (изображения, CSS‑файлы), просто убедитесь, что их URL‑адреса доступны — Aspose запросит их через **custom resource handler**, определённый ранее. + +## Шаг 4: Настройте параметры сохранения для **Convert HTML to ZIP** + +Aspose.HTML предлагает несколько подклассов `HTMLSaveOptions`. Для ZIP‑архива мы используем базовый `HTMLSaveOptions` и задаём его `OutputStorage` нашим `MyHandler`. Это сообщает библиотеке **convert html to zip**, используя предоставленные потоки. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Вы также можете подправить `saveOptions`: + +- `saveOptions.Compressed = true;` — включает сжатие ZIP (по умолчанию включено). +- `saveOptions.ExportResources = true;` — гарантирует включение связанных ресурсов. + +Эти настройки необязательны, но часто полезны, когда вы **create zip html** для распространения. + +## Шаг 5: Сохраните ZIP‑архив – **How to Save HTML** правильно + +Наконец, вызываем `Save`. Первый аргумент — путь к результирующему ZIP‑файлу, второй — `HTMLSaveOptions`, которые мы только что сконфигурировали. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Когда вы запустите программу (`dotnet run`), рядом с исполняемым файлом появится `output.zip`. Откройте его любой программой‑архиватором, и вы увидите: + +- `index.html` — оригинальная разметка. +- Все ресурсы (изображения, CSS), которые были упомянуты, каждый как отдельный элемент. + +Это полный **how to save html** процесс, от сырой разметки до переносимого ZIP‑пакета. + +## Bonus: Обработка изображений и внешних ресурсов + +Если ваш HTML содержит ``, `MyHandler` получит вызов с `info.Uri`, указывающим на `logo.png`. Вы можете изменить обработчик, чтобы загрузить файл с диска или удалённого URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Этот фрагмент показывает, как расширить **custom resource handler** под любую стратегию хранения, делая вывод ZIP‑файла полностью соответствующим структуре активов вашего проекта. + +## Common Pitfalls & How to Avoid Them + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` returns a closed stream or `null`. | Always return a fresh, writable `MemoryStream` or `FileStream`. | +| **Missing images** | Resources are blocked by CORS or unavailable locally. | Pre‑download assets or adjust `HandleResource` to supply them manually. | +| **Large ZIP size** | Resources are not compressed. | Set `saveOptions.Compressed = true;` (default) or compress streams yourself before returning. | +| **Incorrect file names** | Default handler names files with GUIDs. | Override `ResourceInfo.Name` inside `HandleResource` and rename the stream accordingly. | + +Решение этих проблем обеспечивает плавный опыт **convert html to zip** каждый раз. + +## Полный рабочий пример + +Ниже приведена полная программа, которую можно скопировать в `Program.cs`. Она компилируется и работает сразу же. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Ожидаемый вывод:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Откройте `output.zip`, и вы увидите файл `index.html` плюс любые добавленные ресурсы. + +## Wrap‑Up + +Мы только что продемонстрировали **how to save html** в виде ZIP‑архива с помощью Aspose.HTML, полностью используя **custom resource handler**, который даёт вам полный контроль над процессом упаковки. Теперь вы знаете, как **convert html to zip**, и можете легко адаптировать код для **create zip html** файлов для электронных писем, офлайн‑документации или статических сайтов. + +### Что дальше? + +- **Add CSS/JS files**: Extend `MyHandler` to pull stylesheets and scripts from your project folder. +- **Encrypt the ZIP**: Wrap the `MemoryStream` in a `CryptoStream` before returning it. +- **Batch processing**: Loop over a collection of HTML strings and generate a ZIP per page. + +Экспериментируйте, и оставляйте комментарии, если столкнётесь с проблемами. Happy coding! + +## Что вам стоит изучить дальше? + +Следующие руководства охватывают тесно связанные темы, построенные на техниках, продемонстрированных в этом руководстве. Каждый ресурс включает полностью работающие примеры кода с пошаговыми объяснениями, помогающими освоить дополнительные возможности API и исследовать альтернативные подходы в ваших проектах. + +- [Как сохранить HTML в C# – Полное руководство с использованием пользовательского обработчика ресурсов](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Как заархивировать HTML в C# – Сохранить HTML в Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Сохранить HTML как ZIP – Полный C#‑урок](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/russian/net/rendering-html-documents/_index.md b/html/russian/net/rendering-html-documents/_index.md index 80263a376d..424ac31534 100644 --- a/html/russian/net/rendering-html-documents/_index.md +++ b/html/russian/net/rendering-html-documents/_index.md @@ -45,6 +45,7 @@ Aspose.HTML для .NET выделяется как лучший выбор дл ### [Как отрендерить HTML в PNG – Полное руководство C#](./how-to-render-html-as-png-complete-c-guide/) Полное руководство по рендерингу HTML в PNG с использованием Aspose.HTML и C#. + ### [Создание PNG из HTML – Полное руководство по рендерингу на C#](./create-png-from-html-full-c-rendering-guide/) Подробный учебник по созданию PNG из HTML с использованием Aspose.HTML для .NET на C#. @@ -62,11 +63,16 @@ Aspose.HTML для .NET выделяется как лучший выбор дл ### [Рендеринг SVG Doc как PNG в .NET с помощью Aspose.HTML](./render-svg-doc-as-png/) Откройте для себя мощь Aspose.HTML для .NET! Узнайте, как легко визуализировать SVG Doc как PNG. Погрузитесь в пошаговые примеры и часто задаваемые вопросы. Начните прямо сейчас! + ### [Как использовать Aspose для рендеринга HTML в PNG – пошаговое руководство](./how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) Подробный пошаговый учебник по использованию Aspose.HTML для конвертации HTML в PNG в .NET. + ### [Как отрендерить HTML в PNG с помощью Aspose – Полное руководство](./how-to-render-html-to-png-with-aspose-complete-guide/) Подробный пошаговый учебник по рендерингу HTML в PNG с использованием Aspose.HTML для .NET. +### [Как включить сглаживание при рендеринге HTML в PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Узнайте, как активировать антиалиасинг при конвертации HTML в PNG с помощью Aspose.HTML для .NET. + {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} diff --git a/html/russian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/russian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..8f5106921a --- /dev/null +++ b/html/russian/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,214 @@ +--- +category: general +date: 2026-07-08 +description: Узнайте, как включить сглаживание при рендеринге HTML в PNG с помощью + Aspose HTML. В этом руководстве также рассматривается преобразование HTML в изображение + и сохранение HTML в формате PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: ru +lastmod: 2026-07-08 +og_description: Как включить сглаживание при рендеринге HTML в PNG с помощью Aspose + HTML. Следуйте этому пошаговому руководству, чтобы преобразовать HTML в изображение + и сохранить HTML как PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Как включить сглаживание при рендеринге HTML в PNG – руководство Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Как включить сглаживание при рендеринге HTML в PNG +url: /ru/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Как включить сглаживание при рендеринге HTML в PNG + +Когда‑нибудь задумывались **как включить сглаживание** при преобразовании веб‑страницы в чёткое PNG‑изображение? Вы не одиноки — многие разработчики сталкиваются с проблемой, когда результат выглядит зубчатым или размытым. Хорошая новость в том, что с Aspose.HTML вы можете сгладить эти края всего за несколько строк кода. В этом руководстве мы пройдём по точным шагам, как рендерить HTML в PNG, конвертировать HTML в изображение и, наконец, **сохранить HTML как PNG** с включённым сглаживанием. + +> **Что вы получите:** полностью готовый к запуску пример на C#, объяснение каждой опции и советы по работе с крайними случаями, такими как пользовательские шрифты или большие страницы. + +## Как включить сглаживание при рендеринге HTML в PNG + +Первое, что нужно понять, — **почему сглаживание важно**. Когда движок рендеринга рисует формы или текст, он приближает кривые пикселями. Без сглаживания эти приближения создают артефакты «ступенчатости», особенно заметные на диагональных линиях или тонких шрифтах. Включение сглаживания заставляет движок смешивать соседние пиксели, получая более плавный визуальный результат. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Почему каждый элемент важен + +1. **HTMLDocument** — работает полностью в памяти, поэтому вам не нужны физические файлы `.html`. Идеально подходит для конвертации «на лету». +2. **WebFontStyle** — показывает, что вы можете стилизовать текст перед рендерингом; комбинация жирный‑курсив лишь демонстрация. +3. **ImageRenderingOptions.UseAntialiasing** — этот флаг отвечает на вопрос **как включить сглаживание**; установите его в `true`, и растеризатор сгладит края. +4. **TextOptions.UseHinting** — хинтинг улучшает чёткость глифов, особенно при небольших размерах. Хороший компаньон к сглаживанию. +5. **ImageSaveOptions** — объединяет параметры рендеринга и текста, затем указывает Aspose вывести файл PNG. + +## Рендеринг HTML в PNG с помощью Aspose + +Теперь, когда вы знаете **как включить сглаживание**, давайте рассмотрим более широкую картину **render html to png**. Aspose.HTML абстрагирует всю тяжёлую работу: + +- **Automatic layout** — движок парсит CSS, вычисляет модели коробок и позиционирует элементы так же, как браузер. +- **Resolution control** — вы можете задать DPI через `ImageRenderingOptions.Resolution`, что удобно для печати высокого разрешения. +- **Background handling** — установите `imageOpts.BackgroundColor`, если нужен прозрачный или цветной холст. + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Если вы конвертируете страницу, содержащую внешние ресурсы (изображения, шрифты), убедитесь, что задали `htmlDoc.BaseUrl` на папку, где находятся эти ресурсы. В противном случае рендерер их пропустит. + +## Конвертация HTML в изображение — расширенные параметры + +Фраза **convert html to image** часто подразумевает не только PNG. Aspose поддерживает JPEG, BMP, TIFF и даже GIF. Переключение форматов так же просто, как изменение перечисления `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Когда вам нужен векторный вывод, рассмотрите `SvgSaveOptions`. Тот же конвейер рендеринга применяется, поэтому вы получаете одинаковое сглаживание во всех форматах. + +### Крайний случай: Очень длинные страницы + +Если ваш HTML длиннее типичного экрана, Aspose по умолчанию создаст одно высокое изображение. Это может сильно увеличить потребление памяти. Чтобы смягчить проблему, вы можете разбить документ на несколько страниц: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Сохранение HTML как PNG — последний шаг + +На данном этапе вы увидели **как включить сглаживание**, научились **render html to png** и изучили варианты **convert html to image**. Финальный шаг — **save html as png** — уже продемонстрирован в оригинальном фрагменте, но давайте оформим его в переиспользуемый метод: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Теперь вы можете вызвать `SaveHtmlAsPng("…", @"C:\temp\output.png")` из любой части проекта. Параметр `antialias` позволяет включать или отключать функцию сглаживания, давая вам полный контроль над **как включить сглаживание** во время выполнения. + +## Aspose HTML в PNG — полностью рабочий пример + +Ниже представлено автономное консольное приложение, которое объединяет всё вместе. Скопируйте‑вставьте, замените плейсхолдер `YOUR_DIRECTORY` и запустите с .NET 6 или новее. + + + +## Что вам следует изучить дальше? + +Следующие руководства охватывают тесно связанные темы, которые развивают техники, продемонстрированные в этом руководстве. Каждый ресурс включает полностью работающие примеры кода с пошаговыми объяснениями, помогая вам освоить дополнительные возможности API и исследовать альтернативные подходы в собственных проектах. + +- [Как использовать Aspose для рендеринга HTML в PNG – пошаговое руководство](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Как рендерить HTML в PNG с Aspose – полное руководство](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Рендеринг HTML в PNG в .NET с Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/spanish/net/html-extensions-and-conversions/_index.md b/html/spanish/net/html-extensions-and-conversions/_index.md index 58e38eec45..128bc79060 100644 --- a/html/spanish/net/html-extensions-and-conversions/_index.md +++ b/html/spanish/net/html-extensions-and-conversions/_index.md @@ -65,6 +65,8 @@ Convierta HTML a MHTML en .NET con Aspose.HTML: una guía paso a paso para archi Descubra cómo utilizar Aspose.HTML para .NET para manipular y convertir documentos HTML. Guía paso a paso para un desarrollo .NET eficaz. ### [Guardar HTML como ZIP – Tutorial completo en C#](./save-html-as-zip-complete-c-tutorial/) Aprenda a guardar documentos HTML como archivos ZIP usando Aspose.HTML para .NET con este tutorial paso a paso en C#. +### [Cómo guardar HTML como ZIP – Guía completa de Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aprenda a guardar HTML como archivo ZIP con Aspose.HTML para .NET mediante esta guía completa paso a paso. ### [Convierte HTML a TIFF en .NET con Aspose.HTML](./convert-html-to-tiff/) Aprenda a convertir HTML a TIFF con Aspose.HTML para .NET. Siga nuestra guía paso a paso para optimizar eficazmente el contenido web. ### [Convierta HTML a XPS en .NET con Aspose.HTML](./convert-html-to-xps/) diff --git a/html/spanish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/spanish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..a444aac77d --- /dev/null +++ b/html/spanish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,296 @@ +--- +category: general +date: 2026-07-08 +description: Aprende cómo guardar HTML como un archivo ZIP usando Aspose.HTML. Incluye + un controlador de recursos personalizado y código paso a paso para convertir HTML + a ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: es +lastmod: 2026-07-08 +og_description: Cómo guardar HTML como un archivo ZIP con Aspose.HTML. Sigue esta + guía para usar un controlador de recursos personalizado, convertir HTML a ZIP y + crear archivos HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Cómo guardar HTML como ZIP – Tutorial completo de Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Cómo guardar HTML como ZIP – Guía completa de Aspose.HTML +url: /es/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cómo guardar HTML como ZIP – Guía completa de Aspose.HTML + +¿Alguna vez te has preguntado **cómo guardar html** en un paquete único y portátil? Tal vez necesites distribuir una página web con todos sus recursos, o quieras archivar informes generados sin dispersar archivos. De cualquier forma, la solución es más simple de lo que piensas cuando usas Aspose.HTML. + +En este tutorial recorreremos un ejemplo del mundo real que **convierte html a zip**, utiliza un **manejador de recursos personalizado**, y finalmente te muestra exactamente cómo **crear zip html** archivos que puedes descomprimir en cualquier lugar. Al final tendrás un programa C# listo para ejecutar que realiza todo el trabajo en cuatro pasos ordenados. + +## Requisitos previos + +- .NET 6.0 o posterior (el código también funciona con .NET Framework 4.7+) +- Una licencia para Aspose.HTML (la prueba gratuita sirve para pruebas) +- Un IDE como Visual Studio 2022 o VS Code con extensiones C# +- Familiaridad básica con C# async/await (no es obligatorio pero es útil) + +> **Consejo profesional:** Si eres nuevo en Aspose.HTML, obtén el paquete NuGet `Aspose.Html` y añádelo a tu proyecto antes de comenzar. + +## Paso 1: Configura tu proyecto + +Primero, crea una nueva aplicación de consola: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Eso es todo—sin dependencias adicionales. El paquete `Aspose.Html` ya contiene las clases que necesitaremos para **cómo guardar html** como un archivo ZIP. + +## Paso 2: Implementa un manejador de recursos personalizado + +Cuando Aspose.HTML guarda un documento, necesita un lugar para almacenar los recursos vinculados (imágenes, CSS, fuentes). Por defecto los escribe en el sistema de archivos, pero podemos interceptar ese proceso con un **manejador de recursos personalizado**. Esto nos brinda control total sobre dónde termina cada recurso—perfecto para crear un archivo ZIP limpio. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**¿Por qué usar un manejador personalizado?** +- **Flexibilidad:** Puedes decidir comprimir, encriptar o renombrar recursos al vuelo. +- **Rendimiento:** Escribir en memoria evita I/O de disco cuando solo necesitas un archivo temporal. +- **Control:** Tú decides la estructura exacta de carpetas dentro del ZIP, lo cual es útil cuando **creas zip html** para sistemas descendentes. + +## Paso 3: Construye el documento HTML + +Ahora crearemos una cadena HTML simple. En un proyecto real probablemente cargarías esto desde un archivo, una base de datos o lo generarías dinámicamente. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Si tienes recursos externos (imágenes, archivos CSS), simplemente asegúrate de que sus URLs sean accesibles—Aspose los solicitará a través del **manejador de recursos personalizado** que definimos antes. + +## Paso 4: Configura las opciones de guardado para **convertir HTML a ZIP** + +Aspose.HTML ofrece varios subclases de `HTMLSaveOptions`. Para un archivo ZIP usamos la base `HTMLSaveOptions` y establecemos su `OutputStorage` a nuestro `MyHandler`. Esto indica a la biblioteca que **convierta html a zip** usando los streams que proporcionamos. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +También puedes ajustar `saveOptions`: + +- `saveOptions.Compressed = true;` – habilita la compresión ZIP (activada por defecto). +- `saveOptions.ExportResources = true;` – garantiza que los recursos vinculados se incluyan. + +Estos ajustes son opcionales pero a menudo útiles cuando **creas zip html** para distribución. + +## Paso 5: Guarda el archivo ZIP – **Cómo guardar HTML** correctamente + +Finalmente, llamamos a `Save`. El primer argumento es la ruta al archivo ZIP resultante, el segundo es el `HTMLSaveOptions` que acabamos de configurar. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Cuando ejecutes el programa (`dotnet run`), verás un archivo `output.zip` junto a tu ejecutable. Ábrelo con cualquier gestor de archivos comprimidos y encontrarás: + +- `index.html` – el marcado original. +- Cualquier recurso (imágenes, CSS) que se haya referenciado, cada uno almacenado como una entrada separada. + +Ese es el flujo completo de **cómo guardar html**, desde el marcado bruto hasta un paquete ZIP portátil. + +## Bonus: Manejo de imágenes y recursos externos + +Si tu HTML contiene ``, el `MyHandler` recibirá una llamada con `info.Uri` apuntando a `logo.png`. Puedes modificar el manejador para obtener el archivo del disco o de una URL remota: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Este fragmento muestra cómo puedes ampliar el **manejador de recursos personalizado** para adaptarlo a cualquier estrategia de almacenamiento, haciendo que la salida ZIP refleje realmente la disposición de activos de tu proyecto. + +## Problemas comunes y cómo evitarlos + +| Problema | Por qué ocurre | Solución | +|----------|----------------|----------| +| **ZIP vacío** | `OutputStorage` devuelve un stream cerrado o `null`. | Siempre devuelve un `MemoryStream` o `FileStream` nuevo y escribible. | +| **Imágenes faltantes** | Los recursos están bloqueados por CORS o no están disponibles localmente. | Pre‑descarga los activos o ajusta `HandleResource` para suministrarlos manualmente. | +| **Tamaño de ZIP grande** | Los recursos no están comprimidos. | Establece `saveOptions.Compressed = true;` (valor predeterminado) o comprime los streams tú mismo antes de devolverlos. | +| **Nombres de archivo incorrectos** | El manejador predeterminado nombra los archivos con GUIDs. | Sobrescribe `ResourceInfo.Name` dentro de `HandleResource` y renombra el stream en consecuencia. | + +Abordar estos problemas garantiza una experiencia fluida al **convertir html a zip** cada vez. + +## Ejemplo completo funcional + +A continuación se muestra el programa completo que puedes copiar y pegar en `Program.cs`. Compila y se ejecuta listo para usar. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Salida esperada:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Abre `output.zip` y verás el archivo `index.html` más cualquier recurso que hayas añadido. + +## Conclusión + +Acabamos de demostrar **cómo guardar html** como un archivo ZIP usando Aspose.HTML, con un **manejador de recursos personalizado** que te brinda control total sobre el proceso de empaquetado. Ahora sabes cómo **convertir html a zip**, y puedes adaptar fácilmente el código para **crear zip html** archivos para correos electrónicos, documentación offline o despliegues de sitios estáticos. + +### ¿Qué sigue? + +- **Agregar archivos CSS/JS**: Extiende `MyHandler` para obtener hojas de estilo y scripts de la carpeta de tu proyecto. +- **Encriptar el ZIP**: Envuelve el `MemoryStream` en un `CryptoStream` antes de devolverlo. +- **Procesamiento por lotes**: Recorre una colección de cadenas HTML y genera un ZIP por página. + +Siéntete libre de experimentar, y deja un comentario si encuentras algún problema. ¡Feliz codificación! + +## ¿Qué deberías aprender a continuación? + +Los siguientes tutoriales cubren temas estrechamente relacionados que amplían las técnicas demostradas en esta guía. Cada recurso incluye ejemplos de código completos y funcionales con explicaciones paso a paso para ayudarte a dominar funciones adicionales de la API y explorar enfoques de implementación alternativos en tus propios proyectos. + +- [Cómo guardar HTML en C# – Guía completa usando un manejador de recursos personalizado](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [Cómo comprimir HTML en C# – Guardar HTML en Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Guardar HTML como ZIP – Tutorial completo en C#](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/spanish/net/rendering-html-documents/_index.md b/html/spanish/net/rendering-html-documents/_index.md index aa3ec875b9..7cdd8b3f00 100644 --- a/html/spanish/net/rendering-html-documents/_index.md +++ b/html/spanish/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ Aprenda a representar múltiples documentos HTML con Aspose.HTML para .NET. Aume Aprenda paso a paso a convertir HTML a PNG usando C# y Aspose.HTML. Guía completa con ejemplos claros. ### [Cómo renderizar HTML a PNG con Aspose – Guía completa](./how-to-render-html-to-png-with-aspose-complete-guide/) Aprenda a convertir HTML a PNG usando Aspose.HTML para .NET con esta guía completa paso a paso. +### [Cómo habilitar el antialiasing al renderizar HTML a PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Aprenda a activar el antialiasing para mejorar la calidad al convertir HTML a PNG con Aspose.HTML para .NET. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/spanish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/spanish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..4eabdced7b --- /dev/null +++ b/html/spanish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Aprende cómo habilitar el antialiasing al renderizar HTML a PNG usando + Aspose HTML. Esta guía también cubre la conversión de HTML a imagen y guardar HTML + como PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: es +lastmod: 2026-07-08 +og_description: Cómo habilitar el antialiasing al renderizar HTML a PNG con Aspose + HTML. Sigue este tutorial paso a paso para convertir HTML a imagen y guardar HTML + como PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Cómo habilitar el antialiasing al renderizar HTML a PNG – Guía de Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Cómo habilitar el antialiasing al renderizar HTML a PNG +url: /es/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cómo habilitar el antialiasing al renderizar HTML a PNG + +¿Alguna vez te has preguntado **cómo habilitar el antialiasing** al convertir una página web en una imagen PNG nítida? No estás solo: muchos desarrolladores se topan con un problema cuando el resultado se ve dentado o borroso. La buena noticia es que con Aspose.HTML puedes suavizar esos bordes con solo unas pocas líneas de código. En este tutorial recorreremos paso a paso los pasos exactos para renderizar HTML a PNG, convertir HTML a imagen y, finalmente, **guardar HTML como PNG** con antialiasing activado. + +> **Lo que obtendrás:** un ejemplo completo listo‑para‑ejecutar en C#, una explicación de cada opción y consejos para manejar casos extremos como fuentes personalizadas o páginas muy grandes. + +## Cómo habilitar el antialiasing al renderizar HTML a PNG + +Lo primero que debes entender es **por qué el antialiasing es importante**. Cuando el motor de renderizado dibuja formas o texto, aproxima las curvas con píxeles. Sin antialiasing, esas aproximaciones crean artefactos en forma de escalones, especialmente visibles en líneas diagonales o fuentes finas. Habilitar el antialiasing indica al motor que mezcle los píxeles vecinos, produciendo un resultado visual más suave. + +A continuación se muestra el código central que demuestra **cómo habilitar el antialiasing** usando `ImageRenderingOptions` de Aspose.HTML. Lo desglosaremos paso a paso para que veas exactamente lo que hace cada línea. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Por qué cada pieza es importante + +1. **HTMLDocument** – funciona completamente en memoria, por lo que no necesitas archivos `.html` físicos. Perfecto para conversiones sobre la marcha. +2. **WebFontStyle** – muestra que puedes aplicar estilo al texto antes de renderizar; la combinación negrita‑cursiva es solo una demostración. +3. **ImageRenderingOptions.UseAntialiasing** – esta bandera es la respuesta a **cómo habilitar el antialiasing**; establécela en `true` y el rasterizador suavizará los bordes. +4. **TextOptions.UseHinting** – el hinting mejora la claridad de los glifos, especialmente en tamaños pequeños. Es un buen complemento al antialiasing. +5. **ImageSaveOptions** – agrupa tanto las opciones de renderizado como las de texto, y luego indica a Aspose que genere un archivo PNG. + +## Renderizar HTML a PNG con Aspose + +Ahora que sabes **cómo habilitar el antialiasing**, hablemos del panorama más amplio de **render html to png**. Aspose.HTML se encarga del trabajo pesado: + +- **Disposición automática** – el motor analiza CSS, calcula los modelos de caja y posiciona los elementos como lo haría un navegador. +- **Control de resolución** – puedes especificar DPI mediante `ImageRenderingOptions.Resolution`, lo cual es útil para impresiones de alta resolución. +- **Gestión del fondo** – establece `imageOpts.BackgroundColor` si necesitas un lienzo transparente o de color. + +Aquí tienes un ajuste rápido que agrega un DPI personalizado: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Consejo profesional:** Si estás convirtiendo una página que contiene recursos externos (imágenes, fuentes), asegúrate de establecer `htmlDoc.BaseUrl` a la carpeta que contiene esos activos. De lo contrario, el renderizador los omitirá. + +## Convertir HTML a Imagen – Opciones avanzadas + +La expresión **convert html to image** a menudo implica más que solo PNG. Aspose admite JPEG, BMP, TIFF e incluso GIF. Cambiar de formato es tan simple como modificar el enumerado `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Cuando necesites una salida amigable con vectores, considera `SvgSaveOptions`. El mismo pipeline de renderizado se aplica, por lo que obtienes un antialiasing consistente en todos los formatos. + +### Caso extremo: Páginas muy altas + +Si tu HTML es más largo que una pantalla típica, Aspose, por defecto, creará una única imagen alta. Eso puede disparar el uso de memoria. Para mitigar esto, puedes dividir el documento en varias páginas: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Guardar HTML como PNG – El paso final + +En este punto ya has visto **cómo habilitar el antialiasing**, has aprendido a **render html to png** y has explorado las opciones de **convert html to image**. El acto final—**save html as png**—ya está demostrado en el fragmento original, pero lo encapsularemos en un método reutilizable: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Ahora puedes llamar a `SaveHtmlAsPng("…", @"C:\temp\output.png")` desde cualquier parte de tu proyecto. El parámetro `antialias` te permite activar o desactivar la característica de bordes suaves, dándote control total sobre **cómo habilitar el antialiasing** en tiempo de ejecución. + +## Aspose HTML a PNG – Ejemplo completo funcional + +A continuación tienes una aplicación de consola autosuficiente que reúne todo. Copia‑pega, ajusta el marcador de posición `YOUR_DIRECTORY` y ejecútala con .NET 6 o posterior. + + + +## ¿Qué deberías aprender a continuación? + +Los siguientes tutoriales cubren temas estrechamente relacionados que amplían las técnicas demostradas en esta guía. Cada recurso incluye ejemplos de código completos y explicaciones paso a paso para ayudarte a dominar funciones adicionales de la API y explorar enfoques de implementación alternativos en tus propios proyectos. + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/swedish/net/html-extensions-and-conversions/_index.md b/html/swedish/net/html-extensions-and-conversions/_index.md index 6d01c9b961..1dc54c9bf6 100644 --- a/html/swedish/net/html-extensions-and-conversions/_index.md +++ b/html/swedish/net/html-extensions-and-conversions/_index.md @@ -71,6 +71,8 @@ Lär dig skapa ett HTML-dokument med stiliserad text och konvertera det till PDF Skapa PDF från HTML med C# och Aspose.HTML för .NET. Följ vår steg‑för‑steg‑guide för enkel PDF‑generering. ### [Spara HTML som ZIP – Komplett C#-handledning](./save-html-as-zip-complete-c-tutorial/) Lär dig hur du sparar HTML som en ZIP-fil med en komplett C#-kodexempel och steg-för-steg-instruktioner. +### [Spara HTML som ZIP – Komplett Aspose.HTML-guide](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Lär dig hur du sparar HTML som ZIP med Aspose.HTML i en komplett steg‑för‑steg‑guide. ### [Spara HTML till ZIP i C# – Komplett minnesexempel](./save-html-to-zip-in-c-complete-in-memory-example/) Lär dig hur du sparar HTML-filer i ett ZIP‑arkiv i minnet med C# och Aspose.HTML. diff --git a/html/swedish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/swedish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..e5f388540e --- /dev/null +++ b/html/swedish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,298 @@ +--- +category: general +date: 2026-07-08 +description: Lär dig hur du sparar HTML som ett ZIP‑arkiv med Aspose.HTML. Inkluderar + en anpassad resurs‑hanterare och steg‑för‑steg‑kod för att konvertera HTML till + ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: sv +lastmod: 2026-07-08 +og_description: Hur man sparar HTML som ett ZIP‑arkiv med Aspose.HTML. Följ den här + guiden för att använda en anpassad resurs‑hanterare, konvertera HTML till ZIP och + skapa ZIP‑HTML‑filer. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Hur man sparar HTML som ZIP – Fullständig Aspose.HTML-handledning +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Hur man sparar HTML som ZIP – Komplett Aspose.HTML-guide +url: /sv/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hur man sparar HTML som ZIP – Komplett Aspose.HTML‑guide + +Har du någonsin funderat **hur man sparar html** i ett enda, portabelt paket? Kanske behöver du leverera en webbsida med alla dess resurser, eller så vill du arkivera genererade rapporter utan att sprida filer överallt. Oavsett är lösningen enklare än du tror när du använder Aspose.HTML. + +I den här handledningen går vi igenom ett verkligt exempel som **converts html to zip**, utnyttjar en **custom resource handler**, och slutligen visar exakt hur du **create zip html**‑filer som du kan packa upp var som helst. I slutet har du ett färdigt C#‑program som utför hela jobbet i fyra tydliga steg. + +## Förutsättningar + +- .NET 6.0 eller senare (koden fungerar även med .NET Framework 4.7+) +- En licens för Aspose.HTML (gratis provversion fungerar för testning) +- En IDE såsom Visual Studio 2022 eller VS Code med C#‑tillägg +- Grundläggande kunskap om C# async/await (inte obligatoriskt men hjälpsamt) + +> **Pro tip:** Om du är ny på Aspose.HTML, hämta NuGet‑paketet `Aspose.Html` och lägg till det i ditt projekt innan du börjar. + +## Steg 1: Skapa ditt projekt + +Skapa först en ny konsolapp: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Det är allt—inga extra beroenden. Paketet `Aspose.Html` innehåller redan de klasser vi behöver för **how to save html** som ett ZIP‑arkiv. + +## Steg 2: Implementera en **custom resource handler** + +När Aspose.HTML sparar ett dokument behöver den en plats att lagra länkade resurser (bilder, CSS, teckensnitt). Som standard skriver den dem till filsystemet, men vi kan avbryta den processen med en **custom resource handler**. Detta ger oss full kontroll över var varje resurs hamnar—perfekt för att skapa ett rent ZIP‑fil. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Varför använda en anpassad handler?** +- **Flexibilitet:** Du kan bestämma om du vill komprimera, kryptera eller byta namn på resurserna i farten. +- **Prestanda:** Att skriva till minnet undviker disk‑I/O när du bara behöver ett temporärt arkiv. +- **Kontroll:** Du bestämmer den exakta mappstrukturen i ZIP‑filen, vilket är praktiskt när du **create zip html** för efterföljande system. + +## Steg 3: Bygg HTML‑dokumentet + +Nu skapar vi en enkel HTML‑sträng. I ett riktigt projekt skulle du troligen läsa in detta från en fil, en databas eller generera det dynamiskt. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Om du har externa resurser (bilder, CSS‑filer), se bara till att deras URL:er är åtkomliga—Aspose kommer att begära dem via den **custom resource handler** vi definierade tidigare. + +## Steg 4: Konfigurera spara‑alternativ för att **Convert HTML to ZIP** + +Aspose.HTML erbjuder flera `HTMLSaveOptions`‑subklasser. För ett ZIP‑arkiv använder vi bas‑`HTMLSaveOptions` och sätter dess `OutputStorage` till vår `MyHandler`. Detta talar om för biblioteket att **convert html to zip** med de strömmar vi tillhandahåller. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Du kan också justera `saveOptions`: + +- `saveOptions.Compressed = true;` – aktiverar ZIP‑komprimering (på som standard). +- `saveOptions.ExportResources = true;` – säkerställer att länkade resurser inkluderas. + +Dessa justeringar är valfria men ofta användbara när du **create zip html** för distribution. + +## Steg 5: Spara ZIP‑arkivet – **How to Save HTML** på rätt sätt + +Till sist anropar vi `Save`. Det första argumentet är sökvägen till den resulterande ZIP‑filen, det andra är `HTMLSaveOptions` som vi just konfigurerat. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +När du kör programmet (`dotnet run`) får du en `output.zip`‑fil bredvid din körbara fil. Öppna den med valfri arkivhanterare så hittar du: + +- `index.html` – den ursprungliga markupen. +- Alla resurser (bilder, CSS) som refererades, var och en lagrad som ett separat objekt. + +Det är hela **how to save html**‑arbetsflödet, från rå markup till ett portabelt ZIP‑paket. + +## Bonus: Hantera bilder och externa resurser + +Om din HTML innehåller ``, kommer `MyHandler` att få ett anrop där `info.Uri` pekar på `logo.png`. Du kan modifiera handlern för att hämta filen från disk eller en fjärr‑URL: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Detta kodexempel visar hur du kan utöka den **custom resource handler** för att passa vilken lagringsstrategi du än har, så att ZIP‑utdata verkligen speglar ditt projekts resurslayout. + +## Vanliga fallgropar & hur du undviker dem + +| Problem | Varför det händer | Lösning | +|-------|----------------|-----| +| **Tom ZIP** | `OutputStorage` returnerar en stängd stream eller `null`. | Returnera alltid en ny, skrivbar `MemoryStream` eller `FileStream`. | +| **Saknade bilder** | Resurser blockeras av CORS eller är inte lokalt tillgängliga. | För‑ladda resurser eller justera `HandleResource` så att du levererar dem manuellt. | +| **Stort ZIP‑paket** | Resurser komprimeras inte. | Sätt `saveOptions.Compressed = true;` (standard) eller komprimera strömmarna själv innan du returnerar dem. | +| **Fel filnamn** | Standard‑handlern namnger filer med GUID‑värden. | Åsidosätt `ResourceInfo.Name` i `HandleResource` och byt namn på streamen därefter. | + +Genom att åtgärda dessa problem får du en smidig **convert html to zip**‑upplevelse varje gång. + +## Fullt fungerande exempel + +Nedan är hela programmet som du kan kopiera‑klistra in i `Program.cs`. Det kompileras och körs direkt. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Förväntad output:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Öppna `output.zip` så ser du filen `index.html` plus eventuella resurser du lagt till. + +## Sammanfattning + +Vi har just demonstrerat **how to save html** som ett ZIP‑arkiv med Aspose.HTML, komplett med en **custom resource handler** som ger dig total kontroll över paketeringsprocessen. Du vet nu hur du **convert html to zip**, och du kan enkelt anpassa koden för att **create zip html**‑filer för e‑post, offline‑dokumentation eller statiska webbplats‑distributioner. + +### Vad blir nästa steg? + +- **Lägg till CSS/JS‑filer**: Utöka `MyHandler` så att den hämtar stilmallar och skript från din projektmapp. +- **Kryptera ZIP‑filen**: Wrappa `MemoryStream` i en `CryptoStream` innan du returnerar den. +- **Batch‑bearbetning**: Loop över en samling HTML‑strängar och generera ett ZIP‑arkiv per sida. + +Experimentera gärna, och lämna en kommentar om du stöter på problem. Lycka till med kodandet! + + +## Vad bör du lära dig härnäst? + + +Följande handledningar täcker närliggande ämnen som bygger vidare på teknikerna som demonstrerats i den här guiden. Varje resurs innehåller kompletta kodexempel med steg‑för‑steg‑förklaringar för att hjälpa dig bemästra ytterligare API‑funktioner och utforska alternativa implementationsmetoder i dina egna projekt. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/swedish/net/rendering-html-documents/_index.md b/html/swedish/net/rendering-html-documents/_index.md index 72cae28c39..f1e09f6c00 100644 --- a/html/swedish/net/rendering-html-documents/_index.md +++ b/html/swedish/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ Lås upp kraften i Aspose.HTML för .NET! Lär dig hur du renderar SVG-dokument Lär dig hur du med Aspose.HTML för .NET konverterar HTML till PNG i en detaljerad steg‑för‑steg‑handledning. ### [Hur man renderar HTML till PNG med Aspose – Komplett guide](./how-to-render-html-to-png-with-aspose-complete-guide/) Lär dig hur du med Aspose.HTML för .NET konverterar HTML till PNG i en komplett guide. +### [Hur man aktiverar kantutjämning vid rendering av HTML till PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Lär dig hur du aktiverar kantutjämning när du renderar HTML till PNG med Aspose.HTML för .NET. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/swedish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/swedish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..b9a6ffe75d --- /dev/null +++ b/html/swedish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: Lär dig hur du aktiverar kantutjämning när du renderar HTML till PNG + med Aspose HTML. Denna guide täcker också hur du konverterar HTML till bild och + sparar HTML som PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: sv +lastmod: 2026-07-08 +og_description: Hur du aktiverar kantutjämning när du renderar HTML till PNG med Aspose + HTML. Följ den här steg‑för‑steg‑handledningen för att konvertera HTML till bild + och spara HTML som PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Hur du aktiverar kantutjämning vid rendering av HTML till PNG – Aspose‑guide +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Hur man aktiverar kantutjämning vid rendering av HTML till PNG +url: /sv/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hur man aktiverar antialiasing vid rendering av HTML till PNG + +Har du någonsin undrat **how to enable antialiasing** när du omvandlar en webbsida till en skarp PNG-bild? Du är inte ensam—många utvecklare stöter på problem när resultatet ser hackigt eller suddigt ut. Den goda nyheten är att med Aspose.HTML kan du jämna ut kanterna med bara några rader kod. I den här handledningen går vi igenom de exakta stegen för att rendera HTML till PNG, konvertera HTML till bild, och slutligen **save HTML as PNG** med antialiasing aktiverat. + +> **What you’ll get:** en komplett, färdig‑att‑köra C#‑exempel, en förklaring av varje alternativ, och tips för att hantera kantfall som anpassade typsnitt eller stora sidor. + +## Hur man aktiverar antialiasing vid rendering av HTML till PNG + +Det första du behöver förstå är **why antialiasing matters**. När renderingsmotorn ritar former eller text approximera den kurvor med pixlar. Utan antialiasing skapar dessa approximationer trappsteg‑artefakter—särskilt märkbara på diagonala linjer eller tunna typsnitt. Att aktivera antialiasing får motorn att blanda närliggande pixlar, vilket ger ett mjukare visuellt resultat. + +Nedan är kärnkoden som demonstrerar **how to enable antialiasing** med Aspose.HTML:s `ImageRenderingOptions`. Vi kommer att gå igenom den steg‑för‑steg så att du kan se exakt vad varje rad gör. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Varför varje del är viktig + +1. **HTMLDocument** – fungerar helt i minnet, så du behöver inga fysiska `.html`‑filer. Perfekt för on‑the‑fly‑konverteringar. +2. **WebFontStyle** – visar att du kan formatera text innan rendering; kombinationen fet‑kursiv är bara en demo. +3. **ImageRenderingOptions.UseAntialiasing** – den här flaggan är svaret på **how to enable antialiasing**; sätt den till `true` så jämnar rasteriseraren kanterna. +4. **TextOptions.UseHinting** – hinting förbättrar tydligheten hos glyfer, särskilt i små storlekar. Det är en bra följeslagare till antialiasing. +5. **ImageSaveOptions** – samlar både renderings- och textalternativ, och instruerar sedan Aspose att skapa en PNG‑fil. + +## Rendera HTML till PNG med Aspose + +Nu när du vet **how to enable antialiasing**, låt oss prata om den bredare bilden av **render html to png**. Aspose.HTML abstraherar bort det tunga arbetet: + +- **Automatic layout** – motorn parsar CSS, beräknar box‑modeller och placerar element precis som en webbläsare. +- **Resolution control** – du kan ange DPI via `ImageRenderingOptions.Resolution`, vilket är praktiskt för högupplösta utskrifter. +- **Background handling** – sätt `imageOpts.BackgroundColor` om du behöver en transparent eller färgad canvas. + +Här är en snabb justering som lägger till en anpassad DPI: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Om du konverterar en sida som innehåller externa resurser (bilder, typsnitt), se till att sätta `htmlDoc.BaseUrl` till mappen som innehåller dessa tillgångar. Annars kommer renderaren att hoppa över dem. + +## Konvertera HTML till bild – avancerade alternativ + +Frasen **convert html to image** innebär ofta mer än bara PNG. Aspose stödjer JPEG, BMP, TIFF och till och med GIF. Att byta format är så enkelt som att ändra `SaveFormat`‑enum: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +När du behöver vektor‑vänlig output, överväg `SvgSaveOptions`. Samma renderingspipeline gäller, så du får konsekvent antialiasing över format. + +### Kantfall: Mycket långa sidor + +Om din HTML är längre än en vanlig skärm, kommer Aspose som standard att skapa en enda hög bild. Det kan öka minnesanvändningen kraftigt. För att mildra detta kan du dela dokumentet i flera sidor: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Spara HTML som PNG – sista steget + +Vid detta tillfälle har du sett **how to enable antialiasing**, du har lärt dig att **render html to png**, och du har utforskat **convert html to image**‑alternativ. Den sista handlingen—**save html as png**—är redan demonstrerad i originalsnutten, men låt oss paketera den i en återanvändbar metod: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Du kan nu anropa `SaveHtmlAsPng("…", @"C:\temp\output.png")` från var som helst i ditt projekt. `antialias`‑parametern låter dig växla den mjuka kant‑funktionen, vilket ger dig full kontroll över **how to enable antialiasing** vid körning. + +## Aspose HTML till PNG – fullt fungerande exempel + +Nedan är en fristående konsolapplikation som samlar allt. Kopiera‑klistra, justera `YOUR_DIRECTORY`‑platshållaren, och kör den med .NET 6 eller senare. + + + +## Vad bör du lära dig härnäst? + +Följande handledningar täcker närbesläktade ämnen som bygger på teknikerna som demonstrerats i den här guiden. Varje resurs innehåller kompletta fungerande kodexempel med steg‑för‑steg‑förklaringar för att hjälpa dig bemästra ytterligare API‑funktioner och utforska alternativa implementationsmetoder i dina egna projekt. + +- [Hur man använder Aspose för att rendera HTML till PNG – Steg‑för‑steg‑guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Hur man renderar HTML till PNG med Aspose – Komplett guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Rendera HTML som PNG i .NET med Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/thai/net/html-extensions-and-conversions/_index.md b/html/thai/net/html-extensions-and-conversions/_index.md index 2474ca32c0..3cedbdd567 100644 --- a/html/thai/net/html-extensions-and-conversions/_index.md +++ b/html/thai/net/html-extensions-and-conversions/_index.md @@ -65,14 +65,12 @@ Aspose.HTML สำหรับ .NET ไม่ใช่แค่ไลบรา ค้นพบพลังของ Aspose.HTML สำหรับ .NET: แปลง HTML เป็น XPS ได้อย่างง่ายดาย มีข้อกำหนดเบื้องต้น คำแนะนำทีละขั้นตอน และคำถามที่พบบ่อยรวมอยู่ด้วย ### [วิธีบีบอัด HTML เป็น Zip ใน C# – บันทึก HTML เป็น Zip](./how-to-zip-html-in-c-save-html-to-zip/) เรียนรู้วิธีบีบอัดไฟล์ HTML เป็นไฟล์ Zip ด้วย C# และ Aspose.HTML สำหรับ .NET อย่างง่ายดายและปลอดภัย -### [สร้างเอกสาร HTML พร้อมข้อความที่มีสไตล์และส่งออกเป็น PDF – คู่มือเต็ม](./create-html-document-with-styled-text-and-export-to-pdf-full/) -เรียนรู้วิธีสร้างเอกสาร HTML ที่มีข้อความจัดรูปแบบและแปลงเป็น PDF อย่างละเอียดด้วย Aspose.HTML สำหรับ .NET -### [สร้าง PDF จาก HTML – คำแนะนำขั้นตอนโดยขั้นตอน C#](./create-pdf-from-html-c-step-by-step-guide/) -เรียนรู้วิธีสร้าง PDF จากไฟล์ HTML ด้วย C# โดยใช้ Aspose.HTML สำหรับ .NET ตามขั้นตอนที่ชัดเจน ### [บันทึก HTML เป็น ZIP – คอร์สเต็ม C#](./save-html-as-zip-complete-c-tutorial/) บันทึกไฟล์ HTML เป็น ZIP อย่างครบถ้วนด้วย C# ตามขั้นตอนของเรา ### [บันทึก HTML เป็น ZIP ใน C# – ตัวอย่างทำงานในหน่วยความจำเต็มรูปแบบ](./save-html-to-zip-in-c-complete-in-memory-example/) บันทึกไฟล์ HTML เป็นไฟล์ ZIP โดยใช้ C# ด้วยตัวอย่างทำงานในหน่วยความจำเต็มรูปแบบ +### [วิธีบันทึก HTML เป็น ZIP – คู่มือ Aspose.HTML ฉบับเต็ม](./how-to-save-html-as-zip-complete-aspose-html-guide/) +เรียนรู้วิธีบันทึกไฟล์ HTML เป็น ZIP อย่างครบถ้วนด้วย Aspose.HTML สำหรับ .NET ตามขั้นตอนที่ชัดเจน ## บทสรุป diff --git a/html/thai/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/thai/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..99c28285df --- /dev/null +++ b/html/thai/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,294 @@ +--- +category: general +date: 2026-07-08 +description: เรียนรู้วิธีบันทึก HTML เป็นไฟล์ ZIP ด้วย Aspose.HTML พร้อมตัวจัดการทรัพยากรแบบกำหนดเองและโค้ดขั้นตอนต่อขั้นตอนเพื่อแปลง + HTML เป็น ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: th +lastmod: 2026-07-08 +og_description: วิธีบันทึก HTML เป็นไฟล์ ZIP ด้วย Aspose.HTML. ทำตามคำแนะนำนี้เพื่อใช้ตัวจัดการทรัพยากรแบบกำหนดเอง, + แปลง HTML เป็น ZIP, และสร้างไฟล์ HTML แบบ ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: วิธีบันทึก HTML เป็น ZIP – บทเรียน Aspose.HTML อย่างเต็มรูปแบบ +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: วิธีบันทึก HTML เป็นไฟล์ ZIP – คู่มือ Aspose.HTML ฉบับสมบูรณ์ +url: /th/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# วิธีบันทึก HTML เป็น ZIP – คู่มือ Aspose.HTML ฉบับสมบูรณ์ + +เคยสงสัย **วิธีบันทึก html** ให้เป็นแพคเกจพกพาเดียวหรือไม่? บางครั้งคุณอาจต้องส่งหน้าเว็บพร้อมทรัพยากรทั้งหมด, หรือคุณต้องการเก็บรายงานที่สร้างขึ้นโดยไม่กระจายไฟล์หลายไฟล์. ไม่ว่ากรณีใด, วิธีแก้ก็ง่ายกว่าที่คิดเมื่อใช้ Aspose.HTML. + +ในบทแนะนำนี้เราจะเดินผ่านตัวอย่างจริงที่ **แปลง html เป็น zip**, ใช้ **custom resource handler**, และสุดท้ายแสดงให้คุณเห็นว่า **สร้าง zip html** อย่างไรให้สามารถแตกไฟล์ได้ทุกที่. เมื่อจบคุณจะมีโปรแกรม C# ที่พร้อมรันซึ่งทำงานทั้งหมดในสี่ขั้นตอนเรียบร้อย. + +## ข้อกำหนดเบื้องต้น + +- .NET 6.0 หรือใหม่กว่า (โค้ดนี้ยังทำงานกับ .NET Framework 4.7+ ด้วย) +- ไลเซนส์ของ Aspose.HTML (รุ่นทดลองฟรีใช้ทดสอบได้) +- IDE เช่น Visual Studio 2022 หรือ VS Code พร้อมส่วนขยาย C# +- ความคุ้นเคยพื้นฐานกับ C# async/await (ไม่จำเป็นแต่เป็นประโยชน์) + +> **เคล็ดลับ:** หากคุณใหม่กับ Aspose.HTML, ให้ดาวน์โหลดแพคเกจ NuGet `Aspose.Html` แล้วเพิ่มเข้าไปในโปรเจกต์ก่อนเริ่ม. + +## ขั้นตอนที่ 1: ตั้งค่าโปรเจกต์ของคุณ + +แรกเริ่มสร้างแอปคอนโซลใหม่: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +เท่านี้—ไม่มี dependency เพิ่มเติม. แพคเกจ `Aspose.Html` มีคลาสที่เราต้องการสำหรับ **วิธีบันทึก html** เป็นไฟล์ ZIP แล้ว. + +## ขั้นตอนที่ 2: สร้าง Custom Resource Handler + +เมื่อ Aspose.HTML บันทึกเอกสาร, มันต้องการตำแหน่งสำหรับเก็บทรัพยากรที่เชื่อมโยง (รูปภาพ, CSS, ฟอนต์). โดยค่าเริ่มต้นมันจะเขียนลงไฟล์ระบบ, แต่เราสามารถดักจับกระบวนการนี้ด้วย **custom resource handler**. สิ่งนี้ให้เราควบคุมเต็มที่ว่าทรัพยากรแต่ละอย่างจะไปอยู่ที่ไหน—เหมาะสำหรับการสร้างไฟล์ ZIP ที่สะอาดตา. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**ทำไมต้องใช้ handler แบบกำหนดเอง?** +- **ความยืดหยุ่น:** คุณสามารถบีบอัด, เข้ารหัส, หรือเปลี่ยนชื่อทรัพยากรได้ทันที. +- **ประสิทธิภาพ:** การเขียนลงหน่วยความจำช่วยหลีกเลี่ยง I/O ของดิสก์เมื่อคุณต้องการเพียง archive ชั่วคราว. +- **การควบคุม:** คุณกำหนดโครงสร้างโฟลเดอร์ภายใน ZIP ได้อย่างแม่นยำ, ซึ่งเป็นประโยชน์เมื่อคุณ **สร้าง zip html** สำหรับระบบ downstream. + +## ขั้นตอนที่ 3: สร้างเอกสาร HTML + +ต่อไปเราจะสร้างสตริง HTML อย่างง่าย. ในโปรเจกต์จริงคุณอาจโหลดจากไฟล์, ฐานข้อมูล, หรือสร้างแบบไดนามิก. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +หากคุณมีทรัพยากรภายนอก (รูปภาพ, ไฟล์ CSS) เพียงตรวจสอบให้แน่ใจว่า URL สามารถเข้าถึงได้—Aspose จะร้องขอผ่าน **custom resource handler** ที่เรากำหนดไว้ก่อนหน้า. + +## ขั้นตอนที่ 4: ตั้งค่า Save Options เพื่อ **แปลง HTML เป็น ZIP** + +Aspose.HTML มีหลาย subclass ของ `HTMLSaveOptions`. สำหรับ archive แบบ ZIP เราใช้ `HTMLSaveOptions` ธรรมดาและตั้งค่า `OutputStorage` ให้เป็น `MyHandler` ของเรา. สิ่งนี้บอกไลบรารีให้ **แปลง html เป็น zip** โดยใช้สตรีมที่เราจัดเตรียม. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +คุณยังสามารถปรับ `saveOptions` ได้เพิ่มเติม: + +- `saveOptions.Compressed = true;` – เปิดการบีบอัด ZIP (เปิดโดยค่าเริ่มต้น). +- `saveOptions.ExportResources = true;` – ทำให้แน่ใจว่าทรัพยากรที่เชื่อมโยงถูกรวมไว้. + +การปรับเหล่านี้เป็นทางเลือกแต่มักเป็นประโยชน์เมื่อคุณ **สร้าง zip html** เพื่อแจกจ่าย. + +## ขั้นตอนที่ 5: บันทึก ZIP Archive – **วิธีบันทึก HTML** อย่างถูกต้อง + +สุดท้ายเราจะเรียก `Save`. อาร์กิวเมนต์แรกคือเส้นทางของไฟล์ ZIP ที่จะสร้าง, อาร์กิวเมนต์ที่สองคือ `HTMLSaveOptions` ที่ตั้งค่าไว้. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +เมื่อคุณรันโปรแกรม (`dotnet run`), จะเห็นไฟล์ `output.zip` อยู่ข้างไฟล์ executable. เปิดด้วยโปรแกรมจัดการ archive ใดก็ได้แล้วคุณจะพบ: + +- `index.html` – markup ดั้งเดิม. +- ทรัพยากรใด ๆ (รูปภาพ, CSS) ที่อ้างอิง, แต่ละไฟล์เป็น entry แยกกัน. + +นี่คือ workflow **วิธีบันทึก html** ทั้งหมด, ตั้งแต่ markup ดิบจนถึงแพคเกจ ZIP พกพา. + +## โบนัส: จัดการรูปภาพและทรัพยากรภายนอก + +หาก HTML ของคุณมี ``, `MyHandler` จะได้รับการเรียกด้วย `info.Uri` ที่ชี้ไปที่ `logo.png`. คุณสามารถแก้ไข handler เพื่อดึงไฟล์จากดิสก์หรือ URL ระยะไกลได้: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +ตัวอย่างนี้แสดงวิธีขยาย **custom resource handler** ให้สอดคล้องกับกลยุทธ์การจัดเก็บใด ๆ, ทำให้ผลลัพธ์ ZIP สะท้อนโครงสร้าง assets ของโปรเจกต์คุณอย่างแท้จริง. + +## ปัญหาที่พบบ่อย & วิธีหลีกเลี่ยง + +| ปัญหา | สาเหตุ | วิธีแก้ | +|-------|--------|--------| +| **ZIP ว่าง** | `OutputStorage` คืนสตรีมที่ปิดหรือ `null`. | ต้องคืน `MemoryStream` หรือ `FileStream` ใหม่ที่สามารถเขียนได้เสมอ. | +| **รูปภาพหาย** | ทรัพยากรถูกบล็อกโดย CORS หรือไม่มีอยู่ในเครื่อง. | ดาวน์โหลด assets ล่วงหน้าหรือปรับ `HandleResource` ให้ส่งให้เอง. | +| **ขนาด ZIP ใหญ่** | ทรัพยากรไม่ได้บีบอัด. | ตั้ง `saveOptions.Compressed = true;` (ค่าเริ่มต้น) หรือบีบอัดสตรีมด้วยตนเองก่อนคืน. | +| **ชื่อไฟล์ไม่ถูกต้อง** | Handler เริ่มต้นตั้งชื่อไฟล์ด้วย GUID. | Override `ResourceInfo.Name` ภายใน `HandleResource` แล้วตั้งชื่อสตรีมตามที่ต้องการ. | + +การจัดการกับปัญหาเหล่านี้จะทำให้การ **แปลง html เป็น zip** เป็นไปอย่างราบรื่นทุกครั้ง. + +## ตัวอย่างทำงานเต็มรูปแบบ + +ด้านล่างเป็นโปรแกรมทั้งหมดที่คุณสามารถคัดลอก‑วางลงใน `Program.cs`. มันคอมไพล์และรันได้ทันที. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**ผลลัพธ์ที่คาดหวัง:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +เปิด `output.zip` แล้วคุณจะเห็นไฟล์ `index.html` พร้อมกับทรัพยากรใด ๆ ที่คุณเพิ่มเข้าไป. + +## สรุป + +เราได้สาธิต **วิธีบันทึก html** เป็น ZIP archive ด้วย Aspose.HTML, พร้อม **custom resource handler** ที่ให้คุณควบคุมกระบวนการบรรจุได้ทั้งหมด. ตอนนี้คุณรู้วิธี **แปลง html เป็น zip**, และสามารถปรับโค้ดเพื่อ **สร้าง zip html** สำหรับอีเมล, เอกสารออฟไลน์, หรือการปรับใช้เว็บไซต์แบบสเตติกได้ง่าย. + +### ขั้นตอนต่อไป + +- **เพิ่มไฟล์ CSS/JS**: ขยาย `MyHandler` เพื่อดึง stylesheet และ script จากโฟลเดอร์โปรเจกต์ของคุณ. +- **เข้ารหัส ZIP**: ห่อ `MemoryStream` ด้วย `CryptoStream` ก่อนคืนค่า. +- **ประมวลผลเป็นชุด**: วนลูปผ่านคอลเลกชันของสตริง HTML แล้วสร้าง ZIP แยกตามหน้า. + +ลองทดลองดูได้เลย, และแสดงความคิดเห็นหากเจออุปสรรค. Happy coding! + +## คุณควรเรียนรู้อะไรต่อไป? + +บทแนะนำต่อไปนี้ครอบคลุมหัวข้อที่เกี่ยวข้องอย่างใกล้ชิดและต่อยอดจากเทคนิคในคู่มือนี้. แต่ละแหล่งรวมโค้ดทำงานเต็มรูปแบบพร้อมคำอธิบายขั้นตอนเพื่อช่วยคุณเชี่ยวชาญฟีเจอร์ API เพิ่มเติมและสำรวจแนวทางการทำงานอื่น ๆ ในโปรเจกต์ของคุณ. + +- [วิธีบันทึก HTML ใน C# – คู่มือฉบับสมบูรณ์โดยใช้ Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [วิธีบีบอัด HTML เป็น ZIP ใน C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [บันทึก HTML เป็น ZIP – คู่มือ C# ฉบับสมบูรณ์](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/thai/net/rendering-html-documents/_index.md b/html/thai/net/rendering-html-documents/_index.md index 9266aa9543..39416f4d88 100644 --- a/html/thai/net/rendering-html-documents/_index.md +++ b/html/thai/net/rendering-html-documents/_index.md @@ -62,6 +62,8 @@ Aspose.HTML สำหรับ .NET ถือเป็นตัวเลือ เรียนรู้วิธีการเรนเดอร์ไฟล์ HTML เป็น PNG ด้วย Aspose.HTML สำหรับ .NET อย่างละเอียดในคู่มือขั้นตอนนี้! ### [วิธีเรนเดอร์ HTML เป็น PNG ด้วย Aspose – คู่มือฉบับสมบูรณ์](./how-to-render-html-to-png-with-aspose-complete-guide/) เรียนรู้วิธีการเรนเดอร์ไฟล์ HTML เป็น PNG อย่างละเอียดด้วย Aspose.HTML สำหรับ .NET ในคู่มือฉบับสมบูรณ์นี้! +### [วิธีเปิดใช้งาน Antialiasing ในการเรนเดอร์ HTML เป็น PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +เรียนรู้วิธีเปิดใช้งาน Antialiasing เพื่อปรับปรุงคุณภาพการเรนเดอร์ HTML เป็น PNG ด้วย Aspose.HTML สำหรับ .NET {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/thai/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/thai/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..70c601a8d5 --- /dev/null +++ b/html/thai/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,218 @@ +--- +category: general +date: 2026-07-08 +description: เรียนรู้วิธีเปิดใช้งานการทำแอนตี้เอียลิซิ่งเมื่อคุณเรนเดอร์ HTML เป็น + PNG ด้วย Aspose HTML คู่มือนี้ยังครอบคลุมการแปลง HTML เป็นภาพและการบันทึก HTML เป็น + PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: th +lastmod: 2026-07-08 +og_description: วิธีเปิดใช้งานการทำแอนตี้เอเลียซิงขณะเรนเดอร์ HTML เป็น PNG ด้วย Aspose + HTML. ทำตามบทแนะนำขั้นตอนต่อขั้นตอนนี้เพื่อแปลง HTML เป็นภาพและบันทึก HTML เป็น + PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: วิธีเปิดใช้งาน Antialiasing การเรนเดอร์ HTML เป็น PNG – คู่มือ Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: วิธีเปิดใช้งาน Antialiasing ในการเรนเดอร์ HTML เป็น PNG +url: /th/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# วิธีเปิดใช้งาน Antialiasing การแปลง HTML เป็น PNG + +เคยสงสัย **วิธีเปิดใช้งาน antialiasing** ขณะแปลงหน้าเว็บเป็นภาพ PNG ที่คมชัดหรือไม่? คุณไม่ได้เป็นคนเดียว—หลายคนเจอปัญหาเมื่อผลลัพธ์ออกมาดูเป็นรอยหยักหรือเบลอ ข่าวดีคือด้วย Aspose.HTML คุณสามารถทำให้ขอบภาพเรียบเนียนได้เพียงไม่กี่บรรทัดของโค้ด ในบทเรียนนี้เราจะพาคุณผ่านขั้นตอนที่แน่นอนเพื่อเรนเดอร์ HTML เป็น PNG, แปลง HTML เป็นภาพ, และสุดท้าย **บันทึก HTML เป็น PNG** พร้อมเปิด antialiasing + +> **สิ่งที่คุณจะได้:** ตัวอย่าง C# ที่พร้อมรันครบถ้วน, คำอธิบายของแต่ละตัวเลือก, และเคล็ดลับการจัดการกรณีพิเศษ เช่น ฟอนต์กำหนดเองหรือหน้าเว็บขนาดใหญ่ + +## วิธีเปิดใช้งาน Antialiasing ขณะเรนเดอร์ HTML เป็น PNG + +สิ่งแรกที่คุณต้องเข้าใจคือ **ทำไม antialiasing ถึงสำคัญ** เมื่อเอนจินเรนเดอร์วาดรูปหรือข้อความ มันจะประมาณเส้นโค้งด้วยพิกเซล หากไม่มี antialiasing การประมาณนี้จะทำให้เกิดรอยบันได—เห็นได้ชัดบนเส้นทแยงมุมหรือฟอนต์บาง ๆ การเปิด antialiasing จะสั่งให้เอนจินผสมพิกเซลใกล้เคียงกัน ทำให้ผลลัพธ์ดูเรียบเนียนขึ้น + +ด้านล่างเป็นโค้ดหลักที่สาธิต **วิธีเปิด antialiasing** ด้วย `ImageRenderingOptions` ของ Aspose.HTML เราจะอธิบายทีละบรรทัดเพื่อให้คุณเห็นว่าทำอะไรบ้าง + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### ทำไมแต่ละส่วนจึงสำคัญ + +1. **HTMLDocument** – ทำงานทั้งหมดในหน่วยความจำ ไม่ต้องมีไฟล์ `.html` จริง เหมาะสำหรับการแปลงแบบเรียลไทม์ +2. **WebFontStyle** – แสดงว่าคุณสามารถกำหนดสไตล์ข้อความก่อนเรนเดอร์; การผสม bold‑italic เป็นเพียงตัวอย่าง +3. **ImageRenderingOptions.UseAntialiasing** – ธงนี้คือคำตอบของ **วิธีเปิด antialiasing**; ตั้งค่าเป็น `true` แล้ว rasterizer จะทำให้ขอบเรียบเนียน +4. **TextOptions.UseHinting** – hinting ช่วยให้ glyph ชัดเจนขึ้นโดยเฉพาะเมื่อขนาดเล็ก เป็นเพื่อนคู่หูที่ดีของ antialiasing +5. **ImageSaveOptions** – รวมตัวเลือกการเรนเดอร์และข้อความไว้ด้วยกัน แล้วบอก Aspose ให้บันทึกเป็นไฟล์ PNG + +## เรนเดอร์ HTML เป็น PNG ด้วย Aspose + +เมื่อคุณรู้ **วิธีเปิด antialiasing** แล้ว เรามาดูภาพรวมของ **render html to png** กันต่อ Aspose.HTML ทำให้คุณไม่ต้องกังวลกับงานหนัก: + +- **Automatic layout** – เอนจินจะพาร์ส CSS, คำนวณ box model, และจัดตำแหน่งองค์ประกอบเหมือนเบราว์เซอร์ +- **Resolution control** – คุณสามารถกำหนด DPI ผ่าน `ImageRenderingOptions.Resolution` ซึ่งมีประโยชน์สำหรับการพิมพ์ความละเอียดสูง +- **Background handling** – ตั้งค่า `imageOpts.BackgroundColor` หากต้องการพื้นหลังโปร่งใสหรือสีเฉพาะ + +นี่คือตัวอย่างการปรับ DPI แบบรวดเร็ว: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** หากคุณกำลังแปลงหน้าที่มีทรัพยากรภายนอก (รูปภาพ, ฟอนต์) อย่าลืมตั้งค่า `htmlDoc.BaseUrl` ให้ชี้ไปยังโฟลเดอร์ที่เก็บทรัพยากรเหล่านั้น มิฉะนั้นเอนจินจะข้ามมันไป + +## แปลง HTML เป็น Image – ตัวเลือกขั้นสูง + +คำว่า **convert html to image** มักหมายถึงมากกว่า PNG เท่านั้น Aspose รองรับ JPEG, BMP, TIFF, และแม้กระทั่ง GIF การสลับฟอร์แมตทำได้ง่ายโดยเปลี่ยนค่า enum `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +เมื่อคุณต้องการผลลัพธ์ที่เป็นเวกเตอร์ ให้พิจารณา `SvgSaveOptions` กระบวนการเรนเดอร์เดียวกันทำให้ antialiasing คงที่ในทุกฟอร์แมต + +### กรณีพิเศษ: หน้าเว็บสูงมาก + +หาก HTML ของคุณยาวเกินหน้าจอมาตรฐาน Aspose จะสร้างภาพสูงยาวเป็นภาพเดียว ซึ่งอาจทำให้ใช้หน่วยความจำมากเกินไป เพื่อบรรเทา คุณสามารถแบ่งเอกสารเป็นหลายหน้าได้: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## บันทึก HTML เป็น PNG – ขั้นตอนสุดท้าย + +ตอนนี้คุณได้เห็น **วิธีเปิด antialiasing**, เรียนรู้ **render html to png**, และสำรวจตัวเลือก **convert html to image** แล้ว ขั้นตอนสุดท้าย—**save html as png**—ได้แสดงในโค้ดต้นฉบับแล้ว แต่เราจะสรุปเป็นเมธอดที่นำกลับมาใช้ได้: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +คุณสามารถเรียก `SaveHtmlAsPng("…", @"C:\temp\output.png")` จากที่ไหนก็ได้ในโปรเจกต์ของคุณ พารามิเตอร์ `antialias` ให้คุณสลับฟีเจอร์ขอบเรียบเนียนตามต้องการ ทำให้คุณควบคุม **วิธีเปิด antialiasing** ได้เต็มที่ในเวลารันไทม์ + +## Aspose HTML to PNG – ตัวอย่างทำงานเต็มรูปแบบ + +ด้านล่างเป็นแอปพลิเคชันคอนโซลที่รวมทุกอย่างไว้ในไฟล์เดียว คัดลอก‑วาง ปรับค่า `YOUR_DIRECTORY` แล้วรันด้วย .NET 6 หรือใหม่กว่า + + + +## คุณควรเรียนรู้อะไรต่อไป? + +บทเรียนต่อไปนี้ครอบคลุมหัวข้อที่เกี่ยวข้องอย่างใกล้ชิดและต่อยอดจากเทคนิคที่แสดงในคู่มือนี้ แต่ละแหล่งรวมตัวอย่างโค้ดทำงานเต็มรูปแบบพร้อมคำอธิบายทีละขั้นตอน เพื่อช่วยให้คุณเชี่ยวชาญฟีเจอร์ API เพิ่มเติมและสำรวจแนวทางการทำงานอื่น ๆ ในโปรเจกต์ของคุณ + +- [How to Use Aspose to Render HTML to PNG – Step‑by‑Step Guide](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [How to Render HTML to PNG with Aspose – Complete Guide](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML as PNG in .NET with Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/turkish/net/html-extensions-and-conversions/_index.md b/html/turkish/net/html-extensions-and-conversions/_index.md index 8dd996b055..db3dea848e 100644 --- a/html/turkish/net/html-extensions-and-conversions/_index.md +++ b/html/turkish/net/html-extensions-and-conversions/_index.md @@ -71,6 +71,8 @@ Aspose.HTML for .NET kullanarak HTML'den PDF'ye nasıl dönüştüreceğinizi ad Aspose.HTML for .NET kullanarak HTML dosyalarını ZIP arşivine kaydetmeyi adım adım öğrenin. ### [C# ile HTML'yi ZIP'e Kaydet – Tam Bellek İçi Örnek](./save-html-to-zip-in-c-complete-in-memory-example/) Aspose.HTML for .NET kullanarak HTML dosyasını bellek içinde ZIP arşivine dönüştürmeyi adım adım öğrenin. +### [HTML'yi ZIP Olarak Kaydet – Tam Aspose.HTML Kılavuzu](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Aspose.HTML for .NET ile HTML dosyalarını ZIP arşivine kaydetmeyi ayrıntılı olarak öğrenin. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/turkish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/turkish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..796970698c --- /dev/null +++ b/html/turkish/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,291 @@ +--- +category: general +date: 2026-07-08 +description: Aspose.HTML kullanarak HTML'yi ZIP arşivi olarak kaydetmeyi öğrenin. + Özel bir kaynak işleyicisi ve HTML'yi ZIP'e dönüştürmek için adım adım kod içerir. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: tr +lastmod: 2026-07-08 +og_description: Aspose.HTML ile HTML'yi ZIP arşivi olarak nasıl kaydedilir. Özel bir + kaynak işleyicisi kullanmayı, HTML'yi ZIP'e dönüştürmeyi ve ZIP HTML dosyaları oluşturmayı + bu rehberde öğrenin. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: HTML'yi ZIP Olarak Kaydetme – Tam Aspose.HTML Öğreticisi +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: HTML'yi ZIP Olarak Kaydetme – Tam Aspose.HTML Rehberi +url: /tr/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML'yi ZIP Olarak Kaydetme – Tam Aspose.HTML Rehberi + +Hiç **HTML'yi nasıl kaydedeceğinizi** tek bir taşınabilir paket içinde merak ettiniz mi? Belki bir web sayfasını tüm varlıklarıyla göndermeniz gerekiyor ya da oluşturulan raporları dosyaları dağıtmadan arşivlemek istiyorsunuz. Her iki durumda da Aspose.HTML kullanarak çözüm düşündüğünüzden daha basit. + +Bu öğreticide, **converts html to zip** gerçek bir örnek üzerinden ilerleyecek, **custom resource handler** kullanacak ve sonunda **create zip html** dosyalarını istediğiniz yerde açabileceğiniz şekilde tam olarak nasıl yapacağınızı göstereceğiz. Sonuna geldiğinizde, dört adımda tüm işi yapan, çalıştırmaya hazır bir C# programına sahip olacaksınız. + +## Önkoşullar + +- .NET 6.0 veya üzeri (kod .NET Framework 4.7+ ile de çalışır) +- Aspose.HTML için bir lisans (ücretsiz deneme sürümü test için yeterlidir) +- Visual Studio 2022 veya C# uzantılarına sahip VS Code gibi bir IDE +- C# async/await konusunda temel bilgi (gerekmese de faydalı) + +> **Pro tip:** Aspose.HTML'e yeniyseniz, `Aspose.Html` NuGet paketini alın ve başlamadan önce projenize ekleyin. + +## Adım 1: Projenizi Kurun + +İlk olarak, yeni bir konsol uygulaması oluşturun: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Hepsi bu—ekstra bağımlılık yok. `Aspose.Html` paketi, **how to save html**'yi ZIP arşivi olarak kaydetmek için ihtiyaç duyacağımız sınıfları zaten içeriyor. + +## Adım 2: Özel Bir Kaynak İşleyicisi Uygulayın + +Aspose.HTML bir belgeyi kaydettiğinde, bağlı kaynakları (görseller, CSS, fontlar) depolamak için bir yere ihtiyaç duyar. Varsayılan olarak bunları dosya sistemine yazar, ancak **custom resource handler** ile bu süreci yakalayabiliriz. Bu, her kaynağın nereye konulacağını tam kontrol etmemizi sağlar—temiz bir ZIP dosyası oluşturmak için mükemmeldir. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Neden özel bir işleyici kullanmalı?** +- **Flexibility:** Kaynakları anında sıkıştırabilir, şifreleyebilir veya yeniden adlandırabilirsiniz. +- **Performance:** Yalnızca geçici bir arşiv gerektiğinde belleğe yazmak disk I/O'sundan kaçınır. +- **Control:** ZIP içindeki tam klasör yapısını siz belirlersiniz; bu, **create zip html**'yi aşağı akış sistemleri için kullanırken işe yarar. + +## Adım 3: HTML Belgesini Oluşturun + +Şimdi basit bir HTML dizesi oluşturacağız. Gerçek bir projede muhtemelen bunu bir dosyadan, veritabanından ya da dinamik olarak üretebilirsiniz. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Harici varlıklarınız (görseller, CSS dosyaları) varsa, URL'lerinin erişilebilir olduğundan emin olun—Aspose, daha önce tanımladığımız **custom resource handler** aracılığıyla bunları isteyecek. + +## Adım 4: **Convert HTML to ZIP** için Kaydetme Seçeneklerini Yapılandırın + +Aspose.HTML, çeşitli `HTMLSaveOptions` alt sınıfları sunar. ZIP arşivi için temel `HTMLSaveOptions` kullanır ve `OutputStorage` özelliğini `MyHandler`'a ayarlarız. Bu, kütüphaneye **convert html to zip** işlemini sağladığımız akışları kullanarak yapmasını söyler. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +`saveOptions`'ı ayrıca şu şekilde ayarlayabilirsiniz: + +- `saveOptions.Compressed = true;` – ZIP sıkıştırmasını etkinleştirir (varsayılan olarak açıktır). +- `saveOptions.ExportResources = true;` – bağlı kaynakların dahil edilmesini sağlar. + +Bu ayarlamalar isteğe bağlıdır ancak **create zip html**'yi dağıtım için kullanırken genellikle faydalıdır. + +## Adım 5: ZIP Arşivini Kaydet – **How to Save HTML**'yi Doğru Şekilde + +Son olarak, `Save` metodunu çağırıyoruz. İlk argüman, oluşacak ZIP dosyasının yolu, ikinci argüman ise az önce yapılandırdığımız `HTMLSaveOptions`. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Programı çalıştırdığınızda (`dotnet run`), çalıştırılabilir dosyanızın yanında bir `output.zip` dosyası göreceksiniz. Herhangi bir arşiv yöneticisiyle açtığınızda şunları bulacaksınız: + +- `index.html` – orijinal işaretleme. +- Referans verilen tüm kaynaklar (görseller, CSS), her biri ayrı bir giriş olarak depolanmış. + +Bu, ham işaretlemeden taşınabilir bir ZIP paketine kadar tam **how to save html** iş akışıdır. + +## Bonus: Görselleri ve Harici Kaynakları İşleme + +HTML'nizde `` gibi bir etiket varsa, `MyHandler` `info.Uri`'nin `logo.png`'ye işaret ettiği bir çağrı alır. İşleyiciyi, dosyayı diskten ya da uzak bir URL'den çekmek için değiştirebilirsiniz: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Bu kod parçacığı, **custom resource handler**'ı herhangi bir depolama stratejisine uyacak şekilde nasıl genişletebileceğinizi gösterir ve ZIP çıktısının projenizin varlık düzenini gerçekten yansıtmasını sağlar. + +## Yaygın Tuzaklar ve Nasıl Önlenir + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **Empty ZIP** | `OutputStorage` kapalı bir akış ya da `null` döndürdüğünde oluşur. | Her zaman yeni, yazılabilir bir `MemoryStream` veya `FileStream` döndürün. | +| **Missing images** | Kaynaklar CORS tarafından engellendiğinde veya yerel olarak bulunamadığında oluşur. | Varlıkları önceden indirin veya `HandleResource`'u manuel olarak sağlaması için ayarlayın. | +| **Large ZIP size** | Kaynaklar sıkıştırılmadığında oluşur. | `saveOptions.Compressed = true;` (varsayılan) ayarlayın veya döndürmeden önce akışları kendiniz sıkıştırın. | +| **Incorrect file names** | Varsayılan işleyici dosyaları GUID ile adlandırdığında oluşur. | `HandleResource` içinde `ResourceInfo.Name`'i geçersiz kılarak akışı buna göre yeniden adlandırın. | + +## Tam Çalışan Örnek + +Aşağıda, `Program.cs` dosyasına kopyalayıp yapıştırabileceğiniz tam program yer alıyor. Derlenir ve kutudan çıkar çıkmaz çalışır. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Beklenen çıktı:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +## Özet + +Aspose.HTML kullanarak **how to save html**'yi ZIP arşivi olarak nasıl kaydedeceğinizi, paketleme sürecinde tam kontrol sağlayan bir **custom resource handler** ile birlikte gösterdik. Artık **convert html to zip**'i nasıl yapacağınızı biliyorsunuz ve kodu **create zip html** dosyalarını e-postalar, çevrim dışı belgeler veya statik site dağıtımları için kolayca uyarlayabilirsiniz. + +### Sıradaki Adımlar? + +- **Add CSS/JS files**: `MyHandler`'ı projenizin klasöründen stil sayfalarını ve betikleri çekmek için genişletin. +- **Encrypt the ZIP**: `MemoryStream`'i döndürmeden önce bir `CryptoStream` ile sarın. +- **Batch processing**: HTML dizesi koleksiyonunu döngüye alarak sayfa başına bir ZIP oluşturun. + +Denemeler yapmaktan çekinmeyin ve bir sorunla karşılaşırsanız yorum bırakın. Kodlamanın tadını çıkarın! + +## Sonra Ne Öğrenmelisiniz? + +Aşağıdaki öğreticiler, bu rehberde gösterilen tekniklere dayanarak yakından ilgili konuları kapsar. Her kaynak, ek API özelliklerini öğrenmenize ve kendi projelerinizde alternatif uygulama yaklaşımlarını keşfetmenize yardımcı olacak adım adım açıklamalı tam çalışan kod örnekleri içerir. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/turkish/net/rendering-html-documents/_index.md b/html/turkish/net/rendering-html-documents/_index.md index 6cce1b9217..4c39774ebd 100644 --- a/html/turkish/net/rendering-html-documents/_index.md +++ b/html/turkish/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ Aspose.HTML for .NET ile HTML dosyalarını PNG formatına dönüştürmeyi adı Aspose.HTML for .NET kullanarak HTML dosyalarını PNG formatına dönüştürmenin tüm adımlarını öğrenin. ### [HTML'den PNG Oluşturma – Tam C# Render Rehberi](./create-png-from-html-full-c-rendering-guide/) HTML'den PNG oluşturmayı tam C# render rehberiyle adım adım öğrenin. +### [HTML'yi PNG'ye Render ederken Antialiasing'i Etkinleştirme](./how-to-enable-antialiasing-rendering-html-to-png/) +HTML'yi PNG'ye dönüştürürken antialiasing'i nasıl etkinleştireceğinizi adım adım öğrenin. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/turkish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/turkish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..e811a8809d --- /dev/null +++ b/html/turkish/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,219 @@ +--- +category: general +date: 2026-07-08 +description: Aspose HTML kullanarak HTML'yi PNG'ye render ederken antialiasing'i nasıl + etkinleştireceğinizi öğrenin. Bu kılavuz ayrıca HTML'yi görüntüye dönüştürmeyi ve + HTML'yi PNG olarak kaydetmeyi kapsar. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: tr +lastmod: 2026-07-08 +og_description: Aspose HTML ile HTML'yi PNG'ye render ederken antialiasing'i nasıl + etkinleştirirsiniz? HTML'yi görüntüye dönüştürmek ve HTML'yi PNG olarak kaydetmek + için bu adım adım öğreticiyi izleyin. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: HTML'den PNG'ye Antialiasing Rendering'i Nasıl Etkinleştirirsiniz – Aspose + Kılavuzu +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: HTML'yi PNG'ye Render ederken Antialiasing'i Nasıl Etkinleştirirsiniz +url: /tr/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# HTML'yi PNG'ye Render Ederken Antialiasing'i Nasıl Etkinleştirirsiniz + +Hiç merak ettiniz mi **antialiasing'i nasıl etkinleştirirsiniz** bir web sayfasını net bir PNG görüntüsüne dönüştürürken? Yalnız değilsiniz—birçok geliştirici, çıktının tırtıklı veya bulanık görünmesiyle karşılaşıyor. İyi haber şu ki, Aspose.HTML ile sadece birkaç satır kodla bu kenarları yumuşatabilirsiniz. Bu öğreticide, HTML'yi PNG'ye render etme, HTML'yi görüntüye dönüştürme ve sonunda **HTML'yi PNG olarak kaydet** işlemini antialiasing açık şekilde göstereceğiz. + +> **Ne elde edeceksiniz:** tam, çalıştırmaya hazır bir C# örneği, her seçeneğin açıklaması ve özel yazı tipleri veya büyük sayfalar gibi kenar durumlarını ele almak için ipuçları. + +## HTML'yi PNG'ye Render Ederken Antialiasing'i Nasıl Etkinleştirirsiniz + +İlk olarak anlamanız gereken şey **antialiasing'in neden önemli olduğu**. Render motoru şekil veya metin çizerken, eğrileri piksellerle yaklaştırır. Antialiasing olmadan, bu yaklaşımlar basamaklı artefaktlar oluşturur—özellikle çapraz çizgilerde veya ince yazı tiplerinde belirgindir. Antialiasing'i etkinleştirmek, motorun komşu pikselleri karıştırmasını sağlar ve daha pürüzsüz bir görsel sonuç üretir. + +Aşağıda, Aspose.HTML'in `ImageRenderingOptions` kullanarak **antialiasing'i nasıl etkinleştirileceğini** gösteren temel kod bulunmaktadır. Her satırın ne yaptığını adım adım açıklayacağız. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Her parçanın önemi + +1. **HTMLDocument** – tamamen bellek içinde çalışır, bu yüzden fiziksel `.html` dosyalarına ihtiyacınız yoktur. Anlık dönüşümler için mükemmeldir. +2. **WebFontStyle** – render etmeden önce metni stillendirebileceğinizi gösterir; kalın‑eğik kombinasyonu sadece bir demo. +3. **ImageRenderingOptions.UseAntialiasing** – bu bayrak **antialiasing'i nasıl etkinleştirileceği** sorusunun cevabıdır; `true` olarak ayarlayın ve rasterleştirici kenarları yumuşatır. +4. **TextOptions.UseHinting** – hinting, özellikle küçük boyutlarda gliflerin netliğini artırır. Antialiasing için güzel bir tamamlayıcıdır. +5. **ImageSaveOptions** – render ve metin seçeneklerini bir araya getirir, ardından Aspose'a bir PNG dosyası üretmesini söyler. + +## Aspose ile HTML'yi PNG'ye Render Etme + +Artık **antialiasing'i nasıl etkinleştirileceğini** bildiğinize göre, **html'yi png'ye render etme** konusunun daha geniş resmini konuşalım. Aspose.HTML ağır işleri soyutlar: + +- **Automatic layout** – motor, CSS'yi ayrıştırır, kutu modellerini hesaplar ve öğeleri bir tarayıcı gibi konumlandırır. +- **Resolution control** – `ImageRenderingOptions.Resolution` aracılığıyla DPI belirtebilirsiniz; bu yüksek çözünürlüklü baskılar için kullanışlıdır. +- **Background handling** – şeffaf veya renkli bir tuval gerekiyorsa `imageOpts.BackgroundColor` ayarlayın. + +İşte özel bir DPI ekleyen hızlı bir ayar: + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Pro tip:** Dış kaynaklar (görseller, yazı tipleri) içeren bir sayfayı dönüştürüyorsanız, `htmlDoc.BaseUrl` değerini bu varlıkların bulunduğu klasöre ayarladığınızdan emin olun. Aksi takdirde render motoru onları atlayacaktır. + +## HTML'yi Görüntüye Dönüştür – Gelişmiş Seçenekler + +**html'yi görüntüye dönüştür** ifadesi genellikle sadece PNG'den daha fazlasını ima eder. Aspose JPEG, BMP, TIFF ve hatta GIF'i destekler. Format değiştirmek, `SaveFormat` enum'ını değiştirmek kadar basittir: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Vektör dostu bir çıktı gerektiğinde, `SvgSaveOptions`'ı düşünün. Aynı render pipeline'ı uygulanır, böylece formatlar arasında tutarlı antialiasing elde edersiniz. + +### Kenar durumu: Çok uzun sayfalar + +HTML'niz tipik bir ekrandan daha uzun ise, Aspose varsayılan olarak tek bir uzun görüntü oluşturur. Bu bellek kullanımını artırabilir. Bunu azaltmak için belgeyi birden çok sayfaya bölebilirsiniz: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## HTML'yi PNG Olarak Kaydet – Son Adım + +Bu noktada **antialiasing'i nasıl etkinleştirileceğini** gördünüz, **html'yi png'ye render etmeyi** öğrendiniz ve **html'yi görüntüye dönüştür** seçeneklerini incelediniz. Son adım—**html'yi png olarak kaydet**—orijinal kodda zaten gösterildi, ancak bunu yeniden kullanılabilir bir metoda paketleyelim: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Artık projenizin herhangi bir yerinden `SaveHtmlAsPng("…", @"C:\temp\output.png")` metodunu çağırabilirsiniz. `antialias` parametresi, kenar yumuşatma özelliğini açıp kapamanızı sağlar ve çalışma zamanında **antialiasing'i nasıl etkinleştirileceği** üzerinde tam kontrol sunar. + +## Aspose HTML'den PNG'ye – Tam Çalışan Örnek + +Aşağıda her şeyi bir araya getiren bağımsız bir konsol uygulaması bulunmaktadır. Kopyalayıp yapıştırın, `YOUR_DIRECTORY` yer tutucusunu ayarlayın ve .NET 6 veya daha yeni bir sürümle çalıştırın. + + + +## Sonra Ne Öğrenmelisiniz? + +Aşağıdaki öğreticiler, bu rehberde gösterilen tekniklere dayanan yakından ilgili konuları kapsar. Her kaynak, ek API özelliklerini öğrenmenize ve kendi projelerinizde alternatif uygulama yaklaşımlarını keşfetmenize yardımcı olmak için adım adım açıklamalarla tam çalışan kod örnekleri içerir. + +- [Aspose Kullanarak HTML'yi PNG'ye Render Etme – Adım Adım Kılavuz](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Aspose ile HTML'yi PNG'ye Render Etme – Tam Kılavuz](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [.NET'te Aspose.HTML ile HTML'yi PNG Olarak Render Etme](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/vietnamese/net/html-extensions-and-conversions/_index.md b/html/vietnamese/net/html-extensions-and-conversions/_index.md index 169c7624f6..3f0ef80efc 100644 --- a/html/vietnamese/net/html-extensions-and-conversions/_index.md +++ b/html/vietnamese/net/html-extensions-and-conversions/_index.md @@ -73,6 +73,8 @@ Tạo PDF từ HTML trong .NET bằng C#. Hướng dẫn chi tiết từng bư Hướng dẫn chi tiết cách lưu tài liệu HTML thành tệp ZIP bằng Aspose.HTML cho .NET với C#. ### [Lưu HTML thành ZIP trong C# – Ví dụ Toàn bộ trong Bộ nhớ](./save-html-to-zip-in-c-complete-in-memory-example/) Hướng dẫn lưu tài liệu HTML vào tệp ZIP trong C# bằng Aspose.HTML, sử dụng bộ nhớ tạm và không tạo file tạm trên đĩa. +### [Cách lưu HTML thành ZIP – Hướng dẫn đầy đủ Aspose.HTML](./how-to-save-html-as-zip-complete-aspose-html-guide/) +Hướng dẫn chi tiết cách lưu tài liệu HTML thành tệp ZIP bằng Aspose.HTML, bao gồm ví dụ mã và tùy chọn cấu hình. ## Phần kết luận diff --git a/html/vietnamese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md b/html/vietnamese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md new file mode 100644 index 0000000000..fdacd5513e --- /dev/null +++ b/html/vietnamese/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/_index.md @@ -0,0 +1,293 @@ +--- +category: general +date: 2026-07-08 +description: Tìm hiểu cách lưu HTML dưới dạng tệp ZIP bằng Aspose.HTML. Bao gồm trình + xử lý tài nguyên tùy chỉnh và mã từng bước để chuyển HTML sang ZIP. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save html +- convert html to zip +- custom resource handler +- create zip html +language: vi +lastmod: 2026-07-08 +og_description: Cách lưu HTML dưới dạng tệp ZIP với Aspose.HTML. Hãy làm theo hướng + dẫn này để sử dụng trình xử lý tài nguyên tùy chỉnh, chuyển đổi HTML sang ZIP và + tạo các tệp HTML ZIP. +og_image_alt: Screenshot showing Aspose.HTML code that saves HTML as a ZIP file +og_title: Cách lưu HTML dưới dạng ZIP – Hướng dẫn đầy đủ Aspose.HTML +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to save HTML as a ZIP archive using Aspose.HTML. Includes + a custom resource handler and step‑by‑step code to convert HTML to ZIP. + headline: How to Save HTML as ZIP – Complete Aspose.HTML Guide + type: TechArticle +tags: +- Aspose.HTML +- C# +- HTML to ZIP +title: Cách Lưu HTML dưới dạng ZIP – Hướng Dẫn Toàn Diện Aspose.HTML +url: /vi/net/html-extensions-and-conversions/how-to-save-html-as-zip-complete-aspose-html-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cách Lưu HTML dưới dạng ZIP – Hướng Dẫn Đầy Đủ Aspose.HTML + +Bạn đã bao giờ tự hỏi **cách lưu html** vào một gói duy nhất, di động chưa? Có thể bạn cần chuyển giao một trang web cùng tất cả tài nguyên, hoặc muốn lưu trữ các báo cáo được tạo mà không làm rải rác các tệp. Dù sao, giải pháp đơn giản hơn bạn nghĩ khi sử dụng Aspose.HTML. + +Trong hướng dẫn này, chúng tôi sẽ đi qua một ví dụ thực tế mà **chuyển đổi html sang zip**, sử dụng **custom resource handler**, và cuối cùng cho bạn thấy chính xác cách **tạo zip html** mà bạn có thể giải nén ở bất kỳ đâu. Khi kết thúc, bạn sẽ có một chương trình C# sẵn sàng chạy thực hiện toàn bộ công việc trong bốn bước gọn gàng. + +## Yêu Cầu Trước + +- .NET 6.0 hoặc mới hơn (mã vẫn hoạt động với .NET Framework 4.7+) +- Giấy phép cho Aspose.HTML (bản dùng thử miễn phí đủ cho việc thử nghiệm) +- Một IDE như Visual Studio 2022 hoặc VS Code với các extension C# +- Kiến thức cơ bản về C# async/await (không bắt buộc nhưng hữu ích) + +> **Mẹo chuyên nghiệp:** Nếu bạn mới dùng Aspose.HTML, hãy tải gói NuGet `Aspose.Html` và thêm vào dự án của bạn trước khi bắt đầu. + +## Bước 1: Thiết Lập Dự Án Của Bạn + +Đầu tiên, tạo một ứng dụng console mới: + +```bash +dotnet new console -n HtmlToZipDemo +cd HtmlToZipDemo +dotnet add package Aspose.Html +``` + +Chỉ vậy—không cần phụ thuộc thêm. Gói `Aspose.Html` đã chứa các lớp chúng ta cần cho **cách lưu html** dưới dạng ZIP. + +## Bước 2: Triển Khai Custom Resource Handler + +Khi Aspose.HTML lưu một tài liệu, nó cần một nơi để lưu trữ các tài nguyên liên kết (hình ảnh, CSS, phông chữ). Mặc định nó ghi chúng vào hệ thống tệp, nhưng chúng ta có thể can thiệp quá trình này bằng **custom resource handler**. Điều này cho phép chúng ta kiểm soát hoàn toàn vị trí của mỗi tài nguyên—hoàn hảo để tạo một tệp ZIP sạch sẽ. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System.IO; + +/// +/// Custom handler that stores each resource in an in‑memory stream. +/// Aspose.HTML will later pack these streams into the ZIP archive. +/// +class MyHandler : ResourceHandler +{ + // The framework calls this method for every external resource. + public override Stream HandleResource(ResourceInfo info) + { + // You could inspect info.Uri, info.MimeType, etc. here. + // For this demo we just give Aspose a fresh MemoryStream. + return new MemoryStream(); + } +} +``` + +**Tại sao nên sử dụng custom handler?** +- **Flexibility:** Bạn có thể quyết định nén, mã hoá, hoặc đổi tên tài nguyên ngay lập tức. +- **Performance:** Ghi vào bộ nhớ tránh I/O đĩa khi bạn chỉ cần một kho lưu tạm thời. +- **Control:** Bạn quyết định cấu trúc thư mục chính xác bên trong ZIP, rất hữu ích khi bạn **tạo zip html** cho các hệ thống downstream. + +## Bước 3: Xây Dựng Tài Liệu HTML + +Bây giờ chúng ta sẽ tạo một chuỗi HTML đơn giản. Trong dự án thực tế, bạn có thể tải nó từ tệp, cơ sở dữ liệu, hoặc tạo động. + +```csharp +using Aspose.Html; + +// Sample HTML – replace with your own markup as needed. +string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ +"; + +// Create the document from the string. +HTMLDocument htmlDoc = new HTMLDocument(htmlContent); +``` + +Nếu bạn có các tài nguyên bên ngoài (hình ảnh, tệp CSS), chỉ cần chắc chắn URL của chúng có thể truy cập—Aspose sẽ yêu cầu chúng qua **custom resource handler** mà chúng ta đã định nghĩa trước đó. + +## Bước 4: Cấu Hình Save Options để **Chuyển Đổi HTML Sang ZIP** + +Aspose.HTML cung cấp một số lớp con của `HTMLSaveOptions`. Đối với kho lưu ZIP, chúng ta sử dụng `HTMLSaveOptions` cơ bản và đặt `OutputStorage` của nó thành `MyHandler` của chúng ta. Điều này báo cho thư viện **chuyển đổi html sang zip** bằng các stream mà chúng ta cung cấp. + +```csharp +using Aspose.Html.Saving; + +// Create save options. +HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + +// Attach our custom handler. +saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) +``` + +Bạn cũng có thể điều chỉnh `saveOptions`: + +- `saveOptions.Compressed = true;` – bật nén ZIP (mặc định đã bật). +- `saveOptions.ExportResources = true;` – đảm bảo các tài nguyên liên kết được bao gồm. + +Những điều chỉnh này là tùy chọn nhưng thường hữu ích khi bạn **tạo zip html** để phân phối. + +## Bước 5: Lưu Kho Lưu ZIP – **Cách Lưu HTML** Một Cách Đúng Đắn + +Cuối cùng, chúng ta gọi `Save`. Tham số đầu tiên là đường dẫn tới tệp ZIP kết quả, tham số thứ hai là `HTMLSaveOptions` mà chúng ta vừa cấu hình. + +```csharp +// Define the output path – adjust as needed. +string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + +// Save the document as a ZIP archive. +htmlDoc.Save(outputPath, saveOptions); + +System.Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); +``` + +Khi bạn chạy chương trình (`dotnet run`), bạn sẽ thấy một tệp `output.zip` bên cạnh file thực thi của bạn. Mở nó bằng bất kỳ trình quản lý lưu trữ nào và bạn sẽ thấy: + +- `index.html` – mã gốc. +- Bất kỳ tài nguyên nào (hình ảnh, CSS) đã được tham chiếu, mỗi tài nguyên được lưu dưới dạng một mục riêng. + +Đó là quy trình đầy đủ **cách lưu html**, từ mã thô đến một gói ZIP di động. + +## Bonus: Xử Lý Hình Ảnh và Tài Nguyên Bên Ngoài + +Nếu HTML của bạn chứa ``, `MyHandler` sẽ nhận một lời gọi với `info.Uri` trỏ tới `logo.png`. Bạn có thể sửa đổi handler để lấy tệp từ đĩa hoặc URL từ xa: + +```csharp +public override Stream HandleResource(ResourceInfo info) +{ + // Example: load image from a local folder. + string localPath = Path.Combine("assets", Path.GetFileName(info.Uri)); + if (File.Exists(localPath)) + return new FileStream(localPath, FileMode.Open, FileAccess.Read); + + // Fallback: empty stream so the ZIP still builds. + return new MemoryStream(); +} +``` + +Đoạn mã này cho thấy cách bạn có thể mở rộng **custom resource handler** để phù hợp với bất kỳ chiến lược lưu trữ nào, làm cho đầu ra ZIP thực sự phản ánh bố cục tài sản của dự án. + +## Những Cạm Bẫy Thường Gặp & Cách Tránh Chúng + +| Issue | Why it Happens | Fix | +|-------|----------------|-----| +| **ZIP Trống** | `OutputStorage` trả về một stream đã đóng hoặc `null`. | Luôn trả về một `MemoryStream` hoặc `FileStream` mới, có thể ghi. | +| **Thiếu hình ảnh** | Tài nguyên bị chặn bởi CORS hoặc không có sẵn cục bộ. | Tải trước các tài nguyên hoặc điều chỉnh `HandleResource` để cung cấp chúng thủ công. | +| **Kích thước ZIP lớn** | Tài nguyên không được nén. | Đặt `saveOptions.Compressed = true;` (mặc định) hoặc tự nén các stream trước khi trả về. | +| **Tên tệp không đúng** | Trình xử lý mặc định đặt tên tệp bằng GUID. | Ghi đè `ResourceInfo.Name` trong `HandleResource` và đổi tên stream cho phù hợp. | + +## Ví Dụ Hoàn Chỉnh Hoạt Động + +Dưới đây là chương trình hoàn chỉnh mà bạn có thể sao chép‑dán vào `Program.cs`. Nó biên dịch và chạy ngay mà không cần cấu hình thêm. + +```csharp +using Aspose.Html; +using Aspose.Html.Saving; +using System; +using System.IO; + +// --------------------------------------------------- +// Custom resource handler – stores each resource in memory. +// --------------------------------------------------- +class MyHandler : ResourceHandler +{ + public override Stream HandleResource(ResourceInfo info) + { + // For demo purposes we just give a fresh memory stream. + // Insert custom logic here if you need to load actual files. + return new MemoryStream(); + } +} + +class Program +{ + static void Main() + { + // --------------------------------------------------- + // Step 1: Create HTML document from a string. + // --------------------------------------------------- + string htmlContent = @" + + + + Demo Page + + + +

Hello, Aspose.HTML!

+

This page will be saved inside a ZIP archive.

+ + "; + + HTMLDocument htmlDoc = new HTMLDocument(htmlContent); + + // --------------------------------------------------- + // Step 2: Configure save options with our custom handler. + // --------------------------------------------------- + HTMLSaveOptions saveOptions = new HTMLSaveOptions(); + saveOptions.OutputStorage = new MyHandler(); // new way (instead of IOutputStorage) + + // Optional: enable compression (true by default) + saveOptions.Compressed = true; + + // --------------------------------------------------- + // Step 3: Save the document as a ZIP file. + // --------------------------------------------------- + string outputPath = Path.Combine(Directory.GetCurrentDirectory(), "output.zip"); + htmlDoc.Save(outputPath, saveOptions); + + Console.WriteLine($"✅ HTML saved as ZIP at: {outputPath}"); + } +} +``` + +**Kết quả mong đợi:** +``` +✅ HTML saved as ZIP at: C:\Path\To\Your\Project\output.zip +``` + +Mở `output.zip` và bạn sẽ thấy tệp `index.html` cùng bất kỳ tài nguyên nào bạn đã thêm. + +## Tổng Kết + +Chúng tôi vừa trình diễn **cách lưu html** dưới dạng kho lưu ZIP bằng Aspose.HTML, kèm theo **custom resource handler** cho phép bạn kiểm soát hoàn toàn quá trình đóng gói. Bây giờ bạn đã biết cách **chuyển đổi html sang zip**, và có thể dễ dàng điều chỉnh mã để **tạo zip html** cho email, tài liệu offline, hoặc triển khai trang tĩnh. + +### Tiếp Theo? + +- **Add CSS/JS files**: Mở rộng `MyHandler` để lấy các stylesheet và script từ thư mục dự án của bạn. +- **Encrypt the ZIP**: Bao bọc `MemoryStream` trong một `CryptoStream` trước khi trả về. +- **Batch processing**: Lặp qua một tập hợp các chuỗi HTML và tạo một ZIP cho mỗi trang. + +Hãy thoải mái thử nghiệm, và để lại bình luận nếu gặp bất kỳ khó khăn nào. Chúc lập trình vui vẻ! + +## Bạn Nên Học Gì Tiếp Theo? + +Các hướng dẫn sau đây bao phủ các chủ đề liên quan chặt chẽ, xây dựng trên các kỹ thuật đã trình bày trong hướng dẫn này. Mỗi tài nguyên bao gồm các ví dụ mã hoàn chỉnh với giải thích từng bước để giúp bạn nắm vững các tính năng API bổ sung và khám phá các cách triển khai thay thế trong dự án của mình. + +- [How to Save HTML in C# – Complete Guide Using a Custom Resource Handler](/html/english/net/working-with-html-documents/how-to-save-html-in-c-complete-guide-using-a-custom-resource/) +- [How to Zip HTML in C# – Save HTML to Zip](/html/english/net/html-extensions-and-conversions/how-to-zip-html-in-c-save-html-to-zip/) +- [Save HTML as ZIP – Complete C# Tutorial](/html/english/net/html-extensions-and-conversions/save-html-as-zip-complete-c-tutorial/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/vietnamese/net/rendering-html-documents/_index.md b/html/vietnamese/net/rendering-html-documents/_index.md index 8ef7cb5b62..ed08c6956e 100644 --- a/html/vietnamese/net/rendering-html-documents/_index.md +++ b/html/vietnamese/net/rendering-html-documents/_index.md @@ -60,6 +60,8 @@ Học cách chuyển đổi HTML sang PNG một cách dễ dàng với Aspose.HT Học cách chuyển đổi HTML sang PNG một cách dễ dàng với Aspose.HTML cho .NET. Khám phá hướng dẫn chi tiết từng bước. ### [Tạo PNG từ HTML – Hướng dẫn đầy đủ C# Rendering](./create-png-from-html-full-c-rendering-guide/) Học cách chuyển đổi HTML thành PNG bằng Aspose.HTML cho .NET với hướng dẫn chi tiết bằng C#. +### [Cách bật khử răng cưa khi render HTML thành PNG](./how-to-enable-antialiasing-rendering-html-to-png/) +Hướng dẫn bật tính năng khử răng cưa để cải thiện chất lượng PNG khi render HTML bằng Aspose.HTML. {{< /blocks/products/pf/tutorial-page-section >}} diff --git a/html/vietnamese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md b/html/vietnamese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md new file mode 100644 index 0000000000..8c7e3b1f7f --- /dev/null +++ b/html/vietnamese/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/_index.md @@ -0,0 +1,216 @@ +--- +category: general +date: 2026-07-08 +description: Tìm hiểu cách bật khử răng cưa khi bạn chuyển đổi HTML sang PNG bằng + Aspose HTML. Hướng dẫn này cũng bao gồm cách chuyển HTML sang hình ảnh và lưu HTML + dưới dạng PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to enable antialiasing +- render html to png +- convert html to image +- save html as png +- aspose html to png +language: vi +lastmod: 2026-07-08 +og_description: Cách bật khử răng cưa khi chuyển đổi HTML sang PNG bằng Aspose HTML. + Hãy làm theo hướng dẫn từng bước này để chuyển HTML thành hình ảnh và lưu HTML dưới + dạng PNG. +og_image_alt: Screenshot of HTML rendered to PNG with antialiasing enabled – how to + enable antialiasing +og_title: Cách bật khử răng cưa khi render HTML sang PNG – Hướng dẫn Aspose +schemas: +- author: Aspose + dateModified: '2026-07-08' + description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + headline: How to Enable Antialiasing Rendering HTML to PNG + type: TechArticle +- description: Learn how to enable antialiasing when you render HTML to PNG using + Aspose HTML. This guide also covers convert html to image and save html as png. + name: How to Enable Antialiasing Rendering HTML to PNG + steps: + - name: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + text: '**HTMLDocument** – works entirely in memory, so you don’t need any physical + `.html` files. Perfect for on‑the‑fly conversions.' + - name: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + text: '**WebFontStyle** – shows that you can style text before rendering; the + bold‑italic combo is just a demo.' + - name: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + text: '**ImageRenderingOptions.UseAntialiasing** – this flag is the answer to + **how to enable antialiasing**; set it to `true` and the rasterizer will smooth + edges.' + - name: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + text: '**TextOptions.UseHinting** – hinting improves the clarity of glyphs, especially + at small sizes. It’s a nice companion to antialiasing.' + - name: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + text: '**ImageSaveOptions** – bundles both rendering and text options, then tells + Aspose to output a PNG file.' + type: HowTo +tags: +- Aspose +- C# +- Image Rendering +title: Cách bật khử răng cưa khi render HTML sang PNG +url: /vi/net/rendering-html-documents/how-to-enable-antialiasing-rendering-html-to-png/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cách bật khử răng cưa khi Render HTML sang PNG + +Bạn đã bao giờ tự hỏi **cách bật khử răng cưa** khi chuyển một trang web thành hình PNG sắc nét chưa? Bạn không phải là người duy nhất—nhiều nhà phát triển gặp khó khăn khi kết quả trông răng cưa hoặc mờ. Tin tốt là với Aspose.HTML bạn có thể làm mịn các cạnh chỉ với vài dòng code. Trong hướng dẫn này, chúng tôi sẽ đi qua các bước chính xác để render HTML sang PNG, chuyển HTML thành hình ảnh, và cuối cùng **lưu HTML dưới dạng PNG** với khử răng cưa được bật. + +> **Bạn sẽ nhận được:** một ví dụ C# hoàn chỉnh, sẵn sàng chạy, giải thích mọi tùy chọn, và các mẹo để xử lý các trường hợp đặc biệt như phông chữ tùy chỉnh hoặc trang lớn. + +## Cách bật khử răng cưa khi Render HTML sang PNG + +Điều đầu tiên bạn cần hiểu là **tại sao khử răng cưa lại quan trọng**. Khi engine render vẽ các hình dạng hoặc văn bản, nó xấp xỉ các đường cong bằng các pixel. Nếu không có khử răng cưa, những xấp xỉ này tạo ra các hiện tượng bậc thang—đặc biệt rõ ràng trên các đường chéo hoặc phông chữ mỏng. Bật khử răng cưa sẽ khiến engine pha trộn các pixel lân cận, tạo ra kết quả hình ảnh mượt hơn. + +Dưới đây là đoạn mã cốt lõi minh họa **cách bật khử răng cưa** bằng cách sử dụng `ImageRenderingOptions` của Aspose.HTML. Chúng tôi sẽ phân tích từng bước để bạn có thể thấy chính xác mỗi dòng làm gì. + +```csharp +using Aspose.Html; +using Aspose.Html.Rendering.Image; +using Aspose.Html.Drawing; + +// Step 1: Create an in‑memory HTML document +HTMLDocument htmlDoc = new HTMLDocument("

Sample

"); + +// Step 2: Define the desired font style (bold + italic) +WebFontStyle fontStyle = WebFontStyle.Bold | WebFontStyle.Italic; + +// Step 3: Configure image rendering options – enable antialiasing for smoother graphics +ImageRenderingOptions imageOpts = new ImageRenderingOptions(); +imageOpts.UseAntialiasing = true; + +// Step 4: Configure text rendering options – enable hinting for clearer text +TextOptions textOpts = new TextOptions(); +textOpts.UseHinting = true; + +// Step 5: Combine rendering and text options into PNG save options +ImageSaveOptions pngSaveOpts = new ImageSaveOptions(SaveFormat.Png) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts +}; + +// Step 6: Save the HTML document as a PNG image using the configured options +htmlDoc.Save("YOUR_DIRECTORY/sample.png", pngSaveOpts); +``` + +### Tại sao mỗi phần lại quan trọng + +1. **HTMLDocument** – hoạt động hoàn toàn trong bộ nhớ, vì vậy bạn không cần bất kỳ tệp `.html` vật lý nào. Thích hợp cho việc chuyển đổi nhanh. +2. **WebFontStyle** – cho thấy bạn có thể định dạng văn bản trước khi render; kết hợp in đậm‑nghiêng chỉ là một ví dụ. +3. **ImageRenderingOptions.UseAntialiasing** – cờ này là câu trả lời cho **cách bật khử răng cưa**; đặt nó thành `true` và bộ raster sẽ làm mịn các cạnh. +4. **TextOptions.UseHinting** – hinting cải thiện độ rõ nét của glyph, đặc biệt ở kích thước nhỏ. Đây là một bổ trợ tốt cho khử răng cưa. +5. **ImageSaveOptions** – gói cả các tùy chọn render và văn bản, sau đó chỉ định cho Aspose xuất ra tệp PNG. + +## Render HTML sang PNG với Aspose + +Bây giờ bạn đã biết **cách bật khử răng cưa**, hãy nói về bức tranh tổng thể của **render html sang png**. Aspose.HTML trừu tượng hoá các công việc nặng nề: + +- **Automatic layout** – engine phân tích CSS, tính toán mô hình hộp, và định vị các phần tử giống như trình duyệt. +- **Resolution control** – bạn có thể chỉ định DPI qua `ImageRenderingOptions.Resolution`, hữu ích cho in ấn độ phân giải cao. +- **Background handling** – đặt `imageOpts.BackgroundColor` nếu bạn cần nền trong suốt hoặc màu. + +```csharp +imageOpts.Resolution = new SizeF(300, 300); // 300 DPI for print‑quality PNG +``` + +> **Mẹo chuyên nghiệp:** Nếu bạn đang chuyển đổi một trang chứa tài nguyên bên ngoài (hình ảnh, phông chữ), hãy chắc chắn đặt `htmlDoc.BaseUrl` tới thư mục chứa các tài nguyên đó. Nếu không, renderer sẽ bỏ qua chúng. + +## Chuyển đổi HTML sang Image – Các tùy chọn nâng cao + +Cụm từ **convert html to image** thường ngụ ý nhiều hơn chỉ PNG. Aspose hỗ trợ JPEG, BMP, TIFF, và thậm chí GIF. Thay đổi định dạng chỉ cần thay đổi enum `SaveFormat`: + +```csharp +ImageSaveOptions jpegOpts = new ImageSaveOptions(SaveFormat.Jpeg) +{ + RenderingOptions = imageOpts, + TextOptions = textOpts, + Quality = 90 // JPEG quality (0‑100) +}; + +htmlDoc.Save("sample.jpg", jpegOpts); +``` + +Khi bạn cần đầu ra thân thiện với vector, hãy xem xét `SvgSaveOptions`. Quy trình render giống nhau, vì vậy bạn sẽ có khử răng cưa nhất quán trên các định dạng. + +### Trường hợp đặc biệt: Trang rất dài + +Nếu HTML của bạn dài hơn một màn hình thông thường, Aspose sẽ, mặc định, tạo một hình ảnh dài duy nhất. Điều này có thể làm tăng đáng kể việc sử dụng bộ nhớ. Để giảm thiểu, bạn có thể chia tài liệu thành nhiều trang: + +```csharp +var pageHeight = 1080; // pixels +var totalHeight = htmlDoc.DocumentElement.ScrollHeight; +for (int offset = 0; offset < totalHeight; offset += pageHeight) +{ + imageOpts.Viewport = new RectangleF(0, offset, htmlDoc.DocumentElement.ScrollWidth, pageHeight); + htmlDoc.Save($"page_{offset / pageHeight}.png", pngSaveOpts); +} +``` + +## Lưu HTML dưới dạng PNG – Bước cuối cùng + +Ở thời điểm này, bạn đã thấy **cách bật khử răng cưa**, bạn đã học **render html sang png**, và bạn đã khám phá các tùy chọn **convert html to image**. Hành động cuối cùng—**save html as png**—đã được minh họa trong đoạn mã gốc, nhưng hãy đóng gói nó thành một phương thức có thể tái sử dụng: + +```csharp +public static void SaveHtmlAsPng(string html, string outputPath, bool antialias = true) +{ + // Create document + var doc = new HTMLDocument(html); + + // Rendering options + var imgOpts = new ImageRenderingOptions + { + UseAntialiasing = antialias, + Resolution = new SizeF(96, 96) // default screen DPI + }; + + // Text options + var txtOpts = new TextOptions { UseHinting = true }; + + // Combine into save options + var saveOpts = new ImageSaveOptions(SaveFormat.Png) + { + RenderingOptions = imgOpts, + TextOptions = txtOpts + }; + + // Save + doc.Save(outputPath, saveOpts); +} +``` + +Bây giờ bạn có thể gọi `SaveHtmlAsPng("…", @"C:\temp\output.png")` từ bất kỳ nơi nào trong dự án của mình. Tham số `antialias` cho phép bạn bật/tắt tính năng làm mịn cạnh, cung cấp cho bạn toàn quyền kiểm soát **cách bật khử răng cưa** khi chạy. + +## Aspose HTML sang PNG – Ví dụ Hoạt động Đầy đủ + +Dưới đây là một ứng dụng console tự chứa, kết hợp mọi thứ lại. Sao chép‑dán, điều chỉnh placeholder `YOUR_DIRECTORY`, và chạy nó với .NET 6 hoặc phiên bản mới hơn. + + + +## Bạn nên học gì tiếp theo? + +Các hướng dẫn sau đây bao gồm các chủ đề liên quan chặt chẽ, xây dựng trên các kỹ thuật được trình bày trong hướng dẫn này. Mỗi tài nguyên bao gồm các ví dụ code hoàn chỉnh với giải thích từng bước để giúp bạn nắm vững các tính năng API bổ sung và khám phá các cách triển khai thay thế trong dự án của mình. + +- [Cách sử dụng Aspose để Render HTML sang PNG – Hướng dẫn từng bước](/html/english/net/rendering-html-documents/how-to-use-aspose-to-render-html-to-png-step-by-step-guide/) +- [Cách Render HTML sang PNG với Aspose – Hướng dẫn đầy đủ](/html/english/net/rendering-html-documents/how-to-render-html-to-png-with-aspose-complete-guide/) +- [Render HTML dưới dạng PNG trong .NET với Aspose.HTML](/html/english/net/rendering-html-documents/render-html-as-png/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file