Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions html/arabic/java/configuring-environment/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,9 @@ weight: 29

[تعلم كيفية إعداد خدمة شبكة في Aspose.HTML for Java.](./setup-network-service/)

### [ضبط وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java](./set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/)
تعلم كيفية تعيين وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java لتحسين عمليات التحويل.

## كيفية تكوين خدمة وقت التشغيل

HTML الديناميكي غالبًا ما يحتوي على سكريبتات يجب تشغيلها قبل العرض. خدمة وقت التشغيل تتحكم في تنفيذ السكريبتات، مما يتيح لك تحديد استهلاك المعالج، ضبط مهلات الوقت، ومنع الحلقات اللانهائية—وهو أمر حاسم لتحويلات مستقرة وعالية الأداء.
Expand Down Expand Up @@ -110,6 +113,9 @@ HTML الديناميكي غالبًا ما يحتوي على سكريبتات
### [إعداد خدمة الشبكة في Aspose.HTML for Java](./setup-network-service/)
تعلم كيفية إعداد خدمة شبكة في Aspose.HTML for Java، إدارة موارد الشبكة، وتحويل HTML إلى PNG مع معالجة الأخطاء المخصصة.

### [ضبط وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java](./set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/)
تعلم كيفية تعيين وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java لتحسين عمليات التحويل.

### [تكوين خدمة وقت التشغيل في Aspose.HTML for Java](./configure-runtime-service/)
تعلم كيفية تكوين خدمة وقت التشغيل في Aspose.HTML for Java لتحسين تنفيذ السكريبتات، منع الحلقات اللانهائية، وتحسين أداء التطبيق.

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
---
category: general
date: 2026-09-29
description: قم بتعيين وكيل مستخدم مخصص في Aspose.HTML للغة Java وتعلم كيفية ضبط حجم
الشاشة الافتراضية للحصول على عرض HTML دقيق.
draft: false
images:
- PLACEHOLDER_URL/og-image.png
keywords:
- set custom user agent
- set virtual screen size
- specify user agent
- set screen dimensions
- set screen width
language: ar
lastmod: 2026-09-29
og_description: قم بتعيين وكيل مستخدم مخصص في Aspose.HTML للـ Java وتعرّف على كيفية
ضبط حجم الشاشة الافتراضية للحصول على عرض HTML دقيق.
og_image_alt: Diagram showing how to set custom user agent and screen dimensions in
a Java sandbox
og_title: تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML للغة Java
schemas:
- author: Aspose
dateModified: '2026-09-29'
description: Set custom user agent in Aspose.HTML for Java and learn how to set
virtual screen size for accurate HTML rendering.
headline: Set custom user agent and screen dimensions in Aspose.HTML for Java
type: TechArticle
tags:
- Aspose.HTML
- Java
- sandbox
- user agent
- screen size
title: تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML لجافا
url: /ar/java/configuring-environment/set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/
---

{{< blocks/products/pf/main-wrap-class >}}
{{< blocks/products/pf/main-container >}}
{{< blocks/products/pf/tutorial-page-section >}}

# تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML للـ Java

إذا كنت بحاجة إلى **تعيين وكيل مستخدم مخصص** أثناء عرض HTML باستخدام Aspose.HTML للـ Java، يوضح لك هذا الدليل بالضبط كيفية القيام بذلك. من خلال تكوين sandbox ستحصل أيضًا على القدرة على **تعيين حجم الشاشة الافتراضي**، مما يضمن أن التخطيط يتطابق مع مساحة عرض المتصفح الحقيقية.

ستنتهي من هذا البرنامج التعليمي ببرنامج كامل قابل للتنفيذ يقوم **بتحديد وكيل المستخدم**، **بتعيين عرض الشاشة**، و**بتعيين ارتفاع الشاشة**. لا تحتاج إلى أدوات خارجية—فقط Aspose.HTML للـ Java وبيئة تشغيل Java 8+.

## ما ستتعلمه

* كيفية إنشاء `SandboxConfiguration` لعزل عملية العرض.
* كيفية **تعيين وكيل مستخدم مخصص** ولماذا يهم ذلك للصفحات المتجاوبة.
* كيفية **تعيين حجم الشاشة الافتراضي** (عرض الشاشة وارتفاعها) للحصول على تخطيط دقيق.
* كيفية تحميل ملف HTML داخل الـ sandbox وحفظ النتيجة المعالجة.
* المشكلات الشائعة ونصائح أفضل الممارسات للعرض داخل sandbox.

> **المتطلبات المسبقة** – تحتاج إلى ترخيص صالح لـ Aspose.HTML للـ Java، Java 8 أو أحدث، وبيئة تطوير متكاملة (IntelliJ IDEA، Eclipse، أو VS Code). يستخدم المثال ملف `input.html` محلي، لكن أي URL قابل للوصول يعمل.

![مخطط تدفق Sandbox](sandbox-flow.png "مثال تعيين وكيل مستخدم مخصص في Java")

## الخطوة 1: إنشاء تكوين sandbox (الأساس)

العزل sandbox يعزل بيئة العرض عن JVM المضيف، وهو أمر أساسي عندما تريد **تعيين وكيل مستخدم مخصص** أو تغيير حجم مساحة العرض.

```java
import com.aspose.html.sandbox.SandboxConfiguration;

// Create a fresh sandbox configuration object
SandboxConfiguration sandboxConfig = new SandboxConfiguration();
```

*لماذا هذه الخطوة؟*
`SandboxConfiguration` يحتوي على جميع خيارات العرض، بما في ذلك **أبعاد الشاشة** وسلاسل **user‑agent**. من خلال تكوينه قبل تحميل المستند، تضمن أن محرك HTML يحترم تلك الإعدادات من الطلب الأول.

## الخطوة 2: تعيين أبعاد الشاشة لمحاكاة جهاز حقيقي

غالبًا ما تقرأ المواقع المتجاوبة `window.innerWidth` و `window.innerHeight`. لجعل المحرك يعتقد أنه يعمل على شاشة 1024 × 768، عليك **تعيين حجم الشاشة الافتراضي**:

```java
// Define the virtual screen size for the sandboxed document
sandboxConfig.setScreenWidth(1024); // set screen width
sandboxConfig.setScreenHeight(768); // set screen height
```

*لماذا هذا مهم* – إذا تجاهلت **تعيين أبعاد الشاشة**، قد يستخدم العارض مساحة عرض صغيرة افتراضيًا، مما يؤدي إلى اختيار استعلامات وسائط CSS لتطبيق تخطيط الهاتف المحمول. من خلال **تعيين عرض الشاشة** و**تعيين ارتفاع الشاشة** صراحةً، تتحكم في القواعد التي تُطبق.

## الخطوة 3: تحديد سلسلة وكيل مستخدم مخصص

بعض صفحات الويب تقدم محتوى مختلف بناءً على رأس الـ user‑agent. لت **تحديد وكيل المستخدم** ببساطة قم بتعيينه في تكوين الـ sandbox:

```java
// Set a custom user‑agent string that will be sent during resource loading
sandboxConfig.setUserAgent("AsposeHTML/1.0");
```

*لماذا استخدام وكيل مستخدم مخصص؟*
يمكن لسلسلة مخصصة تجاوز اكتشاف الروبوتات، تفعيل ميزات مخصصة لأجهزة سطح المكتب، أو اختبار كيفية تصرف الموقع لإصدار متصفح معين. يقوم محرك Aspose بتمرير هذه القيمة مع كل طلب HTTP يتم أثناء تحميل الموارد الخارجية (CSS، الصور، السكريبتات).

## الخطوة 4: تحميل مستند HTML داخل الـ sandbox

الآن بعد أن تم تكوين الـ sandbox بالكامل، قم بتحميل ملف HTML. المُنشئ الذي يأخذ مسار ملف و`SandboxConfiguration` يطبق تلقائيًا جميع الإعدادات التي عرّفناها.

```java
import com.aspose.html.HTMLDocument;

// Load the HTML file using the previously configured sandbox
HTMLDocument document = new HTMLDocument("YOUR_DIRECTORY/input.html", sandboxConfig);
```

إذا كنت بحاجة للتحميل من URL بعيد، استبدل مسار الملف بسلسلة URL—ستظل Aspose.HTML تحترم **وكيل المستخدم المخصص** و**أبعاد الشاشة**.

## الخطوة 5: حفظ الناتج المعالج

بعد انتهاء تحميل المستند، يمكنك حفظه بأي تنسيق مدعوم. هنا نكتب ملف HTML داخل sandbox يعكس أي تغييرات في DOM ناتجة عن الإعدادات المخصصة.

```java
// Save the processed document to the desired output location
document.save("YOUR_DIRECTORY/sandboxed_output.html");
```

سيحتوي الملف المحفوظ على نفس العلامات، لكن أي سكريبتات استعلمت عن `navigator.userAgent` أو فحصت `window.innerWidth` سترى الآن القيم التي قدمتها.

## مثال كامل قابل للتنفيذ

جمع جميع الخطوات معًا يمنحك برنامجًا مستقلًا يمكنك نسخه، لصقه، وتشغيله.

```java
import com.aspose.html.HTMLDocument;
import com.aspose.html.sandbox.SandboxConfiguration;

public class SandboxDemo {
public static void main(String[] args) throws Exception {
// Step 1: Create a sandbox configuration to isolate the rendering environment
SandboxConfiguration sandboxConfig = new SandboxConfiguration();

// Step 2: Define the virtual screen size for the sandboxed document
sandboxConfig.setScreenWidth(1024); // set screen width
sandboxConfig.setScreenHeight(768); // set screen height

// Step 3: Set a custom user‑agent string to be used during loading
sandboxConfig.setUserAgent("AsposeHTML/1.0"); // set custom user agent

// Step 4: Load the HTML document within the sandbox using the configuration
HTMLDocument document = new HTMLDocument("YOUR_DIRECTORY/input.html", sandboxConfig);

// Step 5: Save the processed document to the desired output location
document.save("YOUR_DIRECTORY/sandboxed_output.html");
}
}
```

### النتيجة المتوقعة

تشغيل البرنامج ينشئ `sandboxed_output.html`. إذا فتحته في متصفح وفحصت `navigator.userAgent` عبر وحدة التحكم، سترى **AsposeHTML/1.0**. بالمثل، سيظهر `window.innerWidth` القيمة **1024**، مما يؤكد أن **تعيين أبعاد الشاشة** عمل كما هو مقصود.

## أسئلة شائعة ومعالجة الحالات الطرفية

| السؤال | الإجابة |
|----------|--------|
| **ماذا لو قامت الصفحة بتحميل موارد إضافية من نطاق مختلف؟** | يقوم الـ sandbox بتمرير **وكيل المستخدم المخصص** مع كل طلب، لكن سياسات المصدر المتقاطع لا تزال سارية. استخدم `sandboxConfig.setAllowCrossDomain(true)` إذا كنت بحاجة لتخفيف تلك القيود. |
| **هل يمكنني تغيير حجم الشاشة بعد تحميل المستند؟** | لا. تُقرأ أبعاد الشاشة أثناء تمريرة التخطيط الأولية. لتصوير بحجم مختلف، أنشئ `SandboxConfiguration` جديدًا وأعد تحميل المستند. |
| **هل أحتاج إلى استدعاء `document.close()`؟** | `HTMLDocument` يطبق `AutoCloseable`. استخدام كتلة try‑with‑resources يضمن التنظيف المناسب، لكن استدعاء `close()` صريح اختياري في السكريبتات البسيطة. |
| **كيف يختلف هذا عن تعيين وكيل المستخدم في عميل HTTP؟** | تعيين وكيل المستخدم على الـ sandbox يؤثر على **جميع** طلبات الموارد التي يقوم بها محرك HTML، وليس فقط طلب HTML الأولي. هذا يحاكي المتصفح الحقيقي بشكل أقرب. |
| **هل الـ sandbox آمن للـ HTML غير الموثوق به؟** | نعم. الـ sandbox يعزل الوصول إلى نظام الملفات ويحد من المكالمات الشبكية وفقًا للتكوين، مما يقلل من خطر السكريبتات الخبيثة التي تؤثر على JVM المضيف. |

## نصائح احترافية

* **إعادة استخدام التكوينات** – إذا قمت بعرض العديد من الصفحات بنفس مساحة العرض، أنشئ `SandboxConfiguration` واحدًا وأعد استخدامه لتجنب عبء إنشاء الكائنات.
* **التصحيح باستخدام السجلات** – فعّل سجلات Aspose.HTML (`sandboxConfig.setLogLevel(LogLevel.DEBUG)`) لتعرف أي موارد تم جلبها باستخدام وكيل المستخدم المخصص.
* **الدمج مع استعلامات وسائط CSS** – من خلال تعديل **تعيين عرض الشاشة** يمكنك اختبار سلوك التصميم المتجاوب على الأجهزة اللوحية، الهواتف، أو شاشات الحواسيب الكبيرة دون فتح متصفح حقيقي.

## الخلاصة

أنت الآن تعرف كيف **تعيين وكيل مستخدم مخصص** و**تعيين أبعاد الشاشة** عند عرض HTML باستخدام Aspose.HTML للـ Java. من خلال تكوين sandbox، تعزل البيئة، تتحكم في مساحة العرض، وتضمن أن الموارد الخارجية ترى رؤوس الطلبات التي تحددها بالضبط. هذه التقنية أساسية لاختبار التخطيطات المتجاوبة، تجاوز حواجز الروبوتات، أو إعادة إنتاج ميزات سطح المكتب فقط في خطوط الأنابيب الآلية.

بعد ذلك، قد تستكشف **كيفية تعيين ملفات تعريف الارتباط المخصصة** أو **التقاط لقطات شاشة مُصدرة** باستخدام واجهة برمجة تطبيقات العرض في Aspose.HTML—كلا المفهومين يبنيان على نمط تكوين sandbox نفسه الذي تعلمته الآن.

برمجة سعيدة!

## ماذا يجب أن تتعلمه بعد ذلك؟

الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات الموضحة في هذا الدليل. كل مصدر يتضمن أمثلة شفرة كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك.

- [العرض بدقة DPI عالية في Java – التقاط لقطات شاشة للويب مع وكيل مستخدم مخصص](/html/english/java/conversion-html-to-various-image-formats/high-dpi-rendering-in-java-capture-webpage-screenshots-with/)
- [كيفية تحميل HTML، تعيين DPI للجهاز وقراءة لون الخلفية](/html/english/java/advanced-usage/how-to-load-html-set-device-dpi-read-background-color/)
- [إنشاء ملف HTML في Java وإعداد خدمة الشبكة (Aspose.HTML)](/html/english/java/configuring-environment/setup-network-service/)

{{< /blocks/products/pf/tutorial-page-section >}}
{{< /blocks/products/pf/main-container >}}
{{< /blocks/products/pf/main-wrap-class >}}
{{< blocks/products/products-backtop-button >}}
8 changes: 7 additions & 1 deletion html/arabic/java/creating-managing-html-documents/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ url: /ar/java/creating-managing-html-documents/
اكتشف كيفية تحميل مستندات HTML بسهولة من عنوان URL في Java باستخدام Aspose.HTML. يتضمن البرنامج التعليمي خطوة بخطوة.
### [تحميل مستند HTML في Java – دليل كامل مع XPath و CSS](./load-html-document-java-complete-guide-with-xpath-css/)
تعلم كيفية تحميل ومعالجة مستندات HTML في Java باستخدام Aspose.HTML مع دعم XPath و CSS في دليل شامل خطوة بخطوة.
### [عد عناصر HTML في Java باستخدام XPath](./how-to-count-html-elements-in-java-with-xpath/)
تعلم كيفية عد عناصر HTML في مستندات Java باستخدام XPath من خلال دليل خطوة بخطوة.
### [إنشاء مستندات HTML جديدة باستخدام Aspose.HTML لـ Java](./generate-new-html-documents/)
تعرف على كيفية إنشاء مستندات HTML جديدة باستخدام Aspose.HTML for Java من خلال هذا الدليل السهل خطوة بخطوة. ابدأ في إنشاء محتوى HTML ديناميكي.
### [التعامل مع أحداث تحميل المستندات في Aspose.HTML لـ Java](./handle-document-load-events/)
Expand All @@ -80,6 +82,10 @@ url: /ar/java/creating-managing-html-documents/
تعلم كيفية حساب عدد أحرف HTML في مستندات Java باستخدام Aspose.HTML من خلال دليل شامل خطوة بخطوة.
### [استخراج النص من HTML في Java – دليل برمجة كامل](./extract-text-from-html-in-java-complete-programming-guide/)
تعلم كيفية استخراج النص من مستندات HTML باستخدام Aspose.HTML لـ Java من خلال دليل شامل خطوة بخطوة.
### [كيفية إنشاء عنصر HTML في Java باستخدام Aspose.HTML](./how-to-create-html-element-in-java-using-aspose-html/)
تعلم كيفية إنشاء عنصر HTML في Java باستخدام مكتبة Aspose.HTML خطوة بخطوة.
### [كيفية اختيار العناصر حسب الفئة في Java باستخدام querySelectorAll](./how-to-select-elements-by-class-in-java-using-queryselectora/)
تعلم كيفية اختيار عناصر HTML حسب الفئة في Java باستخدام querySelectorAll خطوة بخطوة.

{{< /blocks/products/pf/tutorial-page-section >}}

Expand Down Expand Up @@ -114,4 +120,4 @@ url: /ar/java/creating-managing-html-documents/
{{< /blocks/products/pf/main-container >}}
{{< /blocks/products/pf/main-wrap-class >}}

{{< blocks/products/products-backtop-button >}}
{{< blocks/products/products-backtop-button >}}
Loading
Loading