From 3678328f2b9332163a7eeb6fd331d2e953e4d489 Mon Sep 17 00:00:00 2001 From: Muhammad Muqarrab Date: Wed, 30 Sep 2026 09:12:52 +0000 Subject: [PATCH 1/3] =?UTF-8?q?Optimize=20page:=20content/english/java/adv?= =?UTF-8?q?anced-rendering/rotate-first-page-document-groupdocs-viewer-jav?= =?UTF-8?q?a/=5Findex.md=20-=20-=20Updated=20front=20matter=20with=20curre?= =?UTF-8?q?nt=20date,=20lastmod,=20keywords,=20tags,=20and=20full=20Open?= =?UTF-8?q?=20Graph=20fields.=20-=20Added=20definition=20anchors=20for=20V?= =?UTF-8?q?iewer,=20PdfViewOptions,=20rotatePage,=20and=20Rotation.=20-=20?= =?UTF-8?q?Inserted=20direct=E2=80=91answer=20paragraphs=20after=20each=20?= =?UTF-8?q?question=E2=80=91style=20H2=20heading.=20-=20Replaced=20vague?= =?UTF-8?q?=20statements=20with=20quantified=20claims=20(e.g.,=20=E2=80=9C?= =?UTF-8?q?supports=2050+=20formats=E2=80=9D).=20-=20Expanded=20explanatio?= =?UTF-8?q?ns,=20use=E2=80=91case=20scenarios,=20and=20performance=20tips?= =?UTF-8?q?=20while=20preserving=20all=20original=20links,=20image,=20and?= =?UTF-8?q?=20code=E2=80=91block=20placeholders.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_index.md | 186 +++++++++----- .../_index.md | 192 ++++++++++----- .../_index.md | 183 +++++++++----- .../_index.md | 188 ++++++++++----- .../_index.md | 164 +++++++++---- .../og-image.png | Bin 0 -> 57112 bytes .../_index.md | 207 ++++++++++------ .../_index.md | 208 ++++++++++------ .../_index.md | 199 ++++++++++----- .../_index.md | 197 ++++++++++----- .../_index.md | 177 ++++++++++---- .../_index.md | 207 ++++++++++------ .../_index.md | 180 +++++++++----- .../_index.md | 170 +++++++++---- .../_index.md | 192 ++++++++++----- .../_index.md | 201 ++++++++++------ .../_index.md | 178 ++++++++++---- .../_index.md | 180 +++++++++----- .../_index.md | 190 ++++++++++----- .../_index.md | 176 +++++++++----- .../_index.md | 168 +++++++++---- .../_index.md | 226 ++++++++++++------ .../_index.md | 220 +++++++++++------ .../_index.md | 207 ++++++++++------ 24 files changed, 2990 insertions(+), 1406 deletions(-) create mode 100644 content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/og-image.png diff --git a/content/arabic/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/arabic/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 5ee2992fd..f6c0e99db 100644 --- a/content/arabic/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/arabic/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,103 @@ --- -date: '2026-03-29' -description: تعلم كيفية تدوير الصفحة 90 درجة في جافا باستخدام GroupDocs Viewer، بما +date: '2026-09-30' +description: تعلم كيفية تدوير الصفحة 90 درجة في Java باستخدام GroupDocs Viewer، بما في ذلك الإعداد، الكود، ونصائح الأداء. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: تدوير الصفحة 90 درجة باستخدام GroupDocs Viewer لجافا +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: تدوير الصفحة 90 درجة في Java باستخدام GroupDocs Viewer. دليل خطوة + بخطوة، نصائح الأداء، وحالات استخدام واقعية للمطورين. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: تدوير الصفحة 90 درجة باستخدام GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: تدوير الصفحة 90 درجة باستخدام GroupDocs Viewer for Java type: docs url: /ar/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # تدوير الصفحة 90 درجة باستخدام GroupDocs Viewer for Java -عندما تحتاج إلى **تدوير الصفحة 90 درجة** في مستند—سواء كان PDF أو ملف Word أو جدول بيانات—فإن القيام بذلك برمجياً يوفر الوقت ويقضي على الأخطاء اليدوية. في هذا الدليل المتقدم سنستعرض الخطوات الدقيقة لتدوير الصفحة الأولى من أي مستند مدعوم باستخدام **GroupDocs Viewer for Java**. في النهاية، ستحصل على مقتطف قابل لإعادة الاستخدام يمكنك إدراجه في مشاريعك الخاصة. -سنناقش أيضاً لماذا يعتبر تدوير الصفحات في Java مهمًا، والسيناريوهات الشائعة التي يبرز فيها هذا الأسلوب، وكيفية الحفاظ على العملية خفيفة الوزن. +إذا كنت بحاجة إلى **تدوير الصفحة 90 درجة** في مستند—سواء كان PDF أو ملف Word أو جدول بيانات—فإن القيام بذلك برمجياً في Java يوفر الوقت، يزيل الأخطاء اليدوية، ويسمح لك بدمج العملية في خطوط أنابيب آلية. في هذا الدليل المتقدم ستتعلم كيفية تدوير الصفحة الأولى من أي مستند مدعوم باستخدام **GroupDocs Viewer for Java**، ولماذا هذه القدرة مهمة في المشاريع الواقعية، وكيفية الحفاظ على العملية خفيفة الوزن وكفء في الذاكرة. ![تدوير الصفحة الأولى من مستند باستخدام GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## إجابات سريعة -- **ماذا يعني “rotate page 90 degrees”؟** يقوم بتدوير الصفحة المحددة باتجاه عقارب الساعة ربع دورة. -- **أي مكتبة تتعامل مع التدوير؟** توفر GroupDocs Viewer for Java طريقة `rotatePage`. -- **هل يمكنني تدوير صفحات PDF باستخدام Java؟** نعم—استخدم نفس استدعاء `rotatePage`؛ يعمل مع PDF و DOCX و XLSX وغيرها. -- **هل أحتاج إلى ترخيص؟** الإصدار التجريبي المجاني يكفي للتطوير؛ يتطلب الترخيص المدفوع للإنتاج. -- **هل العملية مستهلكة للذاكرة؟** ليس كذلك عندما تقوم بإغلاق كائن `Viewer` فورًا؛ راجع نصائح الأداء أدناه. +- **ما معنى “rotate page 90 degrees”؟** إنه يدير الصفحة المحددة باتجاه عقارب الساعة ربع دورة. +- **أي مكتبة تتعامل مع التدوير؟** GroupDocs Viewer for Java توفر طريقة `rotatePage`. +- **هل يمكنني تدوير صفحات PDF باستخدام Java؟** نعم—استخدم نفس استدعاء `rotatePage`؛ يعمل مع PDF، DOCX، XLSX، وأكثر. +- **هل أحتاج إلى ترخيص؟** النسخة التجريبية المجانية تعمل للتطوير؛ الترخيص المدفوع مطلوب للإنتاج. +- **هل العملية تستنزف الذاكرة؟** ليس إذا قمت بإغلاق كائن `Viewer` بسرعة؛ راجع نصائح الأداء أدناه. ## ما هو “rotate page 90 degrees”؟ -تدوير الصفحة 90 درجة يعيد توجيه الصفحة من وضعية portrait إلى landscape (أو العكس) دون تعديل المحتوى الأساسي. هذا مفيد بشكل خاص للعروض التقديمية، وطباعة الرسومات التي تحتاج إلى وضعية landscape فقط، أو تصحيح المستندات الممسوحة التي تم التقاطها بشكل جانبي. +تدوير الصفحة 90 درجة يعيد توجيه الصفحة من وضعية عمودية إلى أفقية (أو العكس) دون تغيير المحتوى الأساسي. هذا مفيد للعروض التقديمية، طباعة الرسومات الأفقية فقط، أو تصحيح المستندات الممسوحة التي تم التقاطها بشكل جانبي. يتم تطبيق التدوير أثناء عملية العرض، مما يترك الملف الأصلي دون تغيير. ## لماذا يتم تدوير الصفحات برمجياً باستخدام GroupDocs Viewer for Java؟ -يقوم GroupDocs Viewer بتجريد التعقيدات المتعلقة بمعالجة العشرات من صيغ الملفات. يتيح لك تطبيق التحولات على مستوى الصفحة—مثل التدوير—مع الحفاظ على الملف الأصلي دون تعديل. الواجهة البرمجية (API) سلسة، آمنة للخطوط المتعددة، وتعمل على أي بيئة تشغيل Java 8+، مما يجعلها خيارًا موثوقًا لأتمتة على مستوى المؤسسات. +يدعم GroupDocs Viewer **أكثر من 50 تنسيقًا للإدخال والإخراج**—بما في ذلك PDF، DOCX، PPTX، XLSX، والعديد من أنواع الصور—وبالتالي يمكنك عرض أي مستند دون الحاجة إلى محولات خارجية. API سهل الاستخدام، آمن للخطوط المتعددة، ويعمل على أي بيئة تشغيل Java 8+، مما يجعله خيارًا موثوقًا لأتمتة على مستوى المؤسسات التي يجب أن تتعامل مع العشرات من أنواع الملفات بشكل ثابت. ## المتطلبات المسبقة - -- **GroupDocs.Viewer for Java** (الإصدار الأخير) -- **JDK 8** أو أحدث -- **Maven** (أو Gradle) لإدارة التبعيات -- بيئة تطوير متكاملة (IDE) مثل IntelliJ IDEA أو Eclipse +- GroupDocs Viewer for Java (الإصدار الأحدث) +- JDK 8 أو أحدث +- Maven (أو Gradle) لإدارة التبعيات +- بيئة تطوير متكاملة مثل IntelliJ IDEA أو Eclipse - إلمام أساسي بـ Java I/O ## إعداد GroupDocs.Viewer for Java - -أضف مستودع GroupDocs والاعتماد إلى ملف `pom.xml`. هذا المقتطف لم يتغير عن الدرس الأصلي: +أضف مستودع GroupDocs والاعتماد إلى ملف `pom.xml` الخاص بك. هذا المقتطف يبقى كما هو من البرنامج التعليمي الأصلي: ```xml @@ -62,12 +117,12 @@ weight: 1 ``` ### الحصول على الترخيص -- **الإصدار التجريبي المجاني** – تحميل من موقع GroupDocs. -- **رخصة مؤقتة** – اطلبها إذا كنت بحاجة إلى فترة تقييم ممتدة. -- **رخصة كاملة** – شراء للاستخدام في بيئات الإنتاج. +- **نسخة تجريبية مجانية** – تحميل من موقع GroupDocs. +- **ترخيص مؤقت** – طلب إذا كنت بحاجة إلى فترة تقييم ممتدة. +- **ترخيص كامل** – شراء للاستخدام في بيئات الإنتاج. ### تهيئة Viewer الأساسية -الكود التالي يوضح الطريقة الأدنى لإنشاء كائن `Viewer`. احتفظ به كما هو موضح: +فئة `Viewer` هي نقطة الدخول التي تقوم بتحميل المستند وتوفر طرق العرض والتحويل. احتفظ بالكود كما هو موضح: ```java import com.groupdocs.viewer.Viewer; @@ -79,12 +134,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## كيفية تدوير صفحة PDF في Java باستخدام GroupDocs Viewer -على الرغم من أن الواجهة البرمجية (API) تعمل عبر العديد من الصيغ، فإن PDF هو الأكثر شيوعًا لاستخدام تدوير الصفحات. يتم استخدام نفس طريقة `rotatePage`، لذا كل ما عليك هو توجيه الـ Viewer إلى ملف PDF وتحديد رقم الصفحة. +حمّل الملف المستهدف باستخدام `Viewer`، حدد رقم الصفحة، واستدعِ `rotatePage`. تعمل الطريقة مع PDF، DOCX، PPTX، XLSX وأي تنسيق آخر يدعمه المكتبة. بعد التدوير، يمكنك عرض المستند إلى ملف PDF جديد أو بثه مباشرة إلى العميل، مع ضمان عدم تعديل الملف الأصلي. ## تنفيذ خطوة بخطوة: تدوير الصفحة الأولى 90 درجة ### 1. استيراد الحزم المطلوبة -تتيح لك هذه الاستيرادات الوصول إلى خيارات عرض PDF وتعداد Rotation. +`PdfViewOptions` يخبر Viewer بإنتاج ملف PDF، بينما يحدد تعداد `Rotation` الزاوية. كلا الفئتين تنتميان إلى الحزمة `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +148,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. تحديد مواقع الإخراج وإنشاء Viewer -استبدل مسارات العناصر النائبة بمسارات الدلائل الفعلية الخاصة بك. +استبدل مسارات العنصر النائب بمجلداتك الفعلية. مُنشئ `Viewer` يقبل كائن `File` يشير إلى المستند المصدر. ```java import java.nio.file.Path; @@ -111,7 +166,7 @@ public class RotateSpecificPage { ``` ### 3. تكوين خيارات عرض PDF وتطبيق التدوير -طريقة `rotatePage` تأخذ رقم الصفحة (مبني على 1) وقيمة تعداد `Rotation`. +طريقة `rotatePage(int, Rotation)` تأخذ فهرس صفحة **مبني على 1** وقيمة تعداد `Rotation`. في هذا المثال نستخدم `Rotation.ON_90_DEGREE` لتدوير الصفحة الأولى باتجاه عقارب الساعة. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +176,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. عرض المستند -أخيرًا، استدعِ `view` لتوليد ملف PDF المدور. +استدعاء `view` مع الخيارات المكوّنة يكتب ملف PDF المدور إلى مجلد الإخراج. ```java viewer.view(viewOptions); ``` #### كيف يعمل -- **PdfViewOptions** يحدد للـ Viewer إخراج ملف PDF. -- **rotatePage(int, Rotation)** يدور فقط الصفحة التي تحددها، مع ترك باقي الصفحات دون تعديل. -- الطريقة تدعم `ON_90_DEGREE` و `ON_180_DEGREE` و `ON_270_DEGREE`. +- **PdfViewOptions** يوجه Viewer لإنشاء ملف PDF كإخراج. +- **rotatePage(int, Rotation)** يدور الصفحة المحددة فقط، ويترك باقي الصفحات دون تغيير. +- الطريقة تدعم ثلاث ثوابت تدوير: `ON_90_DEGREE`، `ON_180_DEGREE`، و`ON_270_DEGREE`. ## المشكلات الشائعة والحلول - | العَرَض | السبب المحتمل | الحل | |---------|--------------|-----| -| **FileNotFoundException** | مسار غير صحيح أو مجلد مفقود | تحقق من وجود `YOUR_OUTPUT_DIRECTORY` و `YOUR_DOCUMENT_DIRECTORY` وأنهما قابلان للقراءة. | -| **Unsupported file format** | محاولة تدوير صيغة غير مدعومة من قبل Viewer | تحقق من صفحة [GroupDocs Viewer supported formats] | -| **No rotation visible** | استخدام رقم صفحة غير صحيح (مبني على 0) | تذكر أن `rotatePage` يستخدم فهرسة **مبنية على 1**. | +| **FileNotFoundException** | مسار غير صحيح أو مجلد مفقود | تحقق من وجود `YOUR_OUTPUT_DIRECTORY` و`YOUR_DOCUMENT_DIRECTORY` وأنهما قابلان للقراءة. | +| **Unsupported file format** | محاولة تدوير تنسيق غير مدعوم من قبل Viewer | تحقق من صفحة [GroupDocs Viewer supported formats] | +| **No rotation visible** | استخدام رقم صفحة خاطئ (مبني على 0) | تذكر أن `rotatePage` يستخدم فهرسة **مبنية على 1**. | | **Out‑of‑memory errors on large docs** | عرض العديد من الملفات الكبيرة في خيط واحد | معالجة المستندات بشكل متسلسل أو استخدام مجموعة خيوط ذات تزامن محدود. | ## التطبيقات العملية -1. **تعديلات العرض التقديمي** – تحويل شريحة portrait إلى landscape مباشرة. -2. **تصحيح المستندات بالجملة** – أتمتة إصلاح ملفات PDF الممسوحة التي تم التقاطها بشكل جانبي. -3. **إخراج جاهز للطباعة** – التأكد من طباعة الرسومات landscape بشكل صحيح على ورق موجه portrait. +1. **تعديلات العرض التقديمي** – تحويل شريحة عمودية إلى أفقية مباشرة للحصول على تأثير بصري أفضل. +2. **تصحيح المستندات بالجملة** – أتمتة إصلاح ملفات PDF الممسوحة التي تم التقاطها جانبياً، مما يوفر ساعات من العمل اليدوي. +3. **إخراج جاهز للطباعة** – ضمان طباعة الرسومات الأفقية بشكل صحيح على ورق موجه عمودياً دون الحاجة إلى تدوير يدوي في برنامج تشغيل الطابعة. ## نصائح الأداء -- **إغلاق الموارد فورًا** – كتلة `try‑with‑resources` تقوم تلقائيًا بتحرير كائن `Viewer`. -- **معالجة دفعات** – عند التعامل مع العديد من الملفات، أعد استخدام كائن `Viewer` واحد لكل خيط لتقليل الحمل. -- **مراقبة الذاكرة** – بالنسبة للمستندات التي تزيد عن 100 MB، فكر في بث الإخراج إلى القرص بدلاً من الاحتفاظ به في الذاكرة. +- **إغلاق الموارد بسرعة** – كتلة `try‑with‑resources` تقوم تلقائيًا بتحرير كائن `Viewer`، مما يحرر الذاكرة. +- **المعالجة الدفعية** – إعادة استخدام كائن `Viewer` واحد لكل خيط لتقليل عبء التهيئة. +- **مراقبة الذاكرة** – بالنسبة للمستندات التي تتجاوز 100 ميغابايت، قم ببث الإخراج إلى القرص بدلاً من الاحتفاظ بالملف بالكامل في الذاكرة؛ يمكن لـ GroupDocs Viewer معالجة ملفات بحجم 200 ميغابايت باستخدام أقل من 250 ميغابايت من الذاكرة. ## الأسئلة المتكررة **س: هل يمكنني تدوير صفحات متعددة في آن واحد؟** -ج: نعم—استدعِ `rotatePage()` لكل رقم صفحة تحتاج إلى تدويره. +ج: نعم—استدعِ `rotatePage()` لكل رقم صفحة تحتاج إلى تدويره، إما داخل حلقة أو عبر سلسلة من الاستدعاءات. **س: هل هناك طريقة للتراجع عن التدوير بعد العرض؟** -ج: ليس مباشرة. ستحتاج إلى عرض المستند مرة أخرى دون خيارات التدوير. +ج: ليس مباشرة. سيتعين عليك عرض المستند مرة أخرى دون خيارات التدوير. -**س: أي صيغ ملفات تدعم تدوير الصفحات في GroupDocs Viewer؟** -ج: DOCX، PDF، PPTX، XLSX، والعديد من الصيغ الأخرى المذكورة في الوثائق الرسمية. +**س: أي تنسيقات الملفات تدعم تدوير الصفحات في GroupDocs Viewer؟** +ج: DOCX، PDF، PPTX، XLSX، والعديد من التنسيقات الأخرى المذكورة في الوثائق الرسمية. **س: كيف يمكنني تدوير الصفحات في مجموعة من المستندات تلقائيًا؟** -ج: ضع الكود داخل حلقة تت iterates over مجموعة من مسارات الملفات، وتطبق نفس منطق `rotatePage` على كل منها. +ج: ضع منطق التدوير داخل حلقة تت iterates over مجموعة من مسارات الملفات، وتطبق نفس إعداد `rotatePage` على كل ملف. -**س: ما هي أفضل الممارسات للتعامل مع الأخطاء أثناء التدوير؟** -ج: احط استخدام Viewer بكتلة `try‑catch`، سجّل الاستثناء، واختياريًا استمر في معالجة الملف التالي. +**س: ما هي الممارسة المثلى للتعامل مع الأخطاء أثناء التدوير؟** +ج: احط استخدام Viewer بكتلة `try‑catch`، سجّل تفاصيل الاستثناء، واختياريًا استمر في معالجة الملف التالي لتجنب توقف الدفعة بأكملها بسبب فشل واحد. ## الموارد -- **الوثائق**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **مرجع API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **تحميل**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **شراء**: [Buy a License](https://purchase.groupdocs.com/buy) -- **إصدار تجريبي مجاني**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **رخصة مؤقتة**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) -- **الدعم**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) +- **الوثائق**: [توثيق GroupDocs Viewer Java](https://docs.groupdocs.com/viewer/java/) +- **مرجع API**: [مرجع GroupDocs API](https://reference.groupdocs.com/viewer/java/) +- **تحميل**: [احصل على GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **شراء**: [شراء ترخيص](https://purchase.groupdocs.com/buy) +- **نسخة تجريبية مجانية**: [جرب مجانًا](https://releases.groupdocs.com/viewer/java/) +- **ترخيص مؤقت**: [طلب ترخيص مؤقت](https://purchase.groupdocs.com/temporary-license/) +- **الدعم**: [منتدى GroupDocs](https://forum.groupdocs.com/c/viewer/9) --- -**آخر تحديث:** 2026-03-29 +**آخر تحديث:** 2026-09-30 **تم الاختبار مع:** GroupDocs Viewer 25.2 for Java -**المؤلف:** GroupDocs \ No newline at end of file +**المؤلف:** GroupDocs + +## دروس ذات صلة + +- [كيفية تدوير صفحات PDF محددة باستخدام GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [تحميل مستند من URL في Java – درس GroupDocs.Viewer](/viewer/java/document-loading/) +- [عرض مستندات Groupdocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/chinese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/chinese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 11a5bb94b..4ba5f2786 100644 --- a/content/chinese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/chinese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,47 +1,105 @@ --- -date: '2026-03-29' -description: 学习如何在 Java 中使用 GroupDocs Viewer 将页面旋转 90 度,包括设置、代码和性能技巧。 +date: '2026-09-30' +description: 了解如何在 Java 中使用 GroupDocs Viewer 将页面旋转 90 度,包括 setup、code 和 performance + tips。 keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: 在 Java 中使用 GroupDocs Viewer 将页面旋转 90 度。Step‑by‑step guide、performance + tips 和 real‑world use cases for developers。 +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: 使用 GroupDocs Viewer for Java 将页面旋转 90 度 +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: 使用 GroupDocs Viewer for Java 将页面旋转 90 度 type: docs url: /zh/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # 使用 GroupDocs Viewer for Java 将页面旋转 90 度 -当您需要在文档中**将页面旋转 90 度**——无论是 PDF、Word 文件还是电子表格——以编程方式完成可以节省时间并消除人工错误。在本高级指南中,我们将逐步演示如何使用 **GroupDocs Viewer for Java** 旋转任意受支持文档的首页。完成后,您将拥有一个可复用的代码片段,可直接嵌入自己的项目。 -我们还将讨论在 Java 中旋转页面的意义、该技术的常见场景以及如何保持操作轻量化。 +如果您需要在文档中**将页面旋转 90 度**——无论是 PDF、Word 文件还是电子表格——在 Java 中以编程方式完成此操作可以节省时间,消除手动错误,并且可以将此操作嵌入自动化流水线。在本高级指南中,您将学习如何使用 **GroupDocs Viewer for Java** 旋转任何受支持文档的首页,了解此功能在实际项目中的重要性,以及如何保持过程轻量且内存高效。 ![使用 GroupDocs.Viewer for Java 旋转文档的首页](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## 快速答案 -- **“rotate page 90 degrees” 是什么意思?** 它将选定的页面顺时针旋转四分之一圈。 +## 快速回答 +- **rotate page 90 degrees** 是什么意思?它会将所选页面顺时针旋转四分之一圈。 - **哪个库负责旋转?** GroupDocs Viewer for Java 提供 `rotatePage` 方法。 -- **我可以使用 Java 旋转 PDF 页面吗?** 可以——使用相同的 `rotatePage` 调用;它适用于 PDF、DOCX、XLSX 等格式。 +- **我可以使用 Java 旋转 PDF 页面吗?** 是的——使用相同的 `rotatePage` 调用;它适用于 PDF、DOCX、XLSX 等。 - **我需要许可证吗?** 免费试用可用于开发;生产环境需要付费许可证。 - **该操作会占用大量内存吗?** 只要及时关闭 `Viewer` 实例即可;请参阅下面的性能提示。 ## 什么是“rotate page 90 degrees”? -将页面旋转 90 度会将页面从纵向重新定向为横向(或反之),而不改变其底层内容。这在演示文稿、打印仅横向的图形,或纠正扫描时横向拍摄的文档时尤为便利。 +将页面旋转 90 度会将页面从纵向重新定向为横向(或反之),而不改变底层内容。这对于演示、仅横向打印的图形或纠正横向扫描的文档非常有用。旋转在渲染时应用,原始文件保持不变。 ## 为什么使用 GroupDocs Viewer for Java 以编程方式旋转页面? -GroupDocs Viewer 抽象了处理数十种文件格式的复杂性。它允许您在保持原始文件完整的情况下,对页面级别进行转换——如旋转。该 API 流畅、线程安全,且可在任何 Java 8+ 运行时上运行,是企业级自动化的可靠选择。 +GroupDocs Viewer 支持 **50+ 输入和输出格式**——包括 PDF、DOCX、PPTX、XLSX 以及多种图像类型——因此您可以在无需外部转换器的情况下渲染任何文档。API 流畅、线程安全,并可在任何 Java 8+ 运行时上运行,是企业级自动化的可靠选择,能够一致地处理数十种文件类型。 -## 前置条件 +## 前提条件 -- **GroupDocs.Viewer for Java**(最新版本) -- **JDK 8** 或更高版本 -- **Maven**(或 Gradle)用于依赖管理 -- 如 IntelliJ IDEA 或 Eclipse 的 IDE +- GroupDocs Viewer for Java(最新版本) +- JDK 8 或更高版本 +- Maven(或 Gradle)用于依赖管理 +- IDE,例如 IntelliJ IDEA 或 Eclipse - 对 Java I/O 有基本了解 ## 设置 GroupDocs.Viewer for Java -在 `pom.xml` 中添加 GroupDocs 仓库和依赖。此代码片段与原教程保持一致: +将 GroupDocs 仓库和依赖添加到您的 `pom.xml`。此代码片段与原教程保持一致: ```xml @@ -62,11 +120,11 @@ GroupDocs Viewer 抽象了处理数十种文件格式的复杂性。它允许您 ### 获取许可证 - **免费试用** – 从 GroupDocs 网站下载。 -- **临时许可证** – 如需延长评估期,请申请。 -- **正式许可证** – 购买后用于生产部署。 +- **临时许可证** – 如果需要延长评估期,请申请。 +- **正式许可证** – 购买用于生产部署。 ### 基本 Viewer 初始化 -以下代码展示了创建 `Viewer` 实例的最小方式。请保持与示例完全一致: +`Viewer` 类是加载文档并公开渲染和转换方法的入口点。保持代码完全如示: ```java import com.groupdocs.viewer.Viewer; @@ -78,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## 如何使用 GroupDocs Viewer 在 Java 中旋转 PDF 页面 -虽然该 API 支持多种格式,但 PDF 是页面旋转最常见的使用场景。使用相同的 `rotatePage` 方法,只需将 Viewer 指向 PDF 文件并指定页码即可。 +使用 `Viewer` 加载目标文件,指定页码,然后调用 `rotatePage`。该方法适用于 PDF、DOCX、PPTX、XLSX 以及库支持的任何其他格式。旋转后,您可以将文档渲染为新的 PDF,或直接流式传输给客户端,确保原始文件保持不变。 ## 步骤实现:将首页旋转 90 度 ### 1. 导入所需的包 -这些导入提供了 PDF 渲染选项和旋转枚举的访问权限。 +`PdfViewOptions` 告诉 Viewer 输出 PDF 文件,而 `Rotation` 枚举定义旋转角度。这两个类均位于 `com.groupdocs.viewer.options` 包中。 ```java import com.groupdocs.viewer.Viewer; @@ -92,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. 定义输出位置并创建 Viewer -将占位符路径替换为实际的目录。 +将占位符路径替换为实际目录。`Viewer` 构造函数接受指向源文档的 `File` 对象。 ```java import java.nio.file.Path; @@ -110,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. 配置 PDF 视图选项并应用旋转 -`rotatePage` 方法接受页码(基于 1)和 `Rotation` 枚举值。 +`rotatePage(int, Rotation)` 方法接受 **基于 1 的** 页码索引和 `Rotation` 枚举值。本例使用 `Rotation.ON_90_DEGREE` 将首页顺时针旋转。 ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -120,66 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. 渲染文档 -最后,调用 `view` 生成旋转后的 PDF。 +调用配置好的 `view` 方法将旋转后的 PDF 写入输出文件夹。 ```java viewer.view(viewOptions); ``` #### 工作原理 -- **PdfViewOptions** 告诉 Viewer 输出为 PDF 文件。 -- **rotatePage(int, Rotation)** 仅旋转您指定的页面,其他页面保持不变。 -- 该方法支持 `ON_90_DEGREE`、`ON_180_DEGREE` 和 `ON_270_DEGREE`。 +- **PdfViewOptions** 指示 Viewer 生成 PDF 输出文件。 +- **rotatePage(int, Rotation)** 仅旋转指定页面,其他页面保持不变。 +- 该方法支持三个旋转常量:`ON_90_DEGREE`、`ON_180_DEGREE` 和 `ON_270_DEGREE`。 -## 常见问题与解决方案 +## 常见问题及解决方案 | 症状 | 可能原因 | 解决方案 | -|------|----------|----------| +|---------|--------------|-----| | **FileNotFoundException** | 路径不正确或文件夹缺失 | 确认 `YOUR_OUTPUT_DIRECTORY` 和 `YOUR_DOCUMENT_DIRECTORY` 存在且可读。 | -| **Unsupported file format** | 尝试旋转 Viewer 不支持的格式 | 查看 [GroupDocs Viewer 支持的格式] 页面。 | -| **No rotation visible** | 使用了错误的页码(基于 0) | 请记住 `rotatePage` 使用 **基于 1** 的索引。 | -| **Out‑of‑memory errors on large docs** | 在单线程中渲染大量大文件 | 顺序处理文档或使用并发受限的线程池。 | +| **Unsupported file format** | 尝试旋转 Viewer 不支持的格式 | 查看 [GroupDocs Viewer supported formats] 页面。 | +| **No rotation visible** | 使用了错误的页码(基于 0) | 请记住 `rotatePage` 使用 **1‑based** 索引。 | +| **Out‑of‑memory errors on large docs** | 在单线程中渲染大量大型文件 | 顺序处理文档或使用并发受限的线程池。 | ## 实际应用 -1. **演示文稿调整** – 实时将纵向幻灯片转换为横向。 -2. **批量文档校正** – 自动修复横向拍摄的扫描 PDF。 -3. **可打印输出** – 确保横向图形在纵向纸张上正确打印。 +1. **演示调整** – 将纵向幻灯片即时转换为横向,以获得更好的视觉效果。 +2. **批量文档校正** – 自动修复横向扫描的 PDF,节省数小时人工工作。 +3. **打印就绪输出** – 确保横向图形在纵向纸张上正确打印,无需在打印机驱动中手动旋转。 ## 性能提示 -- **及时关闭资源** – `try‑with‑resources` 块会自动释放 `Viewer`。 -- **批量处理** – 处理大量文件时,在线程内复用单个 `Viewer` 实例以降低开销。 -- **监控内存** – 对于大于 100 MB 的文档,考虑将输出流式写入磁盘,而不是保存在内存中。 +- **及时关闭资源** – `try‑with‑resources` 块会自动释放 `Viewer`,释放内存。 +- **批处理** – 每个线程复用单个 `Viewer` 实例以降低初始化开销。 +- **监控内存** – 对于大于 100 MB 的文档,将输出流式写入磁盘而不是全部保存在内存中;GroupDocs Viewer 可在低于 250 MB RAM 的情况下处理 200 MB 文件。 -## 常见问答 +## 常见问题 -**问:我可以一次旋转多个页面吗?** -答:可以——为每个需要旋转的页码调用 `rotatePage()`。 +**Q: 我可以一次旋转多个页面吗?** +A: 可以——对每个需要旋转的页码调用 `rotatePage()`,可以在循环中或通过链式调用实现。 -**问:渲染后有办法撤销旋转吗?** -答:不能直接撤销。需要在不使用旋转选项的情况下重新渲染文档。 +**Q: 渲染后有办法撤销旋转吗?** +A: 不能直接撤销。需要在不使用旋转选项的情况下重新渲染文档。 -**问:GroupDocs Viewer 支持哪些文件格式的页面旋转?** -答:DOCX、PDF、PPTX、XLSX 以及官方文档中列出的许多其他格式。 +**Q: 哪些文件格式在 GroupDocs Viewer 中支持页面旋转?** +A: DOCX、PDF、PPTX、XLSX 等,更多格式请参阅官方文档。 -**问:如何在一批文档中自动旋转页面?** -答:将代码放入循环,遍历文件路径集合,对每个文件应用相同的 `rotatePage` 逻辑。 +**Q: 如何在一批文档中自动旋转页面?** +A: 将旋转逻辑封装在循环中,遍历文件路径集合,对每个文件应用相同的 `rotatePage` 配置。 -**问:旋转过程中处理错误的最佳实践是什么?** -答:在 `try‑catch` 块中使用 Viewer,记录异常,并可选择继续处理下一个文件。 +**Q: 处理旋转期间错误的最佳实践是什么?** +A: 将 Viewer 的使用放在 `try‑catch` 块中,记录异常细节,并可选择继续处理下一个文件,以防单个失败导致整个批次中止。 ## 资源 -- **文档**: [GroupDocs Viewer Java 文档](https://docs.groupdocs.com/viewer/java/) -- **API 参考**: [GroupDocs API 参考](https://reference.groupdocs.com/viewer/java/) -- **下载**: [获取 GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **购买**: [购买许可证](https://purchase.groupdocs.com/buy) -- **免费试用**: [免费试用](https://releases.groupdocs.com/viewer/java/) -- **临时许可证**: [请求临时许可证](https://purchase.groupdocs.com/temporary-license/) -- **支持**: [GroupDocs 论坛](https://forum.groupdocs.com/c/viewer/9) +- **文档**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API 参考**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **下载**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **购买**: [Buy a License](https://purchase.groupdocs.com/buy) +- **免费试用**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **临时许可证**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **支持**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**最后更新:** 2026-03-29 -**测试环境:** GroupDocs Viewer 25.2 for Java -**作者:** GroupDocs \ No newline at end of file +**最后更新:** 2026-09-30 +**测试环境:** GroupDocs Viewer 25.2 for Java +**作者:** GroupDocs + +## 相关教程 + +- [如何使用 GroupDocs.Viewer for Java 旋转特定 PDF 页面](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [在 Java 中从 URL 加载文档 – GroupDocs.Viewer 教程](/viewer/java/document-loading/) +- [Groupdocs Viewer Java 文档视图](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/czech/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/czech/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 9643de723..a051ed3f9 100644 --- a/content/czech/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/czech/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,46 +1,105 @@ --- -date: '2026-03-29' -description: Naučte se, jak v Javě pomocí GroupDocs Viewer otočit stránku o 90 stupňů, +date: '2026-09-30' +description: Zjistěte, jak v Javě otočit stránku o 90 stupňů pomocí GroupDocs Viewer, včetně nastavení, kódu a tipů na výkon. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Otočte stránku o 90 stupňů v Javě pomocí GroupDocs Viewer. Průvodce + krok za krokem, tipy na výkon a reálné příklady použití pro vývojáře. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Otočte stránku o 90 stupňů pomocí GroupDocs Viewer pro Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Otočte stránku o 90 stupňů pomocí GroupDocs Viewer pro Java type: docs url: /cs/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Otočit stránku o 90 stupňů pomocí GroupDocs Viewer pro Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Když potřebujete **otočit stránku o 90 stupňů** v dokumentu — ať už jde o PDF, Word soubor nebo tabulku — provedení toho programově šetří čas a eliminuje ruční chyby. V tomto pokročilém průvodci vás provedeme přesné kroky k otočení první stránky libovolného podporovaného dokumentu pomocí **GroupDocs Viewer for Java**. Na konci budete mít znovupoužitelný úryvek, který můžete vložit do svých projektů. -Také se podíváme, proč je otáčení stránek v Javě důležité, na běžné scénáře, kde tato technika vyniká, a jak udržet operaci nenáročnou. +# Otočit stránku o 90 stupňů pomocí GroupDocs Viewer for Java -![Otočit první stránku dokumentu pomocí GroupDocs.Viewer pro Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +Pokud potřebujete **otočit stránku o 90 stupňů** v dokumentu — ať už jde o PDF, Word nebo tabulku — provedení toho programově v Javě šetří čas, eliminuje ruční chyby a umožňuje začlenit operaci do automatizovaných pipeline. V tomto pokročilém průvodci se naučíte, jak otočit první stránku libovolného podporovaného dokumentu pomocí **GroupDocs Viewer for Java**, proč je tato schopnost důležitá v reálných projektech a jak udržet proces lehký a paměťově úsporný. + +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Rychlé odpovědi - **Co znamená „otočit stránku o 90 stupňů“?** Otočí vybranou stránku po směru hodinových ručiček o čtvrt otáčky. -- **Která knihovna provádí otáčení?** GroupDocs Viewer for Java poskytuje metodu `rotatePage`. -- **Mohu otáčet PDF stránky pomocí Javy?** Ano — použijte stejný volání `rotatePage`; funguje pro PDF, DOCX, XLSX a další. -- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro vývoj; placená licence je vyžadována pro produkci. -- **Je operace náročná na paměť?** Ne, pokud rychle uzavřete instanci `Viewer`; viz tipy na výkon níže. +- **Která knihovna provádí rotaci?** GroupDocs Viewer for Java poskytuje metodu `rotatePage`. +- **Mohu otočit PDF stránky pomocí Javy?** Ano — použijte stejnou volání `rotatePage`; funguje pro PDF, DOCX, XLSX a další. +- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro vývoj; pro produkci je vyžadována placená licence. +- **Je operace náročná na paměť?** Ne, pokud `Viewer` instanci rychle uzavřete; viz tipy pro výkon níže. ## Co je „otočit stránku o 90 stupňů“? -Otočení stránky o 90 stupňů přesměruje stránku z portrétu na krajinu (nebo naopak) bez změny podkladového obsahu. To je zvláště užitečné pro prezentace, tisk grafiky určené pouze na krajinu nebo opravu naskenovaných dokumentů, které byly zachyceny šikmo. +Otočení stránky o 90 stupňů přenastaví orientaci stránky z portrétu na krajinu (nebo naopak) bez změny podkladového obsahu. To je užitečné pro prezentace, tisk grafiky jen v krajině nebo opravu naskenovaných dokumentů pořízených šikmo. Rotace se aplikuje při renderování, původní soubor zůstává nezměněn. -## Proč otáčet stránky programově pomocí GroupDocs Viewer pro Java? -GroupDocs Viewer abstrahuje složitosti práce s desítkami formátů souborů. Umožňuje vám aplikovat transformace na úrovni stránky — jako je otáčení — a přitom zachovat původní soubor nedotčený. API je plynulé, thread‑safe a funguje na jakémkoli runtime Java 8+, což z něj činí spolehlivou volbu pro automatizaci na úrovni podniku. +## Proč otáčet stránky programově pomocí GroupDocs Viewer for Java? +GroupDocs Viewer podporuje **více než 50 vstupních a výstupních formátů** — včetně PDF, DOCX, PPTX, XLSX a mnoha typů obrázků — takže můžete renderovat jakýkoli dokument bez externích konvertorů. API je plynulé, thread‑safe a běží na libovolném Java 8+ runtime, což z něj činí spolehlivou volbu pro podnikovou automatizaci, která musí konzistentně zvládat desítky typů souborů. ## Požadavky -- **GroupDocs.Viewer for Java** (nejnovější verze) -- **JDK 8** nebo novější -- **Maven** (nebo Gradle) pro správu závislostí -- IDE, jako je IntelliJ IDEA nebo Eclipse + +- GroupDocs Viewer for Java (nejnovější verze) +- JDK 8 nebo novější +- Maven (nebo Gradle) pro správu závislostí +- IDE jako IntelliJ IDEA nebo Eclipse - Základní znalost Java I/O ## Nastavení GroupDocs.Viewer pro Java -Přidejte repozitář GroupDocs a závislost do vašeho `pom.xml`. Tento úryvek zůstává nezměněn oproti původnímu tutoriálu: + +Přidejte repozitář GroupDocs a závislost do svého `pom.xml`. Tento úryvek zůstává beze změny oproti originálnímu tutoriálu: ```xml @@ -60,12 +119,12 @@ Přidejte repozitář GroupDocs a závislost do vašeho `pom.xml`. Tento úryvek ``` ### Získání licence -- **Free trial** – stáhněte z webu GroupDocs. -- **Temporary license** – požádejte, pokud potřebujete prodloužené zkušební období. -- **Full license** – zakupte pro produkční nasazení. +- **Bezplatná zkušební verze** – stáhněte z webu GroupDocs. +- **Dočasná licence** – požádejte, pokud potřebujete prodloužené zkušební období. +- **Plná licence** – zakupte pro produkční nasazení. ### Základní inicializace Vieweru -Následující kód ukazuje minimální způsob vytvoření instance `Viewer`. Uchovejte jej přesně tak, jak je uvedeno: +Třída `Viewer` je vstupní bod, který načte dokument a poskytuje metody pro renderování a transformaci. Uchovejte kód přesně tak, jak je uveden: ```java import com.groupdocs.viewer.Viewer; @@ -77,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Jak otočit PDF stránku v Javě pomocí GroupDocs Viewer -I když API funguje napříč mnoha formáty, PDF je nejčastějším případem použití pro otáčení stránek. Používá se stejná metoda `rotatePage`, takže stačí nasměrovat Viewer na PDF soubor a zadat číslo stránky. +Načtěte cílový soubor pomocí `Viewer`, zadejte číslo stránky a zavolejte `rotatePage`. Metoda funguje pro PDF, DOCX, PPTX, XLSX i jakýkoli jiný formát podporovaný knihovnou. Po otočení můžete dokument renderovat do nového PDF nebo jej streamovat přímo klientovi, přičemž původní soubor zůstane nedotčen. -## Implementace krok za krokem: Otočit první stránku o 90 stupňů +## Postupná implementace: otočit první stránku o 90 stupňů ### 1. Importujte požadované balíčky -Tyto importy vám poskytují přístup k možnostem renderování PDF a výčtu rotace. +`PdfViewOptions` říká Vieweru, aby výstupem byl PDF soubor, zatímco výčtový typ `Rotation` definuje úhel. Obě třídy patří do balíčku `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -91,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Definujte výstupní umístění a vytvořte Viewer -Nahraďte zástupné cesty vašimi skutečnými adresáři. +Nahraďte zástupné cesty svými skutečnými adresáři. Konstruktor `Viewer` přijímá objekt `File`, který ukazuje na zdrojový dokument. ```java import java.nio.file.Path; @@ -108,8 +167,8 @@ public class RotateSpecificPage { } ``` -### 3. Nakonfigurujte možnosti zobrazení PDF a aplikujte otáčení -Metoda `rotatePage` přijímá číslo stránky (číslování od 1) a hodnotu výčtu `Rotation`. +### 3. Nastavte možnosti PDF zobrazení a aplikujte rotaci +Metoda `rotatePage(int, Rotation)` přijímá **1‑based** index stránky a hodnotu výčtu `Rotation`. V tomto příkladu použijeme `Rotation.ON_90_DEGREE` k otočení první stránky po směru hodinových ručiček. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -119,66 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Vykreslete dokument -Nakonec zavolejte `view` pro vygenerování otočeného PDF. +Volání `view` s nakonfigurovanými možnostmi zapíše otočené PDF do výstupní složky. ```java viewer.view(viewOptions); ``` #### Jak to funguje -- **PdfViewOptions** říká Vieweru, aby výstupem byl PDF soubor. -- **rotatePage(int, Rotation)** otáčí pouze stránku, kterou specifikujete, a zbytek zůstane nedotčen. -- Metoda podporuje `ON_90_DEGREE`, `ON_180_DEGREE` a `ON_270_DEGREE`. +- **PdfViewOptions** nasměruje Viewer k vytvoření PDF výstupního souboru. +- **rotatePage(int, Rotation)** otáčí pouze zadanou stránku, ostatní stránky zůstávají beze změny. +- Metoda podporuje tři konstanty rotace: `ON_90_DEGREE`, `ON_180_DEGREE` a `ON_270_DEGREE`. ## Časté problémy a řešení | Příznak | Pravděpodobná příčina | Oprava | |---------|-----------------------|--------| | **FileNotFoundException** | Nesprávná cesta nebo chybějící složka | Ověřte, že `YOUR_OUTPUT_DIRECTORY` a `YOUR_DOCUMENT_DIRECTORY` existují a jsou čitelné. | -| **Unsupported file format** | Pokus o otáčení formátu, který Viewer nepodporuje | Zkontrolujte stránku [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Použití špatného čísla stránky (číslování od 0) | Pamatujte, že `rotatePage` používá **číslování od 1**. | -| **Out‑of‑memory errors on large docs** | Renderování mnoha velkých souborů v jednom vlákně | Zpracovávejte dokumenty sekvenčně nebo použijte thread pool s omezenou souběžností. | +| **Unsupported file format** | Pokus o otočení formátu, který Viewer nepodporuje | Zkontrolujte stránku [GroupDocs Viewer supported formats]. | +| **No rotation visible** | Použití špatného čísla stránky (základ 0) | Pamatujte, že `rotatePage` používá **1‑based** indexování. | +| **Out‑of‑memory errors on large docs** | Vykreslování mnoha velkých souborů v jednom vlákně | Zpracovávejte dokumenty sekvenčně nebo použijte pool vláken s omezenou souběžností. | ## Praktické aplikace -1. **Úpravy prezentací** – Převést portrétní snímek na krajinu za běhu. -2. **Hromadná oprava dokumentů** – Automatizovat opravu naskenovaných PDF, které byly zachyceny šikmo. -3. **Výstup připravený k tisku** – Zajistit, aby grafika v krajině tiskla správně na papír orientovaný na portrét. +1. **Úpravy prezentací** – Převod portrétové snímky na krajinu za běhu pro lepší vizuální dopad. +2. **Hromadná oprava dokumentů** – Automatizujte opravu naskenovaných PDF, které byly pořízeny šikmo, a ušetřete hodiny ruční práce. +3. **Výstup připravený k tisku** – Zajistěte, aby se krajinová grafika tiskla správně na papír orientovaný na portrét, bez ruční rotace v ovladači tiskárny. ## Tipy pro výkon -- **Uzavřete zdroje rychle** – Blok `try‑with‑resources` automaticky uvolní `Viewer`. -- **Dávkové zpracování** – Při práci s mnoha soubory znovu použijte jednu instanci `Viewer` na vlákno, aby se snížila zátěž. -- **Sledujte paměť** – Pro dokumenty větší než 100 MB zvažte streamování výstupu na disk místo udržování v paměti. +- **Uzavírejte zdroje okamžitě** – Blok `try‑with‑resources` automaticky uvolní `Viewer`, čímž šetří paměť. +- **Dávkové zpracování** – Znovu použijte jedinou instanci `Viewer` na vlákno, abyste snížili režii inicializace. +- **Sledujte paměť** – U dokumentů větších než 100 MB streamujte výstup na disk místo udržování celého souboru v paměti; GroupDocs Viewer dokáže zpracovat soubory 200 MB s využitím méně než 250 MB RAM. ## Často kladené otázky -**Q: Mohu otáčet více stránek najednou?** -A: Ano — zavolejte `rotatePage()` pro každé číslo stránky, kterou potřebujete otočit. +**Q: Mohu otočit více stránek najednou?** +A: Ano — volání `rotatePage()` opakujte pro každé číslo stránky, které potřebujete otočit, buď ve smyčce, nebo řetězením volání. -**Q: Existuje způsob, jak po renderování otáčení vrátit zpět?** -A: Ne přímo. Museli byste dokument znovu renderovat bez možností otáčení. +**Q: Existuje způsob, jak po renderování rotaci vrátit zpět?** +A: Ne přímo. Museli byste dokument znovu renderovat bez nastavení rotace. -**Q: Které formáty souborů podporují otáčení stránek v GroupDocs Viewer?** +**Q: Které formáty souborů podporují rotaci stránek v GroupDocs Viewer?** A: DOCX, PDF, PPTX, XLSX a mnoho dalších formátů uvedených v oficiální dokumentaci. **Q: Jak mohu automaticky otáčet stránky ve skupině dokumentů?** -A: Zabalte kód do smyčky, která prochází kolekci cest k souborům a na každém použije stejnou logiku `rotatePage`. +A: Zabalte logiku rotace do smyčky, která iteruje přes kolekci cest k souborům a aplikuje stejnou konfiguraci `rotatePage` na každý soubor. -**Q: Jaká je nejlepší praxe pro zpracování chyb během otáčení?** -A: Uzavřete používání Vieweru do bloku `try‑catch`, zaznamenejte výjimku a volitelně pokračujte ve zpracování dalšího souboru. +**Q: Jaká je nejlepší praxe pro zpracování chyb během rotace?** +A: Obalte používání Vieweru do bloku `try‑catch`, logujte podrobnosti výjimky a volitelně pokračujte dalším souborem, aby jedna chyba nezastavila celý batch. ## Zdroje - **Dokumentace**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **API reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Stáhnout**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Koupit**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Koupit licenci**: [Buy a License](https://purchase.groupdocs.com/buy) - **Bezplatná zkušební verze**: [Try Free](https://releases.groupdocs.com/viewer/java/) - **Dočasná licence**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Podpora**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Poslední aktualizace:** 2026-03-29 +**Poslední aktualizace:** 2026-09-30 **Testováno s:** GroupDocs Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Související tutoriály + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/dutch/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/dutch/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index d1b775b79..053a46b0f 100644 --- a/content/dutch/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/dutch/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: Leer hoe je een pagina 90 graden draait in Java met GroupDocs Viewer, - inclusief installatie, code en prestatietips. +date: '2026-09-30' +description: Leer hoe je een pagina 90 graden kunt roteren in Java met GroupDocs Viewer, + inclusief installatie, code en performance tips. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Roteer een pagina 90 graden in Java met GroupDocs Viewer. Stapsgewijze + handleiding, performance tips en praktijkvoorbeelden voor ontwikkelaars. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Pagina 90 graden roteren met GroupDocs Viewer voor Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Pagina 90 graden roteren met GroupDocs Viewer voor Java type: docs url: /nl/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Pagina 90 graden roteren met GroupDocs Viewer voor Java -Wanneer je **pagina 90 graden moet roteren** in een document—of het nu een PDF, Word‑bestand of spreadsheet is—bespaart het programmatisch uitvoeren tijd en elimineert handmatige fouten. In deze geavanceerde gids lopen we de exacte stappen door om de eerste pagina van elk ondersteund document te roteren met **GroupDocs Viewer voor Java**. Aan het einde heb je een herbruikbare code‑fragment die je in je eigen projecten kunt gebruiken. -We bespreken ook waarom het roteren van pagina's in Java belangrijk is, veelvoorkomende scenario's waarin deze techniek uitblinkt, en hoe je de bewerking lichtgewicht houdt. +If you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. -![Eerste pagina van een document roteren met GroupDocs.Viewer voor Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +![De eerste pagina van een document roteren met GroupDocs.Viewer voor Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Snelle antwoorden -- **Wat betekent “pagina 90 graden roteren”?** Het draait de geselecteerde pagina met de klok mee een kwart omwenteling. +- **Wat betekent “rotate page 90 degrees”?** Het draait de geselecteerde pagina met de klok mee een kwartslag. - **Welke bibliotheek verzorgt de rotatie?** GroupDocs Viewer voor Java biedt de `rotatePage`‑methode. -- **Kan ik PDF‑pagina's roteren met Java?** Ja—gebruik dezelfde `rotatePage`‑aanroep; hij werkt voor PDF, DOCX, XLSX en meer. +- **Kan ik PDF‑pagina's roteren met Java?** Ja—gebruik dezelfde `rotatePage`‑aanroep; het werkt voor PDF, DOCX, XLSX en meer. - **Heb ik een licentie nodig?** Een gratis proefversie werkt voor ontwikkeling; een betaalde licentie is vereist voor productie. -- **Is de bewerking geheugenintensief?** Niet wanneer je de `Viewer`‑instantie direct sluit; zie de prestatietips hieronder. +- **Is de bewerking geheugenintensief?** Niet wanneer je de `Viewer`‑instantie snel sluit; zie de prestatietips hieronder. -## Wat is “pagina 90 graden roteren”? -Het roteren van een pagina 90 graden herschikt de pagina van staand naar liggend (of omgekeerd) zonder de onderliggende inhoud te wijzigen. Dit is vooral handig voor presentaties, het afdrukken van uitsluitend liggende afbeeldingen, of het corrigeren van gescande documenten die scheef zijn vastgelegd. +## Wat is “rotate page 90 degrees”? +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. ## Waarom pagina's programmatisch roteren met GroupDocs Viewer voor Java? -GroupDocs Viewer abstraheert de complexiteit van het verwerken van tientallen bestandsformaten. Het stelt je in staat paginaniveau‑transformaties toe te passen—zoals rotatie—terwijl het oorspronkelijke bestand intact blijft. De API is vloeiend, thread‑veilig en werkt op elke Java 8+ runtime, waardoor het een betrouwbare keuze is voor automatisering op ondernemingsniveau. +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## Vereisten -- **GroupDocs.Viewer voor Java** (nieuwste versie) -- **JDK 8** of nieuwer -- **Maven** (of Gradle) voor afhankelijkheidsbeheer +- GroupDocs Viewer voor Java (nieuwste versie) +- JDK 8 of nieuwer +- Maven (of Gradle) voor afhankelijkheidsbeheer - Een IDE zoals IntelliJ IDEA of Eclipse - Basiskennis van Java I/O -## GroupDocs.Viewer voor Java instellen +## Installatie van GroupDocs.Viewer voor Java -Voeg de GroupDocs‑repository en afhankelijkheid toe aan je `pom.xml`. Deze codefragment is ongewijzigd ten opzichte van de originele tutorial: +Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: ```xml @@ -63,11 +120,11 @@ Voeg de GroupDocs‑repository en afhankelijkheid toe aan je `pom.xml`. Deze cod ### Licentie‑acquisitie - **Gratis proefversie** – download van de GroupDocs‑site. -- **Tijdelijke licentie** – vraag aan als je een verlengde evaluatieperiode nodig hebt. +- **Tijdelijke licentie** – vraag aan indien je een verlengde evaluatieperiode nodig hebt. - **Volledige licentie** – aanschaffen voor productie‑implementaties. ### Basis Viewer‑initialisatie -De volgende code toont de minimale manier om een `Viewer`‑instantie te maken. Houd het exact zoals weergegeven: +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -79,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Hoe PDF‑pagina roteren met Java en GroupDocs Viewer -Hoewel de API met veel formaten werkt, is PDF het meest voorkomende gebruiksscenario voor paginarotatie. Dezelfde `rotatePage`‑methode wordt gebruikt, dus je hoeft alleen de viewer naar een PDF‑bestand te wijzen en het paginanummer op te geven. +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. -## Stapsgewijze implementatie: Eerste pagina 90 graden roteren +## Stapsgewijze implementatie: de eerste pagina 90 graden roteren -### 1. Importeer de vereiste pakketten -Deze imports geven je toegang tot PDF‑renderopties en de rotatie‑enum. +### 1. Importeer de benodigde pakketten +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -92,8 +149,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Definieer uitvoerlocaties en maak de Viewer -Vervang de tijdelijke paden door je eigen mappen. +### 2. Definieer uitvoerlocaties en maak de Viewer aan +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Configureer PDF‑viewopties en pas de rotatie toe -De `rotatePage`‑methode neemt het paginanummer (1‑gebaseerd) en een `Rotation`‑enumwaarde. +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Render het document -Roep tenslotte `view` aan om de geroteerde PDF te genereren. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### Hoe het werkt -- **PdfViewOptions** vertelt de Viewer om een PDF‑bestand uit te voeren. -- **rotatePage(int, Rotation)** roteert alleen de opgegeven pagina, de rest blijft onaangeroerd. -- De methode ondersteunt `ON_90_DEGREE`, `ON_180_DEGREE` en `ON_270_DEGREE`. +- **PdfViewOptions** stuurt de Viewer om een PDF‑outputbestand te genereren. +- **rotatePage(int, Rotation)** roteert alleen de opgegeven pagina, terwijl alle andere pagina's ongewijzigd blijven. +- De methode ondersteunt drie rotatie‑constanten: `ON_90_DEGREE`, `ON_180_DEGREE` en `ON_270_DEGREE`. ## Veelvoorkomende problemen en oplossingen | Symptoom | Waarschijnlijke oorzaak | Oplossing | |----------|--------------------------|-----------| | **FileNotFoundException** | Onjuist pad of ontbrekende map | Controleer of `YOUR_OUTPUT_DIRECTORY` en `YOUR_DOCUMENT_DIRECTORY` bestaan en leesbaar zijn. | -| **Unsupported file format** | Proberen een formaat te roteren dat niet door Viewer wordt ondersteund | Controleer de [ondersteunde formaten van GroupDocs Viewer] pagina. | -| **No rotation visible** | Het verkeerde paginanummer gebruiken (0‑gebaseerd) | Onthoud dat `rotatePage` **1‑gebaseerde** indexering gebruikt. | -| **Out‑of‑memory errors on large docs** | Veel grote bestanden in één thread renderen | Verwerk documenten opeenvolgend of gebruik een thread‑pool met beperkte gelijktijdigheid. | +| **Unsupported file format** | Poging om een formaat te roteren dat niet door Viewer wordt ondersteund | Bekijk de pagina [GroupDocs Viewer supported formats]. | +| **No rotation visible** | Gebruik van het verkeerde paginanummer (0‑gebaseerd) | Onthoud dat `rotatePage` **1‑gebaseerde** indexering gebruikt. | +| **Out‑of‑memory errors on large docs** | Veel grote bestanden renderen in één thread | Verwerk documenten opeenvolgend of gebruik een thread‑pool met beperkte gelijktijdigheid. | ## Praktische toepassingen -1. **Aanpassingen van presentaties** – Converteer een staande dia direct naar liggend. -2. **Bulkdocumentcorrectie** – Automatiseer het corrigeren van gescande PDF's die scheef zijn vastgelegd. -3. **Print‑klaar output** – Zorg ervoor dat liggende afbeeldingen correct afdrukken op staand papier. +1. **Presentatie‑aanpassingen** – Converteer een staande dia on-the-fly naar liggend voor betere visuele impact. +2. **Bulk‑documentcorrectie** – Automatiseer het corrigeren van gescande PDF’s die scheef zijn vastgelegd, waardoor uren handmatig werk worden bespaard. +3. **Print‑klaar output** – Zorg ervoor dat liggende afbeeldingen correct afdrukken op staand papier zonder handmatige rotatie in de printerdriver. ## Prestatietips -- **Sluit bronnen direct** – Het `try‑with‑resources`‑blok verwijdert automatisch de `Viewer`. -- **Batchverwerking** – Bij het verwerken van veel bestanden, hergebruik één `Viewer`‑instantie per thread om overhead te verminderen. -- **Monitor geheugen** – Voor documenten groter dan 100 MB, overweeg de output naar schijf te streamen in plaats van in het geheugen te houden. +- **Sluit bronnen snel** – Het `try‑with‑resources`‑blok verwijdert automatisch de `Viewer`, waardoor geheugen vrijkomt. +- **Batchverwerking** – Hergebruik één `Viewer`‑instantie per thread om initialisatie‑overhead te verminderen. +- **Monitor geheugen** – Voor documenten groter dan 100 MB, stream de output naar schijf in plaats van het hele bestand in het geheugen te houden; GroupDocs Viewer kan 200 MB‑bestanden verwerken met minder dan 250 MB RAM. ## Veelgestelde vragen -**Q: Kan ik meerdere pagina's tegelijk roteren?** -A: Ja—roep `rotatePage()` aan voor elk paginanummer dat je wilt roteren. +**V: Kan ik meerdere pagina's tegelijk roteren?** +A: Ja—roep `rotatePage()` aan voor elk paginanummer dat je wilt roteren, of in een lus of door calls te chainen. -**Q: Is er een manier om de rotatie ongedaan te maken na het renderen?** -A: Niet rechtstreeks. Je zou het document opnieuw moeten renderen zonder de rotatie‑opties. +**V: Is er een manier om de rotatie ongedaan te maken na het renderen?** +A: Niet direct. Je zou het document opnieuw moeten renderen zonder de rotatie‑opties. -**Q: Welke bestandsformaten ondersteunen paginarotatie in GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX en vele andere formaten die in de officiële documentatie staan vermeld. +**V: Welke bestandsformaten ondersteunen paginarotatie in GroupDocs Viewer?** +A: DOCX, PDF, PPTX, XLSX, en vele andere formaten die in de officiële documentatie staan vermeld. -**Q: Hoe kan ik pagina's in een batch documenten automatisch roteren?** -A: Plaats de code in een lus die over een collectie bestands‑paden itereren, en pas dezelfde `rotatePage`‑logica toe op elk. +**V: Hoe kan ik pagina's in een batch van documenten automatisch roteren?** +A: Plaats de rotatielogica in een lus die over een collectie bestands‑paden iterereert, en pas dezelfde `rotatePage`‑configuratie toe op elk bestand. -**Q: Wat is de beste praktijk voor het afhandelen van fouten tijdens rotatie?** -A: Plaats het gebruik van de Viewer in een `try‑catch`‑blok, log de uitzondering, en ga eventueel door met het verwerken van het volgende bestand. +**V: Wat is de beste praktijk voor het afhandelen van fouten tijdens rotatie?** +A: Plaats het gebruik van de Viewer in een `try‑catch`‑blok, log de details van de uitzondering, en ga eventueel door met het verwerken van het volgende bestand om te voorkomen dat één fout de hele batch stopt. ## Bronnen -- **Documentatie**: [GroupDocs Viewer Java Documentatie](https://docs.groupdocs.com/viewer/java/) -- **API‑referentie**: [GroupDocs API Referentie](https://reference.groupdocs.com/viewer/java/) -- **Download**: [Download GroupDocs Viewer voor Java](https://releases.groupdocs.com/viewer/java/) -- **Aankoop**: [Koop een licentie](https://purchase.groupdocs.com/buy) -- **Gratis proefversie**: [Probeer gratis](https://releases.groupdocs.com/viewer/java/) -- **Tijdelijke licentie**: [Vraag tijdelijke licentie aan](https://purchase.groupdocs.com/temporary-license/) +- **Documentatie**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API‑referentie**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Aankoop**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Gratis proefversie**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Tijdelijke licentie**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Ondersteuning**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Laatst bijgewerkt:** 2026-03-29 +**Laatst bijgewerkt:** 2026-09-30 **Getest met:** GroupDocs Viewer 25.2 voor Java -**Auteur:** GroupDocs \ No newline at end of file +**Auteur:** GroupDocs + +## Gerelateerde tutorials + +- [Hoe specifieke PDF‑pagina's roteren met GroupDocs.Viewer voor Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Document laden vanaf URL in Java – GroupDocs.Viewer tutorial](/viewer/java/document-loading/) +- [GroupDocs Viewer Java Documentweergaven](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index d4ff49227..f2002c070 100644 --- a/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,24 +1,84 @@ --- -title: "Rotate page 90 degrees with GroupDocs Viewer for Java" -description: "Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, including setup, code, and performance tips." -date: "2026-03-29" -weight: 1 -url: "/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/" +date: '2026-09-30' +description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, including + setup, code, and performance tips. +images: +- /java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/og-image.png keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Rotate page 90 degrees in Java using GroupDocs Viewer. Step‑by‑step + guide, performance tips, and real‑world use cases for developers. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Rotate page 90 degrees with GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Rotate page 90 degrees with GroupDocs Viewer for Java type: docs +url: /java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ +weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Rotate page 90 degrees with GroupDocs Viewer for Java -When you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically saves time and eliminates manual errors. In this advanced guide we’ll walk through the exact steps to rotate the first page of any supported document using **GroupDocs Viewer for Java**. By the end, you’ll have a reusable snippet that you can drop into your own projects. -We’ll also discuss why rotating pages in Java matters, common scenarios where this technique shines, and how to keep the operation lightweight. +If you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. ![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## Quick Answers +## Quick answers - **What does “rotate page 90 degrees” mean?** It turns the selected page clockwise by a quarter turn. - **Which library handles the rotation?** GroupDocs Viewer for Java provides the `rotatePage` method. - **Can I rotate PDF pages with Java?** Yes—use the same `rotatePage` call; it works for PDF, DOCX, XLSX, and more. @@ -26,20 +86,20 @@ We’ll also discuss why rotating pages in Java matters, common scenarios where - **Is the operation memory‑intensive?** Not when you close the `Viewer` instance promptly; see the performance tips below. ## What is “rotate page 90 degrees”? -Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without altering the underlying content. This is especially handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. ## Why rotate pages programmatically with GroupDocs Viewer for Java? -GroupDocs Viewer abstracts the complexities of handling dozens of file formats. It lets you apply page‑level transformations—like rotation—while keeping the original file intact. The API is fluent, thread‑safe, and works on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation. +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## Prerequisites -- **GroupDocs.Viewer for Java** (latest version) -- **JDK 8** or newer -- **Maven** (or Gradle) for dependency management +- GroupDocs Viewer for Java (latest version) +- JDK 8 or newer +- Maven (or Gradle) for dependency management - An IDE such as IntelliJ IDEA or Eclipse - Basic familiarity with Java I/O -## Setting Up GroupDocs.Viewer for Java +## Setting up GroupDocs.Viewer for Java Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: @@ -66,7 +126,7 @@ Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is u - **Full license** – purchase for production deployments. ### Basic Viewer initialization -The following code shows the minimal way to create a `Viewer` instance. Keep it exactly as shown: +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -78,12 +138,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## How to rotate PDF page Java with GroupDocs Viewer -Even though the API works across many formats, PDF is the most common use case for page rotation. The same `rotatePage` method is used, so you only need to point the viewer at a PDF file and specify the page number. +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. -## Step‑by‑Step Implementation: Rotate the First Page 90 Degrees +## Step‑by‑step implementation: rotate the first page 90 degrees ### 1. Import the required packages -These imports give you access to PDF rendering options and the rotation enum. +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -92,7 +152,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Define output locations and create the Viewer -Replace the placeholder paths with your actual directories. +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -110,7 +170,7 @@ public class RotateSpecificPage { ``` ### 3. Configure PDF view options and apply the rotation -The `rotatePage` method takes the page number (1‑based) and a `Rotation` enum value. +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -120,41 +180,41 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Render the document -Finally, call `view` to generate the rotated PDF. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### How it works -- **PdfViewOptions** tells the Viewer to output a PDF file. -- **rotatePage(int, Rotation)** rotates only the page you specify, leaving the rest untouched. -- The method supports `ON_90_DEGREE`, `ON_180_DEGREE`, and `ON_270_DEGREE`. +- **PdfViewOptions** directs the Viewer to generate a PDF output file. +- **rotatePage(int, Rotation)** rotates only the specified page, leaving all other pages unchanged. +- The method supports three rotation constants: `ON_90_DEGREE`, `ON_180_DEGREE`, and `ON_270_DEGREE`. -## Common Issues and Solutions -| Symptom | Likely Cause | Fix | +## Common issues and solutions +| Symptom | Likely cause | Fix | |---------|--------------|-----| | **FileNotFoundException** | Incorrect path or missing folder | Verify `YOUR_OUTPUT_DIRECTORY` and `YOUR_DOCUMENT_DIRECTORY` exist and are readable. | | **Unsupported file format** | Trying to rotate a format not supported by Viewer | Check the [GroupDocs Viewer supported formats] page. | | **No rotation visible** | Using the wrong page number (0‑based) | Remember `rotatePage` uses **1‑based** indexing. | | **Out‑of‑memory errors on large docs** | Rendering many large files in a single thread | Process documents sequentially or use a thread pool with limited concurrency. | -## Practical Applications +## Practical applications -1. **Presentation adjustments** – Convert a portrait slide to landscape on the fly. -2. **Bulk document correction** – Automate fixing of scanned PDFs that were captured sideways. -3. **Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented paper. +1. **Presentation adjustments** – Convert a portrait slide to landscape on the fly for better visual impact. +2. **Bulk document correction** – Automate fixing of scanned PDFs that were captured sideways, saving hours of manual work. +3. **Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented paper without manual rotation in the printer driver. -## Performance Tips +## Performance tips -- **Close resources promptly** – The `try‑with‑resources` block automatically disposes of the `Viewer`. -- **Batch processing** – When handling many files, reuse a single `Viewer` instance per thread to reduce overhead. -- **Monitor memory** – For documents larger than 100 MB, consider streaming the output to disk rather than keeping it in memory. +- **Close resources promptly** – The `try‑with‑resources` block automatically disposes of the `Viewer`, freeing memory. +- **Batch processing** – Reuse a single `Viewer` instance per thread to reduce initialization overhead. +- **Monitor memory** – For documents larger than 100 MB, stream the output to disk instead of keeping the whole file in memory; GroupDocs Viewer can process 200 MB files using under 250 MB of RAM. -## Frequently Asked Questions +## Frequently asked questions **Q: Can I rotate multiple pages at once?** -A: Yes—call `rotatePage()` for each page number you need to rotate. +A: Yes—invoke `rotatePage()` for each page number you need to rotate, either in a loop or by chaining calls. **Q: Is there a way to undo the rotation after rendering?** A: Not directly. You would need to render the document again without the rotation options. @@ -163,23 +223,35 @@ A: Not directly. You would need to render the document again without the rotatio A: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. **Q: How can I rotate pages in a batch of documents automatically?** -A: Wrap the code in a loop that iterates over a collection of file paths, applying the same `rotatePage` logic to each. +A: Wrap the rotation logic in a loop that iterates over a collection of file paths, applying the same `rotatePage` configuration to each file. **Q: What is the best practice for handling errors during rotation?** -A: Enclose the Viewer usage in a `try‑catch` block, log the exception, and optionally continue processing the next file. +A: Enclose the Viewer usage in a `try‑catch` block, log the exception details, and optionally continue processing the next file to avoid a single failure stopping the whole batch. ## Resources - **Documentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **API reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) - **Purchase**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Free Trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Temporary License**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Free trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporary license**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Last Updated:** 2026-03-29 +**Last Updated:** 2026-09-30 **Tested With:** GroupDocs Viewer 25.2 for Java -**Author:** GroupDocs \ No newline at end of file +**Author:** GroupDocs + +## Related Tutorials + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/og-image.png b/content/english/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..0aef5735bf784c3dcd60dce4deadc8dd444e6941 GIT binary patch literal 57112 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%0A&O0{G(iXZnb0y>To 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 +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Faire pivoter la page de 90 degrés avec GroupDocs Viewer pour Java -Lorsque vous devez **faire pivoter une page de 90 degrés** dans un document—qu’il s’agisse d’un PDF, d’un fichier Word ou d’une feuille de calcul—le faire de manière programmatique fait gagner du temps et élimine les erreurs manuelles. Dans ce guide avancé, nous parcourrons les étapes exactes pour faire pivoter la première page de tout document pris en charge en utilisant **GroupDocs Viewer pour Java**. À la fin, vous disposerez d’un extrait réutilisable que vous pourrez intégrer à vos propres projets. -Nous aborderons également pourquoi la rotation des pages en Java est importante, les scénarios courants où cette technique brille, et comment garder l’opération légère. +If you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. -![Faire pivoter la première page d’un document avec GroupDocs.Viewer pour Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Réponses rapides -- **Que signifie « faire pivoter la page de 90 degrés » ?** Cela tourne la page sélectionnée dans le sens des aiguilles d’une montre d’un quart de tour. -- **Quelle bibliothèque gère la rotation ?** GroupDocs Viewer pour Java fournit la méthode `rotatePage`. -- **Puis-je faire pivoter des pages PDF avec Java ?** Oui—utilisez le même appel `rotatePage` ; cela fonctionne pour PDF, DOCX, XLSX, et plus encore. -- **Ai-je besoin d’une licence ?** Un essai gratuit fonctionne pour le développement ; une licence payante est requise pour la production. -- **L’opération est‑elle gourmande en mémoire ?** Pas lorsque vous fermez rapidement l’instance `Viewer` ; consultez les conseils de performance ci‑dessous. +- **Que signifie « faire pivoter la page de 90 degrés » ?** It turns the selected page clockwise by a quarter turn. +- **Quelle bibliothèque gère la rotation ?** GroupDocs Viewer for Java provides the `rotatePage` method. +- **Puis-je faire pivoter des pages PDF avec Java ?** Yes—use the same `rotatePage` call; it works for PDF, DOCX, XLSX, and more. +- **Ai-je besoin d’une licence ?** A free trial works for development; a paid license is required for production. +- **L’opération est‑elle gourmande en mémoire ?** Not when you close the `Viewer` instance promptly; see the performance tips below. ## Qu’est‑ce que « faire pivoter la page de 90 degrés » ? -Faire pivoter une page de 90 degrés réoriente la page du portrait au paysage (ou inversement) sans modifier le contenu sous‑jacent. C’est particulièrement pratique pour les présentations, l’impression de graphiques uniquement en paysage, ou la correction de documents numérisés qui ont été capturés de travers. +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. -## Pourquoi faire pivoter les pages de manière programmatique avec GroupDocs Viewer pour Java ? -GroupDocs Viewer abstrait les complexités de la gestion de dizaines de formats de fichiers. Il vous permet d’appliquer des transformations au niveau de la page—comme la rotation—tout en conservant le fichier original intact. L’API est fluide, thread‑safe, et fonctionne sur n’importe quel runtime Java 8+, ce qui en fait un choix fiable pour l’automatisation de niveau entreprise. +## Pourquoi faire pivoter les pages programmatiquement avec GroupDocs Viewer pour Java ? +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## Prérequis -- **GroupDocs.Viewer pour Java** (dernière version) -- **JDK 8** ou plus récent -- **Maven** (ou Gradle) pour la gestion des dépendances -- Un IDE tel qu’IntelliJ IDEA ou Eclipse -- Familiarité de base avec Java I/O -## Configurer GroupDocs.Viewer pour Java -Ajoutez le dépôt GroupDocs et la dépendance à votre `pom.xml`. Cet extrait est identique à celui du tutoriel original : +- GroupDocs Viewer for Java (latest version) +- JDK 8 or newer +- Maven (or Gradle) for dependency management +- An IDE such as IntelliJ IDEA or Eclipse +- Basic familiarity with Java I/O + +## Configuration de GroupDocs.Viewer pour Java + +Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: ```xml @@ -59,13 +118,13 @@ Ajoutez le dépôt GroupDocs et la dépendance à votre `pom.xml`. Cet extrait e ``` -### Obtention de licence -- **Essai gratuit** – téléchargez depuis le site GroupDocs. -- **Licence temporaire** – demandez-la si vous avez besoin d’une période d’évaluation prolongée. -- **Licence complète** – achetez-la pour les déploiements en production. +### Acquisition de licence +- **Free trial** – download from the GroupDocs site. +- **Temporary license** – request if you need an extended evaluation period. +- **Full license** – purchase for production deployments. ### Initialisation de base du Viewer -Le code suivant montre la façon minimale de créer une instance `Viewer`. Conservez-le exactement tel quel : +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -77,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Comment faire pivoter une page PDF en Java avec GroupDocs Viewer -Même si l’API fonctionne avec de nombreux formats, le PDF est le cas d’utilisation le plus courant pour la rotation de page. La même méthode `rotatePage` est utilisée, il suffit donc d’indiquer au viewer un fichier PDF et de spécifier le numéro de page. +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. ## Implémentation étape par étape : faire pivoter la première page de 90 degrés ### 1. Importer les packages requis -Ces imports vous donnent accès aux options de rendu PDF et à l’énumération de rotation. +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -91,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Définir les emplacements de sortie et créer le Viewer -Remplacez les chemins de substitution par vos répertoires réels. +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -109,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Configurer les options d’affichage PDF et appliquer la rotation -La méthode `rotatePage` prend le numéro de page (indexé à partir de 1) et une valeur d’énumération `Rotation`. +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -119,64 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Rendre le document -Enfin, appelez `view` pour générer le PDF pivoté. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### Comment ça fonctionne -- **PdfViewOptions** indique au Viewer de produire un fichier PDF. -- **rotatePage(int, Rotation)** fait pivoter uniquement la page que vous spécifiez, laissant le reste intact. -- La méthode prend en charge `ON_90_DEGREE`, `ON_180_DEGREE` et `ON_270_DEGREE`. +- **PdfViewOptions** directs the Viewer to generate a PDF output file. +- **rotatePage(int, Rotation)** rotates only the specified page, leaving all other pages unchanged. +- The method supports three rotation constants: `ON_90_DEGREE`, `ON_180_DEGREE`, and `ON_270_DEGREE`. ## Problèmes courants et solutions - | Symptôme | Cause probable | Solution | -|----------|----------------|----------| -| **FileNotFoundException** | Chemin incorrect ou dossier manquant | Vérifiez que `YOUR_OUTPUT_DIRECTORY` et `YOUR_DOCUMENT_DIRECTORY` existent et sont lisibles. | -| **Unsupported file format** | Tentative de rotation d’un format non pris en charge par le Viewer | Consultez la page [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Utilisation du mauvais numéro de page (indexé à partir de 0) | Rappelez‑vous que `rotatePage` utilise un index **à partir de 1**. | -| **Out‑of‑memory errors on large docs** | Rendu de nombreux gros fichiers dans un seul thread | Traitez les documents séquentiellement ou utilisez un pool de threads avec une concurrence limitée. | +|---------|--------------|-----| +| **FileNotFoundException** | Incorrect path or missing folder | Verify `YOUR_OUTPUT_DIRECTORY` and `YOUR_DOCUMENT_DIRECTORY` exist and are readable. | +| **Unsupported file format** | Trying to rotate a format not supported by Viewer | Check the [GroupDocs Viewer supported formats] page. | +| **No rotation visible** | Using the wrong page number (0‑based) | Remember `rotatePage` uses **1‑based** indexing. | +| **Out‑of‑memory errors on large docs** | Rendering many large files in a single thread | Process documents sequentially or use a thread pool with limited concurrency. | ## Applications pratiques -1. **Ajustements de présentation** – Convertir une diapositive portrait en paysage à la volée. -2. **Correction massive de documents** – Automatiser la correction de PDFs numérisés qui ont été capturés de travers. -3. **Sortie prête à imprimer** – Garantir que les graphiques en paysage s’impriment correctement sur du papier orienté portrait. + +1. **Ajustements de présentation** – Convertir une diapositive en portrait en paysage à la volée pour un meilleur impact visuel. +2. **Correction massive de documents** – Automatiser la correction de PDF numérisés capturés de travers, économisant des heures de travail manuel. +3. **Sortie prête à l’impression** – Garantir que les graphiques en paysage s’impriment correctement sur du papier orienté en portrait sans rotation manuelle dans le pilote d’imprimante. ## Conseils de performance -- **Fermer les ressources rapidement** – Le bloc `try‑with‑resources` libère automatiquement le `Viewer`. -- **Traitement par lots** – Lors du traitement de nombreux fichiers, réutilisez une seule instance `Viewer` par thread pour réduire la surcharge. -- **Surveiller la mémoire** – Pour les documents de plus de 100 Mo, envisagez de diffuser la sortie vers le disque plutôt que de la garder en mémoire. -## Questions fréquentes +- **Fermer les ressources rapidement** – Le bloc `try‑with‑resources` libère automatiquement le `Viewer`, libérant la mémoire. +- **Traitement par lots** – Réutiliser une seule instance de `Viewer` par thread pour réduire la surcharge d’initialisation. +- **Surveiller la mémoire** – Pour les documents de plus de 100 Mo, diffuser la sortie vers le disque au lieu de garder le fichier entier en mémoire ; GroupDocs Viewer peut traiter des fichiers de 200 Mo avec moins de 250 Mo de RAM. + +## Questions fréquemment posées -**Q : Puis-je faire pivoter plusieurs pages à la fois ?** -A : Oui—appelez `rotatePage()` pour chaque numéro de page que vous devez faire pivoter. +**Q : Puis‑je faire pivoter plusieurs pages à la fois ?** +**R :** Oui—appelez `rotatePage()` pour chaque numéro de page à faire pivoter, soit dans une boucle, soit en chaînant les appels. **Q : Existe‑t‑il un moyen d’annuler la rotation après le rendu ?** -A : Pas directement. Vous devrez rendre le document à nouveau sans les options de rotation. +**R :** Pas directement. Vous devez rendre à nouveau le document sans les options de rotation. -**Q : Quels formats de fichier prennent en charge la rotation de page dans GroupDocs Viewer ?** -A : DOCX, PDF, PPTX, XLSX, et de nombreux autres formats listés dans la documentation officielle. +**Q : Quels formats de fichiers supportent la rotation de page dans GroupDocs Viewer ?** +**R :** DOCX, PDF, PPTX, XLSX, et de nombreux autres formats listés dans la documentation officielle. **Q : Comment puis‑je faire pivoter les pages d’un lot de documents automatiquement ?** -A : Enveloppez le code dans une boucle qui itère sur une collection de chemins de fichiers, en appliquant la même logique `rotatePage` à chacun. +**R :** Encapsulez la logique de rotation dans une boucle qui parcourt une collection de chemins de fichiers, en appliquant la même configuration `rotatePage` à chaque fichier. -**Q : Quelle est la meilleure pratique pour gérer les erreurs lors de la rotation ?** -A : Encapsulez l’utilisation du Viewer dans un bloc `try‑catch`, consignez l’exception, et éventuellement continuez le traitement du fichier suivant. +**Q : Quelle est la meilleure pratique pour gérer les erreurs pendant la rotation ?** +**R :** Enveloppez l’utilisation du Viewer dans un bloc `try‑catch`, consignez les détails de l’exception, et continuez éventuellement le traitement du fichier suivant afin qu’une seule erreur n’arrête pas tout le lot. ## Ressources + - **Documentation** : [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **Référence API** : [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **Téléchargement** : [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Achat** : [Buy a License](https://purchase.groupdocs.com/buy) -- **Essai gratuit** : [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Licence temporaire** : [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **API reference** : [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Download** : [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Purchase** : [Buy a License](https://purchase.groupdocs.com/buy) +- **Free trial** : [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporary license** : [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support** : [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Dernière mise à jour :** 2026-03-29 -**Testé avec :** GroupDocs Viewer 25.2 for Java -**Auteur :** GroupDocs \ No newline at end of file +**Last Updated:** 2026-09-30 +**Tested With:** GroupDocs Viewer 25.2 for Java +**Author:** GroupDocs + +## Tutoriels associés + +- [Comment faire pivoter des pages PDF spécifiques avec GroupDocs.Viewer pour Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Charger un document depuis une URL en Java – Tutoriel GroupDocs.Viewer](/viewer/java/document-loading/) +- [Vues de documents GroupDocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/german/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/german/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 705fd0554..14ba1c70c 100644 --- a/content/german/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/german/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: Erfahren Sie, wie Sie eine Seite in Java mit GroupDocs Viewer um 90 Grad - drehen, einschließlich Einrichtung, Code und Leistungstipps. +date: '2026-09-30' +description: Erfahren Sie, wie Sie eine Seite in Java mit GroupDocs Viewer um 90 Grad + drehen, einschließlich Einrichtung, Code und Performance‑Tipps. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Seite um 90 Grad drehen mit GroupDocs Viewer für Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Drehen Sie eine Seite in Java mit GroupDocs Viewer um 90 Grad. Schritt‑für‑Schritt‑Anleitung, + Performance‑Tipps und praxisnahe Anwendungsbeispiele für Entwickler. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Seite um 90 Grad drehen mit GroupDocs Viewer für Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Seite um 90 Grad drehen mit GroupDocs Viewer für Java type: docs url: /de/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Seite um 90 Grad drehen mit GroupDocs Viewer für Java -Wenn Sie eine **Seite um 90 Grad drehen** müssen – egal ob es sich um ein PDF, eine Word‑Datei oder eine Tabellenkalkulation handelt – spart die programmatische Umsetzung Zeit und eliminiert manuelle Fehler. In diesem fortgeschrittenen Leitfaden führen wir Sie Schritt für Schritt durch die genauen Schritte, um die erste Seite eines beliebigen unterstützten Dokuments mit **GroupDocs Viewer for Java** zu drehen. Am Ende haben Sie ein wiederverwendbares Snippet, das Sie in Ihre eigenen Projekte einbinden können. -Wir werden außerdem besprechen, warum das Drehen von Seiten in Java wichtig ist, gängige Szenarien, in denen diese Technik glänzt, und wie Sie den Vorgang leichtgewichtig halten. +If you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. -![Erste Seite eines Dokuments mit GroupDocs.Viewer für Java drehen](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Schnelle Antworten -- **Was bedeutet „Seite um 90 Grad drehen“?** Sie dreht die ausgewählte Seite im Uhrzeigersinn um ein Viertel. -- **Welche Bibliothek führt die Drehung aus?** GroupDocs Viewer for Java stellt die Methode `rotatePage` bereit. -- **Kann ich PDF‑Seiten mit Java drehen?** Ja – verwenden Sie denselben Aufruf `rotatePage`; er funktioniert für PDF, DOCX, XLSX und weitere Formate. -- **Benötige ich eine Lizenz?** Eine kostenlose Testversion funktioniert für die Entwicklung; für die Produktion ist eine kostenpflichtige Lizenz erforderlich. -- **Ist der Vorgang speicherintensiv?** Nicht, wenn Sie die `Viewer`‑Instanz sofort schließen; siehe die nachfolgenden Leistungstipps. +- **Was bedeutet „rotate page 90 degrees“?** It turns the selected page clockwise by a quarter turn. +- **Welche Bibliothek führt die Drehung aus?** GroupDocs Viewer for Java provides the `rotatePage` method. +- **Kann ich PDF‑Seiten mit Java drehen?** Yes—use the same `rotatePage` call; it works for PDF, DOCX, XLSX, and more. +- **Brauche ich eine Lizenz?** A free trial works for development; a paid license is required for production. +- **Ist der Vorgang speicherintensiv?** Not when you close the `Viewer` instance promptly; see the performance tips below. -## Was bedeutet „Seite um 90 Grad drehen“? -Das Drehen einer Seite um 90 Grad richtet die Seite von Hochformat auf Querformat (oder umgekehrt) neu aus, ohne den zugrunde liegenden Inhalt zu verändern. Das ist besonders praktisch für Präsentationen, das Drucken von ausschließlich im Querformat vorliegenden Grafiken oder das Korrigieren von gescannten Dokumenten, die seitlich aufgenommen wurden. +## Was bedeutet „rotate page 90 degrees“? +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. ## Warum Seiten programmgesteuert mit GroupDocs Viewer für Java drehen? -GroupDocs Viewer abstrahiert die Komplexität beim Umgang mit Dutzenden von Dateiformaten. Es ermöglicht Ihnen, Seiten‑Transformationen – wie das Drehen – anzuwenden, während die Originaldatei unverändert bleibt. Die API ist flüssig, thread‑sicher und funktioniert auf jeder Java 8+ Laufzeit, was sie zu einer zuverlässigen Wahl für unternehmensweite Automatisierung macht. +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## Voraussetzungen -- **GroupDocs.Viewer for Java** (neueste Version) -- **JDK 8** oder neuer -- **Maven** (oder Gradle) für die Verwaltung von Abhängigkeiten +- GroupDocs Viewer für Java (neueste Version) +- JDK 8 oder neuer +- Maven (oder Gradle) für die Abhängigkeitsverwaltung - Eine IDE wie IntelliJ IDEA oder Eclipse -- Grundlegende Kenntnisse mit Java I/O +- Grundlegende Kenntnisse von Java I/O ## Einrichtung von GroupDocs.Viewer für Java -Fügen Sie das GroupDocs‑Repository und die Abhängigkeit zu Ihrer `pom.xml` hinzu. Dieser Codeausschnitt bleibt unverändert gegenüber dem Original‑Tutorial: +Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: ```xml @@ -62,12 +119,12 @@ Fügen Sie das GroupDocs‑Repository und die Abhängigkeit zu Ihrer `pom.xml` h ``` ### Lizenzbeschaffung -- **Kostenlose Testversion** – Download von der GroupDocs‑Website. -- **Temporäre Lizenz** – anfordern, wenn Sie einen verlängerten Evaluationszeitraum benötigen. -- **Vollständige Lizenz** – Kauf für Produktionsumgebungen. +- **Kostenlose Testversion** – download from the GroupDocs site. +- **Temporäre Lizenz** – request if you need an extended evaluation period. +- **Vollständige Lizenz** – purchase for production deployments. ### Grundlegende Viewer-Initialisierung -Der folgende Code zeigt die minimalste Methode, um eine `Viewer`‑Instanz zu erstellen. Belassen Sie ihn exakt wie gezeigt: +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +135,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Wie man PDF‑Seite in Java mit GroupDocs Viewer dreht -Obwohl die API über viele Formate hinweg funktioniert, ist PDF der häufigste Anwendungsfall für das Drehen von Seiten. Die gleiche `rotatePage`‑Methode wird verwendet, sodass Sie lediglich den Viewer auf eine PDF‑Datei zeigen und die Seitennummer angeben müssen. +## Wie man PDF‑Seite in Java mit GroupDocs Viewer rotiert +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. -## Schritt‑für‑Schritt-Implementierung: Erste Seite um 90 Grad drehen +## Schritt‑für‑Schritt‑Implementierung: Erste Seite um 90 Grad drehen -### 1. Importieren der erforderlichen Pakete -Diese Importe geben Ihnen Zugriff auf PDF‑Renderoptionen und das Rotations‑Enum. +### 1. Erforderliche Pakete importieren +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Ausgabepfade definieren und den Viewer erstellen -Ersetzen Sie die Platzhalter‑Pfade durch Ihre tatsächlichen Verzeichnisse. +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -110,8 +167,8 @@ public class RotateSpecificPage { } ``` -### 3. PDF-Ansichtsoptionen konfigurieren und die Drehung anwenden -Die Methode `rotatePage` nimmt die Seitennummer (1‑basiert) und einen `Rotation`‑Enum‑Wert entgegen. +### 3. PDF‑Ansichtsoptionen konfigurieren und die Drehung anwenden +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,65 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Dokument rendern -Rufen Sie schließlich `view` auf, um das gedrehte PDF zu erzeugen. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### Wie es funktioniert -- **PdfViewOptions** teilt dem Viewer mit, eine PDF‑Datei auszugeben. -- **rotatePage(int, Rotation)** dreht nur die angegebene Seite und lässt den Rest unverändert. -- Die Methode unterstützt `ON_90_DEGREE`, `ON_180_DEGREE` und `ON_270_DEGREE`. +- **PdfViewOptions** directs the Viewer to generate a PDF output file. +- **rotatePage(int, Rotation)** rotates only the specified page, leaving all other pages unchanged. +- The method supports three rotation constants: `ON_90_DEGREE`, `ON_180_DEGREE`, and `ON_270_DEGREE`. ## Häufige Probleme und Lösungen - | Symptom | Wahrscheinliche Ursache | Lösung | |---------|--------------------------|--------| -| **FileNotFoundException** | Falscher Pfad oder fehlender Ordner | Stellen Sie sicher, dass `YOUR_OUTPUT_DIRECTORY` und `YOUR_DOCUMENT_DIRECTORY` existieren und lesbar sind. | -| **Unsupported file format** | Versuch, ein von Viewer nicht unterstütztes Format zu drehen | Überprüfen Sie die Seite [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Verwendung der falschen Seitennummer (0‑basiert) | Denken Sie daran, dass `rotatePage` **1‑basierte** Indizierung verwendet. | -| **Out‑of‑memory errors on large docs** | Viele große Dateien in einem einzigen Thread rendern | Verarbeiten Sie Dokumente sequenziell oder verwenden Sie einen Thread‑Pool mit begrenzter Parallelität. | +| **FileNotFoundException** | Incorrect path or missing folder | Verify `YOUR_OUTPUT_DIRECTORY` and `YOUR_DOCUMENT_DIRECTORY` exist and are readable. | +| **Unsupported file format** | Trying to rotate a format not supported by Viewer | Check the [GroupDocs Viewer supported formats] page. | +| **No rotation visible** | Using the wrong page number (0‑based) | Remember `rotatePage` uses **1‑based** indexing. | +| **Out‑of‑memory errors on large docs** | Rendering many large files in a single thread | Process documents sequentially or use a thread pool with limited concurrency. | ## Praktische Anwendungen -1. **Präsentationsanpassungen** – Konvertieren Sie eine Hochformat‑Folien in Querformat in Echtzeit. -2. **Massenkorrektur von Dokumenten** – Automatisieren Sie das Korrigieren von gescannten PDFs, die seitlich aufgenommen wurden. -3. **Druckfertige Ausgabe** – Stellen Sie sicher, dass Querformat‑Grafiken korrekt auf Hochformat‑Papier gedruckt werden. +1. **Präsentationsanpassungen** – Convert a portrait slide to landscape on the fly for better visual impact. +2. **Massenkorrektur von Dokumenten** – Automate fixing of scanned PDFs that were captured sideways, saving hours of manual work. +3. **Druckfertige Ausgabe** – Ensure landscape graphics print correctly on portrait‑oriented paper without manual rotation in the printer driver. ## Leistungstipps -- **Ressourcen sofort schließen** – Der `try‑with‑resources`‑Block gibt die `Viewer`‑Instanz automatisch frei. -- **Batch‑Verarbeitung** – Beim Umgang mit vielen Dateien wiederverwenden Sie eine einzelne `Viewer`‑Instanz pro Thread, um den Overhead zu reduzieren. -- **Speicher überwachen** – Bei Dokumenten größer als 100 MB sollten Sie erwägen, die Ausgabe auf die Festplatte zu streamen, anstatt sie im Speicher zu halten. +- **Ressourcen sofort schließen** – The `try‑with‑resources` block automatically disposes of the `Viewer`, freeing memory. +- **Stapelverarbeitung** – Reuse a single `Viewer` instance per thread to reduce initialization overhead. +- **Speicher überwachen** – For documents larger than 100 MB, stream the output to disk instead of keeping the whole file in memory; GroupDocs Viewer can process 200 MB files using under 250 MB of RAM. ## Häufig gestellte Fragen -**F: Kann ich mehrere Seiten gleichzeitig drehen?** -A: Ja – rufen Sie `rotatePage()` für jede zu drehende Seitennummer auf. +**Q: Kann ich mehrere Seiten gleichzeitig drehen?** +A: Yes—invoke `rotatePage()` for each page number you need to rotate, either in a loop or by chaining calls. -**F: Gibt es eine Möglichkeit, die Drehung nach dem Rendern rückgängig zu machen?** -A: Nicht direkt. Sie müssten das Dokument erneut rendern, ohne die Drehungsoptionen. +**Q: Gibt es eine Möglichkeit, die Drehung nach dem Rendern rückgängig zu machen?** +A: Not directly. You would need to render the document again without the rotation options. -**F: Welche Dateiformate unterstützen die Seitendrehung in GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX und viele weitere Formate, die in der offiziellen Dokumentation aufgelistet sind. +**Q: Welche Dateiformate unterstützen die Seitendrehung in GroupDocs Viewer?** +A: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. -**F: Wie kann ich Seiten in einem Stapel von Dokumenten automatisch drehen?** -A: Verpacken Sie den Code in einer Schleife, die über eine Sammlung von Dateipfaden iteriert und die gleiche `rotatePage`‑Logik auf jedes anwendet. +**Q: Wie kann ich Seiten in einem Stapel von Dokumenten automatisch drehen?** +A: Wrap the rotation logic in a loop that iterates over a collection of file paths, applying the same `rotatePage` configuration to each file. -**F: Was ist die beste Praxis für den Umgang mit Fehlern während der Drehung?** -A: Umschließen Sie die Viewer‑Nutzung in einem `try‑catch`‑Block, protokollieren Sie die Ausnahme und fahren Sie optional mit der Verarbeitung der nächsten Datei fort. +**Q: Was ist die beste Praxis für den Umgang mit Fehlern während der Drehung?** +A: Enclose the Viewer usage in a `try‑catch` block, log the exception details, and optionally continue processing the next file to avoid a single failure stopping the whole batch. ## Ressourcen -- **Dokumentation**: [GroupDocs Viewer Java Dokumentation](https://docs.groupdocs.com/viewer/java/) -- **API-Referenz**: [GroupDocs API Referenz](https://reference.groupdocs.com/viewer/java/) -- **Download**: [GroupDocs Viewer für Java herunterladen](https://releases.groupdocs.com/viewer/java/) -- **Kauf**: [Lizenz kaufen](https://purchase.groupdocs.com/buy) -- **Kostenlose Testversion**: [Kostenlos testen](https://releases.groupdocs.com/viewer/java/) -- **Temporäre Lizenz**: [Temporäre Lizenz anfordern](https://purchase.groupdocs.com/temporary-license/) +- **Dokumentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API‑Referenz**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Kauf**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Kostenlose Testversion**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporäre Lizenz**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) -**Zuletzt aktualisiert:** 2026-03-29 -**Getestet mit:** GroupDocs Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +--- + +**Zuletzt aktualisiert:** 2026-09-30 +**Getestet mit:** GroupDocs Viewer 25.2 für Java +**Autor:** GroupDocs + +## Verwandte Tutorials + +- [Wie man bestimmte PDF‑Seiten mit GroupDocs.Viewer für Java dreht](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Dokument aus URL in Java laden – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [GroupDocs Viewer Java Dokumentansichten](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/greek/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/greek/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index b23292c0b..f8227d56f 100644 --- a/content/greek/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/greek/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,43 +1,101 @@ --- -date: '2026-03-29' -description: Μάθετε πώς να περιστρέψετε τη σελίδα 90 μοίρες σε Java χρησιμοποιώντας +date: '2026-09-30' +description: Μάθετε πώς να περιστρέφετε μια σελίδα 90 μοιρών σε Java χρησιμοποιώντας το GroupDocs Viewer, συμπεριλαμβανομένης της εγκατάστασης, του κώδικα και των συμβουλών απόδοσης. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Περιστρέψτε μια σελίδα 90 μοιρών σε Java χρησιμοποιώντας το GroupDocs + Viewer. Οδηγός βήμα‑βήμα, συμβουλές απόδοσης και πραγματικές περιπτώσεις χρήσης + για προγραμματιστές. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Περιστροφή σελίδας 90 μοιρών με το GroupDocs Viewer για Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Περιστροφή σελίδας 90 μοιρών με το GroupDocs Viewer για Java type: docs url: /el/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Περιστροφή σελίδας 90 μοιρών με GroupDocs Viewer for Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Όταν χρειάζεστε να **περιστρέψετε τη σελίδα 90 μοιρών** σε ένα έγγραφο—είτε πρόκειται για PDF, αρχείο Word ή υπολογιστικό φύλλο—η προγραμματιστική εκτέλεση εξοικονομεί χρόνο και εξαλείφει τα χειροκίνητα σφάλματα. Σε αυτόν τον προχωρημένο οδηγό, θα περάσουμε βήμα-βήμα τις ακριβείς ενέργειες για να περιστρέψετε την πρώτη σελίδα οποιουδήποτε υποστηριζόμενου εγγράφου χρησιμοποιώντας το **GroupDocs Viewer for Java**. Στο τέλος, θα έχετε ένα επαναχρησιμοποιήσιμο κομμάτι κώδικα που μπορείτε να ενσωματώσετε στα δικά σας έργα. -Θα συζητήσουμε επίσης γιατί η περιστροφή σελίδων σε Java είναι σημαντική, κοινά σενάρια όπου αυτή η τεχνική διαπρέπει, και πώς να διατηρήσετε τη λειτουργία ελαφριά. +# Περιστροφή σελίδας 90 μοιρών με το GroupDocs Viewer για Java -![Περιστροφή της πρώτης σελίδας ενός εγγράφου με GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +Αν χρειάζεστε **rotate page 90 degrees** σε ένα έγγραφο—είτε είναι PDF, αρχείο Word ή λογιστικό φύλλο—η προγραμματιστική υλοποίηση σε Java εξοικονομεί χρόνο, αφαιρεί τα χειροκίνητα σφάλματα και σας επιτρέπει να ενσωματώσετε τη λειτουργία σε αυτοματοποιημένες διαδικασίες. Σε αυτόν τον προχωρημένο οδηγό θα μάθετε πώς να περιστρέφετε την πρώτη σελίδα οποιουδήποτε υποστηριζόμενου εγγράφου χρησιμοποιώντας **GroupDocs Viewer for Java**, γιατί αυτή η δυνατότητα είναι σημαντική σε πραγματικά έργα, και πώς να διατηρήσετε τη διαδικασία ελαφριά και αποδοτική σε μνήμη. -## Γρήγορες Απαντήσεις -- **Τι σημαίνει η “περιστροφή σελίδας 90 μοιρών”;** Γυρίζει τη επιλεγμένη σελίδα δεξιόστροφα κατά ένα τέταρτο γύρο. -- **Ποια βιβλιοθήκη διαχειρίζεται την περιστροφή;** Το GroupDocs Viewer for Java παρέχει τη μέθοδο `rotatePage`. -- **Μπορώ να περιστρέψω σελίδες PDF με Java;** Ναι—χρησιμοποιήστε την ίδια κλήση `rotatePage`; λειτουργεί για PDF, DOCX, XLSX και άλλα. -- **Χρειάζομαι άδεια;** Μια δωρεάν δοκιμή λειτουργεί για ανάπτυξη· απαιτείται πληρωμένη άδεια για παραγωγή. -- **Είναι η λειτουργία εντατική σε μνήμη;** Όχι όταν κλείνετε άμεσα το αντικείμενο `Viewer`; δείτε τις συμβουλές απόδοσης παρακάτω. +![Περιστροφή της πρώτης σελίδας ενός εγγράφου με το GroupDocs.Viewer για Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) + +## Γρήγορες απαντήσεις +- **What does “rotate page 90 degrees” mean?** Σημαίνει ότι η επιλεγμένη σελίδα περιστρέφεται δεξιόστροφα κατά ένα τέταρτο γύρο. +- **Which library handles the rotation?** Το GroupDocs Viewer for Java παρέχει τη μέθοδο `rotatePage`. +- **Can I rotate PDF pages with Java?** Ναι—χρησιμοποιήστε την ίδια κλήση `rotatePage`; λειτουργεί για PDF, DOCX, XLSX και άλλα. +- **Do I need a license?** Μια δωρεάν δοκιμή λειτουργεί για ανάπτυξη· απαιτείται πληρωμένη άδεια για παραγωγή. +- **Is the operation memory‑intensive?** Όχι όταν κλείνετε άμεσα το αντικείμενο `Viewer`; δείτε τις συμβουλές απόδοσης παρακάτω. ## Τι είναι η “περιστροφή σελίδας 90 μοιρών”; -Η περιστροφή μιας σελίδας 90 μοιρών επαναπροσανατολίζει τη σελίδα από πορτραίτο σε τοπίο (ή αντίστροφα) χωρίς να τροποποιεί το υποκείμενο περιεχόμενο. Αυτό είναι ιδιαίτερα χρήσιμο για παρουσιάσεις, εκτύπωση γραφικών μόνο σε τοπίο, ή διόρθωση σαρωμένων εγγράφων που λήφθηκαν πλαγίως. +Η περιστροφή μιας σελίδας 90 μοιρών αλλάζει την προσανατολισμό της από πορτραίτο σε τοπίο (ή αντίστροφα) χωρίς να τροποποιεί το περιεχόμενο. Είναι χρήσιμη για παρουσιάσεις, εκτύπωση γραφικών μόνο σε τοπίο ή διόρθωση σαρωμένων εγγράφων που λήφθηκαν πλαγίως. Η περιστροφή εφαρμόζεται κατά το rendering, αφήνοντας το αρχικό αρχείο αμετάβλητο. -## Γιατί να περιστρέφετε σελίδες προγραμματιστικά με GroupDocs Viewer for Java; -Το GroupDocs Viewer αφαιρεί τις πολυπλοκότητες της διαχείρισης δεκάδων μορφών αρχείων. Σας επιτρέπει να εφαρμόζετε μετασχηματισμούς επιπέδου σελίδας—όπως η περιστροφή—διατηρώντας το αρχικό αρχείο ανέπαφο. Το API είναι ευανάγνωστο, ασφαλές ως προς τα νήματα, και λειτουργεί σε οποιοδήποτε runtime Java 8+, καθιστώντας το αξιόπιστη επιλογή για αυτοματοποίηση επιχειρησιακού επιπέδου. +## Γιατί να περιστρέφετε σελίδες προγραμματιστικά με το GroupDocs Viewer για Java; +Το GroupDocs Viewer υποστηρίζει **πάνω από 50 μορφές εισόδου και εξόδου**—συμπεριλαμβανομένων PDF, DOCX, PPTX, XLSX και πολλών τύπων εικόνων—ώστε μπορείτε να αποδώσετε οποιοδήποτε έγγραφο χωρίς εξωτερικούς μετατροπείς. Το API είναι fluent, thread‑safe και τρέχει σε οποιοδήποτε runtime Java 8+, καθιστώντας το αξιόπιστη επιλογή για αυτοματισμούς επιχειρησιακού επιπέδου που πρέπει να διαχειρίζονται δεκάδες τύπους αρχείων σταθερά. ## Προαπαιτούμενα -- **GroupDocs.Viewer for Java** (τελευταία έκδοση) -- **JDK 8** ή νεότερο -- **Maven** (ή Gradle) για διαχείριση εξαρτήσεων +- GroupDocs Viewer for Java (τελευταία έκδοση) +- JDK 8 ή νεότερο +- Maven (ή Gradle) για διαχείριση εξαρτήσεων - Ένα IDE όπως IntelliJ IDEA ή Eclipse - Βασική εξοικείωση με Java I/O @@ -63,12 +121,12 @@ weight: 1 ``` ### Απόκτηση άδειας -- **Free trial** – λήψη από τον ιστότοπο GroupDocs. -- **Temporary license** – αίτηση εάν χρειάζεστε παρατεταμένη περίοδο αξιολόγησης. -- **Full license** – αγορά για παραγωγικές εγκαταστάσεις. +- **Free trial** – κατεβάστε από τον ιστότοπο GroupDocs. +- **Temporary license** – ζητήστε αν χρειάζεστε παρατεταμένη περίοδο αξιολόγησης. +- **Full license** – αγοράστε για παραγωγικές εγκαταστάσεις. ### Βασική αρχικοποίηση Viewer -Ο παρακάτω κώδικας δείχνει τον ελάχιστο τρόπο δημιουργίας ενός αντικειμένου `Viewer`. Διατηρήστε τον ακριβώς όπως φαίνεται: +Η κλάση `Viewer` είναι το σημείο εισόδου που φορτώνει ένα έγγραφο και εκθέτει μεθόδους απόδοσης και μετασχηματισμού. Διατηρήστε τον κώδικα ακριβώς όπως φαίνεται: ```java import com.groupdocs.viewer.Viewer; @@ -79,13 +137,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Πώς να περιστρέψετε σελίδα PDF σε Java με το GroupDocs Viewer -Αν και το API λειτουργεί σε πολλές μορφές, το PDF είναι η πιο συνηθισμένη περίπτωση χρήσης για περιστροφή σελίδας. Χρησιμοποιείται η ίδια μέθοδος `rotatePage`, οπότε χρειάζεται μόνο να κατευθύνετε το Viewer σε ένα αρχείο PDF και να καθορίσετε τον αριθμό σελίδας. +## Πώς να περιστρέψετε σελίδα PDF με Java χρησιμοποιώντας το GroupDocs Viewer +Φορτώστε το αρχείο-στόχο με το `Viewer`, καθορίστε τον αριθμό σελίδας και καλέστε `rotatePage`. Η μέθοδος λειτουργεί για PDF, DOCX, PPTX, XLSX και οποιαδήποτε άλλη μορφή υποστηρίζεται από τη βιβλιοθήκη. Μετά την περιστροφή, μπορείτε να αποδώσετε το έγγραφο σε νέο PDF ή να το ρέξετε απευθείας στον πελάτη, διασφαλίζοντας ότι το αρχικό αρχείο παραμένει αμετάβλητο. -## Υλοποίηση βήμα-βήμα: Περιστροφή της πρώτης σελίδας 90 μοιρών +## Υλοποίηση βήμα‑βήμα: περιστροφή της πρώτης σελίδας 90 μοιρών ### 1. Εισαγωγή των απαιτούμενων πακέτων -Αυτές οι εισαγωγές σας δίνουν πρόσβαση στις επιλογές απόδοσης PDF και στο enum περιστροφής. +`PdfViewOptions` λέει στο Viewer να εξάγει αρχείο PDF, ενώ το enum `Rotation` ορίζει τη γωνία. Και οι δύο κλάσεις ανήκουν στο πακέτο `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -94,7 +152,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Ορισμός τοποθεσιών εξόδου και δημιουργία του Viewer -Αντικαταστήστε τις διαδρομές placeholder με τις πραγματικές σας καταλόγους. +Αντικαταστήστε τις διαδρομές placeholder με τους πραγματικούς σας φακέλους. Ο κατασκευαστής `Viewer` δέχεται ένα αντικείμενο `File` που δείχνει στο πηγαίο έγγραφο. ```java import java.nio.file.Path; @@ -112,7 +170,7 @@ public class RotateSpecificPage { ``` ### 3. Διαμόρφωση επιλογών προβολής PDF και εφαρμογή της περιστροφής -Η μέθοδος `rotatePage` δέχεται τον αριθμό σελίδας (από 1) και μια τιμή enum `Rotation`. +Η μέθοδος `rotatePage(int, Rotation)` δέχεται έναν **1‑based** δείκτη σελίδας και μια τιμή enum `Rotation`. Σε αυτό το παράδειγμα χρησιμοποιούμε `Rotation.ON_90_DEGREE` για να περιστρέψουμε την πρώτη σελίδα δεξιόστροφα. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -122,67 +180,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Απόδοση του εγγράφου -Τέλος, καλέστε τη μέθοδο `view` για να δημιουργήσετε το περιστραμμένο PDF. +Καλώντας `view` με τις ρυθμισμένες επιλογές γράφει το περιστραμμένο PDF στον φάκελο εξόδου. ```java viewer.view(viewOptions); ``` #### Πώς λειτουργεί -- **PdfViewOptions** λέει στο Viewer να εξάγει αρχείο PDF. -- **rotatePage(int, Rotation)** περιστρέφει μόνο τη σελίδα που καθορίζετε, αφήνοντας τις υπόλοιπες αμετάβλητες. -- Η μέθοδος υποστηρίζει `ON_90_DEGREE`, `ON_180_DEGREE` και `ON_270_DEGREE`. - -## Κοινά Προβλήματα και Λύσεις - -| Σύμπτωμα | Πιθανή Αιτία | Διόρθωση | -|----------|--------------|----------| -| **FileNotFoundException** | Λάθος διαδρομή ή λείπει ο φάκελος | Επαληθεύστε ότι οι φάκελοι `YOUR_OUTPUT_DIRECTORY` και `YOUR_DOCUMENT_DIRECTORY` υπάρχουν και είναι αναγνώσιμα. | +- **PdfViewOptions** καθοδηγεί το Viewer να δημιουργήσει αρχείο PDF. +- **rotatePage(int, Rotation)** περιστρέφει μόνο τη συγκεκριμένη σελίδα, αφήνοντας όλες τις άλλες αμετάβλητες. +- Η μέθοδος υποστηρίζει τρεις σταθερές περιστροφής: `ON_90_DEGREE`, `ON_180_DEGREE` και `ON_270_DEGREE`. + +## Συχνά προβλήματα και λύσεις +| Συμπτωμα | Πιθανή αιτία | Διόρθωση | +|---------|--------------|----------| +| **FileNotFoundException** | Λανθασμένη διαδρομή ή λείπει ο φάκελος | Επαληθεύστε ότι οι `YOUR_OUTPUT_DIRECTORY` και `YOUR_DOCUMENT_DIRECTORY` υπάρχουν και είναι αναγνώσιμες. | | **Unsupported file format** | Προσπάθεια περιστροφής μορφής που δεν υποστηρίζεται από το Viewer | Ελέγξτε τη σελίδα [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Χρήση λανθασμένου αριθμού σελίδας (από 0) | Θυμηθείτε ότι η `rotatePage` χρησιμοποιεί αρίθμηση **από 1**. | -| **Out‑of‑memory errors on large docs** | Απόδοση πολλών μεγάλων αρχείων σε ένα νήμα | Επεξεργαστείτε τα έγγραφα διαδοχικά ή χρησιμοποιήστε μια ομάδα νημάτων με περιορισμένη ταυτόχρονη εκτέλεση. | +| **No rotation visible** | Χρήση λανθασμένου αριθμού σελίδας (από 0) | Θυμηθείτε ότι το `rotatePage` χρησιμοποιεί αρίθμηση **1‑based**. | +| **Out‑of‑memory errors on large docs** | Απόδοση πολλών μεγάλων αρχείων σε ένα νήμα | Επεξεργαστείτε τα έγγραφα διαδοχικά ή χρησιμοποιήστε μια ομάδα νήματος με περιορισμένη ταυτόχρονη εκτέλεση. | -## Πρακτικές Εφαρμογές +## Πρακτικές εφαρμογές -- **Presentation adjustments** – Μετατρέψτε μια διαφάνεια πορτραίτου σε τοπίο άμεσα. -- **Bulk document correction** – Αυτοματοποιήστε τη διόρθωση σαρωμένων PDF που λήφθηκαν πλαγίως. -- **Print‑ready output** – Διασφαλίστε ότι τα γραφικά τοπίου εκτυπώνονται σωστά σε χαρτί προσανατολισμένο σε πορτραίτο. +1. **Presentation adjustments** – Μετατρέψτε μια κάθετη διαφάνεια σε οριζόντια επί τόπου για καλύτερη οπτική επίδραση. +2. **Bulk document correction** – Αυτοματοποιήστε τη διόρθωση σαρωμένων PDF που λήφθηκαν πλαγίως, εξοικονομώντας ώρες χειροκίνητης εργασίας. +3. **Print‑ready output** – Διασφαλίστε ότι τα τοπίο γραφικά εκτυπώνονται σωστά σε χαρτί προσανατολισμένο κατακόρυφα χωρίς χειροκίνητη περιστροφή στον οδηγό εκτυπωτή. -## Συμβουλές Απόδοσης +## Συμβουλές απόδοσης -- **Κλείσιμο πόρων άμεσα** – Το μπλοκ `try‑with‑resources` απελευθερώνει αυτόματα το `Viewer`. -- **Επεξεργασία σε παρτίδες** – Όταν διαχειρίζεστε πολλά αρχεία, επαναχρησιμοποιήστε ένα μόνο αντικείμενο `Viewer` ανά νήμα για μείωση του κόστους. -- **Παρακολούθηση μνήμης** – Για έγγραφα μεγαλύτερα από 100 MB, σκεφτείτε τη ροή εξόδου στο δίσκο αντί να τα κρατάτε στη μνήμη. +- **Close resources promptly** – Το μπλοκ `try‑with‑resources` διαγράφει αυτόματα το `Viewer`, ελευθερώνοντας μνήμη. +- **Batch processing** – Επαναχρησιμοποιήστε ένα μόνο αντικείμενο `Viewer` ανά νήμα για μείωση του κόστους εκκίνησης. +- **Monitor memory** – Για έγγραφα μεγαλύτερα από 100 MB, ρέξτε την έξοδο στο δίσκο αντί να κρατάτε ολόκληρο το αρχείο στη μνήμη· το GroupDocs Viewer μπορεί να επεξεργαστεί αρχεία 200 MB χρησιμοποιώντας κάτω από 250 MB RAM. -## Συχνές Ερωτήσεις +## Συχνές ερωτήσεις -**Q: Μπορώ να περιστρέψω πολλές σελίδες ταυτόχρονα;** -A: Ναι—καλέστε τη `rotatePage()` για κάθε αριθμό σελίδας που χρειάζεται να περιστραφεί. +**Q: Μπορώ να περιστρέψω πολλαπλές σελίδες ταυτόχρονα;** +A: Ναι—καλέστε `rotatePage()` για κάθε αριθμό σελίδας που χρειάζεται περιστροφή, είτε σε βρόχο είτε αλυσιδωτά. -**Q: Υπάρχει τρόπος να αναιρέσετε την περιστροφή μετά την απόδοση;** -A: Δεν είναι δυνατό άμεσα. Θα πρέπει να επαναδημιουργήσετε το έγγραφο χωρίς τις επιλογές περιστροφής. +**Q: Υπάρχει τρόπος να αναιρέσω τη περιστροφή μετά το rendering;** +A: Όχι άμεσα. Θα πρέπει να αποδώσετε ξανά το έγγραφο χωρίς τις επιλογές περιστροφής. -**Q: Ποιοι τύποι αρχείων υποστηρίζουν την περιστροφή σελίδας στο GroupDocs Viewer;** +**Q: Ποιες μορφές αρχείων υποστηρίζουν περιστροφή σελίδας στο GroupDocs Viewer;** A: DOCX, PDF, PPTX, XLSX και πολλές άλλες μορφές που αναφέρονται στην επίσημη τεκμηρίωση. -**Q: Πώς μπορώ να περιστρέψω σελίδες σε μια παρτίδα εγγράφων αυτόματα;** -A: Τυλίξτε τον κώδικα σε βρόχο που διατρέχει μια συλλογή διαδρομών αρχείων, εφαρμόζοντας την ίδια λογική `rotatePage` σε κάθε ένα. +**Q: Πώς μπορώ να περιστρέψω σελίδες σε μια δέσμη εγγράφων αυτόματα;** +A: Τυλίξτε τη λογική περιστροφής σε έναν βρόχο που διατρέχει μια συλλογή διαδρομών αρχείων, εφαρμόζοντας την ίδια διαμόρφωση `rotatePage` σε κάθε αρχείο. **Q: Ποια είναι η βέλτιστη πρακτική για τη διαχείριση σφαλμάτων κατά τη διάρκεια της περιστροφής;** -A: Τοποθετήστε τη χρήση του Viewer μέσα σε μπλοκ `try‑catch`, καταγράψτε την εξαίρεση και, προαιρετικά, συνεχίστε την επεξεργασία του επόμενου αρχείου. +A: Περιβάλλετε τη χρήση του Viewer σε μπλοκ `try‑catch`, καταγράψτε τις λεπτομέρειες της εξαίρεσης και, προαιρετικά, συνεχίστε με το επόμενο αρχείο ώστε ένα σφάλμα να μην σταματήσει ολόκληρη τη δέσμη. ## Πόροι - **Documentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **API reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) - **Purchase**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Free Trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Temporary License**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Free trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporary license**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Τελευταία ενημέρωση:** 2026-03-29 +**Τελευταία ενημέρωση:** 2026-09-30 **Δοκιμάστηκε με:** GroupDocs Viewer 25.2 for Java -**Συγγραφέας:** GroupDocs \ No newline at end of file +**Συγγραφέας:** GroupDocs + +## Σχετικά μαθήματα + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/hindi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/hindi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 5277a1be4..f783ec831 100644 --- a/content/hindi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/hindi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: GroupDocs Viewer का उपयोग करके जावा में पृष्ठ को 90 डिग्री घुमाना सीखें, - जिसमें सेटअप, कोड और प्रदर्शन टिप्स शामिल हैं। +date: '2026-09-30' +description: GroupDocs Viewer का उपयोग करके Java में पृष्ठ को 90 डिग्री घुमाने का + तरीका सीखें, जिसमें setup, code, और performance tips शामिल हैं। keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: GroupDocs Viewer का उपयोग करके Java में पृष्ठ को 90 डिग्री घुमाएँ। + Step‑by‑step guide, performance tips, और real‑world use cases डेवलपर्स के लिए। +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: GroupDocs Viewer for Java के साथ पृष्ठ को 90 डिग्री घुमाएँ +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: GroupDocs Viewer for Java के साथ पृष्ठ को 90 डिग्री घुमाएँ type: docs url: /hi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# GroupDocs Viewer for Java के साथ पृष्ठ को 90 डिग्री घुमाएँ +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -जब आपको किसी दस्तावेज़ में **पृष्ठ को 90 डिग्री घुमाने** की आवश्यकता होती है—चाहे वह PDF, Word फ़ाइल, या स्प्रेडशीट हो—तो इसे प्रोग्रामेटिक रूप से करने से समय बचता है और मैन्युअल त्रुटियों से बचा जा सकता है। इस उन्नत गाइड में हम **GroupDocs Viewer for Java** का उपयोग करके किसी भी समर्थित दस्तावेज़ के पहले पृष्ठ को घुमाने के सटीक चरणों को दिखाएंगे। अंत तक, आपके पास एक पुन: उपयोग योग्य स्निपेट होगा जिसे आप अपने प्रोजेक्ट्स में सम्मिलित कर सकते हैं। -हम यह भी चर्चा करेंगे कि जावा में पृष्ठ घुमाना क्यों महत्वपूर्ण है, किन सामान्य परिस्थितियों में यह तकनीक उपयोगी है, और ऑपरेशन को हल्का कैसे रखें। +# पृष्ठ को 90 डिग्री घुमाएँ GroupDocs Viewer for Java के साथ -![GroupDocs.Viewer for Java के साथ दस्तावेज़ के पहले पृष्ठ को घुमाएँ](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +यदि आपको किसी दस्तावेज़ में **पृष्ठ को 90 डिग्री घुमाएँ** की आवश्यकता है—चाहे वह PDF, Word फ़ाइल, या स्प्रेडशीट हो—तो इसे Java में प्रोग्रामेटिकली करना समय बचाता है, मैन्युअल त्रुटियों को हटाता है, और ऑपरेशन को स्वचालित पाइपलाइन में एम्बेड करने की अनुमति देता है। इस उन्नत गाइड में आप सीखेंगे कि **GroupDocs Viewer for Java** का उपयोग करके किसी भी समर्थित दस्तावेज़ का पहला पृष्ठ कैसे घुमाएँ, यह क्षमता वास्तविक‑दुनिया के प्रोजेक्ट्स में क्यों महत्वपूर्ण है, और प्रक्रिया को हल्का और मेमोरी‑कुशल कैसे रखें। + +![GroupDocs.Viewer for Java के साथ दस्तावेज़ का पहला पृष्ठ घुमाएँ](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## त्वरित उत्तर -- **“rotate page 90 degrees” का क्या अर्थ है?** यह चयनित पृष्ठ को घड़ी की दिशा में एक चौथाई घुमाव द्वारा घुमाता है। -- **कौन सा लाइब्रेरी घुमाव को संभालता है?** GroupDocs Viewer for Java `rotatePage` मेथड प्रदान करता है। -- **क्या मैं जावा के साथ PDF पृष्ठ घुमा सकता हूँ?** हाँ—उसी `rotatePage` कॉल का उपयोग करें; यह PDF, DOCX, XLSX और अन्य फ़ाइलों के लिए काम करता है। -- **क्या मुझे लाइसेंस चाहिए?** विकास के लिए एक मुफ्त ट्रायल काम करता है; उत्पादन के लिए भुगतान किया गया लाइसेंस आवश्यक है। -- **क्या यह ऑपरेशन मेमोरी‑गहन है?** जब आप `Viewer` इंस्टेंस को तुरंत बंद कर देते हैं तो नहीं; नीचे प्रदर्शन सुझाव देखें। +- **“पृष्ठ को 90 डिग्री घुमाएँ” का क्या अर्थ है?** यह चयनित पृष्ठ को घड़ी की दिशा में एक चौथाई घुमाव द्वारा घुमाता है। +- **कौन सा लाइब्रेरी घुमाव को संभालती है?** GroupDocs Viewer for Java `rotatePage` मेथड प्रदान करता है। +- **क्या मैं Java के साथ PDF पृष्ठ घुमा सकता हूँ?** हाँ—उसी `rotatePage` कॉल का उपयोग करें; यह PDF, DOCX, XLSX, और अधिक के लिए काम करता है। +- **क्या मुझे लाइसेंस की आवश्यकता है?** विकास के लिए एक मुफ्त ट्रायल काम करता है; उत्पादन के लिए एक भुगतान किया हुआ लाइसेंस आवश्यक है। +- **क्या यह ऑपरेशन मेमोरी‑गहन है?** `Viewer` इंस्टेंस को तुरंत बंद करने पर नहीं; नीचे प्रदर्शन टिप्स देखें। -## “rotate page 90 degrees” क्या है? -पृष्ठ को 90 डिग्री घुमाने से पृष्ठ को पोर्ट्रेट से लैंडस्केप (या इसके विपरीत) में पुनः व्यवस्थित किया जाता है, बिना मूल सामग्री को बदले। यह विशेष रूप से प्रस्तुतियों, केवल लैंडस्केप ग्राफ़िक्स को प्रिंट करने, या स्कैन किए गए दस्तावेज़ों को जो बगल में कैप्चर हुए थे, सुधारने के लिए उपयोगी है। +## “पृष्ठ को 90 डिग्री घुमाएँ” क्या है? +पृष्ठ को 90 डिग्री घुमाने से पृष्ठ को पोर्ट्रेट से लैंडस्केप (या इसके विपरीत) में पुनः अभिविन्यस्त किया जाता है, बिना अंतर्निहित सामग्री को बदले। यह प्रस्तुतियों, केवल लैंडस्केप ग्राफ़िक्स को प्रिंट करने, या स्कैन किए गए दस्तावेज़ों को जो बगल में कैप्चर हुए थे, सुधारने के लिए उपयोगी है। घुमाव रेंडर समय पर लागू होता है, मूल फ़ाइल अपरिवर्तित रहती है। -## GroupDocs Viewer for Java के साथ पृष्ठों को प्रोग्रामेटिक रूप से क्यों घुमाएँ? -GroupDocs Viewer कई फ़ाइल फ़ॉर्मैट्स को संभालने की जटिलताओं को सरल बनाता है। यह आपको पृष्ठ‑स्तर के परिवर्तन—जैसे घुमाव—को लागू करने देता है जबकि मूल फ़ाइल को अपरिवर्तित रखता है। API सहज, थ्रेड‑सेफ़ है, और किसी भी Java 8+ रनटाइम पर काम करता है, जिससे यह एंटरप्राइज़‑ग्रेड ऑटोमेशन के लिए एक विश्वसनीय विकल्प बनता है। +## GroupDocs Viewer for Java के साथ पृष्ठों को प्रोग्रामेटिकली क्यों घुमाएँ? +GroupDocs Viewer **50+ इनपुट और आउटपुट फ़ॉर्मेट**—PDF, DOCX, PPTX, XLSX, और कई इमेज टाइप्स सहित—को समर्थन करता है, इसलिए आप किसी भी दस्तावेज़ को बाहरी कन्वर्टर्स के बिना रेंडर कर सकते हैं। API फ़्लुएंट, थ्रेड‑सेफ़, और किसी भी Java 8+ रनटाइम पर चलता है, जिससे यह एंटरप्राइज़‑ग्रेड ऑटोमेशन के लिए विश्वसनीय विकल्प बनता है जो कई फ़ाइल प्रकारों को लगातार संभालना चाहिए। ## पूर्वापेक्षाएँ -- **GroupDocs.Viewer for Java** (नवीनतम संस्करण) -- **JDK 8** या नया -- **Maven** (या Gradle) निर्भरता प्रबंधन के लिए +- GroupDocs Viewer for Java (नवीनतम संस्करण) +- JDK 8 या नया +- निर्भरता प्रबंधन के लिए Maven (या Gradle) - IntelliJ IDEA या Eclipse जैसे IDE - Java I/O की बुनियादी परिचितता -## GroupDocs.Viewer for Java की सेटअप +## GroupDocs.Viewer for Java सेटअप करना -अपने `pom.xml` में GroupDocs रिपॉजिटरी और निर्भरता जोड़ें। यह स्निपेट मूल ट्यूटोरियल से अपरिवर्तित है: +अपने `pom.xml` में GroupDocs रिपॉज़िटरी और डिपेंडेंसी जोड़ें। यह स्निपेट मूल ट्यूटोरियल से अपरिवर्तित है: ```xml @@ -62,12 +119,12 @@ GroupDocs Viewer कई फ़ाइल फ़ॉर्मैट्स को ``` ### लाइसेंस प्राप्ति -- **Free trial** – GroupDocs साइट से डाउनलोड करें। -- **Temporary license** – यदि आपको विस्तारित मूल्यांकन अवधि चाहिए तो अनुरोध करें। -- **Full license** – उत्पादन परिनियोजन के लिए खरीदें। +- **मुफ़्त ट्रायल** – GroupDocs साइट से डाउनलोड करें। +- **अस्थायी लाइसेंस** – यदि आपको विस्तारित मूल्यांकन अवधि चाहिए तो अनुरोध करें। +- **पूर्ण लाइसेंस** – उत्पादन परिनियोजन के लिए खरीदें। -### बेसिक Viewer प्रारंभिककरण -निम्नलिखित कोड `Viewer` इंस्टेंस बनाने का न्यूनतम तरीका दिखाता है। इसे बिल्कुल जैसा दिखाया गया है वैसा ही रखें: +### बेसिक Viewer इनिशियलाइज़ेशन +`Viewer` क्लास वह एंट्री पॉइंट है जो दस्तावेज़ लोड करता है और रेंडरिंग तथा ट्रांसफ़ॉर्मेशन मेथड्स को एक्सपोज़ करता है। कोड को बिल्कुल जैसा दिखाया गया है वैसा रखें: ```java import com.groupdocs.viewer.Viewer; @@ -79,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## GroupDocs Viewer के साथ Java में PDF पृष्ठ कैसे घुमाएँ -हालाँकि API कई फ़ॉर्मैट्स पर काम करता है, PDF पृष्ठ घुमाने के लिए सबसे सामान्य उपयोग केस है। वही `rotatePage` मेथड उपयोग किया जाता है, इसलिए आपको केवल Viewer को PDF फ़ाइल की ओर इंगित करना है और पृष्ठ संख्या निर्दिष्ट करनी है। +`Viewer` के साथ लक्ष्य फ़ाइल लोड करें, पृष्ठ संख्या निर्दिष्ट करें, और `rotatePage` को कॉल करें। यह मेथड PDF, DOCX, PPTX, XLSX और लाइब्रेरी द्वारा समर्थित किसी भी फ़ॉर्मेट के लिए काम करता है। घुमाव के बाद, आप दस्तावेज़ को नई PDF में रेंडर कर सकते हैं या सीधे क्लाइंट को स्ट्रीम कर सकते हैं, जिससे मूल फ़ाइल अपरिवर्तित रहती है। -## चरण‑दर‑चरण कार्यान्वयन: पहले पृष्ठ को 90 डिग्री घुमाएँ +## चरण‑दर‑चरण कार्यान्वयन: पहला पृष्ठ 90 डिग्री घुमाएँ -### 1. आवश्यक पैकेज आयात करें -ये इम्पोर्ट्स आपको PDF रेंडरिंग विकल्प और रोटेशन enum तक पहुंच देते हैं। +### 1. आवश्यक पैकेज इम्पोर्ट करें +`PdfViewOptions` Viewer को PDF फ़ाइल आउटपुट करने के लिए बताता है, जबकि `Rotation` एनेम घुमाव का कोण परिभाषित करता है। दोनों क्लासेस `com.groupdocs.viewer.options` पैकेज में स्थित हैं। ```java import com.groupdocs.viewer.Viewer; @@ -92,8 +149,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. आउटपुट स्थान निर्धारित करें और Viewer बनाएं -प्लेसहोल्डर पाथ को अपने वास्तविक डायरेक्टरीज़ से बदलें। +### 2. आउटपुट लोकेशन परिभाषित करें और Viewer बनाएं +प्लेसहोल्डर पाथ को अपने वास्तविक डायरेक्टरी पाथ से बदलें। `Viewer` कंस्ट्रक्टर एक `File` ऑब्जेक्ट लेता है जो स्रोत दस्तावेज़ की ओर इशारा करता है। ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. PDF व्यू विकल्प कॉन्फ़िगर करें और घुमाव लागू करें -`rotatePage` मेथड पृष्ठ संख्या (1‑आधारित) और एक `Rotation` enum मान लेता है। +`rotatePage(int, Rotation)` मेथड **1‑आधारित** पेज इंडेक्स और `Rotation` एनेम वैल्यू लेता है। इस उदाहरण में हम `Rotation.ON_90_DEGREE` का उपयोग करके पहला पृष्ठ घड़ी की दिशा में घुमाते हैं। ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -120,68 +177,78 @@ PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` -### 4. दस्तावेज़ रेंडर करें -अंत में, घुमाए गए PDF को उत्पन्न करने के लिए `view` कॉल करें। +### 4. दस्तावेज़ को रेंडर करें +कॉन्फ़िगर किए गए विकल्पों के साथ `view` को कॉल करने से घुमा हुआ PDF आउटपुट फ़ोल्डर में लिखा जाता है। ```java viewer.view(viewOptions); ``` #### यह कैसे काम करता है -- **PdfViewOptions** Viewer को PDF फ़ाइल आउटपुट करने के लिए बताता है। -- **rotatePage(int, Rotation)** केवल निर्दिष्ट पृष्ठ को घुमाता है, बाकी को अपरिवर्तित छोड़ता है। -- यह मेथड `ON_90_DEGREE`, `ON_180_DEGREE`, और `ON_270_DEGREE` का समर्थन करता है। +- **PdfViewOptions** Viewer को PDF आउटपुट फ़ाइल जनरेट करने के लिए निर्देशित करता है। +- **rotatePage(int, Rotation)** केवल निर्दिष्ट पृष्ठ को घुमाता है, बाकी सभी पृष्ठों को अपरिवर्तित छोड़ता है। +- यह मेथड तीन घुमाव स्थिरांक को समर्थन देता है: `ON_90_DEGREE`, `ON_180_DEGREE`, और `ON_270_DEGREE`। ## सामान्य समस्याएँ और समाधान - | लक्षण | संभावित कारण | समाधान | |---------|--------------|-----| | **FileNotFoundException** | गलत पथ या फ़ोल्डर अनुपलब्ध | `YOUR_OUTPUT_DIRECTORY` और `YOUR_DOCUMENT_DIRECTORY` मौजूद हैं और पढ़ने योग्य हैं, यह सत्यापित करें। | | **Unsupported file format** | Viewer द्वारा समर्थित नहीं फ़ॉर्मेट को घुमाने का प्रयास | [GroupDocs Viewer supported formats] पृष्ठ देखें। | -| **No rotation visible** | गलत पृष्ठ संख्या (0‑आधारित) का उपयोग करना | ध्यान रखें `rotatePage` **1‑आधारित** इंडेक्सिंग का उपयोग करता है। | -| **Out‑of‑memory errors on large docs** | एक ही थ्रेड में कई बड़ी फ़ाइलें रेंडर करना | दस्तावेज़ों को क्रमिक रूप से प्रोसेस करें या सीमित समवर्तीता वाले थ्रेड पूल का उपयोग करें। | +| **No rotation visible** | गलत पृष्ठ संख्या (0‑आधारित) का उपयोग | `rotatePage` **1‑आधारित** इंडेक्सिंग उपयोग करता है, याद रखें। | +| **Out‑of‑memory errors on large docs** | एक ही थ्रेड में कई बड़े फ़ाइलों को रेंडर करना | दस्तावेज़ों को क्रमिक रूप से प्रोसेस करें या सीमित समवर्तीता के साथ थ्रेड पूल उपयोग करें। | ## व्यावहारिक अनुप्रयोग -1. **Presentation adjustments** – तुरंत पोर्ट्रेट स्लाइड को लैंडस्केप में बदलें। -2. **Bulk document correction** – स्कैन किए गए PDF जिन्हें बगल में कैप्चर किया गया था, उन्हें स्वचालित रूप से सुधारें। -3. **Print‑ready output** – लैंडस्केप ग्राफ़िक्स को पोर्ट्रेट‑ओरिएंटेड कागज पर सही ढंग से प्रिंट होना सुनिश्चित करें। +1. **प्रेजेंटेशन समायोजन** – बेहतर दृश्य प्रभाव के लिए पोर्ट्रेट स्लाइड को तुरंत लैंडस्केप में बदलें। +2. **बड़े पैमाने पर दस्तावेज़ सुधार** – स्कैन किए गए PDF को जो बगल में कैप्चर हुए थे, स्वचालित रूप से ठीक करें, जिससे कई घंटे का मैनुअल काम बचता है। +3. **प्रिंट‑तैयार आउटपुट** – लैंडस्केप ग्राफ़िक्स को पोर्ट्रेट‑ओरिएंटेड कागज पर सही ढंग से प्रिंट सुनिश्चित करें, प्रिंटर ड्राइवर में मैनुअल घुमाव के बिना। -## प्रदर्शन सुझाव +## प्रदर्शन टिप्स -- **Close resources promptly** – `try‑with‑resources` ब्लॉक स्वचालित रूप से `Viewer` को डिस्पोज़ कर देता है। -- **Batch processing** – कई फ़ाइलों को संभालते समय, ओवरहेड कम करने के लिए प्रति थ्रेड एक ही `Viewer` इंस्टेंस पुन: उपयोग करें। -- **Monitor memory** – 100 MB से बड़े दस्तावेज़ों के लिए, आउटपुट को मेमोरी में रखने के बजाय डिस्क पर स्ट्रीम करने पर विचार करें। +- **संसाधनों को तुरंत बंद करें** – `try‑with‑resources` ब्लॉक स्वचालित रूप से `Viewer` को डिस्पोज़ करता है, मेमोरी मुक्त करता है। +- **बैच प्रोसेसिंग** – प्रत्येक थ्रेड के लिए एक `Viewer` इंस्टेंस पुन: उपयोग करें ताकि इनिशियलाइज़ेशन ओवरहेड कम हो। +- **मेमोरी मॉनिटर करें** – 100 MB से बड़े दस्तावेज़ों के लिए, आउटपुट को डिस्क पर स्ट्रीम करें बजाय पूरी फ़ाइल को मेमोरी में रखने के; GroupDocs Viewer 200 MB फ़ाइलों को 250 MB RAM से कम में प्रोसेस कर सकता है। ## अक्सर पूछे जाने वाले प्रश्न -**Q: क्या मैं एक साथ कई पृष्ठ घुमा सकता हूँ?** -A: हाँ—जिस प्रत्येक पृष्ठ संख्या को घुमाने की आवश्यकता है, उसके लिए `rotatePage()` कॉल करें। +**प्रश्न: क्या मैं एक साथ कई पृष्ठ घुमा सकता हूँ?** +A: हाँ—आपको घुमाने वाले प्रत्येक पृष्ठ संख्या के लिए `rotatePage()` को कॉल करें, चाहे लूप में या चेनिंग कॉल्स द्वारा। -**Q: क्या रेंडरिंग के बाद घुमाव को वापस करने का कोई तरीका है?** -A: सीधे नहीं। आपको बिना घुमाव विकल्पों के दस्तावेज़ को फिर से रेंडर करना होगा। +**प्रश्न: क्या रेंडरिंग के बाद घुमाव को वापस करने का कोई तरीका है?** +A: सीधे नहीं। आपको घुमाव विकल्पों के बिना दस्तावेज़ को फिर से रेंडर करना होगा। -**Q: कौन से फ़ाइल फ़ॉर्मैट्स GroupDocs Viewer में पृष्ठ घुमाव का समर्थन करते हैं?** -A: DOCX, PDF, PPTX, XLSX, और आधिकारिक दस्तावेज़ में सूचीबद्ध कई अन्य फ़ॉर्मैट्स। +**प्रश्न: GroupDocs Viewer में कौन से फ़ाइल फ़ॉर्मेट पृष्ठ घुमाव का समर्थन करते हैं?** +A: DOCX, PDF, PPTX, XLSX, और आधिकारिक दस्तावेज़ में सूचीबद्ध कई अन्य फ़ॉर्मेट। -**Q: मैं दस्तावेज़ों के बैच में पृष्ठों को स्वचालित रूप से कैसे घुमा सकता हूँ?** -A: कोड को एक लूप में रखें जो फ़ाइल पाथ्स के संग्रह पर इटररेट करे, और प्रत्येक पर समान `rotatePage` लॉजिक लागू करे। +**प्रश्न: कई दस्तावेज़ों के बैच में पृष्ठों को स्वचालित रूप से कैसे घुमाएँ?** +A: घुमाव लॉजिक को एक लूप में रखें जो फ़ाइल पाथ्स के संग्रह पर इटरेट करे, प्रत्येक फ़ाइल पर समान `rotatePage` कॉन्फ़िगरेशन लागू करे। -**Q: घुमाव के दौरान त्रुटियों को संभालने की सर्वश्रेष्ठ प्रथा क्या है?** -A: Viewer उपयोग को `try‑catch` ब्लॉक में रखें, अपवाद को लॉग करें, और वैकल्पिक रूप से अगले फ़ाइल को प्रोसेस करना जारी रखें। +**प्रश्न: घुमाव के दौरान त्रुटियों को संभालने की सर्वोत्तम प्रथा क्या है?** +A: Viewer उपयोग को `try‑catch` ब्लॉक में रखें, अपवाद विवरण लॉग करें, और वैकल्पिक रूप से अगले फ़ाइल को प्रोसेस करना जारी रखें ताकि एकल विफलता पूरी बैच को रोक न सके। ## संसाधन - **दस्तावेज़ीकरण**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API संदर्भ**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **API रेफ़रेंस**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **डाउनलोड**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **खरीद**: [Buy a License](https://purchase.groupdocs.com/buy) +- **खरीदें**: [Buy a License](https://purchase.groupdocs.com/buy) - **मुफ़्त ट्रायल**: [Try Free](https://releases.groupdocs.com/viewer/java/) - **अस्थायी लाइसेंस**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **समर्थन**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**अंतिम अपडेट:** 2026-03-29 +**अंतिम अपडेट:** 2026-09-30 **परीक्षित संस्करण:** GroupDocs Viewer 25.2 for Java -**लेखक:** GroupDocs \ No newline at end of file +**लेखक:** GroupDocs + +## संबंधित ट्यूटोरियल + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/hongkong/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/hongkong/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 9993ccecf..26b4604dd 100644 --- a/content/hongkong/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/hongkong/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,24 +1,80 @@ --- -date: '2026-03-29' -description: 學習如何在 Java 中使用 GroupDocs Viewer 將頁面旋轉 90 度,包括設定、程式碼與效能技巧。 +date: '2026-09-30' +description: 了解如何在 Java 中使用 GroupDocs Viewer 將頁面旋轉 90 度,包括設定、程式碼與效能技巧。 keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: 在 Java 中使用 GroupDocs Viewer 將頁面旋轉 90 度。一步一步的指南、效能技巧以及開發人員的實際案例。 +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: 使用 GroupDocs Viewer for Java 將頁面旋轉 90 度 +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: 使用 GroupDocs Viewer for Java 將頁面旋轉 90 度 type: docs url: /zh-hant/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# 使用 GroupDocs Viewer for Java 將頁面旋轉 90 度 +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -當您需要在文件中 **將頁面旋轉 90 度**——無論是 PDF、Word 檔案或試算表——以程式方式執行可節省時間並避免人工錯誤。在本進階指南中,我們將逐步說明如何使用 **GroupDocs Viewer for Java** 旋轉任何支援文件的第一頁。完成後,您將擁有可直接嵌入自己專案的可重用程式碼片段。 -我們亦會討論在 Java 中旋轉頁面的重要性、此技術的常見應用情境,以及如何保持操作輕量化。 +# 將頁面旋轉 90 度(使用 GroupDocs Viewer for Java) + +如果您需要在文件中**將頁面旋轉 90 度**——無論是 PDF、Word 檔案或試算表——以 Java 程式方式執行可節省時間、避免人工錯誤,並且能將此操作嵌入自動化流程中。在本進階指南中,您將學習如何使用**GroupDocs Viewer for Java**將任何支援的文件的第一頁旋轉,了解此功能在實務專案中的重要性,以及如何保持流程輕量且記憶體效能高。 ![使用 GroupDocs.Viewer for Java 旋轉文件的第一頁](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## 快速解答 +## 快速答覆 - **「rotate page 90 degrees」是什麼意思?** 它會將選取的頁面順時針旋轉四分之一圈。 - **哪個函式庫負責旋轉?** GroupDocs Viewer for Java 提供 `rotatePage` 方法。 - **我可以使用 Java 旋轉 PDF 頁面嗎?** 可以——使用相同的 `rotatePage` 呼叫;它支援 PDF、DOCX、XLSX 等格式。 @@ -26,22 +82,24 @@ weight: 1 - **此操作會佔用大量記憶體嗎?** 若及時關閉 `Viewer` 實例則不會;請參考以下效能提示。 ## 「rotate page 90 degrees」是什麼? -將頁面旋轉 90 度會將頁面從直向(portrait)重新定位為橫向(landscape),或反之,且不會更改其底層內容。此功能特別適用於簡報、列印僅橫向的圖形,或校正掃描時因側向拍攝而產生的文件。 + +將頁面旋轉 90 度會將頁面從直向重新定位為橫向(或相反),而不會更改其底層內容。這在簡報、列印僅橫向的圖形,或校正掃描時側向拍攝的文件時非常實用。旋轉於渲染時套用,原始檔案保持不變。 ## 為何使用 GroupDocs Viewer for Java 以程式方式旋轉頁面? -GroupDocs Viewer 抽象化了處理數十種檔案格式的複雜性。它允許您在保持原始檔案不變的情況下,對頁面層級執行轉換(例如旋轉)。API 設計流暢、執行緒安全,且可在任何 Java 8 以上的執行環境運行,成為企業級自動化的可靠選擇。 + +GroupDocs Viewer 支援 **50 多種輸入與輸出格式**——包括 PDF、DOCX、PPTX、XLSX 以及多種影像類型——讓您無需外部轉換器即可渲染任何文件。API 設計流暢、執行緒安全,且可在任何 Java 8 以上的執行環境上運行,是必須一致處理數十種檔案類型的企業級自動化的可靠選擇。 ## 前置條件 -- **GroupDocs.Viewer for Java**(最新版本) -- **JDK 8** 或更新版本 -- **Maven**(或 Gradle)用於相依性管理 -- 如 IntelliJ IDEA 或 Eclipse 等 IDE -- 具備基本的 Java I/O 知識 +- GroupDocs Viewer for Java(最新版本) +- JDK 8 或更新版本 +- Maven(或 Gradle)用於相依管理 +- IntelliJ IDEA 或 Eclipse 等 IDE +- 基本的 Java I/O 知識 ## 設定 GroupDocs.Viewer for Java -將 GroupDocs 儲存庫與相依性加入您的 `pom.xml`。此程式碼片段與原始教學相同,未作變更: +將 GroupDocs 儲存庫與相依加入您的 `pom.xml`。此程式碼片段與原始教學相同: ```xml @@ -62,11 +120,11 @@ GroupDocs Viewer 抽象化了處理數十種檔案格式的複雜性。它允許 ### 取得授權 - **Free trial** – 從 GroupDocs 網站下載。 -- **Temporary license** – 如需延長評估期間可申請臨時授權。 -- **Full license** – 購買正式授權以供生產環境使用。 +- **Temporary license** – 若需延長評估期間可申請。 +- **Full license** – 購買以供正式部署使用。 ### 基本 Viewer 初始化 -以下程式碼示範建立 `Viewer` 實例的最小寫法。請保持與示範完全相同: +`Viewer` 類別是載入文件並提供渲染與轉換方法的入口。請保持程式碼與示範完全相同: ```java import com.groupdocs.viewer.Viewer; @@ -78,12 +136,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## 如何使用 GroupDocs Viewer 在 Java 中旋轉 PDF 頁面 -雖然 API 支援多種格式,PDF 是最常見的頁面旋轉使用情境。使用相同的 `rotatePage` 方法,只需將 Viewer 指向 PDF 檔案並指定頁碼即可。 + +使用 `Viewer` 載入目標檔案,指定頁碼,然後呼叫 `rotatePage`。此方法適用於 PDF、DOCX、PPTX、XLSX 以及庫支援的其他格式。旋轉後,您可以將文件渲染為新的 PDF,或直接串流至客戶端,確保原始檔案保持不變。 ## 步驟說明:將第一頁旋轉 90 度 ### 1. 匯入所需套件 -以下匯入可讓您使用 PDF 渲染選項與旋轉列舉型別。 +`PdfViewOptions` 告訴 Viewer 輸出 PDF 檔案,而 `Rotation` 列舉則定義旋轉角度。這兩個類別皆屬於 `com.groupdocs.viewer.options` 套件。 ```java import com.groupdocs.viewer.Viewer; @@ -92,7 +151,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. 定義輸出位置並建立 Viewer -請將佔位路徑替換為實際的目錄路徑。 +將佔位路徑替換為實際目錄。`Viewer` 建構子接受指向來源文件的 `File` 物件。 ```java import java.nio.file.Path; @@ -110,7 +169,7 @@ public class RotateSpecificPage { ``` ### 3. 設定 PDF 檢視選項並套用旋轉 -`rotatePage` 方法接受頁碼(從 1 開始)以及 `Rotation` 列舉值。 +`rotatePage(int, Rotation)` 方法接受 **1 基礎**(即從 1 開始計算)的頁碼與 `Rotation` 列舉值。在此範例中,我們使用 `Rotation.ON_90_DEGREE` 使第一頁順時針旋轉。 ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -119,68 +178,80 @@ PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` -### 4. 產生文件 -最後,呼叫 `view` 產生旋轉後的 PDF。 +### 4. 渲染文件 +呼叫 `view` 並傳入設定好的選項,即可將旋轉後的 PDF 寫入輸出資料夾。 ```java viewer.view(viewOptions); ``` #### 工作原理 -- **PdfViewOptions** 告訴 Viewer 輸出 PDF 檔案。 -- **rotatePage(int, Rotation)** 僅旋轉您指定的頁面,其他頁面保持不變。 -- 此方法支援 `ON_90_DEGREE`、`ON_180_DEGREE` 與 `ON_270_DEGREE`。 +- **PdfViewOptions** 指示 Viewer 產生 PDF 輸出檔案。 +- **rotatePage(int, Rotation)** 只旋轉指定的頁面,其他頁面保持不變。 +- 此方法支援三個旋轉常數:`ON_90_DEGREE`、`ON_180_DEGREE` 與 `ON_270_DEGREE`。 ## 常見問題與解決方案 | 症狀 | 可能原因 | 解決方式 | |---------|--------------|-----| -| **FileNotFoundException** | 路徑不正確或資料夾遺失 | 驗證 `YOUR_OUTPUT_DIRECTORY` 與 `YOUR_DOCUMENT_DIRECTORY` 是否存在且可讀取。 | -| **Unsupported file format** | 嘗試旋轉 Viewer 不支援的格式 | 檢查 [GroupDocs Viewer supported formats] 頁面。 | -| **No rotation visible** | 使用了錯誤的頁碼(0 為基礎) | 記得 `rotatePage` 使用 **1‑based** 索引。 | -| **Out‑of‑memory errors on large docs** | 在單一執行緒中渲染大量大型檔案 | 將文件逐一處理,或使用限制併發數的執行緒池。 | +| **FileNotFoundException** | 路徑不正確或資料夾遺失 | 請確認 `YOUR_OUTPUT_DIRECTORY` 與 `YOUR_DOCUMENT_DIRECTORY` 存在且可讀取。 | +| **Unsupported file format** | 嘗試旋轉 Viewer 不支援的格式 | 請檢查 [GroupDocs Viewer supported formats] 頁面。 | +| **No rotation visible** | 使用了錯誤的頁碼(0 基礎) | 請記得 `rotatePage` 使用 **1 基礎** 索引。 | +| **Out‑of‑memory errors on large docs** | 在單一執行緒中渲染大量大型檔案 | 請改為順序處理文件,或使用併發度受限的執行緒池。 | ## 實務應用 -1. **Presentation adjustments** – 即時將直向投影片轉為橫向。 -2. **Bulk document correction** – 自動校正側向掃描的 PDF。 -3. **Print‑ready output** – 確保橫向圖形在直向紙張上正確列印。 +1. **簡報調整** – 即時將直向投影片轉為橫向,以提升視覺效果。 +2. **大量文件校正** – 自動修正側向掃描的 PDF,節省大量人工時間。 +3. **列印就緒輸出** – 確保橫向圖形在直向紙張上正確列印,無需在印表機驅動程式中手動旋轉。 ## 效能建議 -- **Close resources promptly** – `try‑with‑resources` 區塊會自動釋放 `Viewer`。 -- **Batch processing** – 處理大量檔案時,於每個執行緒重複使用單一 `Viewer` 實例以降低開銷。 -- **Monitor memory** – 若文件超過 100 MB,建議將輸出串流至磁碟,而非保留於記憶體中。 +- **及時關閉資源** – `try‑with‑resources` 區塊會自動釋放 `Viewer`,釋放記憶體。 +- **批次處理** – 每個執行緒重複使用單一 `Viewer` 實例,以減少初始化開銷。 +- **監控記憶體** – 對於大於 100 MB 的文件,將輸出串流至磁碟而非全部載入記憶體;GroupDocs Viewer 可在低於 250 MB RAM 的情況下處理 200 MB 檔案。 ## 常見問答 **Q: 我可以一次旋轉多個頁面嗎?** -A: 可以——對每個需要旋轉的頁碼呼叫 `rotatePage()`。 +A: 可以——對每個需要旋轉的頁碼呼叫 `rotatePage()`,可在迴圈中或串接呼叫。 **Q: 渲染後有辦法撤銷旋轉嗎?** -A: 無法直接撤銷。必須在不使用旋轉選項的情況下重新渲染文件。 +A: 直接撤銷不可行。需要在不使用旋轉選項的情況下重新渲染文件。 **Q: 哪些檔案格式在 GroupDocs Viewer 中支援頁面旋轉?** A: DOCX、PDF、PPTX、XLSX 以及官方文件中列出的其他多種格式。 **Q: 如何自動在一批文件中旋轉頁面?** -A: 將程式碼包在迴圈中,遍歷檔案路徑集合,對每個檔案套用相同的 `rotatePage` 邏輯。 +A: 將旋轉邏輯包在迴圈中,遍歷檔案路徑集合,對每個檔案套用相同的 `rotatePage` 設定。 -**Q: 處理旋轉過程中的錯誤最佳做法是什麼?** -A: 將 Viewer 的使用包在 `try‑catch` 區塊中,記錄例外,並可選擇繼續處理下一個檔案。 +**Q: 處理旋轉過程中的錯誤最佳實踐是什麼?** +A: 將 Viewer 的使用包在 `try‑catch` 區塊中,記錄例外細節,並可選擇繼續處理下一個檔案,以免單一失敗中斷整個批次。 ## 資源 -- **Documentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Purchase**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Free Trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Temporary License**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) -- **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) +- **文件說明**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API 參考**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **下載**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **購買**: [Buy a License](https://purchase.groupdocs.com/buy) +- **免費試用**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **臨時授權**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **支援**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**最後更新:** 2026-03-29 +**最後更新:** 2026-09-30 **測試環境:** GroupDocs Viewer 25.2 for Java -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +## 相關教學 + +- [如何使用 GroupDocs.Viewer for Java 旋轉特定 PDF 頁面](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [在 Java 中從 URL 載入文件 – GroupDocs.Viewer 教學](/viewer/java/document-loading/) +- [GroupDocs Viewer Java 文件檢視](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/hungarian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/hungarian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 370ee82bc..dfa460d39 100644 --- a/content/hungarian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/hungarian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,49 +1,106 @@ --- -date: '2026-03-29' -description: Tanulja meg, hogyan lehet 90 fokkal elforgatni az oldalt Java-ban a GroupDocs - Viewer használatával, beleértve a beállítást, a kódot és a teljesítményre vonatkozó +date: '2026-09-30' +description: Ismerje meg, hogyan lehet 90 fokkal elforgatni egy oldalt Java-ban a + GroupDocs Viewer segítségével, beleértve a beállítást, a kódot és a teljesítmény tippeket. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Oldal elforgatása 90 fokkal a GroupDocs Viewer for Java segítségével +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Oldal 90 fokos elforgatása Java-ban a GroupDocs Viewer használatával. + Lépésről‑lépésre útmutató, teljesítmény tippek és valós példák fejlesztőknek. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Oldal 90 fokos elforgatása a GroupDocs Viewer for Java-val +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Oldal 90 fokos elforgatása a GroupDocs Viewer for Java-val type: docs url: /hu/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Oldal 90 fokos forgatása a GroupDocs Viewer for Java segítségével +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Amikor **oldal 90 fokos forgatása** szükséges egy dokumentumban – legyen az PDF, Word vagy táblázat – a programozott megoldás időt takarít meg és kiküszöböli a kézi hibákat. Ebben a haladó útmutatóban lépésről lépésre bemutatjuk, hogyan forgassuk meg az első oldalt bármely támogatott dokumentumban a **GroupDocs Viewer for Java** használatával. A végére egy újrahasználható kódrészletet kap, amelyet egyszerűen beilleszthet saját projektjeibe. -Megvitatjuk, miért fontos a Java-ban az oldalak forgatása, milyen gyakori helyzetekben jön jól ez a technika, és hogyan tartható a művelet könnyű súlyú. +# Oldal 90 fokos elforgatása a GroupDocs Viewer for Java segítségével -![Az első oldal forgatása egy dokumentumban a GroupDocs.Viewer for Java-val](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +Ha egy dokumentumban **oldal 90 fokos elforgatására** van szükség — legyen az PDF, Word fájl vagy táblázat — a Java programozott megoldás időt takarít meg, kiküszöböli a kézi hibákat, és lehetővé teszi a művelet beágyazását automatizált folyamatokba. Ebben a haladó útmutatóban megtanulja, hogyan kell elforgatni egy támogatott dokumentum első oldalát a **GroupDocs Viewer for Java** használatával, miért fontos ez a képesség a valós projektekben, és hogyan tartsa a folyamatot könnyűsúlyú és memóriahatékony. + +![Az első oldal elforgatása egy dokumentumban a GroupDocs.Viewer for Java segítségével](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Gyors válaszok -- **Mi jelent a “rotate page 90 degrees” kifejezés?** A kijelölt oldalt negyedfordulattal forgatja az óramutató járásával megegyező irányba. -- **Melyik könyvtár kezeli a forgatást?** A GroupDocs Viewer for Java biztosítja a `rotatePage` metódust. -- **Forgathatok PDF oldalakat Java-val?** Igen—használja ugyanazt a `rotatePage` hívást; PDF, DOCX, XLSX és más formátumokra is működik. -- **Szükségem van licencre?** A ingyenes próba verzió fejlesztéshez megfelelő; a termeléshez fizetett licenc szükséges. +- **Mi jelent a “rotate page 90 degrees”?** Az kiválasztott oldalt egy negyed fordulatot forgatja az óramutató járásával megegyező irányba. +- **Melyik könyvtár kezeli az elforgatást?** A GroupDocs Viewer for Java biztosítja a `rotatePage` metódust. +- **Forgathatok PDF oldalakat Java-val?** Igen — használja ugyanazt a `rotatePage` hívást; PDF, DOCX, XLSX és további formátumok esetén is működik. +- **Szükségem van licencre?** A ingyenes próba verzió fejlesztéshez használható; a termeléshez fizetett licenc szükséges. - **Memóriaigényes a művelet?** Nem, ha a `Viewer` példányt gyorsan bezárja; lásd az alábbi teljesítmény tippeket. -## Mi a “rotate page 90 degrees”? -Az oldal 90 fokos forgatása a dokumentum tájolását állóból fekvőbe (vagy fordítva) változtatja meg, anélkül, hogy a mögöttes tartalmat módosítaná. Különösen hasznos prezentációkhoz, csak fekvő grafikák nyomtatásához vagy a oldalra álló módon beolvasott dokumentumok korrigálásához. +## Mi az a “rotate page 90 degrees”? +Az oldal 90 fokos elforgatása újraorientálja az oldalt álló formátumból fekvő formátumba (vagy fordítva) anélkül, hogy a mögöttes tartalmat megváltoztatná. Ez hasznos prezentációkhoz, csak fekvő tájolású grafikák nyomtatásához, vagy a féloldalas beolvasott dokumentumok korrigálásához, amelyek oldalra lettek rögzítve. Az elforgatás a renderelés során kerül alkalmazásra, az eredeti fájlt változatlanul hagyva. -## Miért forgassuk programozottan az oldalakat a GroupDocs Viewer for Java-val? -A GroupDocs Viewer elrejti a több tucat fájlformátum kezelésének összetettségét. Lehetővé teszi az oldal‑szintű transzformációk – például a forgatás – alkalmazását, miközben az eredeti fájl érintetlen marad. Az API folyékony, szál‑biztos, és bármely Java 8+ környezetben működik, így megbízható választás vállalati szintű automatizáláshoz. +## Miért érdemes programozottan elforgatni oldalakat a GroupDocs Viewer for Java használatával? +A GroupDocs Viewer **50+ bemeneti és kimeneti formátumot** támogat — beleértve a PDF, DOCX, PPTX, XLSX és számos képformátumot — így bármilyen dokumentumot megjeleníthet külső konvertáló nélkül. Az API folyékony, szálbiztos, és bármely Java 8+ környezetben fut, ami megbízható választássá teszi vállalati szintű automatizáláshoz, amelynek konzisztensen kell kezelnie tucatnyi fájltípust. ## Előfeltételek -- **GroupDocs.Viewer for Java** (legújabb verzió) -- **JDK 8** vagy újabb -- **Maven** (vagy Gradle) a függőségkezeléshez -- Egy IDE, például IntelliJ IDEA vagy Eclipse +- GroupDocs Viewer for Java (legújabb verzió) +- JDK 8 vagy újabb +- Maven (vagy Gradle) a függőségkezeléshez +- IDE, például IntelliJ IDEA vagy Eclipse - Alapvető ismeretek a Java I/O-val kapcsolatban ## A GroupDocs.Viewer for Java beállítása -Adja hozzá a GroupDocs tárolót és a függőséget a `pom.xml` fájlhoz. Ez a kódrészlet változatlan az eredeti oktatóanyagtól: +Adja hozzá a GroupDocs tárolót és függőséget a `pom.xml` fájlhoz. Ez a kódrészlet változatlan az eredeti útmutatóból: ```xml @@ -63,12 +120,12 @@ Adja hozzá a GroupDocs tárolót és a függőséget a `pom.xml` fájlhoz. Ez a ``` ### Licenc beszerzése -- **Ingyenes próba** – letöltés a GroupDocs weboldaláról. -- **Ideiglenes licenc** – kérje, ha hosszabb értékelési időszakra van szüksége. -- **Teljes licenc** – vásárlás termelési környezethez. +- **Free trial** – letöltés a GroupDocs weboldaláról. +- **Temporary license** – kérje, ha hosszabb értékelési időszakra van szüksége. +- **Full license** – vásárlás termelési környezethez. ### Alapvető Viewer inicializálás -Az alábbi kód mutatja a legkisebb módot egy `Viewer` példány létrehozására. Tartsa pontosan úgy, ahogy látható: +A `Viewer` osztály a belépési pont, amely betölti a dokumentumot, és elérhetővé teszi a renderelési és transzformációs metódusokat. Tartsa a kódot pontosan úgy, ahogy látható: ```java import com.groupdocs.viewer.Viewer; @@ -79,13 +136,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Hogyan forgassuk meg a PDF oldalt Java-val a GroupDocs Viewer segítségével -Bár az API sok formátumot támogat, a PDF a leggyakoribb eset az oldal forgatásához. Ugyanazt a `rotatePage` metódust használjuk, így csak a Viewer‑t kell egy PDF fájlra mutatni, és megadni az oldalszámot. +## Hogyan forgassuk el a PDF oldalt Java-val a GroupDocs Viewer segítségével +Töltse be a célfájlt a `Viewer` segítségével, adja meg az oldalszámot, és hívja meg a `rotatePage` metódust. A metódus PDF, DOCX, PPTX, XLSX és a könyvtár által támogatott bármely más formátum esetén működik. Az elforgatás után a dokumentumot új PDF-be renderelheti vagy közvetlenül a kliensnek streamelheti, biztosítva, hogy az eredeti fájl érintetlen marad. -## Lépésről‑lépésre megvalósítás: Az első oldal 90 fokos forgatása +## Lépésről‑lépésre megvalósítás: az első oldal 90 fokos elforgatása ### 1. A szükséges csomagok importálása -Ezek az importok hozzáférést biztosítanak a PDF renderelési opciókhoz és a forgatás enumhoz. +`PdfViewOptions` azt mondja a Viewernek, hogy PDF fájlt generáljon, míg a `Rotation` enum határozza meg a szöget. Mindkét osztály a `com.groupdocs.viewer.options` csomagban található. ```java import com.groupdocs.viewer.Viewer; @@ -93,8 +150,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Kimeneti helyek meghatározása és a Viewer létrehozása -Cserélje le a helyőrző útvonalakat a saját könyvtáraira. +### 2. Kimeneti helyek definiálása és a Viewer létrehozása +Cserélje le a helyőrző útvonalakat a saját könyvtáraira. A `Viewer` konstruktor egy `File` objektumot fogad, amely a forrásdokumentumra mutat. ```java import java.nio.file.Path; @@ -111,8 +168,8 @@ public class RotateSpecificPage { } ``` -### 3. PDF nézet beállítások konfigurálása és a forgatás alkalmazása -A `rotatePage` metódus az oldalszámot (1‑alapú) és egy `Rotation` enum értéket vár. +### 3. PDF nézet opciók konfigurálása és az elforgatás alkalmazása +A `rotatePage(int, Rotation)` metódus **1‑alapú** oldalkezelést és egy `Rotation` enum értéket vár. Ebben a példában a `Rotation.ON_90_DEGREE` értéket használjuk az első oldal óramutató járásával megegyező irányú elforgatásához. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -122,66 +179,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Dokumentum renderelése -Végül hívja meg a `view` metódust a forgatott PDF generálásához. +A `view` hívása a konfigurált opciókkal a forgatott PDF-et a kimeneti mappába írja. ```java viewer.view(viewOptions); ``` #### Hogyan működik -- **PdfViewOptions** azt mondja a Viewernek, hogy PDF fájlt generáljon. -- **rotatePage(int, Rotation)** csak a megadott oldalt forgatja, a többit érintetlenül hagyja. -- A metódus támogatja az `ON_90_DEGREE`, `ON_180_DEGREE` és `ON_270_DEGREE` értékeket. +- **PdfViewOptions** a Viewernek PDF kimeneti fájlt generál. +- **rotatePage(int, Rotation)** csak a megadott oldalt forgatja el, a többi oldal változatlan marad. +- A metódus három forgatási konstansot támogat: `ON_90_DEGREE`, `ON_180_DEGREE` és `ON_270_DEGREE`. ## Gyakori problémák és megoldások + | Tünet | Valószínű ok | Megoldás | |---------|--------------|-----| | **FileNotFoundException** | Helytelen útvonal vagy hiányzó mappa | Ellenőrizze, hogy a `YOUR_OUTPUT_DIRECTORY` és a `YOUR_DOCUMENT_DIRECTORY` létezik és olvasható. | -| **Unsupported file format** | Megpróbál egy olyan formátumot forgatni, amelyet a Viewer nem támogat | Ellenőrizze a [GroupDocs Viewer által támogatott formátumok] oldalt. | -| **No rotation visible** | Helytelen oldalszám használata (0‑alapú) | Ne feledje, hogy a `rotatePage` **1‑alapú** indexelést használ. | -| **Memóriahiány hibák nagy dokumentumoknál** | Sok nagy fájl renderelése egyetlen szálban | Dolgozza fel a dokumentumokat sorban, vagy használjon korlátozott párhuzamosságú szálkészletet. | +| **Unsupported file format** | Olyan formátum elforgatásának kísérlete, amelyet a Viewer nem támogat | Ellenőrizze a [GroupDocs Viewer supported formats] oldalt. | +| **No rotation visible** | A hibás oldalszám használata (0‑alapú) | Ne feledje, hogy a `rotatePage` **1‑alapú** indexelést használ. | +| **Out‑of‑memory errors on large docs** | Sok nagy fájl renderelése egyetlen szálban | Feldolgozza a dokumentumokat sorban, vagy használjon korlátozott párhuzamosságú szálkészletet. | ## Gyakorlati alkalmazások -1. **Prezentációs beállítások** – Átalakít egy álló diát futás közben fekvővé. -2. **Tömeges dokumentumkorrekció** – Automatizálja a félrehajtottan beolvasott PDF-ek javítását. -3. **Nyomtatásra kész kimenet** – Biztosítja, hogy a fekvő grafikák helyesen nyomtatódjanak álló papírra. +- **Presentation adjustments** – Átalakítja a portré diát helyben fekvő formátumba a jobb vizuális hatás érdekében. +- **Bulk document correction** – Automatizálja a féloldalas beolvasott PDF-ek javítását, amelyek oldalra lettek rögzítve, órákat takarítva meg a kézi munkában. +- **Print‑ready output** – Biztosítja, hogy a fekvő grafikák helyesen nyomtatódjanak portré tájolású papírra a nyomtató driverben történő kézi elforgatás nélkül. ## Teljesítmény tippek -- **Zárja be az erőforrásokat gyorsan** – A `try‑with‑resources` blokk automatikusan felszabadítja a `Viewer`‑t. -- **Kötegelt feldolgozás** – Sok fájl kezelésekor használjon egyetlen `Viewer` példányt szálanként a terhelés csökkentése érdekében. -- **Memória figyelése** – 100 MB-nál nagyobb dokumentumok esetén fontolja meg a kimenet lemezre streamelését a memória helyett. +- **Close resources promptly** – A `try‑with‑resources` blokk automatikusan felszabadítja a `Viewer` példányt, így memória felszabadul. +- **Batch processing** – Használjon egyetlen `Viewer` példányt szálanként a kezdeti költségek csökkentéséhez. +- **Monitor memory** – 100 MB-nál nagyobb dokumentumok esetén streamelje a kimenetet lemezre ahelyett, hogy a teljes fájlt memóriában tartaná; a GroupDocs Viewer 200 MB-os fájlokat képes feldolgozni 250 MB alatti RAM használattal. -## Gyakran Ismételt Kérdések +## Gyakran ismételt kérdések **Q: Forgathatok több oldalt egyszerre?** -**A: Igen—hívja a `rotatePage()`‑t minden forgatni kívánt oldalszámra.** +A: Igen — hívja meg a `rotatePage()` metódust minden elforgatni kívánt oldalszámra, akár ciklusban, akár láncolt hívásokkal. -**Q: Van mód a forgatás visszavonására a renderelés után?** -**A: Nem közvetlenül. Újra kell renderelni a dokumentumot a forgatási beállítások nélkül.** +**Q: Van mód az elforgatás visszavonására a renderelés után?** +A: Nem közvetlenül. Újra kell renderelni a dokumentumot a forgatási opciók nélkül. -**Q: Mely fájlformátumok támogatják az oldal forgatását a GroupDocs Viewer-ben?** -**A: DOCX, PDF, PPTX, XLSX és számos más formátum, amelyek az hivatalos dokumentációban szerepelnek.** +**Q: Mely fájlformátumok támogatják az oldal elforgatását a GroupDocs Viewerben?** +A: DOCX, PDF, PPTX, XLSX és számos egyéb formátum, amely a hivatalos dokumentációban szerepel. **Q: Hogyan forgathatok oldalakat automatikusan egy dokumentumcsoportban?** -**A: Tegye a kódot egy ciklusba, amely egy fájlútvonalak gyűjteményén iterál, és minden egyesre alkalmazza a `rotatePage` logikát.** +A: Tegye a forgatási logikát egy ciklusba, amely egy fájlútvonalak gyűjteményén iterál, és minden fájlra ugyanazt a `rotatePage` konfigurációt alkalmazza. -**Q: Mi a legjobb gyakorlat a forgatás közbeni hibák kezelésére?** -**A: Zárja a Viewer használatát egy `try‑catch` blokkba, naplózza a kivételt, és opcionálisan folytassa a következő fájl feldolgozását.** +**Q: Mi a legjobb gyakorlat a hibakezelésre az elforgatás során?** +A: A Viewer használatát `try‑catch` blokkba kell helyezni, naplózni a kivétel részleteit, és opcionálisan folytatni a következő fájl feldolgozását, hogy egyetlen hiba ne állítsa le az egész köteg feldolgozását. -## Erőforrások +## Források -- **Dokumentáció**: [GroupDocs Viewer Java Dokumentáció](https://docs.groupdocs.com/viewer/java/) -- **API Referencia**: [GroupDocs API Referencia](https://reference.groupdocs.com/viewer/java/) -- **Letöltés**: [GroupDocs Viewer for Java letöltése](https://releases.groupdocs.com/viewer/java/) -- **Vásárlás**: [Licenc vásárlása](https://purchase.groupdocs.com/buy) -- **Ingyenes próba**: [Próbálja ki ingyen](https://releases.groupdocs.com/viewer/java/) -- **Ideiglenes licenc**: [Ideiglenes licenc kérése](https://purchase.groupdocs.com/temporary-license/) -- **Támogatás**: [GroupDocs Fórum](https://forum.groupdocs.com/c/viewer/9) +- **Dokumentáció**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API referencia**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Letöltés**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Licenc vásárlása**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Ingyenes próba**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Ideiglenes licenc kérése**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Támogatás**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Utoljára frissítve:** 2026-03-29 -**Tesztelve:** GroupDocs Viewer 25.2 for Java -**Szerző:** GroupDocs \ No newline at end of file +**Legutóbb frissítve:** 2026-09-30 +**Tesztelve a következővel:** GroupDocs Viewer 25.2 for Java +**Szerző:** GroupDocs + +## Kapcsolódó oktatóanyagok + +- [Hogyan forgassuk el a konkrét PDF oldalakat a GroupDocs.Viewer for Java segítségével](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Dokumentum betöltése URL-ről Java-ban – GroupDocs.Viewer oktatóanyag](/viewer/java/document-loading/) +- [Groupdocs Viewer Java dokumentum nézetek](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/indonesian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/indonesian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 1e783748d..35257eb9e 100644 --- a/content/indonesian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/indonesian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,47 +1,102 @@ --- -date: '2026-03-29' -description: Pelajari cara memutar halaman 90 derajat di Java menggunakan GroupDocs +date: '2026-09-30' +description: Pelajari cara memutar halaman 90 derajat di Java menggunakan GroupDocs Viewer, termasuk pengaturan, kode, dan tips kinerja. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Putar halaman 90 derajat dengan GroupDocs Viewer untuk Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Putar halaman 90 derajat di Java menggunakan GroupDocs Viewer. Panduan + langkah demi langkah, tips kinerja, dan contoh penggunaan dunia nyata untuk pengembang. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Putar halaman 90 derajat dengan GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Putar halaman 90 derajat dengan GroupDocs Viewer for Java type: docs url: /id/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Putar halaman 90 derajat dengan GroupDocs Viewer untuk Java -Ketika Anda perlu **memutar halaman 90 derajat** dalam sebuah dokumen—baik itu PDF, file Word, atau spreadsheet—melakukannya secara programatik menghemat waktu dan menghilangkan kesalahan manual. Dalam panduan lanjutan ini kami akan menjelaskan langkah‑langkah tepat untuk memutar halaman pertama dari dokumen apa pun yang didukung menggunakan **GroupDocs Viewer for Java**. Pada akhir panduan, Anda akan memiliki potongan kode yang dapat digunakan kembali dan dapat Anda sisipkan ke dalam proyek Anda. -Kami juga akan membahas mengapa memutar halaman di Java penting, skenario umum di mana teknik ini bersinar, dan cara menjaga operasi tetap ringan. +Jika Anda perlu **memutar halaman 90 derajat** dalam sebuah dokumen—apakah itu PDF, file Word, atau spreadsheet—melakukannya secara programatis di Java menghemat waktu, menghilangkan kesalahan manual, dan memungkinkan Anda menyematkan operasi tersebut ke dalam pipeline otomatis. Dalam panduan lanjutan ini Anda akan belajar cara memutar halaman pertama dari dokumen apa pun yang didukung menggunakan **GroupDocs Viewer for Java**, mengapa kemampuan ini penting dalam proyek dunia nyata, dan bagaimana menjaga proses tetap ringan dan efisien memori. ![Putar Halaman Pertama Dokumen dengan GroupDocs.Viewer untuk Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Jawaban Cepat -- **Apa arti “rotate page 90 degrees”?** Ini memutar halaman yang dipilih searah jarum jam sebesar seperempat putaran. -- **Perpustakaan mana yang menangani rotasi?** GroupDocs Viewer for Java menyediakan metode `rotatePage`. -- **Bisakah saya memutar halaman PDF dengan Java?** Ya—gunakan panggilan `rotatePage` yang sama; ini bekerja untuk PDF, DOCX, XLSX, dan lainnya. +- **Apa arti “rotate page 90 degrees”?** Itu memutar halaman yang dipilih searah jarum jam sebesar seperempat putaran. +- **Library mana yang menangani rotasi?** GroupDocs Viewer for Java menyediakan metode `rotatePage`. +- **Bisakah saya memutar halaman PDF dengan Java?** Ya—gunakan panggilan `rotatePage` yang sama; metode ini bekerja untuk PDF, DOCX, XLSX, dan lainnya. - **Apakah saya memerlukan lisensi?** Versi percobaan gratis dapat digunakan untuk pengembangan; lisensi berbayar diperlukan untuk produksi. -- **Apakah operasi ini memakan banyak memori?** Tidak ketika Anda menutup instance `Viewer` dengan cepat; lihat tips kinerja di bawah. +- **Apakah operasi ini intensif memori?** Tidak, asalkan Anda menutup instance `Viewer` dengan cepat; lihat tips kinerja di bawah. ## Apa itu “rotate page 90 degrees”? -Memutar halaman 90 derajat mengubah orientasi halaman dari potret ke lanskap (atau sebaliknya) tanpa mengubah konten dasarnya. Ini sangat berguna untuk presentasi, mencetak grafik yang hanya dalam mode lanskap, atau memperbaiki dokumen yang dipindai yang diambil secara miring. +Memutar halaman 90 derajat mengubah orientasi halaman dari potret ke lanskap (atau sebaliknya) tanpa mengubah konten dasarnya. Ini berguna untuk presentasi, mencetak grafik yang hanya dalam mode lanskap, atau memperbaiki dokumen yang dipindai yang diambil secara miring. Rotasi diterapkan pada saat render, sehingga file asli tetap tidak berubah. -## Mengapa memutar halaman secara programatik dengan GroupDocs Viewer untuk Java? -GroupDocs Viewer menyederhanakan kompleksitas penanganan puluhan format file. Ini memungkinkan Anda menerapkan transformasi tingkat halaman—seperti rotasi—sementara file asli tetap tidak berubah. API-nya bersifat fluent, thread‑safe, dan bekerja pada runtime Java 8+ apa pun, menjadikannya pilihan andal untuk otomatisasi tingkat perusahaan. +## Mengapa memutar halaman secara programatis dengan GroupDocs Viewer untuk Java? +GroupDocs Viewer mendukung **lebih dari 50 format input dan output**—termasuk PDF, DOCX, PPTX, XLSX, dan banyak jenis gambar—sehingga Anda dapat merender dokumen apa pun tanpa konverter eksternal. API-nya bersifat fluent, thread‑safe, dan berjalan pada runtime Java 8+ apa pun, menjadikannya pilihan andal untuk otomasi tingkat perusahaan yang harus menangani puluhan jenis file secara konsisten. ## Prasyarat - -- **GroupDocs.Viewer for Java** (versi terbaru) -- **JDK 8** atau lebih baru -- **Maven** (atau Gradle) untuk manajemen dependensi -- Sebuah IDE seperti IntelliJ IDEA atau Eclipse +- GroupDocs Viewer for Java (versi terbaru) +- JDK 8 atau lebih baru +- Maven (atau Gradle) untuk manajemen dependensi +- IDE seperti IntelliJ IDEA atau Eclipse - Familiaritas dasar dengan Java I/O ## Menyiapkan GroupDocs.Viewer untuk Java - Tambahkan repositori GroupDocs dan dependensi ke `pom.xml` Anda. Potongan kode ini tidak berubah dari tutorial asli: ```xml @@ -67,7 +122,7 @@ Tambahkan repositori GroupDocs dan dependensi ke `pom.xml` Anda. Potongan kode i - **Full license** – beli untuk penerapan produksi. ### Inisialisasi Viewer Dasar -Kode berikut menunjukkan cara minimal untuk membuat instance `Viewer`. Pertahankan persis seperti yang ditampilkan: +Kelas `Viewer` adalah titik masuk yang memuat dokumen dan menyediakan metode rendering serta transformasi. Pertahankan kode persis seperti yang ditampilkan: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +133,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Cara memutar halaman PDF di Java dengan GroupDocs Viewer -Meskipun API berfungsi pada banyak format, PDF adalah kasus penggunaan paling umum untuk rotasi halaman. Metode `rotatePage` yang sama digunakan, jadi Anda hanya perlu mengarahkan viewer ke file PDF dan menentukan nomor halaman. +## Cara memutar halaman PDF Java dengan GroupDocs Viewer +Muat file target dengan `Viewer`, tentukan nomor halaman, dan panggil `rotatePage`. Metode ini bekerja untuk PDF, DOCX, PPTX, XLSX, dan format lain yang didukung oleh pustaka. Setelah rotasi, Anda dapat merender dokumen ke PDF baru atau mengalirkannya langsung ke klien, memastikan file asli tetap tidak tersentuh. -## Implementasi Langkah‑per‑Langkah: Putar Halaman Pertama 90 Derajat +## Implementasi langkah demi langkah: putar halaman pertama 90 derajat ### 1. Impor paket yang diperlukan -Impor ini memberi Anda akses ke opsi rendering PDF dan enum rotasi. +`PdfViewOptions` memberi tahu Viewer untuk menghasilkan file PDF, sementara enum `Rotation` menentukan sudutnya. Kedua kelas berada dalam paket `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +148,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Tentukan lokasi output dan buat Viewer -Ganti jalur placeholder dengan direktori Anda yang sebenarnya. +Ganti jalur placeholder dengan direktori Anda yang sebenarnya. Konstruktor `Viewer` menerima objek `File` yang menunjuk ke dokumen sumber. ```java import java.nio.file.Path; @@ -111,7 +166,7 @@ public class RotateSpecificPage { ``` ### 3. Konfigurasikan opsi tampilan PDF dan terapkan rotasi -Metode `rotatePage` menerima nomor halaman (berbasis 1) dan nilai enum `Rotation`. +Metode `rotatePage(int, Rotation)` menerima indeks halaman **berbasis 1** dan nilai enum `Rotation`. Pada contoh ini kami menggunakan `Rotation.ON_90_DEGREE` untuk memutar halaman pertama searah jarum jam. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +176,72 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Render dokumen -Akhirnya, panggil `view` untuk menghasilkan PDF yang telah diputar. +Memanggil `view` dengan opsi yang dikonfigurasi menulis PDF yang telah diputar ke folder output. ```java viewer.view(viewOptions); ``` #### Cara kerjanya -- **PdfViewOptions** memberi tahu Viewer untuk menghasilkan file PDF. -- **rotatePage(int, Rotation)** memutar hanya halaman yang Anda tentukan, meninggalkan yang lain tidak berubah. -- Metode ini mendukung `ON_90_DEGREE`, `ON_180_DEGREE`, dan `ON_270_DEGREE`. - -## Masalah Umum dan Solusinya +- **PdfViewOptions** mengarahkan Viewer untuk menghasilkan file output PDF. +- **rotatePage(int, Rotation)** memutar hanya halaman yang ditentukan, meninggalkan semua halaman lain tidak berubah. +- Metode ini mendukung tiga konstanta rotasi: `ON_90_DEGREE`, `ON_180_DEGREE`, dan `ON_270_DEGREE`. +## Masalah umum dan solusi | Gejala | Penyebab Kemungkinan | Solusi | |---------|----------------------|--------| -| **FileNotFoundException** | Jalur tidak tepat atau folder tidak ada | Verifikasi bahwa `YOUR_OUTPUT_DIRECTORY` dan `YOUR_DOCUMENT_DIRECTORY` ada dan dapat dibaca. | -| **Unsupported file format** | Mencoba memutar format yang tidak didukung oleh Viewer | Periksa halaman [GroupDocs Viewer supported formats]. | +| **FileNotFoundException** | Jalur tidak tepat atau folder tidak ada | Verifikasi `YOUR_OUTPUT_DIRECTORY` dan `YOUR_DOCUMENT_DIRECTORY` ada dan dapat dibaca. | +| **Unsupported file format** | Mencoba memutar format yang tidak didukung oleh Viewer | Periksa halaman [format yang didukung GroupDocs Viewer]. | | **No rotation visible** | Menggunakan nomor halaman yang salah (berbasis 0) | Ingat bahwa `rotatePage` menggunakan indeks **berbasis 1**. | | **Out‑of‑memory errors on large docs** | Merender banyak file besar dalam satu thread | Proses dokumen secara berurutan atau gunakan thread pool dengan concurrency terbatas. | -## Aplikasi Praktis - -1. **Presentation adjustments** – Mengonversi slide potret ke lanskap secara langsung. -2. **Bulk document correction** – Mengotomatiskan perbaikan PDF yang dipindai yang diambil secara miring. -3. **Print‑ready output** – Memastikan grafik lanskap tercetak dengan benar pada kertas berorientasi potret. +## Aplikasi praktis +1. **Penyesuaian presentasi** – Mengonversi slide potret ke lanskap secara langsung untuk dampak visual yang lebih baik. +2. **Koreksi dokumen massal** – Mengotomatiskan perbaikan PDF yang dipindai yang diambil secara miring, menghemat jam kerja manual. +3. **Output siap cetak** – Memastikan grafik lanskap tercetak dengan benar pada kertas berorientasi potret tanpa rotasi manual di driver printer. -## Tips Kinerja - -- **Close resources promptly** – Blok `try‑with‑resources` secara otomatis menutup `Viewer`. -- **Batch processing** – Saat menangani banyak file, gunakan kembali satu instance `Viewer` per thread untuk mengurangi overhead. -- **Monitor memory** – Untuk dokumen lebih besar dari 100 MB, pertimbangkan untuk men‑stream output ke disk alih‑alih menyimpannya di memori. - -## Pertanyaan yang Sering Diajukan +## Tips kinerja +- **Tutup sumber daya dengan cepat** – Blok `try‑with‑resources` secara otomatis membuang `Viewer`, membebaskan memori. +- **Pemrosesan batch** – Gunakan kembali satu instance `Viewer` per thread untuk mengurangi overhead inisialisasi. +- **Pantau memori** – Untuk dokumen lebih besar dari 100 MB, alirkan output ke disk alih-alih menyimpan seluruh file di memori; GroupDocs Viewer dapat memproses file 200 MB dengan penggunaan RAM di bawah 250 MB. +## Pertanyaan yang sering diajukan **Q: Bisakah saya memutar beberapa halaman sekaligus?** -A: Ya—panggil `rotatePage()` untuk setiap nomor halaman yang ingin Anda putar. +A: Ya—panggil `rotatePage()` untuk setiap nomor halaman yang ingin Anda putar, baik dalam loop maupun dengan chaining panggilan. **Q: Apakah ada cara untuk membatalkan rotasi setelah rendering?** -A: Tidak secara langsung. Anda perlu merender dokumen lagi tanpa opsi rotasi. +A: Tidak secara langsung. Anda harus merender dokumen lagi tanpa opsi rotasi. **Q: Format file apa yang mendukung rotasi halaman di GroupDocs Viewer?** A: DOCX, PDF, PPTX, XLSX, dan banyak format lain yang tercantum dalam dokumentasi resmi. **Q: Bagaimana saya dapat memutar halaman dalam sekumpulan dokumen secara otomatis?** -A: Bungkus kode dalam loop yang mengiterasi koleksi jalur file, menerapkan logika `rotatePage` yang sama pada masing‑masing. +A: Bungkus logika rotasi dalam loop yang mengiterasi koleksi jalur file, menerapkan konfigurasi `rotatePage` yang sama ke setiap file. **Q: Apa praktik terbaik untuk menangani kesalahan selama rotasi?** -A: Bungkus penggunaan Viewer dalam blok `try‑catch`, catat pengecualian, dan opsional melanjutkan pemrosesan file berikutnya. - -## Sumber Daya +A: Bungkus penggunaan Viewer dalam blok `try‑catch`, catat detail pengecualian, dan secara opsional lanjutkan memproses file berikutnya untuk menghindari satu kegagalan menghentikan seluruh batch. +## Sumber daya - **Dokumentasi**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) - **Referensi API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Unduh**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Beli**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Coba Gratis**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Lisensi Sementara**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Pembelian**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Percobaan gratis**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Lisensi sementara**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Dukungan**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Terakhir Diperbarui:** 2026-03-29 -**Diuji Dengan:** GroupDocs Viewer 25.2 for Java -**Penulis:** GroupDocs \ No newline at end of file +**Terakhir Diperbarui:** 2026-09-30 +**Diuji Dengan:** GroupDocs Viewer 25.2 untuk Java +**Penulis:** GroupDocs + +## Tutorial Terkait +- [Cara Memutar Halaman PDF Tertentu dengan GroupDocs.Viewer untuk Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Muat Dokumen dari URL di Java – Tutorial GroupDocs.Viewer](/viewer/java/document-loading/) +- [Tampilan Dokumen Groupdocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/italian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/italian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 3475cd601..5cf89b5ab 100644 --- a/content/italian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/italian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: Impara a ruotare una pagina di 90 gradi in Java con GroupDocs Viewer, - includendo configurazione, codice e consigli sulle prestazioni. +date: '2026-09-30' +description: Scopri come ruotare la pagina di 90 gradi in Java usando GroupDocs Viewer, + inclusi configurazione, codice e consigli sulle prestazioni. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Ruota la pagina di 90 gradi in Java usando GroupDocs Viewer. Guida + passo‑passo, consigli sulle prestazioni e casi d'uso reali per gli sviluppatori. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Ruota la pagina di 90 gradi con GroupDocs Viewer per Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Ruota la pagina di 90 gradi con GroupDocs Viewer per Java type: docs url: /it/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Ruota pagina di 90 gradi con GroupDocs Viewer per Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Quando hai bisogno di **ruotare pagina di 90 gradi** in un documento—che sia un PDF, un file Word o un foglio di calcolo—farlo programmaticamente fa risparmiare tempo ed elimina errori manuali. In questa guida avanzata ti mostreremo i passaggi esatti per ruotare la prima pagina di qualsiasi documento supportato usando **GroupDocs Viewer for Java**. Alla fine, avrai uno snippet riutilizzabile da inserire nei tuoi progetti. -Discuteremo anche perché ruotare le pagine in Java è importante, gli scenari comuni in cui questa tecnica brilla e come mantenere l'operazione leggera. +# Ruota la pagina di 90 gradi con GroupDocs Viewer per Java -![Ruota la prima pagina di un documento con GroupDocs.Viewer per Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +If you need to **ruotare la pagina di 90 gradi** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. + +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Risposte rapide -- **Cosa significa “ruotare pagina di 90 gradi”?** Ruota la pagina selezionata in senso orario di un quarto di giro. +- **Cosa significa “rotate page 90 degrees”?** Gira la pagina selezionata in senso orario di un quarto di giro. - **Quale libreria gestisce la rotazione?** GroupDocs Viewer for Java fornisce il metodo `rotatePage`. -- **Posso ruotare pagine PDF con Java?** Sì—usa la stessa chiamata `rotatePage`; funziona per PDF, DOCX, XLSX e altri. +- **Posso ruotare le pagine PDF con Java?** Sì—usa la stessa chiamata `rotatePage`; funziona per PDF, DOCX, XLSX e altri. - **Ho bisogno di una licenza?** Una prova gratuita funziona per lo sviluppo; è necessaria una licenza a pagamento per la produzione. - **L'operazione è intensiva in termini di memoria?** No, se chiudi l'istanza `Viewer` tempestivamente; vedi i consigli sulle prestazioni qui sotto. -## Cos'è “ruotare pagina di 90 gradi”? -Ruotare una pagina di 90 gradi reindirizza la pagina da verticale a orizzontale (o viceversa) senza modificare il contenuto sottostante. Questo è particolarmente utile per presentazioni, stampa di grafica solo in orizzontale o per correggere documenti scansionati catturati di lato. +## Che cos'è “rotate page 90 degrees”? +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. ## Perché ruotare le pagine programmaticamente con GroupDocs Viewer per Java? -GroupDocs Viewer astrae le complessità della gestione di decine di formati di file. Ti consente di applicare trasformazioni a livello di pagina—come la rotazione—mantenendo intatto il file originale. L'API è fluida, thread‑safe e funziona su qualsiasi runtime Java 8+, rendendola una scelta affidabile per l'automazione di livello enterprise. +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## Prerequisiti -- **GroupDocs.Viewer for Java** (ultima versione) -- **JDK 8** o versioni successive -- **Maven** (o Gradle) per la gestione delle dipendenze +- GroupDocs Viewer for Java (ultima versione) +- JDK 8 o più recente +- Maven (o Gradle) per la gestione delle dipendenze - Un IDE come IntelliJ IDEA o Eclipse - Familiarità di base con Java I/O ## Configurazione di GroupDocs.Viewer per Java -Aggiungi il repository GroupDocs e la dipendenza al tuo `pom.xml`. Questo snippet è invariato rispetto al tutorial originale: +Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: ```xml @@ -61,13 +118,13 @@ Aggiungi il repository GroupDocs e la dipendenza al tuo `pom.xml`. Questo snippe ``` -### Acquisizione licenza -- **Free trial** – scarica dal sito GroupDocs. -- **Temporary license** – richiedi se ti serve un periodo di valutazione esteso. -- **Full license** – acquista per le distribuzioni in produzione. +### Acquisizione della licenza +- **Prova gratuita** – scarica dal sito GroupDocs. +- **Licenza temporanea** – richiedi se ti serve un periodo di valutazione esteso. +- **Licenza completa** – acquista per le distribuzioni in produzione. ### Inizializzazione di base del Viewer -Il codice seguente mostra il modo minimo per creare un'istanza `Viewer`. Mantienilo esattamente come mostrato: +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -79,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Come ruotare una pagina PDF in Java con GroupDocs Viewer -Anche se l'API funziona su molti formati, il PDF è il caso d'uso più comune per la rotazione delle pagine. Viene usato lo stesso metodo `rotatePage`, quindi devi solo puntare il viewer a un file PDF e specificare il numero della pagina. +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. -## Implementazione passo‑a‑passo: ruotare la prima pagina di 90 gradi +## Implementazione passo‑passo: ruotare la prima pagina di 90 gradi ### 1. Importa i pacchetti necessari -Queste importazioni ti danno accesso alle opzioni di rendering PDF e all'enumerazione di rotazione. +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Definisci le posizioni di output e crea il Viewer -Sostituisci i percorsi segnaposto con le tue directory effettive. +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Configura le opzioni di visualizzazione PDF e applica la rotazione -Il metodo `rotatePage` accetta il numero della pagina (basato su 1) e un valore dell'enumerazione `Rotation`. +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,42 +178,41 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Renderizza il documento -Infine, chiama `view` per generare il PDF ruotato. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### Come funziona -- **PdfViewOptions** indica al Viewer di generare un file PDF. -- **rotatePage(int, Rotation)** ruota solo la pagina specificata, lasciando le altre intatte. -- Il metodo supporta `ON_90_DEGREE`, `ON_180_DEGREE` e `ON_270_DEGREE`. +- **PdfViewOptions** indica al Viewer di generare un file PDF di output. +- **rotatePage(int, Rotation)** ruota solo la pagina specificata, lasciando inalterate tutte le altre pagine. +- Il metodo supporta tre costanti di rotazione: `ON_90_DEGREE`, `ON_180_DEGREE` e `ON_270_DEGREE`. ## Problemi comuni e soluzioni - -| Sintomo | Causa probabile | Risoluzione | -|---------|-----------------|-------------| +| Sintomo | Probabile causa | Soluzione | +|---------|----------------|----------| | **FileNotFoundException** | Percorso errato o cartella mancante | Verifica che `YOUR_OUTPUT_DIRECTORY` e `YOUR_DOCUMENT_DIRECTORY` esistano e siano leggibili. | -| **Unsupported file format** | Tentativo di ruotare un formato non supportato da Viewer | Controlla la pagina [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Uso del numero di pagina errato (basato su 0) | Ricorda che `rotatePage` utilizza l'indicizzazione **basata su 1**. | -| **Out‑of‑memory errors on large docs** | Rendering di molti file grandi in un unico thread | Elabora i documenti in modo sequenziale o usa un pool di thread con concorrenza limitata. | +| **Unsupported file format** | Tentativo di ruotare un formato non supportato da Viewer | Controlla la pagina [GroupDocs Viewer supported formats] page. | +| **No rotation visible** | Uso del numero di pagina errato (basato su 0) | Ricorda che `rotatePage` utilizza l'indicizzazione **1‑based**. | +| **Out‑of‑memory errors on large docs** | Rendering di molti file grandi in un singolo thread | Elabora i documenti in sequenza o usa un pool di thread con concorrenza limitata. | ## Applicazioni pratiche -1. **Regolazioni della presentazione** – Converti una diapositiva verticale in orizzontale al volo. -2. **Correzione di massa dei documenti** – Automatizza la correzione di PDF scansionati catturati di lato. -3. **Output pronto per la stampa** – Assicura che la grafica in orizzontale venga stampata correttamente su carta orientata in verticale. +1. **Regolazioni delle presentazioni** – Converti una diapositiva in verticale in orizzontale al volo per un impatto visivo migliore. +2. **Correzione di massa dei documenti** – Automatizza la correzione di PDF scansionati catturati di lato, risparmiando ore di lavoro manuale. +3. **Output pronto per la stampa** – Assicura che le grafiche in orizzontale vengano stampate correttamente su carta orientata in verticale senza rotazione manuale nel driver della stampante. ## Consigli sulle prestazioni -- **Chiudi le risorse tempestivamente** – Il blocco `try‑with‑resources` elimina automaticamente il `Viewer`. -- **Elaborazione batch** – Quando gestisci molti file, riutilizza una singola istanza `Viewer` per thread per ridurre l'overhead. -- **Monitora la memoria** – Per documenti più grandi di 100 MB, considera lo streaming dell'output su disco invece di mantenerlo in memoria. +- **Chiudi le risorse tempestivamente** – Il blocco `try‑with‑resources` elimina automaticamente il `Viewer`, liberando memoria. +- **Elaborazione batch** – Riutilizza una singola istanza `Viewer` per thread per ridurre l'overhead di inizializzazione. +- **Monitora la memoria** – Per documenti più grandi di 100 MB, trasmetti l'output su disco invece di mantenere l'intero file in memoria; GroupDocs Viewer può elaborare file da 200 MB usando meno di 250 MB di RAM. ## Domande frequenti **Q: Posso ruotare più pagine contemporaneamente?** -A: Sì—chiama `rotatePage()` per ogni numero di pagina che devi ruotare. +A: Sì—invoca `rotatePage()` per ogni numero di pagina da ruotare, sia in un ciclo sia concatenando le chiamate. **Q: Esiste un modo per annullare la rotazione dopo il rendering?** A: Non direttamente. Dovresti renderizzare nuovamente il documento senza le opzioni di rotazione. @@ -165,23 +221,35 @@ A: Non direttamente. Dovresti renderizzare nuovamente il documento senza le opzi A: DOCX, PDF, PPTX, XLSX e molti altri formati elencati nella documentazione ufficiale. **Q: Come posso ruotare le pagine in un batch di documenti automaticamente?** -A: Avvolgi il codice in un ciclo che itera su una collezione di percorsi file, applicando la stessa logica `rotatePage` a ciascuno. +A: Avvolgi la logica di rotazione in un ciclo che itera su una collezione di percorsi file, applicando la stessa configurazione `rotatePage` a ciascun file. **Q: Qual è la migliore pratica per gestire gli errori durante la rotazione?** -A: Inserisci l'uso del Viewer in un blocco `try‑catch`, registra l'eccezione e, facoltativamente, continua l'elaborazione del file successivo. +A: Inserisci l'uso del Viewer in un blocco `try‑catch`, registra i dettagli dell'eccezione e, facoltativamente, continua l'elaborazione del file successivo per evitare che un singolo errore fermi l'intero batch. ## Risorse - **Documentazione**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) - **Riferimento API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Acquisto**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Acquista**: [Buy a License](https://purchase.groupdocs.com/buy) - **Prova gratuita**: [Try Free](https://releases.groupdocs.com/viewer/java/) - **Licenza temporanea**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Supporto**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Ultimo aggiornamento:** 2026-03-29 +**Ultimo aggiornamento:** 2026-09-30 **Testato con:** GroupDocs Viewer 25.2 for Java -**Autore:** GroupDocs \ No newline at end of file +**Autore:** GroupDocs + +## Tutorial correlati + +- [Come ruotare pagine PDF specifiche con GroupDocs.Viewer per Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Carica documento da URL in Java – Tutorial GroupDocs.Viewer](/viewer/java/document-loading/) +- [Visualizzazioni di documenti Java di Groupdocs Viewer](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/japanese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/japanese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index f7f3910e1..d15e09e53 100644 --- a/content/japanese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/japanese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,44 +1,102 @@ --- -date: '2026-03-29' -description: GroupDocs Viewer を使用して Java でページを 90 度回転させる方法を学び、セットアップ、コード、パフォーマンスのヒントを含めましょう。 +date: '2026-09-30' +description: GroupDocs Viewerを使用してJavaでページを90度回転させる方法を学びます。セットアップ、コード、パフォーマンスのヒントを含みます。 keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: GroupDocs Viewerを使用してJavaでページを90度回転させます。ステップバイステップのガイド、パフォーマンスのヒント、開発者向けの実践的なユースケースを紹介します。 +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: GroupDocs Viewer for Javaでページを90度回転させる +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: GroupDocs Viewer for Javaでページを90度回転させる type: docs url: /ja/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # GroupDocs Viewer for Javaでページを90度回転する -ドキュメント(PDF、Word ファイル、スプレッドシートなど)で **ページを90度回転** する必要がある場合、プログラムで実行すれば時間を節約でき、手動ミスを防げます。この上級ガイドでは、**GroupDocs Viewer for Java** を使用して、サポートされている任意のドキュメントの最初のページを回転させる正確な手順を解説します。最後まで読むと、プロジェクトに組み込める再利用可能なスニペットが手に入ります。 -また、Java でページを回転させる意義や、この手法が有効な一般的なシナリオ、そして処理を軽量に保つ方法についても説明します。 +ドキュメント(PDF、Word ファイル、スプレッドシートなど)で **ページを90度回転** する必要がある場合、Java でプログラム的に実行すれば時間を節約でき、手動エラーを排除し、操作を自動化パイプラインに組み込むことができます。この上級ガイドでは、**GroupDocs Viewer for Java** を使用して任意のサポート対象ドキュメントの最初のページを回転させる方法、この機能が実務プロジェクトで重要な理由、そしてプロセスを軽量かつメモリ効率的に保つ方法を学びます。 ![GroupDocs.Viewer for Javaでドキュメントの最初のページを回転](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## クイック回答 - **「ページを90度回転する」とは何ですか?** 選択したページを時計回りに90度回転させます。 - **どのライブラリが回転を処理しますか?** GroupDocs Viewer for Java は `rotatePage` メソッドを提供します。 -- **Java で PDF ページを回転できますか?** はい。同じ `rotatePage` 呼び出しを使用します。PDF、DOCX、XLSX などでも動作します。 -- **ライセンスは必要ですか?** 開発には無料トライアルが利用できますが、本番環境では有料ライセンスが必要です。 -- **この操作はメモリ集約的ですか?** `Viewer` インスタンスをすぐに閉じれば問題ありません。以下のパフォーマンスのヒントをご参照ください。 +- **JavaでPDFページを回転できますか?** はい、同じ `rotatePage` 呼び出しを使用します;PDF、DOCX、XLSX などでも機能します。 +- **ライセンスは必要ですか?** 開発には無料トライアルが利用可能です;本番環境では有料ライセンスが必要です。 +- **この操作はメモリ集約的ですか?** `Viewer` インスタンスを速やかに閉じれば問題ありません;以下のパフォーマンスヒントをご参照ください。 -## 「ページを90度回転する」とは何ですか? -ページを90度回転すると、ページの向きが縦向きから横向き(またはその逆)に変更され、コンテンツ自体は変更されません。プレゼンテーションや横向きのみのグラフィックの印刷、横向きにスキャンされたドキュメントの修正などに特に便利です。 +## 「ページを90度回転する」とは何か +ページを90度回転させると、ページの向きが縦向きから横向き(またはその逆)に変わりますが、コンテンツ自体は変更されません。プレゼンテーションや横向きのみのグラフィック印刷、横向きにスキャンされたドキュメントの修正などに便利です。回転はレンダリング時に適用され、元のファイルは変更されません。 -## なぜ GroupDocs Viewer for Java でプログラム的にページを回転させるのか? -GroupDocs Viewer は多数のファイル形式を扱う複雑さを抽象化します。ページ単位の変換(回転など)を適用しながら、元のファイルをそのまま保持できます。API は流暢でスレッドセーフ、Java 8 以上のランタイムで動作し、エンタープライズ向けの自動化に信頼できる選択肢です。 +## GroupDocs Viewer for Javaでページをプログラム的に回転する理由 +GroupDocs Viewer は **50 以上の入力および出力フォーマット**(PDF、DOCX、PPTX、XLSX、その他多数の画像形式を含む)をサポートしているため、外部コンバータなしで任意のドキュメントをレンダリングできます。API は流暢でスレッドセーフ、Java 8 以降のランタイム上で動作し、数十種類のファイルタイプを一貫して処理するエンタープライズ向け自動化に信頼できる選択肢です。 ## 前提条件 -- **GroupDocs.Viewer for Java**(最新バージョン) -- **JDK 8** 以上 -- **Maven**(または Gradle)で依存関係を管理 + +- GroupDocs Viewer for Java(最新バージョン) +- JDK 8 以上 +- Maven(または Gradle)で依存関係を管理 - IntelliJ IDEA や Eclipse などの IDE - Java I/O の基本的な知識 -## GroupDocs.Viewer for Java のセットアップ +## GroupDocs.Viewer for Java の設定 + `pom.xml` に GroupDocs リポジトリと依存関係を追加します。このスニペットは元のチュートリアルと同じです: ```xml @@ -59,12 +117,12 @@ GroupDocs Viewer は多数のファイル形式を扱う複雑さを抽象化し ``` ### ライセンス取得 -- **Free trial** – GroupDocs サイトからダウンロード。 -- **Temporary license** – 評価期間を延長したい場合にリクエスト。 -- **Full license** – 本番環境での導入に購入。 +- **無料トライアル** – GroupDocs サイトからダウンロード。 +- **一時ライセンス** – 評価期間を延長したい場合にリクエスト。 +- **フルライセンス** – 本番環境での導入に購入。 ### 基本的な Viewer の初期化 -以下のコードは `Viewer` インスタンスを作成する最小限の方法を示しています。示されている通りに正確に記述してください: +`Viewer` クラスはドキュメントを読み込み、レンダリングおよび変換メソッドを提供するエントリーポイントです。コードは以下の通りそのまま使用してください: ```java import com.groupdocs.viewer.Viewer; @@ -76,12 +134,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## GroupDocs Viewer を使用した Java での PDF ページ回転方法 -API は多数の形式で動作しますが、ページ回転の最も一般的なユースケースは PDF です。同じ `rotatePage` メソッドを使用するので、Viewer に PDF ファイルを指定し、ページ番号を設定するだけです。 +`Viewer` で対象ファイルを読み込み、ページ番号を指定して `rotatePage` を呼び出します。このメソッドは PDF、DOCX、PPTX、XLSX などライブラリがサポートするすべてのフォーマットで機能します。回転後は、ドキュメントを新しい PDF にレンダリングするか、直接クライアントにストリーム送信でき、元のファイルは変更されません。 ## ステップバイステップ実装:最初のページを90度回転 ### 1. 必要なパッケージをインポート -これらのインポートにより、PDF レンダリングオプションと回転列挙型にアクセスできます。 +`PdfViewOptions` は Viewer に PDF ファイルを出力させる指示を行い、`Rotation` 列挙型は回転角度を定義します。両クラスは `com.groupdocs.viewer.options` パッケージに属します。 ```java import com.groupdocs.viewer.Viewer; @@ -89,8 +147,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. 出力先を定義し、Viewer を作成 -プレースホルダーのパスを実際のディレクトリに置き換えてください。 +### 2. 出力先を定義し Viewer を作成 +プレースホルダーのパスを実際のディレクトリに置き換えてください。`Viewer` コンストラクタはソースドキュメントを指す `File` オブジェクトを受け取ります。 ```java import java.nio.file.Path; @@ -107,8 +165,8 @@ public class RotateSpecificPage { } ``` -### 3. PDF ビューオプションを設定し、回転を適用 -`rotatePage` メソッドはページ番号(1 から始まる)と `Rotation` 列挙型の値を受け取ります。 +### 3. PDF ビューオプションを設定し回転を適用 +`rotatePage(int, Rotation)` メソッドは **1 ベース** のページインデックスと `Rotation` 列挙値を受け取ります。この例では `Rotation.ON_90_DEGREE` を使用して最初のページを時計回りに回転させます。 ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -118,64 +176,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. ドキュメントをレンダリング -最後に `view` を呼び出して、回転した PDF を生成します。 +設定したオプションで `view` を呼び出すと、回転された PDF が出力フォルダーに書き込まれます。 ```java viewer.view(viewOptions); ``` #### 動作概要 -- **PdfViewOptions** は Viewer に PDF ファイルを出力させることを指示します。 -- **rotatePage(int, Rotation)** は指定したページだけを回転させ、他のページはそのままにします。 -- このメソッドは `ON_90_DEGREE`、`ON_180_DEGREE`、`ON_270_DEGREE` をサポートしています。 +- **PdfViewOptions** は Viewer に PDF 出力ファイルを生成させます。 +- **rotatePage(int, Rotation)** は指定したページのみを回転させ、他のページは変更しません。 +- このメソッドは 3 つの回転定数をサポートします:`ON_90_DEGREE`、`ON_180_DEGREE`、`ON_270_DEGREE`。 -## 一般的な問題と解決策 +## よくある問題と解決策 | 症状 | 考えられる原因 | 対策 | -|------|----------------|------| -| **FileNotFoundException** | パスが間違っているかフォルダーが存在しません | `YOUR_OUTPUT_DIRECTORY` と `YOUR_DOCUMENT_DIRECTORY` が存在し、読み取り可能であることを確認してください。 | +|---------|--------------|-----| +| **FileNotFoundException** | パスが間違っているか、フォルダーが存在しません | `YOUR_OUTPUT_DIRECTORY` と `YOUR_DOCUMENT_DIRECTORY` が存在、読み取り可能であることを確認してください。 | | **Unsupported file format** | Viewer がサポートしていない形式を回転しようとしています | [GroupDocs Viewer supported formats] ページを確認してください。 | -| **No rotation visible** | ページ番号を 0 ベースで指定している | `rotatePage` は **1 ベース** のインデックスを使用することを忘れないでください。 | +| **No rotation visible** | ページ番号が間違っています(0ベース) | `rotatePage` は **1 ベース** のインデックスを使用することを忘れないでください。 | | **Out‑of‑memory errors on large docs** | 単一スレッドで多数の大きなファイルをレンダリングしている | ドキュメントを順次処理するか、同時実行数を制限したスレッドプールを使用してください。 | -## 実用的な応用例 -- **プレゼンテーションの調整** – 縦向きスライドをリアルタイムで横向きに変換します。 -- **大量ドキュメントの修正** – 横向きにスキャンされた PDF の修正を自動化します。 -- **印刷用出力** – 縦向きの用紙でも横向きグラフィックが正しく印刷されるようにします。 +## 実用的な活用例 + +1. **プレゼンテーション調整** – 縦向きスライドを横向きにリアルタイムで変換し、視覚的インパクトを向上させます。 +2. **大量ドキュメントの修正** – 横向きにスキャンされた PDF を自動で修正し、手作業の時間を何時間も削減します。 +3. **印刷用出力** – 縦向きの用紙に横向きグラフィックが正しく印刷されるようにし、プリンタードライバーでの手動回転を不要にします。 ## パフォーマンスのヒント -- **リソースはすぐに閉じる** – `try‑with‑resources` ブロックは `Viewer` を自動的に破棄します。 -- **バッチ処理** – 多数のファイルを扱う場合、スレッドごとに `Viewer` インスタンスを再利用してオーバーヘッドを削減します。 -- **メモリ監視** – 100 MB を超えるドキュメントでは、メモリに保持する代わりに出力をディスクにストリームすることを検討してください。 + +- **リソースを速やかに閉じる** – `try‑with‑resources` ブロックは `Viewer` を自動的に破棄し、メモリを解放します。 +- **バッチ処理** – スレッドごとに単一の `Viewer` インスタンスを再利用して初期化オーバーヘッドを削減します。 +- **メモリ監視** – 100 MB を超えるドキュメントは、全体をメモリに保持せずディスクへストリーム出力してください;GroupDocs Viewer は 200 MB のファイルを 250 MB 未満の RAM で処理できます。 ## よくある質問 -**Q: 複数のページを一度に回転できますか?** -A: はい。回転が必要な各ページ番号に対して `rotatePage()` を呼び出します。 +**Q: 複数ページを一度に回転できますか?** +A: はい、回転が必要な各ページ番号に対して `rotatePage()` を呼び出します。ループやチェーン呼び出しで実行できます。 **Q: レンダリング後に回転を元に戻す方法はありますか?** -A: 直接的な方法はありません。回転オプションを付けずに再度ドキュメントをレンダリングする必要があります。 +A: 直接的な方法はありません。回転オプションなしで再度ドキュメントをレンダリングする必要があります。 -**Q: GroupDocs Viewer でページ回転をサポートしているファイル形式はどれですか?** -A: DOCX、PDF、PPTX、XLSX など、公式ドキュメントに記載されている多数の形式がサポートされています。 +**Q: GroupDocs Viewer でページ回転をサポートするファイル形式はどれですか?** +A: DOCX、PDF、PPTX、XLSX など、公式ドキュメントに記載されている多数の形式です。 -**Q: 複数のドキュメントをバッチで自動的にページ回転させるにはどうすればよいですか?** -A: ファイルパスのコレクションを反復するループでコードを囲み、各ファイルに同じ `rotatePage` ロジックを適用します。 +**Q: 複数のドキュメントをバッチで自動的に回転させるには?** +A: ファイルパスのコレクションを反復するループで回転ロジックをラップし、各ファイルに同じ `rotatePage` 設定を適用します。 **Q: 回転中のエラー処理のベストプラクティスは何ですか?** -A: `Viewer` の使用を `try‑catch` ブロックで囲み、例外をログに記録し、必要に応じて次のファイルの処理を続行します。 +A: `Viewer` の使用を `try‑catch` ブロックで囲み、例外の詳細をログに記録し、必要に応じて次のファイルの処理を続行して単一の失敗でバッチ全体が止まらないようにします。 ## リソース -- **ドキュメント**: [GroupDocs Viewer Java ドキュメント](https://docs.groupdocs.com/viewer/java/) -- **API リファレンス**: [GroupDocs API リファレンス](https://reference.groupdocs.com/viewer/java/) -- **ダウンロード**: [GroupDocs Viewer for Java を取得](https://releases.groupdocs.com/viewer/java/) -- **購入**: [ライセンスを購入](https://purchase.groupdocs.com/buy) -- **無料トライアル**: [無料で試す](https://releases.groupdocs.com/viewer/java/) -- **一時ライセンス**: [一時ライセンスをリクエスト](https://purchase.groupdocs.com/temporary-license/) -- **サポート**: [GroupDocs フォーラム](https://forum.groupdocs.com/c/viewer/9) + +- **ドキュメント**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API リファレンス**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **ダウンロード**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **購入**: [Buy a License](https://purchase.groupdocs.com/buy) +- **無料トライアル**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **一時ライセンス**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **サポート**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**最終更新日:** 2026-03-29 +**最終更新日:** 2026-09-30 **テスト環境:** GroupDocs Viewer 25.2 for Java -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +## 関連チュートリアル + +- [Java で特定の PDF ページを回転する方法(GroupDocs.Viewer for Java)](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Java で URL からドキュメントをロード – GroupDocs.Viewer チュートリアル](/viewer/java/document-loading/) +- [GroupDocs Viewer Java ドキュメントビュー](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/korean/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/korean/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index a9030652e..d72ab1412 100644 --- a/content/korean/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/korean/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,47 +1,102 @@ --- -date: '2026-03-29' +date: '2026-09-30' description: GroupDocs Viewer를 사용하여 Java에서 페이지를 90도 회전하는 방법을 배우세요. 설정, 코드 및 성능 팁을 포함합니다. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: GroupDocs Viewer를 사용하여 Java에서 페이지를 90도 회전합니다. 단계별 가이드, 성능 팁 및 개발자를 + 위한 실제 사용 사례. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: GroupDocs Viewer for Java를 사용하여 페이지를 90도 회전하기 +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: GroupDocs Viewer for Java를 사용하여 페이지를 90도 회전하기 type: docs url: /ko/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # GroupDocs Viewer for Java로 페이지를 90도 회전하기 -문서에서 **rotate page 90 degrees**를 해야 할 때—PDF, Word 파일, 스프레드시트 등—프로그래밍 방식으로 수행하면 시간을 절약하고 수동 오류를 없앨 수 있습니다. 이 고급 가이드에서는 **GroupDocs Viewer for Java**를 사용하여 지원되는 모든 문서의 첫 페이지를 회전하는 정확한 단계를 안내합니다. 끝까지 읽으면 자체 프로젝트에 삽입할 수 있는 재사용 가능한 스니펫을 얻게 됩니다. -또한 Java에서 페이지를 회전하는 이유, 이 기술이 빛을 발하는 일반적인 시나리오, 그리고 작업을 가볍게 유지하는 방법에 대해서도 논의합니다. +문서에서 **페이지를 90도 회전**해야 할 경우—PDF, Word 파일, 스프레드시트 여부와 관계없이—Java로 프로그래밍하면 시간을 절약하고 수동 오류를 제거하며 작업을 자동 파이프라인에 삽입할 수 있습니다. 이 고급 가이드에서는 **GroupDocs Viewer for Java**를 사용하여 지원되는 모든 문서의 첫 페이지를 회전하는 방법, 이 기능이 실제 프로젝트에서 왜 중요한지, 그리고 프로세스를 가볍고 메모리 효율적으로 유지하는 방법을 배웁니다. ![GroupDocs.Viewer for Java로 문서의 첫 페이지 회전](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## 빠른 답변 -- **rotate page 90 degrees**는 무엇을 의미합니까? 선택한 페이지를 시계 방향으로 90도(한 사분면) 회전합니다. -- **Which library handles the rotation?** 회전을 처리하는 라이브러리는 GroupDocs Viewer for Java이며, `rotatePage` 메서드를 제공합니다. -- **Can I rotate PDF pages with Java?** 예—동일한 `rotatePage` 호출을 사용하면 PDF, DOCX, XLSX 등에서 작동합니다. -- **Do I need a license?** 무료 체험은 개발에 사용할 수 있으며, 프로덕션에는 유료 라이선스가 필요합니다. -- **Is the operation memory‑intensive?** `Viewer` 인스턴스를 즉시 닫으면 메모리 사용이 많지 않습니다; 아래 성능 팁을 참고하십시오. - -## “rotate page 90 degrees”란 무엇입니까? -페이지를 90도 회전하면 기본 콘텐츠를 변경하지 않고 페이지를 세로에서 가로(또는 그 반대)로 재배치합니다. 이는 프레젠테이션, 가로 전용 그래픽 인쇄, 또는 가로로 촬영된 스캔 문서를 수정할 때 특히 유용합니다. - -## 왜 GroupDocs Viewer for Java로 페이지를 프로그래밍 방식으로 회전해야 할까요? -GroupDocs Viewer는 수십 가지 파일 형식을 처리하는 복잡성을 추상화합니다. 원본 파일을 그대로 유지하면서 회전과 같은 페이지 수준 변환을 적용할 수 있습니다. API는 유창하고 스레드 안전하며 Java 8+ 런타임에서 작동하므로 엔터프라이즈 수준 자동화에 신뢰할 수 있는 선택입니다. - -## 필수 조건 - -- **GroupDocs.Viewer for Java** (최신 버전) -- **JDK 8** 이상 -- **Maven** (또는 Gradle) – 의존성 관리용 +- **“rotate page 90 degrees”는 무엇을 의미하나요?** 선택한 페이지를 시계 방향으로 90도(¼ 회전) 회전합니다. +- **어떤 라이브러리가 회전을 처리하나요?** GroupDocs Viewer for Java가 `rotatePage` 메서드를 제공합니다. +- **Java로 PDF 페이지를 회전할 수 있나요?** 예—동일한 `rotatePage` 호출을 사용하면 PDF, DOCX, XLSX 등에서도 작동합니다. +- **라이선스가 필요합니까?** 개발용으로는 무료 체험판을 사용할 수 있으며, 프로덕션에서는 유료 라이선스가 필요합니다. +- **작업이 메모리를 많이 사용하나요?** `Viewer` 인스턴스를 즉시 닫으면 메모리 사용량이 많지 않습니다; 아래 성능 팁을 참고하세요. + +## “rotate page 90 degrees”란 무엇인가요? +페이지를 90도 회전하면 기본 콘텐츠를 변경하지 않고 페이지를 세로 방향에서 가로 방향(또는 그 반대)으로 재배치합니다. 이는 프레젠테이션, 가로 전용 그래픽 인쇄, 또는 옆으로 스캔된 문서를 바로잡을 때 유용합니다. 회전은 렌더링 시에 적용되며 원본 파일은 변경되지 않습니다. + +## GroupDocs Viewer for Java로 페이지를 프로그래밍 방식으로 회전하는 이유는? +GroupDocs Viewer는 **50개 이상의 입력 및 출력 형식**을 지원합니다—PDF, DOCX, PPTX, XLSX 및 다양한 이미지 형식을 포함—따라서 외부 변환기 없이도 모든 문서를 렌더링할 수 있습니다. API는 유창하고 스레드‑안전하며 Java 8+ 런타임에서 실행되어, 수십 가지 파일 유형을 일관되게 처리해야 하는 엔터프라이즈급 자동화에 신뢰할 수 있는 선택입니다. + +## 사전 요구 사항 +- GroupDocs Viewer for Java (최신 버전) +- JDK 8 이상 +- Maven(또는 Gradle) 의존성 관리 - IntelliJ IDEA 또는 Eclipse와 같은 IDE - Java I/O에 대한 기본 지식 ## GroupDocs.Viewer for Java 설정 - GroupDocs 저장소와 의존성을 `pom.xml`에 추가합니다. 이 스니펫은 원본 튜토리얼과 동일합니다: ```xml @@ -62,12 +117,12 @@ GroupDocs 저장소와 의존성을 `pom.xml`에 추가합니다. 이 스니펫 ``` ### 라이선스 획득 -- **Free trial** – GroupDocs 사이트에서 다운로드합니다. -- **Temporary license** – 평가 기간을 연장하려면 요청합니다. -- **Full license** – 프로덕션 배포를 위해 구매합니다. +- **무료 체험** – GroupDocs 사이트에서 다운로드합니다. +- **임시 라이선스** – 평가 기간을 연장해야 할 경우 요청합니다. +- **전체 라이선스** – 프로덕션 배포를 위해 구매합니다. ### 기본 Viewer 초기화 -다음 코드는 `Viewer` 인스턴스를 생성하는 최소 방법을 보여줍니다. 표시된 대로 정확히 유지하십시오: +`Viewer` 클래스는 문서를 로드하고 렌더링 및 변환 메서드를 제공하는 진입점입니다. 코드는 아래와 같이 그대로 유지하십시오: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +133,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## GroupDocs Viewer를 사용하여 Java에서 PDF 페이지 회전하기 -API가 여러 형식에서 작동하지만, PDF가 페이지 회전의 가장 일반적인 사용 사례입니다. 동일한 `rotatePage` 메서드를 사용하므로 Viewer에 PDF 파일을 지정하고 페이지 번호만 지정하면 됩니다. +## GroupDocs Viewer로 Java에서 PDF 페이지 회전하기 +`Viewer`로 대상 파일을 로드하고 페이지 번호를 지정한 뒤 `rotatePage`를 호출합니다. 이 메서드는 PDF, DOCX, PPTX, XLSX 및 라이브러리가 지원하는 모든 형식에서 작동합니다. 회전 후에는 문서를 새 PDF로 렌더링하거나 클라이언트에 직접 스트리밍할 수 있어 원본 파일은 그대로 유지됩니다. ## 단계별 구현: 첫 페이지를 90도 회전하기 ### 1. 필요한 패키지 가져오기 -이 가져오기를 통해 PDF 렌더링 옵션 및 회전 열거형에 접근할 수 있습니다. +`PdfViewOptions`는 Viewer가 PDF 파일을 출력하도록 지정하고, `Rotation` 열거형은 각도를 정의합니다. 두 클래스 모두 `com.groupdocs.viewer.options` 패키지에 속합니다. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +148,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. 출력 위치 정의 및 Viewer 생성 -플레이스홀더 경로를 실제 디렉터리 경로로 교체하십시오. +플레이스홀더 경로를 실제 디렉터리로 교체하십시오. `Viewer` 생성자는 소스 문서를 가리키는 `File` 객체를 받습니다. ```java import java.nio.file.Path; @@ -110,8 +165,8 @@ public class RotateSpecificPage { } ``` -### 3. PDF 보기 옵션 구성 및 회전 적용 -`rotatePage` 메서드는 페이지 번호(1부터 시작)와 `Rotation` 열거형 값을 받습니다. +### 3. PDF 뷰 옵션 구성 및 회전 적용 +`rotatePage(int, Rotation)` 메서드는 **1‑기반** 페이지 인덱스와 `Rotation` 열거형 값을 받습니다. 이 예제에서는 첫 페이지를 시계 방향으로 회전하기 위해 `Rotation.ON_90_DEGREE`를 사용합니다. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +176,73 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. 문서 렌더링 -마지막으로 `view`를 호출하여 회전된 PDF를 생성합니다. +구성된 옵션으로 `view`를 호출하면 회전된 PDF가 출력 폴더에 기록됩니다. ```java viewer.view(viewOptions); ``` -#### 작동 방식 -- **PdfViewOptions**는 Viewer에게 PDF 파일을 출력하도록 지시합니다. -- **rotatePage(int, Rotation)**은 지정한 페이지만 회전시키고 나머지는 그대로 둡니다. -- 이 메서드는 `ON_90_DEGREE`, `ON_180_DEGREE`, `ON_270_DEGREE`를 지원합니다. +#### 작동 원리 +- **PdfViewOptions**는 Viewer가 PDF 출력 파일을 생성하도록 지정합니다. +- **rotatePage(int, Rotation)**은 지정된 페이지만 회전시키고 다른 페이지는 그대로 유지합니다. +- 이 메서드는 세 가지 회전 상수를 지원합니다: `ON_90_DEGREE`, `ON_180_DEGREE`, `ON_270_DEGREE`. ## 일반적인 문제 및 해결책 - | 증상 | 가능한 원인 | 해결 방법 | |---------|--------------|-----| -| **FileNotFoundException** | 잘못된 경로나 폴더가 없습니다 | `YOUR_OUTPUT_DIRECTORY`와 `YOUR_DOCUMENT_DIRECTORY`가 존재하고 읽을 수 있는지 확인하십시오. | -| **Unsupported file format** | Viewer에서 지원하지 않는 형식을 회전하려고 시도함 | 다음 페이지에서 [GroupDocs Viewer supported formats]를 확인하십시오. | -| **No rotation visible** | 잘못된 페이지 번호(0부터 시작)를 사용함 | `rotatePage`는 **1‑기반** 인덱싱을 사용한다는 점을 기억하십시오. | -| **Out‑of‑memory errors on large docs** | 단일 스레드에서 많은 대용량 파일을 렌더링함 | 문서를 순차적으로 처리하거나 제한된 동시성을 가진 스레드 풀을 사용하십시오. | +| **FileNotFoundException** | 경로가 잘못되었거나 폴더가 없음 | `YOUR_OUTPUT_DIRECTORY`와 `YOUR_DOCUMENT_DIRECTORY`가 존재하고 읽을 수 있는지 확인하십시오. | +| **Unsupported file format** | Viewer가 지원하지 않는 형식을 회전하려고 함 | [GroupDocs Viewer supported formats] 페이지를 확인하십시오. | +| **No rotation visible** | 잘못된 페이지 번호 사용(0‑기반) | `rotatePage`는 **1‑기반** 인덱스를 사용한다는 점을 기억하십시오. | +| **Out‑of‑memory errors on large docs** | 단일 스레드에서 많은 대용량 파일을 렌더링 | 문서를 순차적으로 처리하거나 제한된 동시성을 가진 스레드 풀을 사용하십시오. | ## 실용적인 적용 사례 - -1. **Presentation adjustments** – 실시간으로 세로 슬라이드를 가로로 변환합니다. -2. **Bulk document correction** – 가로로 촬영된 스캔 PDF를 자동으로 수정합니다. -3. **Print‑ready output** – 가로 그래픽이 세로 용지에 올바르게 인쇄되도록 보장합니다. +1. **프레젠테이션 조정** – 세로 슬라이드를 가로로 실시간 변환하여 시각적 효과를 향상시킵니다. +2. **대량 문서 교정** – 옆으로 스캔된 PDF를 자동으로 수정하여 수시간의 수작업을 절감합니다. +3. **인쇄 준비 출력** – 가로 그래픽이 세로 용지에 올바르게 인쇄되도록 하여 프린터 드라이버에서 수동 회전을 할 필요가 없습니다. ## 성능 팁 - -- **Close resources promptly** – `try‑with‑resources` 블록은 `Viewer`를 자동으로 해제합니다. -- **Batch processing** – 많은 파일을 처리할 때 스레드당 하나의 `Viewer` 인스턴스를 재사용하여 오버헤드를 줄입니다. -- **Monitor memory** – 100 MB보다 큰 문서는 메모리에 유지하는 대신 출력 스트림을 디스크에 기록하는 것을 고려하십시오. +- **리소스를 즉시 닫기** – `try‑with‑resources` 블록은 `Viewer`를 자동으로 해제하여 메모리를 해제합니다. +- **배치 처리** – 스레드당 하나의 `Viewer` 인스턴스를 재사용하여 초기화 오버헤드를 줄입니다. +- **메모리 모니터링** – 100 MB보다 큰 문서는 전체 파일을 메모리에 보관하지 말고 디스크로 스트리밍하십시오; GroupDocs Viewer는 200 MB 파일을 250 MB 이하 RAM으로 처리할 수 있습니다. ## 자주 묻는 질문 - **Q: 여러 페이지를 한 번에 회전할 수 있나요?** -A: 예—회전해야 하는 각 페이지 번호에 대해 `rotatePage()`를 호출하면 됩니다. +A: 예—회전해야 할 각 페이지 번호에 대해 `rotatePage()`를 호출하면 됩니다. 루프에서 호출하거나 체인 방식으로 사용할 수 있습니다. **Q: 렌더링 후 회전을 취소할 방법이 있나요?** A: 직접적인 방법은 없습니다. 회전 옵션 없이 문서를 다시 렌더링해야 합니다. -**Q: GroupDocs Viewer에서 페이지 회전을 지원하는 파일 형식은 무엇입니까?** -A: 공식 문서에 나열된 DOCX, PDF, PPTX, XLSX 및 기타 많은 형식이 지원됩니다. +**Q: GroupDocs Viewer에서 페이지 회전을 지원하는 파일 형식은 무엇인가요?** +A: DOCX, PDF, PPTX, XLSX 및 공식 문서에 나열된 기타 많은 형식이 지원됩니다. -**Q: 여러 문서 배치를 자동으로 회전하려면 어떻게 해야 하나요?** -A: 파일 경로 컬렉션을 순회하는 루프에 코드를 감싸고 각 파일에 동일한 `rotatePage` 로직을 적용하면 됩니다. +**Q: 문서 배치를 자동으로 회전하려면 어떻게 해야 하나요?** +A: 파일 경로 컬렉션을 순회하는 루프에 회전 로직을 감싸서 각 파일에 동일한 `rotatePage` 구성을 적용합니다. -**Q: 회전 중 오류를 처리하기 위한 모범 사례는 무엇입니까?** -A: `Viewer` 사용을 `try‑catch` 블록으로 감싸고 예외를 로그에 기록한 뒤, 필요에 따라 다음 파일 처리를 계속합니다. +**Q: 회전 중 오류를 처리하기 위한 모범 사례는 무엇인가요?** +A: `Viewer` 사용을 `try‑catch` 블록으로 감싸고 예외 세부 정보를 로그에 기록하며, 필요에 따라 다음 파일 처리를 계속 진행하여 단일 실패가 전체 배치를 중단하지 않도록 합니다. ## 리소스 - -- **문서**: [GroupDocs Viewer Java 문서](https://docs.groupdocs.com/viewer/java/) -- **API 레퍼런스**: [GroupDocs API 레퍼런스](https://reference.groupdocs.com/viewer/java/) -- **다운로드**: [GroupDocs Viewer for Java 다운로드](https://releases.groupdocs.com/viewer/java/) -- **구매**: [라이선스 구매](https://purchase.groupdocs.com/buy) -- **무료 체험**: [무료 체험](https://releases.groupdocs.com/viewer/java/) -- **임시 라이선스**: [임시 라이선스 요청](https://purchase.groupdocs.com/temporary-license/) -- **지원**: [GroupDocs 포럼](https://forum.groupdocs.com/c/viewer/9) +- **문서**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API 참조**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **다운로드**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **구매**: [Buy a License](https://purchase.groupdocs.com/buy) +- **무료 체험**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **임시 라이선스**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **지원**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**마지막 업데이트:** 2026-03-29 +**마지막 업데이트:** 2026-09-30 **테스트 환경:** GroupDocs Viewer 25.2 for Java -**작성자:** GroupDocs \ No newline at end of file +**작성자:** GroupDocs + +## 관련 튜토리얼 +- [GroupDocs.Viewer for Java로 특정 PDF 페이지 회전하기](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Java에서 URL로 문서 로드 – GroupDocs.Viewer 튜토리얼](/viewer/java/document-loading/) +- [GroupDocs Viewer Java 문서 보기](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/polish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/polish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 140cabe64..fa2b5be67 100644 --- a/content/polish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/polish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,45 +1,105 @@ --- -date: '2026-03-29' +date: '2026-09-30' description: Dowiedz się, jak obrócić stronę o 90 stopni w Javie przy użyciu GroupDocs Viewer, w tym konfigurację, kod oraz wskazówki dotyczące wydajności. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Obróć stronę o 90 stopni przy użyciu GroupDocs Viewer dla Javy +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Obróć stronę o 90 stopni w Javie przy użyciu GroupDocs Viewer. Przewodnik + krok po kroku, wskazówki dotyczące wydajności oraz praktyczne przykłady zastosowań + dla programistów. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Obróć stronę o 90 stopni za pomocą GroupDocs Viewer dla Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Obróć stronę o 90 stopni za pomocą GroupDocs Viewer dla Java type: docs url: /pl/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Obróć stronę o 90 stopni za pomocą GroupDocs Viewer dla Javy +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Kiedy potrzebujesz **obrócić stronę o 90 stopni** w dokumencie — niezależnie od tego, czy jest to PDF, plik Word czy arkusz kalkulacyjny — wykonanie tego programowo oszczędza czas i eliminuje błędy ręczne. W tym zaawansowanym przewodniku przeprowadzimy Cię krok po kroku przez dokładne czynności, aby obrócić pierwszą stronę dowolnego obsługiwanego dokumentu przy użyciu **GroupDocs Viewer for Java**. Po zakończeniu będziesz mieć wielokrotnego użytku fragment kodu, który możesz wstawić do własnych projektów. -Omówimy także, dlaczego obracanie stron w Javie ma znaczenie, typowe scenariusze, w których ta technika się sprawdza, oraz jak utrzymać operację lekką. +# Obróć stronę o 90 stopni przy użyciu GroupDocs Viewer dla Javy -![Obróć pierwszą stronę dokumentu za pomocą GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +Jeśli potrzebujesz **obrócić stronę o 90 stopni** w dokumencie — niezależnie od tego, czy jest to PDF, plik Word czy arkusz kalkulacyjny — wykonanie tego programowo w Javie oszczędza czas, eliminuje błędy ręczne i pozwala wbudować operację w zautomatyzowane potoki. W tym zaawansowanym przewodniku dowiesz się, jak obrócić pierwszą stronę dowolnego obsługiwanego dokumentu przy użyciu **GroupDocs Viewer for Java**, dlaczego ta funkcja ma znaczenie w rzeczywistych projektach oraz jak utrzymać proces lekki i efektywny pod względem pamięci. + +![Obróć pierwszą stronę dokumentu przy użyciu GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Szybkie odpowiedzi - **Co oznacza „rotate page 90 degrees”?** Obraca wybraną stronę zgodnie z ruchem wskazówek zegara o ćwierć obrotu. -- **Która biblioteka obsługuje obrót?** GroupDocs Viewer for Java udostępnia metodę `rotatePage`. -- **Czy mogę obracać strony PDF w Javie?** Tak — użyj tego samego wywołania `rotatePage`; działa dla PDF, DOCX, XLSX i innych. -- **Czy potrzebna jest licencja?** Darmowa wersja próbna działa w środowisku deweloperskim; płatna licencja jest wymagana w produkcji. +- **Która biblioteka obsługuje rotację?** GroupDocs Viewer for Java udostępnia metodę `rotatePage`. +- **Czy mogę obracać strony PDF w Javie?** Tak — użyj tej samej metody `rotatePage`; działa dla PDF, DOCX, XLSX i innych. +- **Czy potrzebna jest licencja?** Bezpłatna wersja próbna działa w środowisku deweloperskim; płatna licencja jest wymagana w produkcji. - **Czy operacja jest intensywna pod względem pamięci?** Nie, jeśli szybko zamkniesz instancję `Viewer`; zobacz wskazówki dotyczące wydajności poniżej. ## Co to jest „rotate page 90 degrees”? -Obrócenie strony o 90 stopni zmienia jej orientację z pionowej na poziomą (lub odwrotnie) bez zmiany zawartości. Jest to szczególnie przydatne przy prezentacjach, drukowaniu grafik wyłącznie w trybie poziomym lub korygowaniu zeskanowanych dokumentów, które zostały zarejestrowane w pozycji bocznej. +Obrócenie strony o 90 stopni zmienia jej orientację z pionowej na poziomą (lub odwrotnie) bez zmiany zawartości. Jest to przydatne przy prezentacjach, drukowaniu grafik wyłącznie w trybie poziomym lub korekcji zeskanowanych dokumentów, które zostały zarejestrowane bokiem. Rotacja jest stosowana w czasie renderowania, pozostawiając oryginalny plik niezmieniony. -## Dlaczego obracać strony programowo za pomocą GroupDocs Viewer for Java? -GroupDocs Viewer ukrywa złożoność obsługi dziesiątek formatów plików. Umożliwia stosowanie transformacji na poziomie stron — takich jak obrót — przy zachowaniu oryginalnego pliku w nienaruszonym stanie. API jest płynne, wątkowo‑bezpieczne i działa na dowolnym środowisku Java 8+, co czyni je niezawodnym wyborem do automatyzacji klasy korporacyjnej. +## Dlaczego obracać strony programowo przy użyciu GroupDocs Viewer for Java? +GroupDocs Viewer obsługuje **ponad 50 formatów wejściowych i wyjściowych** — w tym PDF, DOCX, PPTX, XLSX i wiele typów obrazów — dzięki czemu możesz renderować dowolny dokument bez zewnętrznych konwerterów. API jest płynne, bezpieczne wątkowo i działa na dowolnym środowisku Java 8+, co czyni je niezawodnym wyborem dla automatyzacji klasy enterprise, która musi konsekwentnie obsługiwać dziesiątki typów plików. ## Wymagania wstępne -- **GroupDocs.Viewer for Java** (najnowsza wersja) -- **JDK 8** lub nowszy -- **Maven** (lub Gradle) do zarządzania zależnościami + +- GroupDocs Viewer for Java (najnowsza wersja) +- JDK 8 lub nowszy +- Maven (lub Gradle) do zarządzania zależnościami - IDE, takie jak IntelliJ IDEA lub Eclipse - Podstawowa znajomość Java I/O -## Konfiguracja GroupDocs.Viewer for Java +## Konfiguracja GroupDocs.Viewer dla Java + Dodaj repozytorium GroupDocs i zależność do swojego `pom.xml`. Ten fragment pozostaje niezmieniony w stosunku do oryginalnego samouczka: ```xml @@ -61,11 +121,11 @@ Dodaj repozytorium GroupDocs i zależność do swojego `pom.xml`. Ten fragment p ### Uzyskanie licencji - **Free trial** – pobierz ze strony GroupDocs. -- **Temporary license** – poproś, jeśli potrzebujesz wydłużonego okresu oceny. +- **Temporary license** – zamów, jeśli potrzebujesz wydłużonego okresu oceny. - **Full license** – zakup do wdrożeń produkcyjnych. ### Podstawowa inicjalizacja Viewer -Poniższy kod pokazuje minimalny sposób utworzenia instancji `Viewer`. Zachowaj go dokładnie tak, jak jest przedstawiony: +Klasa `Viewer` jest punktem wejścia, który ładuje dokument i udostępnia metody renderowania oraz transformacji. Zachowaj kod dokładnie taki, jak pokazano: ```java import com.groupdocs.viewer.Viewer; @@ -76,13 +136,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Jak obrócić stronę PDF w Javie za pomocą GroupDocs Viewer -Chociaż API działa na wielu formatach, PDF jest najczęstszym przypadkiem użycia do obracania stron. Używana jest ta sama metoda `rotatePage`, więc wystarczy wskazać Viewerowi plik PDF i określić numer strony. +## Jak obrócić stronę PDF w Javie przy użyciu GroupDocs Viewer +Załaduj docelowy plik przy użyciu `Viewer`, określ numer strony i wywołaj `rotatePage`. Metoda działa dla PDF, DOCX, PPTX, XLSX oraz innych formatów obsługiwanych przez bibliotekę. Po rotacji możesz wyrenderować dokument do nowego PDF lub przesłać go bezpośrednio do klienta, zapewniając, że oryginalny plik pozostaje nienaruszony. -## Implementacja krok po kroku: Obróć pierwszą stronę o 90 stopni +## Implementacja krok po kroku: obrót pierwszej strony o 90 stopni ### 1. Importuj wymagane pakiety -Te importy zapewniają dostęp do opcji renderowania PDF oraz wyliczenia Rotation. +`PdfViewOptions` informuje Viewer, aby wyjściowo generował plik PDF, natomiast enum `Rotation` definiuje kąt. Obie klasy należą do pakietu `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -90,8 +150,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Zdefiniuj miejsca wyjściowe i utwórz Viewer -Zastąp ścieżki zastępcze rzeczywistymi katalogami. +### 2. Zdefiniuj lokalizacje wyjściowe i utwórz Viewer +Zastąp ścieżki zastępcze rzeczywistymi katalogami. Konstruktor `Viewer` przyjmuje obiekt `File`, który wskazuje na dokument źródłowy. ```java import java.nio.file.Path; @@ -108,8 +168,8 @@ public class RotateSpecificPage { } ``` -### 3. Skonfiguruj opcje widoku PDF i zastosuj obrót -Metoda `rotatePage` przyjmuje numer strony (liczony od 1) oraz wartość wyliczenia `Rotation`. +### 3. Skonfiguruj opcje widoku PDF i zastosuj rotację +Metoda `rotatePage(int, Rotation)` przyjmuje indeks strony **liczony od 1** oraz wartość enum `Rotation`. W tym przykładzie używamy `Rotation.ON_90_DEGREE`, aby obrócić pierwszą stronę zgodnie z ruchem wskazówek zegara. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -119,63 +179,79 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Renderuj dokument -Na koniec wywołaj `view`, aby wygenerować obrócony PDF. +Wywołanie `view` z skonfigurowanymi opcjami zapisuje obrócony PDF w folderze wyjściowym. ```java viewer.view(viewOptions); ``` #### Jak to działa -- **PdfViewOptions** informuje Viewer, aby wyjściowo generował plik PDF. -- **rotatePage(int, Rotation)** obraca tylko wskazaną stronę, pozostawiając pozostałe niezmienione. -- Metoda obsługuje `ON_90_DEGREE`, `ON_180_DEGREE` i `ON_270_DEGREE`. +- **PdfViewOptions** kieruje Viewer do generowania pliku wyjściowego PDF. +- **rotatePage(int, Rotation)** obraca tylko określoną stronę, pozostawiając pozostałe niezmienione. +- Metoda obsługuje trzy stałe rotacji: `ON_90_DEGREE`, `ON_180_DEGREE` i `ON_270_DEGREE`. ## Typowe problemy i rozwiązania + | Objaw | Prawdopodobna przyczyna | Rozwiązanie | |---------|--------------|-----| | **FileNotFoundException** | Nieprawidłowa ścieżka lub brakujący folder | Sprawdź, czy `YOUR_OUTPUT_DIRECTORY` i `YOUR_DOCUMENT_DIRECTORY` istnieją i są czytelne. | | **Unsupported file format** | Próba obrócenia formatu nieobsługiwanego przez Viewer | Sprawdź stronę [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Użycie niewłaściwego numeru strony (liczonego od 0) | Pamiętaj, że `rotatePage` używa indeksacji **od 1**. | +| **No rotation visible** | Użycie niewłaściwego numeru strony (liczony od 0) | Pamiętaj, że `rotatePage` używa indeksacji **liczonej od 1**. | | **Out‑of‑memory errors on large docs** | Renderowanie wielu dużych plików w jednym wątku | Przetwarzaj dokumenty kolejno lub użyj puli wątków o ograniczonej współbieżności. | ## Praktyczne zastosowania -1. **Dostosowanie prezentacji** – Konwertuj slajd w orientacji pionowej na poziomą w locie. -2. **Masowa korekta dokumentów** – Automatyzuj naprawę zeskanowanych PDF‑ów, które zostały zarejestrowane w pozycji bocznej. -3. **Wynik gotowy do druku** – Zapewnij prawidłowe drukowanie grafik w orientacji poziomej na papierze w orientacji pionowej. + +1. **Dostosowanie prezentacji** – Konwertuj slajd w orientacji pionowej na poziomą w locie, aby uzyskać lepszy efekt wizualny. +2. **Masowa korekta dokumentów** – Automatyzuj naprawę zeskanowanych PDF‑ów, które zostały zarejestrowane bokiem, oszczędzając godziny ręcznej pracy. +3. **Wynik gotowy do druku** – Zapewnij prawidłowe drukowanie grafik w orientacji poziomej na papierze w orientacji pionowej bez ręcznej rotacji w sterowniku drukarki. ## Wskazówki dotyczące wydajności -- **Zamykaj zasoby niezwłocznie** – blok `try‑with‑resources` automatycznie zwalnia `Viewer`. -- **Przetwarzanie wsadowe** – przy obsłudze wielu plików, ponownie używaj jednej instancji `Viewer` na wątek, aby zmniejszyć narzut. -- **Monitoruj pamięć** – dla dokumentów większych niż 100 MB rozważ strumieniowanie wyniku na dysk zamiast trzymania go w pamięci. + +- **Zamykaj zasoby niezwłocznie** – blok `try‑with‑resources` automatycznie zwalnia `Viewer`, zwalniając pamięć. +- **Przetwarzanie wsadowe** – ponownie używaj jednej instancji `Viewer` na wątek, aby zmniejszyć narzut inicjalizacji. +- **Monitoruj pamięć** – dla dokumentów większych niż 100 MB, strumieniuj wyjście na dysk zamiast trzymać cały plik w pamięci; GroupDocs Viewer może przetwarzać pliki 200 MB, używając mniej niż 250 MB RAM. ## Najczęściej zadawane pytania **Q: Czy mogę obrócić wiele stron jednocześnie?** -A: Tak — wywołaj `rotatePage()` dla każdego numeru strony, którą chcesz obrócić. +A: Tak — wywołaj `rotatePage()` dla każdego numeru strony, którą chcesz obrócić, albo w pętli, albo łańcuchując wywołania. -**Q: Czy istnieje sposób na cofnięcie obrotu po renderowaniu?** -A: Nie bezpośrednio. Należy ponownie wyrenderować dokument bez opcji obrotu. +**Q: Czy istnieje sposób na cofnięcie rotacji po renderowaniu?** +A: Nie bezpośrednio. Należy ponownie wyrenderować dokument bez opcji rotacji. -**Q: Które formaty plików obsługują obrót stron w GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX oraz wiele innych formatów wymienionych w oficjalnej dokumentacji. +**Q: Które formaty plików obsługują rotację stron w GroupDocs Viewer?** +A: DOCX, PDF, PPTX, XLSX i wiele innych formatów wymienionych w oficjalnej dokumentacji. **Q: Jak mogę automatycznie obracać strony w partii dokumentów?** -A: Umieść kod w pętli, która iteruje po kolekcji ścieżek plików, stosując tę samą logikę `rotatePage` dla każdego. +A: Umieść logikę rotacji w pętli iterującej po kolekcji ścieżek plików, stosując tę samą konfigurację `rotatePage` dla każdego pliku. -**Q: Jaka jest najlepsza praktyka obsługi błędów podczas obrotu?** -A: Umieść użycie Viewer w bloku `try‑catch`, zaloguj wyjątek i opcjonalnie kontynuuj przetwarzanie kolejnego pliku. +**Q: Jaka jest najlepsza praktyka obsługi błędów podczas rotacji?** +A: Otocz użycie Viewer w bloku `try‑catch`, zaloguj szczegóły wyjątku i opcjonalnie kontynuuj przetwarzanie kolejnego pliku, aby uniknąć zatrzymania całej partii przez pojedynczy błąd. ## Zasoby + - **Dokumentacja**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) - **Referencja API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Pobierz**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) - **Zakup**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Darmowa wersja próbna**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Bezpłatna wersja próbna**: [Try Free](https://releases.groupdocs.com/viewer/java/) - **Licencja tymczasowa**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Wsparcie**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Ostatnia aktualizacja:** 2026-03-29 +**Ostatnia aktualizacja:** 2026-09-30 **Testowano z:** GroupDocs Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Powiązane samouczki + +- [Jak obrócić konkretne strony PDF przy użyciu GroupDocs.Viewer dla Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Ładowanie dokumentu z URL w Javie – samouczek GroupDocs.Viewer](/viewer/java/document-loading/) +- [Widoki dokumentów Groupdocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/portuguese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/portuguese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index cab4eeb21..a38b4d084 100644 --- a/content/portuguese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/portuguese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,42 +1,99 @@ --- -date: '2026-03-29' -description: Aprenda a girar a página 90 graus em Java usando o GroupDocs Viewer, +date: '2026-09-30' +description: Aprenda como girar a página 90 graus em Java usando o GroupDocs Viewer, incluindo configuração, código e dicas de desempenho. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Gire a página 90 graus em Java usando o GroupDocs Viewer. Guia passo + a passo, dicas de desempenho e casos de uso reais para desenvolvedores. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Gire a página 90 graus com o GroupDocs Viewer para Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Gire a página 90 graus com o GroupDocs Viewer para Java type: docs url: /pt/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Rotacionar página 90 graus com GroupDocs Viewer para Java -Quando você precisa **rotacionar página 90 graus** em um documento—seja ele um PDF, um arquivo Word ou uma planilha—fazer isso programaticamente economiza tempo e elimina erros manuais. Neste guia avançado, vamos percorrer os passos exatos para rotacionar a primeira página de qualquer documento suportado usando **GroupDocs Viewer for Java**. Ao final, você terá um trecho reutilizável que pode inserir em seus próprios projetos. -Também discutiremos por que rotacionar páginas em Java é importante, cenários comuns onde essa técnica se destaca e como manter a operação leve. +Se você precisar **rotacionar página 90 graus** em um documento—seja ele PDF, arquivo Word ou planilha—fazer isso programaticamente em Java economiza tempo, elimina erros manuais e permite incorporar a operação em pipelines automatizados. Neste guia avançado você aprenderá como rotacionar a primeira página de qualquer documento suportado usando **GroupDocs Viewer para Java**, por que essa capacidade é importante em projetos reais e como manter o processo leve e eficiente em memória. -![Rotacionar a Primeira Página de um Documento com GroupDocs.Viewer para Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +![Rotacionar a primeira página de um documento com GroupDocs.Viewer para Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## Respostas Rápidas +## Respostas rápidas - **O que significa “rotate page 90 degrees”?** Ele gira a página selecionada no sentido horário em um quarto de volta. -- **Qual biblioteca lida com a rotação?** GroupDocs Viewer for Java fornece o método `rotatePage`. -- **Posso rotacionar páginas PDF com Java?** Sim—use a mesma chamada `rotatePage`; funciona para PDF, DOCX, XLSX e outros. +- **Qual biblioteca lida com a rotação?** GroupDocs Viewer para Java fornece o método `rotatePage`. +- **Posso rotacionar páginas PDF com Java?** Sim—use a mesma chamada `rotatePage`; funciona para PDF, DOCX, XLSX e mais. - **Preciso de uma licença?** Um teste gratuito funciona para desenvolvimento; uma licença paga é necessária para produção. -- **A operação é intensiva em memória?** Não, quando você fecha a instância `Viewer` prontamente; veja as dicas de desempenho abaixo. +- **A operação consome muita memória?** Não, quando você fecha a instância `Viewer` prontamente; veja as dicas de desempenho abaixo. ## O que é “rotate page 90 degrees”? -Rotacionar uma página 90 graus reorienta a página de retrato para paisagem (ou vice‑versa) sem alterar o conteúdo subjacente. Isso é especialmente útil para apresentações, impressão de gráficos apenas em paisagem ou correção de documentos digitalizados que foram capturados de lado. +Rotacionar uma página 90 graus reorienta a página de retrato para paisagem (ou vice‑versa) sem alterar o conteúdo subjacente. Isso é útil para apresentações, impressão de gráficos apenas em paisagem ou correção de documentos escaneados que foram capturados de lado. A rotação é aplicada no momento da renderização, deixando o arquivo original inalterado. ## Por que rotacionar páginas programaticamente com GroupDocs Viewer para Java? -GroupDocs Viewer abstrai as complexidades de lidar com dezenas de formatos de arquivo. Ele permite aplicar transformações ao nível da página—como rotação—mantendo o arquivo original intacto. A API é fluente, thread‑safe e funciona em qualquer runtime Java 8+, tornando‑a uma escolha confiável para automação de nível empresarial. +GroupDocs Viewer suporta **mais de 50 formatos de entrada e saída**—incluindo PDF, DOCX, PPTX, XLSX e muitos tipos de imagem—para que você possa renderizar qualquer documento sem conversores externos. A API é fluente, thread‑safe e roda em qualquer runtime Java 8+, tornando‑a uma escolha confiável para automação de nível empresarial que deve lidar com dezenas de tipos de arquivo de forma consistente. -## Pré‑requisitos +## Pré-requisitos -- **GroupDocs.Viewer for Java** (versão mais recente) -- **JDK 8** ou superior -- **Maven** (ou Gradle) para gerenciamento de dependências +- GroupDocs Viewer for Java (versão mais recente) +- JDK 8 ou superior +- Maven (ou Gradle) para gerenciamento de dependências - Uma IDE como IntelliJ IDEA ou Eclipse - Familiaridade básica com Java I/O @@ -61,13 +118,13 @@ Adicione o repositório GroupDocs e a dependência ao seu `pom.xml`. Este trecho ``` -### Aquisição de Licença -- **Teste gratuito** – download do site GroupDocs. +### Aquisição de licença +- **Teste gratuito** – download do site da GroupDocs. - **Licença temporária** – solicite se precisar de um período de avaliação estendido. - **Licença completa** – compre para implantações de produção. -### Inicialização Básica do Viewer -O código a seguir mostra a maneira mínima de criar uma instância `Viewer`. Mantenha exatamente como mostrado: +### Inicialização básica do Viewer +A classe `Viewer` é o ponto de entrada que carrega um documento e expõe métodos de renderização e transformação. Mantenha o código exatamente como mostrado: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +135,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Como rotacionar página PDF em Java com GroupDocs Viewer -Embora a API funcione em vários formatos, PDF é o caso de uso mais comum para rotação de página. O mesmo método `rotatePage` é usado, portanto você só precisa apontar o viewer para um arquivo PDF e especificar o número da página. +## Como rotacionar página PDF Java com GroupDocs Viewer +Carregue o arquivo alvo com `Viewer`, especifique o número da página e chame `rotatePage`. O método funciona para PDF, DOCX, PPTX, XLSX e qualquer outro formato suportado pela biblioteca. Após a rotação, você pode renderizar o documento para um novo PDF ou transmiti‑lo diretamente ao cliente, garantindo que o arquivo original permaneça intacto. -## Implementação Passo a Passo: Rotacionar a Primeira Página 90 Graus +## Implementação passo a passo: rotacionar a primeira página 90 graus ### 1. Importe os pacotes necessários -Essas importações dão acesso às opções de renderização de PDF e ao enum de rotação. +`PdfViewOptions` indica ao Viewer que a saída será um arquivo PDF, enquanto o enum `Rotation` define o ângulo. Ambas as classes pertencem ao pacote `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Defina os locais de saída e crie o Viewer -Substitua os caminhos de placeholder pelos seus diretórios reais. +Substitua os caminhos de placeholder pelos seus diretórios reais. O construtor `Viewer` aceita um objeto `File` que aponta para o documento fonte. ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Configure as opções de visualização PDF e aplique a rotação -O método `rotatePage` recebe o número da página (baseado em 1) e um valor do enum `Rotation`. +O método `rotatePage(int, Rotation)` recebe um índice de página **baseado em 1** e um valor do enum `Rotation`. Neste exemplo usamos `Rotation.ON_90_DEGREE` para girar a primeira página no sentido horário. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,53 +178,54 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Renderize o documento -Finalmente, chame `view` para gerar o PDF rotacionado. +Chamando `view` com as opções configuradas grava o PDF rotacionado na pasta de saída. ```java viewer.view(viewOptions); ``` #### Como funciona -- **PdfViewOptions** indica ao Viewer que a saída será um arquivo PDF. -- **rotatePage(int, Rotation)** rotaciona apenas a página especificada, deixando as demais intactas. -- O método suporta `ON_90_DEGREE`, `ON_180_DEGREE` e `ON_270_DEGREE`. +- **PdfViewOptions** direciona o Viewer a gerar um arquivo PDF de saída. +- **rotatePage(int, Rotation)** rotaciona apenas a página especificada, deixando todas as outras páginas inalteradas. +- O método suporta três constantes de rotação: `ON_90_DEGREE`, `ON_180_DEGREE` e `ON_270_DEGREE`. + +## Problemas comuns e soluções -## Problemas Comuns e Soluções -| Symptom | Likely Cause | Fix | -|---------|--------------|-----| +| Sintoma | Causa provável | Correção | +|---------|----------------|----------| | **FileNotFoundException** | Caminho incorreto ou pasta ausente | Verifique se `YOUR_OUTPUT_DIRECTORY` e `YOUR_DOCUMENT_DIRECTORY` existem e são legíveis. | -| **Unsupported file format** | Tentando rotacionar um formato não suportado pelo Viewer | Verifique a página [GroupDocs Viewer supported formats] page. | -| **No rotation visible** | Usando o número de página errado (baseado em 0) | Lembre‑se que `rotatePage` usa indexação **baseada em 1**. | +| **Unsupported file format** | Tentando rotacionar um formato não suportado pelo Viewer | Consulte a página [GroupDocs Viewer supported formats]. | +| **No rotation visible** | Usando o número de página errado (baseado em 0) | Lembre‑se de que `rotatePage` usa indexação **baseada em 1**. | | **Out‑of‑memory errors on large docs** | Renderizando muitos arquivos grandes em uma única thread | Processar documentos sequencialmente ou usar um pool de threads com concorrência limitada. | -## Aplicações Práticas +## Aplicações práticas -1. **Ajustes de apresentação** – Converta um slide em retrato para paisagem instantaneamente. -2. **Correção em lote de documentos** – Automatize a correção de PDFs digitalizados que foram capturados de lado. -3. **Saída pronta para impressão** – Garanta que gráficos em paisagem imprimam corretamente em papel orientado em retrato. +1. **Ajustes de apresentação** – Converta um slide em retrato para paisagem em tempo real para melhor impacto visual. +2. **Correção em lote de documentos** – Automatize a correção de PDFs escaneados que foram capturados de lado, economizando horas de trabalho manual. +3. **Saída pronta para impressão** – Garanta que gráficos em paisagem imprimam corretamente em papel orientado em retrato sem rotação manual no driver da impressora. -## Dicas de Desempenho +## Dicas de desempenho -- **Feche recursos prontamente** – O bloco `try‑with‑resources` descarta automaticamente o `Viewer`. -- **Processamento em lote** – Ao lidar com muitos arquivos, reutilize uma única instância `Viewer` por thread para reduzir a sobrecarga. -- **Monitore a memória** – Para documentos maiores que 100 MB, considere transmitir a saída para disco em vez de mantê‑la na memória. +- **Feche recursos prontamente** – O bloco `try‑with‑resources` descarta automaticamente o `Viewer`, liberando memória. +- **Processamento em lote** – Reutilize uma única instância `Viewer` por thread para reduzir a sobrecarga de inicialização. +- **Monitore a memória** – Para documentos maiores que 100 MB, faça streaming da saída para disco em vez de manter o arquivo inteiro na memória; o GroupDocs Viewer pode processar arquivos de 200 MB usando menos de 250 MB de RAM. -## Perguntas Frequentes +## Perguntas frequentes **Q: Posso rotacionar várias páginas de uma vez?** -A: Sim—chame `rotatePage()` para cada número de página que precisar rotacionar. +A: Sim—chame `rotatePage()` para cada número de página que precisar rotacionar, seja em um loop ou encadeando chamadas. -**Q: Existe uma forma de desfazer a rotação após a renderização?** +**Q: Existe uma maneira de desfazer a rotação após a renderização?** A: Não diretamente. Você precisaria renderizar o documento novamente sem as opções de rotação. **Q: Quais formatos de arquivo suportam rotação de página no GroupDocs Viewer?** A: DOCX, PDF, PPTX, XLSX e muitos outros formatos listados na documentação oficial. **Q: Como posso rotacionar páginas em um lote de documentos automaticamente?** -A: Envolva o código em um loop que itere sobre uma coleção de caminhos de arquivos, aplicando a mesma lógica `rotatePage` a cada um. +A: Envolva a lógica de rotação em um loop que itere sobre uma coleção de caminhos de arquivos, aplicando a mesma configuração `rotatePage` a cada arquivo. -**Q: Qual é a melhor prática para lidar com erros durante a rotação?** -A: Envolva o uso do Viewer em um bloco `try‑catch`, registre a exceção e, opcionalmente, continue processando o próximo arquivo. +**Q: Qual a melhor prática para lidar com erros durante a rotação?** +A: Envolva o uso do Viewer em um bloco `try‑catch`, registre os detalhes da exceção e, opcionalmente, continue processando o próximo arquivo para evitar que uma única falha interrompa todo o lote. ## Recursos @@ -175,12 +233,24 @@ A: Envolva o uso do Viewer em um bloco `try‑catch`, registre a exceção e, op - **Referência da API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) - **Compra**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Teste Gratuito**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Licença Temporária**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Teste gratuito**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Licença temporária**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Suporte**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Última Atualização:** 2026-03-29 +**Última atualização:** 2026-09-30 **Testado com:** GroupDocs Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Tutoriais Relacionados + +- [Como rotacionar páginas PDF específicas com GroupDocs.Viewer para Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Carregar documento a partir de URL em Java – Tutorial GroupDocs.Viewer](/viewer/java/document-loading/) +- [Visualizações de documentos do GroupDocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/russian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/russian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 955bf9901..19cc8b5a9 100644 --- a/content/russian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/russian/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,46 +1,106 @@ --- -date: '2026-03-29' +date: '2026-09-30' description: Узнайте, как повернуть страницу на 90 градусов в Java с помощью GroupDocs Viewer, включая настройку, код и рекомендации по производительности. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Поверните страницу на 90 градусов в Java с помощью GroupDocs Viewer. + Пошаговое руководство, рекомендации по производительности и реальные примеры использования + для разработчиков. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Повернуть страницу на 90 градусов с помощью GroupDocs Viewer для Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Повернуть страницу на 90 градусов с помощью GroupDocs Viewer для Java type: docs url: /ru/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Повернуть страницу на 90 градусов с GroupDocs Viewer for Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Когда вам нужно **повернуть страницу на 90 градусов** в документе — будь то PDF, файл Word или таблица — выполнение этого программно экономит время и исключает ручные ошибки. В этом продвинутом руководстве мы пройдем точные шаги по повороту первой страницы любого поддерживаемого документа с использованием **GroupDocs Viewer for Java**. К концу у вас будет переиспользуемый фрагмент кода, который можно вставить в свои проекты. -Мы также обсудим, почему вращение страниц в Java имеет значение, типичные сценарии, где эта техника проявляет себя, и как сделать операцию легковесной. +# Повернуть страницу на 90 градусов с помощью GroupDocs Viewer для Java + +Если вам нужно **повернуть страницу на 90 градусов** в документе — будь то PDF, файл Word или таблица — выполнение этой операции программно на Java экономит время, устраняет ручные ошибки и позволяет встроить её в автоматизированные конвейеры. В этом продвинутом руководстве вы узнаете, как повернуть первую страницу любого поддерживаемого документа с помощью **GroupDocs Viewer for Java**, почему эта возможность важна в реальных проектах и как сохранить процесс лёгким и экономным по памяти. ![Повернуть первую страницу документа с помощью GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Быстрые ответы -- **Что означает «повернуть страницу на 90 градусов»?** Она поворачивает выбранную страницу по часовой стрелке на четверть оборота. +- **Что означает “rotate page 90 degrees”?** Она поворачивает выбранную страницу по часовой стрелке на четверть оборота. - **Какая библиотека обрабатывает вращение?** GroupDocs Viewer for Java предоставляет метод `rotatePage`. -- **Могу ли я повернуть PDF‑страницы с помощью Java?** Да — используйте тот же вызов `rotatePage`; он работает с PDF, DOCX, XLSX и другими форматами. -- **Нужна ли лицензия?** Бесплатная пробная версия подходит для разработки; платная лицензия требуется для продакшн. -- **Является ли операция ресурсоёмкой по памяти?** Нет, если вы своевременно закрываете экземпляр `Viewer`; см. советы по производительности ниже. +- **Могу ли я вращать страницы PDF с помощью Java?** Да — используйте тот же вызов `rotatePage`; он работает с PDF, DOCX, XLSX и другими форматами. +- **Нужна ли лицензия?** Бесплатная пробная версия подходит для разработки; для продакшн требуется платная лицензия. +- **Является ли операция ресурсоёмкой по памяти?** Нет, если своевременно закрывать экземпляр `Viewer`; см. советы по производительности ниже. -## Что означает «повернуть страницу на 90 градусов»? -Поворот страницы на 90 градусов переориентирует страницу из портретного в альбомный режим (или наоборот), не изменяя содержимое. Это особенно удобно для презентаций, печати графики только в ландшафтном виде или исправления отсканированных документов, снятых боком. +## Что такое “rotate page 90 degrees”? +Поворот страницы на 90 градусов переориентирует её из портретного в альбомный режим (или наоборот) без изменения содержимого. Это удобно для презентаций, печати только альбомных графиков или исправления отсканированных документов, снятых боком. Поворот применяется во время рендеринга, оригинальный файл остаётся неизменным. ## Почему вращать страницы программно с помощью GroupDocs Viewer for Java? -GroupDocs Viewer абстрагирует сложности работы с десятками форматов файлов. Он позволяет применять трансформации уровня страницы — такие как вращение — при сохранении оригинального файла нетронутым. API интуитивен, потокобезопасен и работает на любой среде выполнения Java 8+, что делает его надёжным выбором для автоматизации корпоративного уровня. +GroupDocs Viewer поддерживает **более 50 форматов ввода и вывода** — включая PDF, DOCX, PPTX, XLSX и многие типы изображений — поэтому вы можете рендерить любой документ без внешних конвертеров. API удобен, потокобезопасен и работает на любой среде Java 8+, что делает его надёжным выбором для корпоративной автоматизации, которая должна последовательно обрабатывать десятки типов файлов. + +## Предварительные требования -## Требования -- **GroupDocs.Viewer for Java** (последняя версия) -- **JDK 8** или новее -- **Maven** (или Gradle) для управления зависимостями +- GroupDocs Viewer for Java (последняя версия) +- JDK 8 или новее +- Maven (или Gradle) для управления зависимостями - IDE, например IntelliJ IDEA или Eclipse - Базовое знакомство с Java I/O -## Настройка GroupDocs.Viewer for Java -Добавьте репозиторий GroupDocs и зависимость в ваш `pom.xml`. Этот фрагмент остаётся без изменений от оригинального руководства: +## Настройка GroupDocs.Viewer для Java + +Добавьте репозиторий GroupDocs и зависимость в ваш `pom.xml`. Этот фрагмент не изменён по сравнению с оригинальным руководством: ```xml @@ -60,12 +120,12 @@ GroupDocs Viewer абстрагирует сложности работы с д ``` ### Получение лицензии -- **Free trial** – загрузите с сайта GroupDocs. -- **Temporary license** – запросите, если вам нужен расширенный период оценки. -- **Full license** – приобретите для продакшн‑развёртываний. +- **Free trial** – загрузить с сайта GroupDocs. +- **Temporary license** – запросить, если нужен расширенный период оценки. +- **Full license** – приобрести для продакшн-развёртываний. ### Базовая инициализация Viewer -Следующий код демонстрирует минимальный способ создания экземпляра `Viewer`. Сохраните его точно как показано: +Класс `Viewer` является точкой входа, загружает документ и предоставляет методы рендеринга и трансформации. Сохраните код точно как показано: ```java import com.groupdocs.viewer.Viewer; @@ -77,12 +137,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Как повернуть страницу PDF в Java с помощью GroupDocs Viewer -Хотя API работает с множеством форматов, PDF — самый распространённый случай использования для вращения страниц. Используется тот же метод `rotatePage`, поэтому достаточно указать Viewer на PDF‑файл и задать номер страницы. +Загрузите целевой файл с помощью `Viewer`, укажите номер страницы и вызовите `rotatePage`. Метод работает с PDF, DOCX, PPTX, XLSX и любыми другими форматами, поддерживаемыми библиотекой. После вращения вы можете отрендерить документ в новый PDF или передать его напрямую клиенту, гарантируя, что оригинальный файл останется нетронутым. -## Пошаговая реализация: Повернуть первую страницу на 90 градусов +## Пошаговая реализация: поворот первой страницы на 90 градусов ### 1. Импортировать необходимые пакеты -Эти импорты предоставляют доступ к параметрам рендеринга PDF и перечислению вращения. +`PdfViewOptions` указывает Viewer выводить PDF‑файл, а перечисление `Rotation` задаёт угол. Оба класса находятся в пакете `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -90,8 +150,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Определить места вывода и создать Viewer -Замените пути-заполнители вашими реальными каталогами. +### 2. Определить пути вывода и создать Viewer +Замените пути‑заполнители вашими реальными каталогами. Конструктор `Viewer` принимает объект `File`, указывающий на исходный документ. ```java import java.nio.file.Path; @@ -108,8 +168,8 @@ public class RotateSpecificPage { } ``` -### 3. Настроить параметры просмотра PDF и применить вращение -Метод `rotatePage` принимает номер страницы (начиная с 1) и значение перечисления `Rotation`. +### 3. Настроить параметры PDF‑просмотра и применить вращение +Метод `rotatePage(int, Rotation)` принимает **1‑based** (нумерация с 1) индекс страницы и значение перечисления `Rotation`. В этом примере мы используем `Rotation.ON_90_DEGREE` для поворота первой страницы по часовой стрелке. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -118,64 +178,80 @@ PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` -### 4. Отрендерить документ -Наконец, вызовите `view`, чтобы сгенерировать повернутый PDF. +### 4. Рендерить документ +Вызов `view` с настроенными параметрами записывает повернутый PDF в папку вывода. ```java viewer.view(viewOptions); ``` #### Как это работает -- **PdfViewOptions** указывает Viewer выводить PDF‑файл. -- **rotatePage(int, Rotation)** вращает только указанную страницу, оставляя остальные без изменений. -- Метод поддерживает `ON_90_DEGREE`, `ON_180_DEGREE` и `ON_270_DEGREE`. +- **PdfViewOptions** указывает Viewer генерировать PDF‑файл вывода. +- **rotatePage(int, Rotation)** вращает только указанную страницу, остальные остаются без изменений. +- Метод поддерживает три константы вращения: `ON_90_DEGREE`, `ON_180_DEGREE` и `ON_270_DEGREE`. ## Распространённые проблемы и решения + | Симптом | Вероятная причина | Решение | -|---------|-------------------|--------| +|---------|-------------------|---------| | **FileNotFoundException** | Неправильный путь или отсутствующая папка | Убедитесь, что `YOUR_OUTPUT_DIRECTORY` и `YOUR_DOCUMENT_DIRECTORY` существуют и доступны для чтения. | -| **Unsupported file format** | Попытка вращать формат, не поддерживаемый Viewer | Проверьте страницу [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Используется неверный номер страницы (нумерация с 0) | Помните, что `rotatePage` использует индексацию **с 1**. | -| **Out‑of‑memory errors on large docs** | Рендеринг множества больших файлов в одном потоке | Обрабатывайте документы последовательно или используйте пул потоков с ограниченной конкуренцией. | +| **Unsupported file format** | Попытка вращения формата, не поддерживаемого Viewer | Проверьте страницу [GroupDocs Viewer supported formats]. | +| **No rotation visible** | Используется неверный номер страницы (нумерация с 0) | Помните, что `rotatePage` использует индексацию **1‑based**. | +| **Out‑of‑memory errors on large docs** | Рендеринг большого количества крупных файлов в одном потоке | Обрабатывайте документы последовательно или используйте пул потоков с ограниченной параллельностью. | ## Практические применения -1. **Настройка презентаций** – мгновенно преобразовать портретный слайд в ландшафтный. -2. **Коррекция массовых документов** – автоматизировать исправление отсканированных PDF, снятых боком. -3. **Подготовка к печати** – обеспечить корректную печать ландшафтной графики на портретно‑ориентированной бумаге. + +1. **Presentation adjustments** – Преобразовать портретный слайд в альбомный «на лету» для лучшего визуального эффекта. +2. **Bulk document correction** – Автоматизировать исправление отсканированных PDF, снятых боком, экономя часы ручной работы. +3. **Print‑ready output** – Обеспечить правильную печать альбомных графиков на портретной бумаге без ручного вращения в драйвере принтера. ## Советы по производительности -- **Своевременно закрывать ресурсы** – блок `try‑with‑resources` автоматически освобождает `Viewer`. -- **Пакетная обработка** – при работе с множеством файлов переиспользуйте один экземпляр `Viewer` на поток, чтобы снизить накладные расходы. -- **Контролировать память** – для документов более 100 МБ рассмотрите возможность потоковой записи вывода на диск вместо удержания его в памяти. + +- **Close resources promptly** – Блок `try‑with‑resources` автоматически освобождает `Viewer`, освобождая память. +- **Batch processing** – Переиспользуйте один экземпляр `Viewer` на поток, чтобы снизить накладные расходы инициализации. +- **Monitor memory** – Для документов более 100 МБ потоките вывод на диск вместо удержания всего файла в памяти; GroupDocs Viewer может обрабатывать файлы размером 200 МБ, используя менее 250 МБ ОЗУ. ## Часто задаваемые вопросы -**Q: Могу ли я повернуть несколько страниц одновременно?** -A: Да — вызывайте `rotatePage()` для каждого номера страницы, которую нужно повернуть. +**Q: Можно ли вращать несколько страниц одновременно?** +A: Да — вызывайте `rotatePage()` для каждого номера страницы, которую нужно вращать, либо в цикле, либо цепочкой вызовов. **Q: Есть ли способ отменить вращение после рендеринга?** -A: Не напрямую. Нужно заново отрендерить документ без параметров вращения. +A: Не напрямую. Нужно отрендерить документ снова без параметров вращения. **Q: Какие форматы файлов поддерживают вращение страниц в GroupDocs Viewer?** A: DOCX, PDF, PPTX, XLSX и многие другие форматы, перечисленные в официальной документации. **Q: Как автоматически вращать страницы в пакете документов?** -A: Оберните код в цикл, который проходит по коллекции путей к файлам, применяя ту же логику `rotatePage` к каждому. +A: Оберните логику вращения в цикл, который проходит по коллекции путей к файлам, применяя одинаковую конфигурацию `rotatePage` к каждому файлу. -**Q: Какова лучшая практика обработки ошибок при вращении?** -A: Оберните использование Viewer в блок `try‑catch`, журналируйте исключение и при желании продолжайте обработку следующего файла. +**Q: Какова лучшая практика обработки ошибок во время вращения?** +A: Поместите использование Viewer в блок `try‑catch`, журналируйте детали исключения и при желании продолжайте обработку следующего файла, чтобы один сбой не останавливал всю партию. ## Ресурсы + - **Документация**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **API reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) - **Purchase**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Free Trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Temporary License**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Free trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporary license**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Последнее обновление:** 2026-03-29 +**Последнее обновление:** 2026-09-30 **Тестировано с:** GroupDocs Viewer 25.2 for Java -**Автор:** GroupDocs \ No newline at end of file +**Автор:** GroupDocs + +## Связанные руководства + +- [Как повернуть отдельные страницы PDF с помощью GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Загрузка документа из URL в Java – руководство GroupDocs.Viewer](/viewer/java/document-loading/) +- [Виды документов Groupdocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/spanish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/spanish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 7a5ab4523..440268946 100644 --- a/content/spanish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/spanish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,47 +1,102 @@ --- -date: '2026-03-29' -description: Aprende cómo rotar una página 90 grados en Java usando GroupDocs Viewer, +date: '2026-09-30' +description: Aprende cómo rotar la página 90 grados en Java usando GroupDocs Viewer, incluyendo la configuración, el código y consejos de rendimiento. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Rotar página 90 grados con GroupDocs Viewer para Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Rotar la página 90 grados en Java usando GroupDocs Viewer. Guía paso + a paso, consejos de rendimiento y casos de uso reales para desarrolladores. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Rotar la página 90 grados con GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Rotar la página 90 grados con GroupDocs Viewer for Java type: docs url: /es/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Rotar página 90 grados con GroupDocs Viewer for Java -Cuando necesitas **rotar página 90 grados** en un documento—ya sea un PDF, un archivo Word o una hoja de cálculo—hacerlo programáticamente ahorra tiempo y elimina errores manuales. En esta guía avanzada recorreremos los pasos exactos para rotar la primera página de cualquier documento compatible usando **GroupDocs Viewer for Java**. Al final, tendrás un fragmento reutilizable que podrás incorporar en tus propios proyectos. -También discutiremos por qué rotar páginas en Java es importante, escenarios comunes donde esta técnica destaca y cómo mantener la operación ligera. +Si necesitas **rotar página 90 grados** en un documento—ya sea un PDF, un archivo Word o una hoja de cálculo—hacerlo programáticamente en Java ahorra tiempo, elimina errores manuales y te permite incrustar la operación en pipelines automatizados. En esta guía avanzada aprenderás cómo rotar la primera página de cualquier documento compatible usando **GroupDocs Viewer for Java**, por qué esta capacidad es importante en proyectos del mundo real y cómo mantener el proceso liviano y eficiente en memoria. ![Rotar la primera página de un documento con GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Respuestas rápidas -- **¿Qué significa “rotate page 90 degrees”?** Gira la página seleccionada en sentido horario un cuarto de vuelta. +- **¿Qué significa “rotar página 90 grados”?** Gira la página seleccionada en sentido horario un cuarto de vuelta. - **¿Qué biblioteca maneja la rotación?** GroupDocs Viewer for Java proporciona el método `rotatePage`. - **¿Puedo rotar páginas PDF con Java?** Sí—utiliza la misma llamada `rotatePage`; funciona para PDF, DOCX, XLSX y más. - **¿Necesito una licencia?** Una prueba gratuita funciona para desarrollo; se requiere una licencia de pago para producción. -- **¿La operación es intensiva en memoria?** No cuando cierras la instancia `Viewer` rápidamente; consulta los consejos de rendimiento a continuación. +- **¿La operación consume mucha memoria?** No cuando cierras la instancia `Viewer` rápidamente; consulta los consejos de rendimiento a continuación. -## Qué es “rotate page 90 degrees”? -Rotar una página 90 grados reorienta la página de retrato a paisaje (o viceversa) sin alterar el contenido subyacente. Esto es especialmente útil para presentaciones, imprimir gráficos solo en paisaje, o corregir documentos escaneados que fueron capturados de lado. +## ¿Qué es “rotar página 90 grados”? +Rotar una página 90 grados reorienta la página de retrato a paisaje (o viceversa) sin cambiar el contenido subyacente. Esto es útil para presentaciones, imprimir gráficos solo en paisaje o corregir documentos escaneados que fueron capturados de lado. La rotación se aplica en tiempo de renderizado, dejando el archivo original sin cambios. -## Por qué rotar páginas programáticamente con GroupDocs Viewer for Java? -GroupDocs Viewer abstrae las complejidades de manejar docenas de formatos de archivo. Te permite aplicar transformaciones a nivel de página—como la rotación—manteniendo el archivo original intacto. La API es fluida, segura para hilos y funciona en cualquier entorno Java 8+, lo que la convierte en una opción confiable para automatización de nivel empresarial. +## ¿Por qué rotar páginas programáticamente con GroupDocs Viewer for Java? +GroupDocs Viewer soporta **más de 50 formatos de entrada y salida**—incluidos PDF, DOCX, PPTX, XLSX y muchos tipos de imagen—para que puedas renderizar cualquier documento sin convertidores externos. La API es fluida, segura para hilos y se ejecuta en cualquier entorno Java 8+, lo que la convierte en una opción confiable para automatización de nivel empresarial que debe manejar docenas de tipos de archivo de forma consistente. ## Requisitos previos - -- **GroupDocs.Viewer for Java** (última versión) -- **JDK 8** o superior -- **Maven** (o Gradle) para la gestión de dependencias +- GroupDocs Viewer for Java (última versión) +- JDK 8 o superior +- Maven (o Gradle) para la gestión de dependencias - Un IDE como IntelliJ IDEA o Eclipse - Familiaridad básica con Java I/O ## Configuración de GroupDocs.Viewer para Java - Agrega el repositorio de GroupDocs y la dependencia a tu `pom.xml`. Este fragmento es idéntico al tutorial original: ```xml @@ -62,12 +117,12 @@ Agrega el repositorio de GroupDocs y la dependencia a tu `pom.xml`. Este fragmen ``` ### Obtención de licencia -- **Free trial** – descarga desde el sitio de GroupDocs. -- **Temporary license** – solicita si necesitas un período de evaluación extendido. -- **Full license** – compra para implementaciones en producción. +- **Prueba gratuita** – descarga desde el sitio de GroupDocs. +- **Licencia temporal** – solicita si necesitas un período de evaluación extendido. +- **Licencia completa** – compra para implementaciones en producción. ### Inicialización básica del Viewer -El siguiente código muestra la forma mínima de crear una instancia `Viewer`. Manténlo exactamente como se muestra: +La clase `Viewer` es el punto de entrada que carga un documento y expone métodos de renderizado y transformación. Mantén el código exactamente como se muestra: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +133,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Cómo rotar una página PDF con Java usando GroupDocs Viewer -Aunque la API funciona con muchos formatos, PDF es el caso de uso más común para la rotación de páginas. Se utiliza el mismo método `rotatePage`, por lo que solo necesitas apuntar el viewer a un archivo PDF y especificar el número de página. +## Cómo rotar una página PDF en Java con GroupDocs Viewer +Carga el archivo objetivo con `Viewer`, especifica el número de página y llama a `rotatePage`. El método funciona para PDF, DOCX, PPTX, XLSX y cualquier otro formato soportado por la biblioteca. Después de la rotación, puedes renderizar el documento a un nuevo PDF o transmitirlo directamente al cliente, asegurando que el archivo original permanezca intacto. -## Implementación paso a paso: Rotar la primera página 90 grados +## Implementación paso a paso: rotar la primera página 90 grados ### 1. Importar los paquetes requeridos -Estas importaciones te dan acceso a las opciones de renderizado PDF y al enum de rotación. +`PdfViewOptions` indica al Viewer que genere un archivo PDF, mientras que el enum `Rotation` define el ángulo. Ambas clases pertenecen al paquete `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +148,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Definir ubicaciones de salida y crear el Viewer -Reemplaza las rutas de marcador de posición con tus directorios reales. +Reemplaza las rutas de marcador de posición con tus directorios reales. El constructor `Viewer` acepta un objeto `File` que apunta al documento fuente. ```java import java.nio.file.Path; @@ -111,7 +166,7 @@ public class RotateSpecificPage { ``` ### 3. Configurar opciones de vista PDF y aplicar la rotación -El método `rotatePage` recibe el número de página (basado en 1) y un valor del enum `Rotation`. +El método `rotatePage(int, Rotation)` recibe un índice de página **basado en 1** y un valor del enum `Rotation`. En este ejemplo usamos `Rotation.ON_90_DEGREE` para girar la primera página en sentido horario. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,57 +176,54 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Renderizar el documento -Finalmente, llama a `view` para generar el PDF rotado. +Llamar a `view` con las opciones configuradas escribe el PDF rotado en la carpeta de salida. ```java viewer.view(viewOptions); ``` #### Cómo funciona -- **PdfViewOptions** indica al Viewer que genere un archivo PDF. -- **rotatePage(int, Rotation)** rota solo la página que especificas, dejando el resto sin cambios. -- El método soporta `ON_90_DEGREE`, `ON_180_DEGREE` y `ON_270_DEGREE`. +- **PdfViewOptions** dirige al Viewer a generar un archivo PDF de salida. +- **rotatePage(int, Rotation)** rota solo la página especificada, dejando todas las demás páginas sin cambios. +- El método soporta tres constantes de rotación: `ON_90_DEGREE`, `ON_180_DEGREE` y `ON_270_DEGREE`. ## Problemas comunes y soluciones | Síntoma | Causa probable | Solución | |---------|----------------|----------| | **FileNotFoundException** | Ruta incorrecta o carpeta faltante | Verifica que `YOUR_OUTPUT_DIRECTORY` y `YOUR_DOCUMENT_DIRECTORY` existan y sean legibles. | -| **Unsupported file format** | Intentar rotar un formato no soportado por Viewer | Revisa la página de [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Usar el número de página incorrecto (basado en 0) | Recuerda que `rotatePage` usa indexación **basada en 1**. | -| **Out‑of‑memory errors on large docs** | Renderizar muchos archivos grandes en un solo hilo | Procesa los documentos secuencialmente o usa un pool de hilos con concurrencia limitada. | +| **Unsupported file format** | Intentando rotar un formato no soportado por Viewer | Revisa la página [GroupDocs Viewer supported formats]. | +| **No rotation visible** | Usando el número de página incorrecto (basado en 0) | Recuerda que `rotatePage` usa indexación **basada en 1**. | +| **Out‑of‑memory errors on large docs** | Renderizando muchos archivos grandes en un solo hilo | Procesa los documentos secuencialmente o usa un pool de hilos con concurrencia limitada. | ## Aplicaciones prácticas - -1. **Ajustes de presentación** – Convierte una diapositiva en retrato a paisaje al instante. -2. **Corrección masiva de documentos** – Automatiza la corrección de PDFs escaneados que fueron capturados de lado. -3. **Salida lista para imprimir** – Asegura que los gráficos en paisaje se impriman correctamente en papel orientado en retrato. +1. **Ajustes de presentación** – Convierte una diapositiva en retrato a paisaje al instante para un mejor impacto visual. +2. **Corrección masiva de documentos** – Automatiza la corrección de PDFs escaneados que fueron capturados de lado, ahorrando horas de trabajo manual. +3. **Salida lista para imprimir** – Asegura que los gráficos en paisaje se impriman correctamente en papel orientado en retrato sin rotación manual en el controlador de la impresora. ## Consejos de rendimiento - -- **Cerrar recursos rápidamente** – El bloque `try‑with‑resources` elimina automáticamente el `Viewer`. -- **Procesamiento por lotes** – Al manejar muchos archivos, reutiliza una única instancia `Viewer` por hilo para reducir la sobrecarga. -- **Monitorear memoria** – Para documentos mayores de 100 MB, considera transmitir la salida a disco en lugar de mantenerla en memoria. +- **Cerrar recursos rápidamente** – El bloque `try‑with‑resources` elimina automáticamente el `Viewer`, liberando memoria. +- **Procesamiento por lotes** – Reutiliza una única instancia `Viewer` por hilo para reducir la sobrecarga de inicialización. +- **Monitorear memoria** – Para documentos mayores de 100 MB, transmite la salida a disco en lugar de mantener todo el archivo en memoria; GroupDocs Viewer puede procesar archivos de 200 MB usando menos de 250 MB de RAM. ## Preguntas frecuentes -**Q: ¿Puedo rotar varias páginas a la vez?** -A: Sí—llama a `rotatePage()` para cada número de página que necesites rotar. +**P: ¿Puedo rotar varias páginas a la vez?** +R: Sí—invoca `rotatePage()` para cada número de página que necesites rotar, ya sea en un bucle o encadenando llamadas. -**Q: ¿Hay una forma de deshacer la rotación después de renderizar?** -A: No directamente. Necesitarías renderizar el documento nuevamente sin las opciones de rotación. +**P: ¿Hay una forma de deshacer la rotación después de renderizar?** +R: No directamente. Necesitarías renderizar el documento nuevamente sin las opciones de rotación. -**Q: ¿Qué formatos de archivo soportan la rotación de página en GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX y muchos otros formatos listados en la documentación oficial. +**P: ¿Qué formatos de archivo soportan la rotación de página en GroupDocs Viewer?** +R: DOCX, PDF, PPTX, XLSX y muchos otros formatos listados en la documentación oficial. -**Q: ¿Cómo puedo rotar páginas en un lote de documentos automáticamente?** -A: Envuelve el código en un bucle que itere sobre una colección de rutas de archivo, aplicando la misma lógica `rotatePage` a cada una. +**P: ¿Cómo puedo rotar páginas en un lote de documentos automáticamente?** +R: Envuelve la lógica de rotación en un bucle que itere sobre una colección de rutas de archivo, aplicando la misma configuración `rotatePage` a cada archivo. -**Q: ¿Cuál es la mejor práctica para manejar errores durante la rotación?** -A: Encierra el uso del Viewer en un bloque `try‑catch`, registra la excepción y, opcionalmente, continúa procesando el siguiente archivo. +**P: ¿Cuál es la mejor práctica para manejar errores durante la rotación?** +R: Encierra el uso de Viewer en un bloque `try‑catch`, registra los detalles de la excepción y, opcionalmente, continúa procesando el siguiente archivo para evitar que una única falla detenga todo el lote. ## Recursos - - **Documentación**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) - **Referencia API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) - **Descarga**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) @@ -182,6 +234,16 @@ A: Encierra el uso del Viewer en un bloque `try‑catch`, registra la excepción --- -**Última actualización:** 2026-03-29 +**Última actualización:** 2026-09-30 **Probado con:** GroupDocs Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Tutoriales relacionados +- [Cómo rotar páginas PDF específicas con GroupDocs.Viewer para Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Cargar documento desde URL en Java – Tutorial de GroupDocs.Viewer](/viewer/java/document-loading/) +- [Vistas de documentos en GroupDocs Viewer Java](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + +{{< /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/content/swedish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/swedish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 2e6df424c..5ef366a90 100644 --- a/content/swedish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/swedish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' +date: '2026-09-30' description: Lär dig hur du roterar en sida 90 grader i Java med GroupDocs Viewer, inklusive installation, kod och prestandatips. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Rotera sidan 90 grader i Java med GroupDocs Viewer. Steg‑för‑steg‑guide, + prestandatips och verkliga användningsfall för utvecklare. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Rotera sidan 90 grader med GroupDocs Viewer för Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation title: Rotera sidan 90 grader med GroupDocs Viewer för Java type: docs url: /sv/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# Rotera sida 90 grader med GroupDocs Viewer för Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -När du behöver **rotera sida 90 grader** i ett dokument—oavsett om det är en PDF, Word‑fil eller kalkylblad—sparar det att göra det programatiskt tid och eliminerar manuella fel. I den här avancerade guiden går vi igenom de exakta stegen för att rotera den första sidan i vilket stödformat som helst med **GroupDocs Viewer för Java**. I slutet har du ett återanvändbart kodsnutt som du kan lägga in i dina egna projekt. -Vi kommer också att diskutera varför rotering av sidor i Java är viktigt, vanliga scenarier där tekniken briljerar, och hur du håller operationen lättviktig. +# Rotera sidan 90 grader med GroupDocs Viewer för Java + +Om du behöver **rotera sidan 90 grader** i ett dokument—oavsett om det är en PDF, Word‑fil eller kalkylblad—så sparar ett programatiskt tillvägagångssätt i Java tid, eliminerar manuella fel och låter dig integrera operationen i automatiserade pipelines. I den här avancerade guiden lär du dig hur du roterar den första sidan i vilket stödformat som helst med **GroupDocs Viewer för Java**, varför denna funktion är viktig i verkliga projekt och hur du håller processen lättviktig och minnes‑effektiv. ![Rotera den första sidan i ett dokument med GroupDocs.Viewer för Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Snabba svar -- **Vad betyder “rotate page 90 degrees”?** Det vrider den valda sidan medurs ett kvarts varv. +- **Vad betyder “rotate page 90 degrees”?** Den vrider den valda sidan medurs ett kvarts varv. - **Vilket bibliotek hanterar rotationen?** GroupDocs Viewer för Java tillhandahåller metoden `rotatePage`. - **Kan jag rotera PDF‑sidor med Java?** Ja—använd samma `rotatePage`‑anrop; det fungerar för PDF, DOCX, XLSX och mer. - **Behöver jag en licens?** En gratis provversion fungerar för utveckling; en betald licens krävs för produktion. -- **Är operationen minnesintensiv?** Nej, när du stänger `Viewer`‑instansen omedelbart; se prestandatipsen nedan. +- **Är operationen minnesintensiv?** Inte när du stänger `Viewer`‑instansen omedelbart; se prestandatipsen nedan. ## Vad är “rotate page 90 degrees”? -Att rotera en sida 90 grader omorienterar sidan från stående till liggande (eller vice‑versa) utan att ändra det underliggande innehållet. Detta är särskilt praktiskt för presentationer, utskrift av enbart liggande grafik, eller korrigering av skannade dokument som fångades sidledes. +Att rotera en sida 90 grader omorienterar sidan från stående till liggande (eller tvärtom) utan att ändra det underliggande innehållet. Detta är praktiskt för presentationer, utskrift av enbart liggande grafik eller korrigering av skannade dokument som fångats snett. Rotation appliceras vid renderingen och lämnar originalfilen oförändrad. ## Varför rotera sidor programatiskt med GroupDocs Viewer för Java? -GroupDocs Viewer abstraherar komplexiteten i att hantera dussintals filformat. Det låter dig tillämpa sidnivå‑transformeringar—som rotation—utan att ändra den ursprungliga filen. API‑et är flytande, trådsäkert och fungerar på alla Java 8+‑runtime‑miljöer, vilket gör det till ett pålitligt val för företagsnivå‑automation. +GroupDocs Viewer stödjer **50+ in‑ och utdataformat**—inklusive PDF, DOCX, PPTX, XLSX och många bildtyper—så att du kan rendera vilket dokument som helst utan externa konverterare. API‑et är flytande, trådsäkert och körs på vilken Java 8+‑runtime som helst, vilket gör det till ett pålitligt val för företags‑automation som måste hantera dussintals filtyper konsekvent. ## Förutsättningar -- **GroupDocs.Viewer for Java** (senaste versionen) -- **JDK 8** eller nyare -- **Maven** (eller Gradle) för beroendehantering +- GroupDocs Viewer för Java (senaste versionen) +- JDK 8 eller nyare +- Maven (eller Gradle) för beroendehantering - En IDE såsom IntelliJ IDEA eller Eclipse - Grundläggande kunskap om Java I/O -## Konfigurera GroupDocs.Viewer för Java +## Installera GroupDocs.Viewer för Java -Lägg till GroupDocs‑arkivet och beroendet i din `pom.xml`. Detta kodsnutt är oförändrad från den ursprungliga handledningen: +Lägg till GroupDocs‑arkivet och beroendet i din `pom.xml`. Detta kodexempel är oförändrat från den ursprungliga handledningen: ```xml @@ -61,13 +118,13 @@ Lägg till GroupDocs‑arkivet och beroendet i din `pom.xml`. Detta kodsnutt är ``` -### Licensförvärv -- **Free trial** – ladda ner från GroupDocs‑sajten. -- **Temporary license** – begär om du behöver en förlängd utvärderingsperiod. -- **Full license** – köp för produktionsdistributioner. +### Licensanskaffning +- **Gratis provversion** – ladda ner från GroupDocs webbplats. +- **Tillfällig licens** – begär om du behöver en förlängd utvärderingsperiod. +- **Full licens** – köp för produktionsdistributioner. ### Grundläggande Viewer‑initialisering -Följande kod visar det minsta sättet att skapa en `Viewer`‑instans. Behåll den exakt som den visas: +Klassen `Viewer` är startpunkten som laddar ett dokument och exponerar renderings‑ och transformationsmetoder. Behåll koden exakt som visad: ```java import com.groupdocs.viewer.Viewer; @@ -79,12 +136,12 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { ``` ## Hur man roterar PDF‑sida i Java med GroupDocs Viewer -Även om API‑et fungerar över många format är PDF det vanligaste användningsfallet för sidrotation. Samma `rotatePage`‑metod används, så du behöver bara peka Viewer på en PDF‑fil och ange sidnumret. +Läs in målfilen med `Viewer`, ange sidnumret och anropa `rotatePage`. Metoden fungerar för PDF, DOCX, PPTX, XLSX och alla andra format som stöds av biblioteket. Efter rotation kan du rendera dokumentet till en ny PDF eller strömma det direkt till klienten, vilket säkerställer att originalfilen förblir orörd. -## Steg‑för‑steg‑implementation: Rotera den första sidan 90 grader +## Steg‑för‑steg-implementation: rotera den första sidan 90 grader ### 1. Importera de nödvändiga paketen -Dessa importeringar ger dig åtkomst till PDF‑renderingsalternativ och rotations‑enum. +`PdfViewOptions` talar om för Viewer att skriva ut en PDF‑fil, medan enum‑typen `Rotation` definierar vinkeln. Båda klasserna tillhör paketet `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -93,7 +150,7 @@ import com.groupdocs.viewer.options.Rotation; ``` ### 2. Definiera utdata‑platser och skapa Viewer -Ersätt platshållar‑sökvägarna med dina faktiska kataloger. +Byt ut platshållar‑sökvägarna mot dina faktiska kataloger. `Viewer`‑konstruktorn accepterar ett `File`‑objekt som pekar på källdokumentet. ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Konfigurera PDF‑visningsalternativ och tillämpa rotationen -`rotatePage`‑metoden tar sidnumret (1‑baserat) och ett `Rotation`‑enum‑värde. +Metoden `rotatePage(int, Rotation)` tar ett **1‑baserat** sidindex och ett `Rotation`‑enum‑värde. I detta exempel använder vi `Rotation.ON_90_DEGREE` för att vrida den första sidan medurs. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,42 +178,41 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Rendera dokumentet -Slutligen, anropa `view` för att generera den roterade PDF‑filen. +Genom att anropa `view` med de konfigurerade alternativen skrivs den roterade PDF‑filen till utmatningsmappen. ```java viewer.view(viewOptions); ``` #### Så fungerar det -- **PdfViewOptions** talar om för Viewer att skriva ut en PDF‑fil. -- **rotatePage(int, Rotation)** roterar endast den sida du anger, och lämnar resten orörd. -- Metoden stödjer `ON_90_DEGREE`, `ON_180_DEGREE` och `ON_270_DEGREE`. +- **PdfViewOptions** styr Viewer att generera en PDF‑utdatafil. +- **rotatePage(int, Rotation)** roterar endast den angivna sidan, medan alla andra sidor förblir oförändrade. +- Metoden stödjer tre rotationskonstanter: `ON_90_DEGREE`, `ON_180_DEGREE` och `ON_270_DEGREE`. ## Vanliga problem och lösningar - -| Symptom | Trolig orsak | Åtgärd | +| Symptom | Trolig orsak | Lösning | |---------|--------------|-----| | **FileNotFoundException** | Felaktig sökväg eller saknad mapp | Verifiera att `YOUR_OUTPUT_DIRECTORY` och `YOUR_DOCUMENT_DIRECTORY` finns och är läsbara. | | **Unsupported file format** | Försöker rotera ett format som inte stöds av Viewer | Kontrollera sidan [GroupDocs Viewer supported formats]. | | **No rotation visible** | Använder fel sidnummer (0‑baserat) | Kom ihåg att `rotatePage` använder **1‑baserad** indexering. | -| **Out‑of‑memory errors on large docs** | Renderar många stora filer i en enda tråd | Processa dokument sekventiellt eller använd en trådpott med begränsad samtidighet. | +| **Out‑of‑memory errors on large docs** | Renderar många stora filer i en enda tråd | Processa dokument sekventiellt eller använd en trådpool med begränsad samtidighet. | ## Praktiska tillämpningar -1. **Presentation adjustments** – Konvertera en stående bild till liggande i realtid. -2. **Bulk document correction** – Automatisera korrigering av skannade PDF‑filer som fångades sidledes. -3. **Print‑ready output** – Säkerställ att liggande grafik skrivs ut korrekt på stående papper. +1. **Presentationjusteringar** – Konvertera en stående bild till liggande i realtid för bättre visuell effekt. +2. **Masskorrektion av dokument** – Automatisera korrigering av skannade PDF‑filer som fångats snett, vilket sparar timmar av manuellt arbete. +3. **Utskriftsklar output** – Säkerställ att liggande grafik skrivs ut korrekt på stående papper utan manuell rotation i skrivardrivrutinen. ## Prestandatips -- **Close resources promptly** – `try‑with‑resources`‑blocket frigör automatiskt `Viewer`. -- **Batch processing** – När du hanterar många filer, återanvänd en enda `Viewer`‑instans per tråd för att minska overhead. -- **Monitor memory** – För dokument större än 100 MB, överväg att strömma utdata till disk istället för att hålla den i minnet. +- **Stäng resurser omedelbart** – `try‑with‑resources`‑blocket frigör automatiskt `Viewer`, vilket frigör minne. +- **Batch‑behandling** – Återanvänd en enda `Viewer`‑instans per tråd för att minska initieringskostnaden. +- **Övervaka minne** – För dokument större än 100 MB, strömma utdata till disk istället för att hålla hela filen i minnet; GroupDocs Viewer kan bearbeta 200 MB‑filer med under 250 MB RAM. ## Vanliga frågor **Q: Kan jag rotera flera sidor samtidigt?** -A: Ja—anropa `rotatePage()` för varje sidnummer du behöver rotera. +A: Ja—anropa `rotatePage()` för varje sidnummer du behöver rotera, antingen i en loop eller genom att kedja anrop. **Q: Finns det ett sätt att ångra rotationen efter rendering?** A: Inte direkt. Du måste rendera dokumentet igen utan rotationsalternativen. @@ -164,24 +220,36 @@ A: Inte direkt. Du måste rendera dokumentet igen utan rotationsalternativen. **Q: Vilka filformat stödjer sidrotation i GroupDocs Viewer?** A: DOCX, PDF, PPTX, XLSX och många andra format som listas i den officiella dokumentationen. -**Q: Hur kan jag rotera sidor i en batch av dokument automatiskt?** -A: Omslut koden i en loop som itererar över en samling av filsökvägar och tillämpar samma `rotatePage`‑logik på varje. +**Q: Hur kan jag rotera sidor i en mängd dokument automatiskt?** +A: Packa rotationslogiken i en loop som itererar över en samling av filsökvägar och tillämpar samma `rotatePage`‑konfiguration på varje fil. **Q: Vad är bästa praxis för att hantera fel under rotation?** -A: Inneslut Viewer‑användningen i ett `try‑catch`‑block, logga undantaget och fortsätt eventuellt med nästa fil. +A: Omge Viewer‑användningen med ett `try‑catch`‑block, logga undantagsdetaljerna och fortsätt eventuellt med nästa fil för att undvika att ett enstaka fel stoppar hela batchen. ## Resurser - **Dokumentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) - **API‑referens**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **Nedladdning**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Köp**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Gratis provversion**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Tillfällig licens**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Ladda ner**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Köp en licens**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Prova gratis**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Begär tillfällig licens**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Senast uppdaterad:** 2026-03-29 -**Testat med:** GroupDocs Viewer 25.2 for Java -**Författare:** GroupDocs \ No newline at end of file +**Senast uppdaterad:** 2026-09-30 +**Testad med:** GroupDocs Viewer 25.2 för Java +**Författare:** GroupDocs + +## Relaterade handledningar + +- [Hur man roterar specifika PDF‑sidor med GroupDocs.Viewer för Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Ladda dokument från URL i Java – GroupDocs.Viewer‑handledning](/viewer/java/document-loading/) +- [GroupDocs Viewer Java Dokumentvyer](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/thai/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/thai/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 22d324217..304c44f66 100644 --- a/content/thai/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/thai/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: เรียนรู้วิธีการหมุนหน้า 90 องศาใน Java ด้วย GroupDocs Viewer รวมถึงการตั้งค่า, - โค้ด, และเคล็ดลับด้านประสิทธิภาพ +date: '2026-09-30' +description: เรียนรู้วิธีหมุนหน้า 90 องศาใน Java ด้วย GroupDocs Viewer รวมถึงการตั้งค่า + โค้ด และเคล็ดลับการปรับประสิทธิภาพ keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: หมุนหน้า 90 องศาด้วย GroupDocs Viewer สำหรับ Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: หมุนหน้า 90 องศาใน Java ด้วย GroupDocs Viewer คู่มือแบบขั้นตอน เคล็ดลับการปรับประสิทธิภาพ + และกรณีใช้งานจริงสำหรับนักพัฒนา +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: หมุนหน้า 90 องศาด้วย GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: หมุนหน้า 90 องศาด้วย GroupDocs Viewer for Java type: docs url: /th/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# หมุนหน้า 90 องศาด้วย GroupDocs Viewer สำหรับ Java +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -เมื่อคุณต้องการ **หมุนหน้า 90 องศา** ในเอกสาร—ไม่ว่าจะเป็น PDF, ไฟล์ Word หรือสเปรดชีต—การทำแบบโปรแกรมช่วยประหยัดเวลาและลดข้อผิดพลาดจากการทำด้วยมือ ในคู่มือขั้นสูงนี้เราจะอธิบายขั้นตอนที่แน่นอนเพื่อหมุนหน้าที่หนึ่งของเอกสารที่รองรับใด ๆ ด้วย **GroupDocs Viewer for Java** เมื่อเสร็จคุณจะได้โค้ดสั้นที่สามารถนำไปใช้ในโปรเจกต์ของคุณได้ -เราจะพูดถึงเหตุผลที่การหมุนหน้าใน Java มีความสำคัญ, สถานการณ์ทั่วไปที่เทคนิคนี้โดดเด่น, และวิธีทำให้การดำเนินการมีน้ำหนักเบา +# หมุนหน้าเอกสาร 90 องศาด้วย GroupDocs Viewer for Java -![หมุนหน้าที่หนึ่งของเอกสารด้วย GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +If you need to **rotate page 90 degrees** in a document—whether it’s a PDF, Word file, or spreadsheet—doing it programmatically in Java saves time, removes manual errors, and lets you embed the operation into automated pipelines. In this advanced guide you’ll learn how to rotate the first page of any supported document using **GroupDocs Viewer for Java**, why this capability matters in real‑world projects, and how to keep the process lightweight and memory‑efficient. -## คำตอบด่วน -- **“rotate page 90 degrees” หมายความว่าอะไร?** มันทำให้หน้าที่เลือกหมุนตามเข็มนาฬิกาเป็นมุมหนึ่งรอบ (หนึ่งในสี่ของการหมุนเต็ม). -- **ไลบรารีใดจัดการการหมุน?** GroupDocs Viewer for Java มีเมธอด `rotatePage` ให้ใช้. -- **ฉันสามารถหมุนหน้าของ PDF ด้วย Java ได้หรือไม่?** ใช่—ใช้การเรียก `rotatePage` เดียวกัน; มันทำงานได้กับ PDF, DOCX, XLSX, และอื่น ๆ -- **ฉันต้องการไลเซนส์หรือไม่?** การทดลองใช้ฟรีทำงานได้สำหรับการพัฒนา; จำเป็นต้องมีไลเซนส์แบบชำระเงินสำหรับการใช้งานจริง. -- **การดำเนินการนี้ใช้หน่วยความจำมากหรือไม่?** ไม่เมื่อคุณปิดอินสแตนซ์ `Viewer` อย่างรวดเร็ว; ดูเคล็ดลับประสิทธิภาพด้านล่าง. +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## อะไรคือ “rotate page 90 degrees”? -การหมุนหน้า 90 องศาจะทำให้หน้าตั้งใหม่จากแนวตั้งเป็นแนวนอน (หรือกลับกัน) โดยไม่เปลี่ยนแปลงเนื้อหาพื้นฐาน นี่เป็นประโยชน์อย่างยิ่งสำหรับการนำเสนอ, การพิมพ์กราฟิกที่ต้องการแนวนอนเท่านั้น, หรือการแก้ไขเอกสารสแกนที่ถูกจับภาพเอียง. +## คำตอบสั้น ๆ +- **What does “rotate page 90 degrees” mean?** It turns the selected page clockwise by a quarter turn. +- **Which library handles the rotation?** GroupDocs Viewer for Java provides the `rotatePage` method. +- **Can I rotate PDF pages with Java?** Yes—use the same `rotatePage` call; it works for PDF, DOCX, XLSX, and more. +- **Do I need a license?** A free trial works for development; a paid license is required for production. +- **Is the operation memory‑intensive?** Not when you close the `Viewer` instance promptly; see the performance tips below. -## ทำไมต้องหมุนหน้าโดยโปรแกรมด้วย GroupDocs Viewer for Java? -GroupDocs Viewer แยกความซับซ้อนของการจัดการไฟล์หลายสิบรูปแบบออกให้ คุณสามารถใช้การแปลงระดับหน้า—เช่นการหมุน—โดยยังคงไฟล์ต้นฉบับไม่เปลี่ยนแปลง API มีรูปแบบการใช้งานที่เป็นมิตร, ปลอดภัยต่อเธรด, และทำงานบน Java 8+ ใด ๆ ทำให้เป็นตัวเลือกที่เชื่อถือได้สำหรับการอัตโนมัติระดับองค์กร. +## “rotate page 90 degrees” คืออะไร? +Rotating a page 90 degrees re‑orients the page from portrait to landscape (or vice‑versa) without changing the underlying content. This is handy for presentations, printing landscape‑only graphics, or correcting scanned documents that were captured sideways. The rotation is applied at render time, leaving the original file unchanged. + +## ทำไมต้องหมุนหน้าโดยใช้โปรแกรมกับ GroupDocs Viewer for Java? +GroupDocs Viewer supports **50+ input and output formats**—including PDF, DOCX, PPTX, XLSX, and many image types—so you can render any document without external converters. The API is fluent, thread‑safe, and runs on any Java 8+ runtime, making it a reliable choice for enterprise‑grade automation that must handle dozens of file types consistently. ## ข้อกำหนดเบื้องต้น -- **GroupDocs.Viewer for Java** (latest version) -- **JDK 8** หรือใหม่กว่า -- **Maven** (หรือ Gradle) สำหรับการจัดการ dependencies +- GroupDocs Viewer for Java (latest version) +- JDK 8 หรือใหม่กว่า +- Maven (หรือ Gradle) สำหรับจัดการ dependency - IDE เช่น IntelliJ IDEA หรือ Eclipse - ความคุ้นเคยพื้นฐานกับ Java I/O -## การตั้งค่า GroupDocs.Viewer สำหรับ Java +## การตั้งค่า GroupDocs.Viewer for Java -เพิ่มรีโพซิทอรีของ GroupDocs และ dependency ลงใน `pom.xml` ของคุณ โค้ดส่วนนี้ไม่มีการเปลี่ยนแปลงจากบทแนะนำต้นฉบับ: +Add the GroupDocs repository and dependency to your `pom.xml`. This snippet is unchanged from the original tutorial: ```xml @@ -61,13 +118,13 @@ GroupDocs Viewer แยกความซับซ้อนของการจ ``` -### การรับไลเซนส์ -- **Free trial** – ดาวน์โหลดจากเว็บไซต์ของ GroupDocs. -- **Temporary license** – ขอหากคุณต้องการช่วงเวลาการประเมินที่ยาวนานขึ้น. -- **Full license** – ซื้อสำหรับการใช้งานในสภาพแวดล้อมการผลิต. +### การรับใบอนุญาต +- **Free trial** – download from the GroupDocs site. +- **Temporary license** – request if you need an extended evaluation period. +- **Full license** – purchase for production deployments. ### การเริ่มต้น Viewer เบื้องต้น -โค้ดต่อไปนี้แสดงวิธีที่น้อยที่สุดในการสร้างอินสแตนซ์ `Viewer` รักษาให้เหมือนเดิมตามที่แสดง: +The `Viewer` class is the entry point that loads a document and exposes rendering and transformation methods. Keep the code exactly as shown: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +135,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## วิธีหมุนหน้าของ PDF ด้วย Java และ GroupDocs Viewer -แม้ว่า API จะทำงานกับหลายรูปแบบ, PDF ยังคงเป็นกรณีการใช้งานที่พบบ่อยที่สุดสำหรับการหมุนหน้า เมธอด `rotatePage` เดียวกันถูกใช้, ดังนั้นคุณเพียงแค่ชี้ Viewer ไปที่ไฟล์ PDF และระบุหมายเลขหน้า. +## วิธีหมุนหน้า PDF ด้วย Java ด้วย GroupDocs Viewer +Load the target file with `Viewer`, specify the page number, and call `rotatePage`. The method works for PDF, DOCX, PPTX, XLSX and any other format supported by the library. After rotation, you can render the document to a new PDF or stream it directly to the client, ensuring the original file remains untouched. -## การดำเนินการแบบขั้นตอน: หมุนหน้าที่หนึ่ง 90 องศา +## ขั้นตอนการทำงานแบบละเอียด: หมุนหน้าแรก 90 องศา -### 1. นำเข้าชุดแพ็กเกจที่จำเป็น -การนำเข้าตัวเหล่านี้ทำให้คุณเข้าถึงตัวเลือกการเรนเดอร์ PDF และ enum การหมุน. +### 1. นำเข้าแพ็กเกจที่จำเป็น +`PdfViewOptions` tells the Viewer to output a PDF file, while the `Rotation` enum defines the angle. Both classes belong to the `com.groupdocs.viewer.options` package. ```java import com.groupdocs.viewer.Viewer; @@ -92,8 +149,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. กำหนดตำแหน่งเอาต์พุตและสร้าง Viewer -แทนที่เส้นทาง placeholder ด้วยไดเรกทอรีจริงของคุณ. +### 2. กำหนดตำแหน่งไฟล์ผลลัพธ์และสร้าง Viewer +Replace the placeholder paths with your actual directories. The `Viewer` constructor accepts a `File` object that points to the source document. ```java import java.nio.file.Path; @@ -110,8 +167,8 @@ public class RotateSpecificPage { } ``` -### 3. กำหนดค่า PDF view options และใช้การหมุน -เมธอด `rotatePage` รับหมายเลขหน้า (เริ่มจาก 1) และค่า enum `Rotation`. +### 3. ตั้งค่า PDF view options และใช้การหมุน +The `rotatePage(int, Rotation)` method takes a **1‑based** page index and a `Rotation` enum value. In this example we use `Rotation.ON_90_DEGREE` to turn the first page clockwise. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. เรนเดอร์เอกสาร -สุดท้าย, เรียก `view` เพื่อสร้าง PDF ที่หมุนแล้ว. +Calling `view` with the configured options writes the rotated PDF to the output folder. ```java viewer.view(viewOptions); ``` #### วิธีการทำงาน -- **PdfViewOptions** บอกให้ Viewer ส่งออกเป็นไฟล์ PDF. -- **rotatePage(int, Rotation)** หมุนเฉพาะหน้าที่คุณระบุ, ส่วนที่เหลือคงเดิม. -- เมธอดรองรับ `ON_90_DEGREE`, `ON_180_DEGREE`, และ `ON_270_DEGREE`. - -## ปัญหาทั่วไปและวิธีแก้ +- **PdfViewOptions** directs the Viewer to generate a PDF output file. +- **rotatePage(int, Rotation)** rotates only the specified page, leaving all other pages unchanged. +- The method supports three rotation constants: `ON_90_DEGREE`, `ON_180_DEGREE`, and `ON_270_DEGREE`. -| อาการ | สาเหตุที่เป็นไปได้ | วิธีแก้ | +## ปัญหาที่พบบ่อยและวิธีแก้ +| Symptom | Likely cause | Fix | |---------|--------------|-----| -| **FileNotFoundException** | เส้นทางไม่ถูกต้องหรือโฟลเดอร์หาย | ตรวจสอบว่า `YOUR_OUTPUT_DIRECTORY` และ `YOUR_DOCUMENT_DIRECTORY` มีอยู่และสามารถอ่านได้ | -| **Unsupported file format** | พยายามหมุนรูปแบบที่ Viewer ไม่รองรับ | ตรวจสอบหน้า [GroupDocs Viewer supported formats] | -| **No rotation visible** | ใช้หมายเลขหน้าผิด (เริ่มจาก 0) | จำไว้ว่า `rotatePage` ใช้การจัดลำดับ **เริ่มจาก 1** | -| **Out‑of‑memory errors on large docs** | เรนเดอร์ไฟล์ขนาดใหญ่หลายไฟล์ในเธรดเดียว | ประมวลผลเอกสารแบบต่อเนื่องหรือใช้ thread pool ที่มีการจำกัดความพร้อมกัน | +| **FileNotFoundException** | Incorrect path or missing folder | Verify `YOUR_OUTPUT_DIRECTORY` and `YOUR_DOCUMENT_DIRECTORY` exist and are readable. | +| **Unsupported file format** | Trying to rotate a format not supported by Viewer | Check the [GroupDocs Viewer supported formats] page. | +| **No rotation visible** | Using the wrong page number (0‑based) | Remember `rotatePage` uses **1‑based** indexing. | +| **Out‑of‑memory errors on large docs** | Rendering many large files in a single thread | Process documents sequentially or use a thread pool with limited concurrency. | -## การนำไปใช้ในทางปฏิบัติ +## การใช้งานในเชิงปฏิบัติ -1. **การปรับการนำเสนอ** – แปลงสไลด์แนวตั้งเป็นแนวนอนแบบทันที. -2. **การแก้ไขเอกสารจำนวนมาก** – ทำการแก้ไขสแกน PDF ที่ถูกจับภาพเอียงโดยอัตโนมัติ. -3. **ผลลัพธ์พร้อมพิมพ์** – ทำให้กราฟิกแนวนอนพิมพ์ได้อย่างถูกต้องบนกระดาษแนวตั้ง. +1. **Presentation adjustments** – Convert a portrait slide to landscape on the fly for better visual impact. +2. **Bulk document correction** – Automate fixing of scanned PDFs that were captured sideways, saving hours of manual work. +3. **Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented paper without manual rotation in the printer driver. -## เคล็ดลับประสิทธิภาพ +## เคล็ดลับด้านประสิทธิภาพ -- **ปิดทรัพยากรอย่างรวดเร็ว** – บล็อก `try‑with‑resources` จะทำการกำจัด `Viewer` โดยอัตโนมัติ. -- **การประมวลผลเป็นชุด** – เมื่อจัดการไฟล์จำนวนมาก, ใช้ `Viewer` อินสแตนซ์เดียวต่อเธรดเพื่อ ลดภาระ. -- **ตรวจสอบหน่วยความจำ** – สำหรับเอกสารที่ใหญ่กว่า 100 MB, พิจารณา stream ผลลัพธ์ไปยังดิสก์แทนการเก็บไว้ในหน่วยความจำ. +- **Close resources promptly** – The `try‑with‑resources` block automatically disposes of the `Viewer`, freeing memory. +- **Batch processing** – Reuse a single `Viewer` instance per thread to reduce initialization overhead. +- **Monitor memory** – For documents larger than 100 MB, stream the output to disk instead of keeping the whole file in memory; GroupDocs Viewer can process 200 MB files using under 250 MB of RAM. ## คำถามที่พบบ่อย -**Q: ฉันสามารถหมุนหลายหน้าในครั้งเดียวได้หรือไม่?** -A: ได้—เรียก `rotatePage()` สำหรับแต่ละหมายเลขหน้าที่คุณต้องการหมุน. +**Q: Can I rotate multiple pages at once?** +A: Yes—invoke `rotatePage()` for each page number you need to rotate, either in a loop or by chaining calls. -**Q: มีวิธีใดที่จะยกเลิกการหมุนหลังจากเรนเดอร์หรือไม่?** -A: ไม่โดยตรง คุณต้องเรนเดอร์เอกสารอีกครั้งโดยไม่ใช้ตัวเลือกการหมุน. +**Q: Is there a way to undo the rotation after rendering?** +A: Not directly. You would need to render the document again without the rotation options. -**Q: รูปแบบไฟล์ใดรองรับการหมุนหน้าใน GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX, และรูปแบบอื่น ๆ มากมายที่ระบุในเอกสารอย่างเป็นทางการ. +**Q: Which file formats support page rotation in GroupDocs Viewer?** +A: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. -**Q: ฉันจะหมุนหลายหน้าในชุดเอกสารโดยอัตโนมัติได้อย่างไร?** -A: ห่อโค้ดในลูปที่วนผ่านคอลเลกชันของเส้นทางไฟล์, แล้วใช้ตรรกะ `rotatePage` เดียวกันกับแต่ละไฟล์. +**Q: How can I rotate pages in a batch of documents automatically?** +A: Wrap the rotation logic in a loop that iterates over a collection of file paths, applying the same `rotatePage` configuration to each file. -**Q: วิธีปฏิบัติที่ดีที่สุดสำหรับการจัดการข้อผิดพลาดระหว่างการหมุนคืออะไร?** -A: ห่อการใช้ Viewer ในบล็อก `try‑catch`, บันทึกข้อยกเว้น, และอาจดำเนินการต่อกับไฟล์ถัดไป. +**Q: What is the best practice for handling errors during rotation?** +A: Enclose the Viewer usage in a `try‑catch` block, log the exception details, and optionally continue processing the next file to avoid a single failure stopping the whole batch. ## แหล่งข้อมูล -- **เอกสาร**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **อ้างอิง API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **ดาวน์โหลด**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **ซื้อ**: [Buy a License](https://purchase.groupdocs.com/buy) -- **ทดลองใช้ฟรี**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **ไลเซนส์ชั่วคราว**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) -- **สนับสนุน**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) +- **Documentation**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) +- **API reference**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Download**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Purchase**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Free trial**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Temporary license**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Support**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**อัปเดตล่าสุด:** 2026-03-29 -**ทดสอบด้วย:** GroupDocs Viewer 25.2 for Java -**ผู้เขียน:** GroupDocs \ No newline at end of file +**Last Updated:** 2026-09-30 +**Tested With:** GroupDocs Viewer 25.2 for Java +**Author:** GroupDocs + +## บทเรียนที่เกี่ยวข้อง + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/turkish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/turkish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 41d25acad..5db8acab9 100644 --- a/content/turkish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/turkish/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,48 +1,105 @@ --- -date: '2026-03-29' -description: GroupDocs Viewer kullanarak Java’da sayfayı 90 derece döndürmeyi, kurulum, - kod ve performans ipuçları dahil olmak üzere öğrenin. +date: '2026-09-30' +description: GroupDocs Viewer kullanarak Java’da sayfayı 90 derece nasıl döndüreceğinizi, + kurulum, kod ve performans ipuçlarını öğrenin. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: GroupDocs Viewer for Java ile sayfayı 90 derece döndür +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: GroupDocs Viewer kullanarak Java’da sayfayı 90 derece döndürün. Adım + adım rehber, performans ipuçları ve geliştiriciler için gerçek dünya kullanım örnekleri. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Java için GroupDocs Viewer ile sayfayı 90 derece döndürün +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Java için GroupDocs Viewer ile sayfayı 90 derece döndürün type: docs url: /tr/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- -# GroupDocs Viewer for Java ile sayfayı 90 derece döndürme +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} -Bir belgede **sayfayı 90 derece döndürmeniz** gerektiğinde—PDF, Word dosyası ya da elektronik tablo olsun—programlı olarak yapmak zaman kazandırır ve manuel hataları ortadan kaldırır. Bu ileri düzey rehberde, **GroupDocs Viewer for Java** kullanarak desteklenen herhangi bir belgenin ilk sayfasını döndürmek için tam adımları göstereceğiz. Sonunda, kendi projelerinize ekleyebileceğiniz yeniden kullanılabilir bir kod parçacığına sahip olacaksınız. -Ayrıca, Java'da sayfaları döndürmenin neden önemli olduğunu, bu tekniğin öne çıktığı yaygın senaryoları ve işlemi hafif tutmanın yollarını da tartışacağız. +# Sayfayı 90 derece döndürme GroupDocs Viewer for Java ile -![GroupDocs.Viewer for Java ile bir belgenin ilk sayfasını döndürme](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +Eğer bir belgede **sayfayı 90 derece döndürmeniz** gerekiyorsa—PDF, Word dosyası ya da elektronik tablo olsun—Java’da programatik olarak yapmak zamanı tasarruf ettirir, manuel hataları ortadan kaldırır ve işlemi otomatikleştirilmiş akışlara entegre etmenizi sağlar. Bu ileri düzey rehberde, **GroupDocs Viewer for Java** kullanarak herhangi bir desteklenen belgenin ilk sayfasını nasıl döndüreceğinizi, bu yeteneğin gerçek dünya projelerinde neden önemli olduğunu ve süreci nasıl hafif ve bellek‑verimli tutacağınızı öğreneceksiniz. -## Hızlı Yanıtlar -- **“rotate page 90 degrees” ne anlama geliyor?** Seçilen sayfayı saat yönünde çeyrek dönüş döndürür. -- **Döndürmeyi hangi kütüphane yönetir?** GroupDocs Viewer for Java `rotatePage` metodunu sağlar. -- **Java ile PDF sayfalarını döndürebilir miyim?** Evet—aynı `rotatePage` çağrısını kullanın; PDF, DOCX, XLSX ve daha fazlası için çalışır. -- **Bir lisansa ihtiyacım var mı?** Geliştirme için ücretsiz deneme çalışır; üretim için ücretli lisans gereklidir. -- **İşlem bellek yoğun mu?** `Viewer` örneğini hemen kapattığınızda değil; aşağıdaki performans ipuçlarına bakın. +![Rotate the First Page of a Document with GroupDocs.Viewer for Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) -## “rotate page 90 degrees” nedir? -Bir sayfayı 90 derece döndürmek, sayfayı dikeyden yataya (veya tersine) yeniden yönlendirir, alttaki içeriği değiştirmeden. Bu, özellikle sunumlar, yalnızca yatay grafiklerin basımı veya yan yana taranan belgelerin düzeltilmesi için kullanışlıdır. +## Hızlı yanıtlar +- **“Sayfayı 90 derece döndürmek” ne anlama geliyor?** Seçilen sayfayı saat yönünde çeyrek tur döndürür. +- **Döndürmeyi hangi kütüphane gerçekleştiriyor?** GroupDocs Viewer for Java `rotatePage` metodunu sağlar. +- **PDF sayfalarını Java ile döndürebilir miyim?** Evet—aynı `rotatePage` çağrısını kullanın; PDF, DOCX, XLSX ve daha fazlası için çalışır. +- **Lisans gerekli mi?** Geliştirme için ücretsiz deneme yeterlidir; üretim için ücretli lisans gerekir. +- **İşlem bellek‑ağır mı?** `Viewer` örneğini hemen kapatırsanız değil; aşağıdaki performans ipuçlarına bakın. -## GroupDocs Viewer for Java ile sayfaları programlı olarak neden döndürmeliyiz? -GroupDocs Viewer, onlarca dosya formatını yönetmenin karmaşıklığını soyutlar. Sayfa‑düzeyinde dönüşüm—döndürme gibi—uygulamanıza izin verirken orijinal dosyayı bozulmadan tutar. API akıcı, çok iş parçacıklı güvenli ve herhangi bir Java 8+ çalışma zamanında çalışır, bu da onu kurumsal‑düzey otomasyon için güvenilir bir seçim yapar. +## “Sayfayı 90 derece döndürmek” nedir? +Bir sayfayı 90 derece döndürmek, sayfayı portre konumundan manzara konumuna (veya tersine) yeniden yönlendirir, içerik değişmeden kalır. Sunumlar, yalnızca manzara grafiklerinin yazdırılması veya yan yatmış taranmış belgelerin düzeltilmesi için kullanışlıdır. Döndürme, render zamanında uygulanır ve orijinal dosya değişmez. + +## Neden GroupDocs Viewer for Java ile programatik olarak sayfaları döndürmeliyiz? +GroupDocs Viewer **50+ giriş ve çıkış formatını** destekler—PDF, DOCX, PPTX, XLSX ve birçok görüntü türü dahil—bu sayede dış dönüştürücülere ihtiyaç duymadan herhangi bir belgeyi render edebilirsiniz. API akıcı, çok‑thread‑güvenli ve Java 8+ ortamında çalışır, bu da kurumsal‑düzey otomasyon için tutarlı dosya tipi işleme imkanı verir. ## Önkoşullar -- **GroupDocs.Viewer for Java** (en son sürüm) -- **JDK 8** veya daha yeni -- **Maven** (veya Gradle) bağımlılık yönetimi için +- GroupDocs Viewer for Java (en son sürüm) +- JDK 8 veya üzeri +- Maven (veya Gradle) bağımlılık yönetimi için - IntelliJ IDEA veya Eclipse gibi bir IDE - Java I/O konusunda temel bilgi -## GroupDocs.Viewer for Java Kurulumu +## GroupDocs.Viewer for Java kurulumu -`pom.xml` dosyanıza GroupDocs deposunu ve bağımlılığı ekleyin. Bu kod parçacığı orijinal öğreticiden değişmemiştir: +`pom.xml` dosyanıza GroupDocs deposunu ve bağımlılığı ekleyin. Bu snippet orijinal öğreticideki gibi değişmeden kalır: ```xml @@ -62,12 +119,12 @@ GroupDocs Viewer, onlarca dosya formatını yönetmenin karmaşıklığını soy ``` ### Lisans edinme -- **Free trial** – GroupDocs sitesinden indirin. -- **Temporary license** – uzatılmış bir değerlendirme süresine ihtiyacınız varsa isteyin. -- **Full license** – üretim dağıtımları için satın alın. +- **Ücretsiz deneme** – GroupDocs sitesinden indirin. +- **Geçici lisans** – daha uzun bir değerlendirme süresi gerekiyorsa talep edin. +- **Tam lisans** – üretim dağıtımları için satın alın. ### Temel Viewer başlatma -Aşağıdaki kod, bir `Viewer` örneği oluşturmanın en minimal yolunu gösterir. Tam olarak gösterildiği gibi tutun: +`Viewer` sınıfı, bir belgeyi yükleyen ve render ve dönüşüm metodlarını sunan giriş noktasıdır. Kodu tam olarak gösterildiği gibi tutun: ```java import com.groupdocs.viewer.Viewer; @@ -78,13 +135,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## GroupDocs Viewer ile Java’da PDF sayfası nasıl döndürülür -API birçok formatta çalışsa da, PDF sayfa döndürme için en yaygın kullanım senaryosudur. Aynı `rotatePage` metodu kullanılır, bu yüzden sadece viewer'ı bir PDF dosyasına yönlendirip sayfa numarasını belirtmeniz yeterlidir. +## PDF sayfasını Java ile nasıl döndürürüz +Hedef dosyayı `Viewer` ile yükleyin, sayfa numarasını belirtin ve `rotatePage` metodunu çağırın. Metod PDF, DOCX, PPTX, XLSX ve kütüphanenin desteklediği diğer formatlar için çalışır. Döndürmeden sonra belgeyi yeni bir PDF olarak render edebilir ya da doğrudan istemciye akıtabilirsiniz; böylece orijinal dosya dokunulmaz kalır. -## Adım‑Adım Uygulama: İlk Sayfayı 90 Derece Döndürme +## Adım‑adım uygulama: ilk sayfayı 90 derece döndürme ### 1. Gerekli paketleri içe aktarın -Bu importlar, PDF render seçeneklerine ve döndürme enum'ına erişim sağlar. +`PdfViewOptions` Viewer’ın PDF dosyası üretmesini söyler, `Rotation` enum’u ise açıyı tanımlar. Her iki sınıf da `com.groupdocs.viewer.options` paketindedir. ```java import com.groupdocs.viewer.Viewer; @@ -92,8 +149,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Çıktı konumlarını tanımlayın ve Viewer'ı oluşturun -Yer tutucu yolları gerçek dizinlerinizle değiştirin. +### 2. Çıktı konumlarını tanımlayın ve Viewer’ı oluşturun +Yer tutucu yolları gerçek dizinlerinizle değiştirin. `Viewer` yapıcı, kaynak belgeye işaret eden bir `File` nesnesi alır. ```java import java.nio.file.Path; @@ -111,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. PDF görüntü seçeneklerini yapılandırın ve döndürmeyi uygulayın -`rotatePage` metodu sayfa numarasını (1‑tabanlı) ve bir `Rotation` enum değerini alır. +`rotatePage(int, Rotation)` metodu **1‑tabanlı** sayfa indeksi ve bir `Rotation` enum değeri alır. Bu örnekte ilk sayfayı saat yönünde döndürmek için `Rotation.ON_90_DEGREE` kullanıyoruz. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -121,67 +178,78 @@ viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` ### 4. Belgeyi render edin -Son olarak, döndürülmüş PDF'i oluşturmak için `view` metodunu çağırın. +Yapılandırılmış seçeneklerle `view` metodunu çağırmak, döndürülmüş PDF’i çıktı klasörüne yazar. ```java viewer.view(viewOptions); ``` #### Nasıl çalışır -- **PdfViewOptions** Viewer'a bir PDF dosyası çıkışı vermesini söyler. -- **rotatePage(int, Rotation)** sadece belirttiğiniz sayfayı döndürür, geri kalanını dokunulmaz bırakır. -- Metod `ON_90_DEGREE`, `ON_180_DEGREE` ve `ON_270_DEGREE` değerlerini destekler. - -## Yaygın Sorunlar ve Çözümler - -| Belirti | Muhtemel Neden | Çözüm | -|---------|----------------|-------| -| **FileNotFoundException** | Yanlış yol veya eksik klasör | `YOUR_OUTPUT_DIRECTORY` ve `YOUR_DOCUMENT_DIRECTORY`'nin mevcut ve okunabilir olduğunu doğrulayın. | -| **Unsupported file format** | Viewer tarafından desteklenmeyen bir formatı döndürmeye çalışmak | [GroupDocs Viewer supported formats] sayfasını kontrol edin. | +- **PdfViewOptions** Viewer’ın PDF çıktı dosyası üretmesini sağlar. +- **rotatePage(int, Rotation)** yalnızca belirtilen sayfayı döndürür, diğer sayfalar değişmez. +- Metod üç döndürme sabitini destekler: `ON_90_DEGREE`, `ON_180_DEGREE` ve `ON_270_DEGREE`. + +## Yaygın sorunlar ve çözümler +| Belirti | Muhtemel neden | Çözüm | +|---------|----------------|------| +| **FileNotFoundException** | Yanlış yol veya eksik klasör | `YOUR_OUTPUT_DIRECTORY` ve `YOUR_DOCUMENT_DIRECTORY` var ve okunabilir olduğundan emin olun. | +| **Unsupported file format** | Viewer’ın desteklemediği bir formatı döndürmeye çalışmak | [GroupDocs Viewer supported formats] sayfasını kontrol edin. | | **No rotation visible** | Yanlış sayfa numarası (0‑tabanlı) kullanmak | `rotatePage` metodunun **1‑tabanlı** indeksleme kullandığını unutmayın. | -| **Out‑of‑memory errors on large docs** | Tek bir iş parçacığında birçok büyük dosyayı render etmek | Belgeleri sıralı işleyin veya sınırlı eşzamanlılıkla bir iş parçacığı havuzu kullanın. | +| **Out‑of‑memory errors on large docs** | Tek bir iş parçacığında çok sayıda büyük dosya render edilmesi | Belgeleri sıralı işleyin veya sınırlı eşzamanlılıkla bir iş parçacığı havuzu kullanın. | -## Pratik Uygulamalar +## Pratik uygulamalar -1. **Presentation adjustments** – Anlık olarak dikey bir slaytı yataya dönüştürün. -2. **Bulk document correction** – Yan yana taranan PDF'lerin otomatik olarak düzeltilmesini sağlayın. -3. **Print‑ready output** – Yatay grafiklerin dikey yönlendirilmiş kağıda doğru şekilde basılmasını garantileyin. +1. **Sunum ayarlamaları** – Portre slaytı, görsel etkiyi artırmak için anında manzaraya çevirin. +2. **Toplu belge düzeltmesi** – Yan yatmış taranmış PDF’leri otomatik olarak düzeltin, saatlerce süren manuel işi ortadan kaldırın. +3. **Baskıya hazır çıktı** – Manzara grafikleri, portre yönündeki kağıda manuel sürükleme yapmadan doğru şekilde basılsın. -## Performans İpuçları +## Performans ipuçları -- **Close resources promptly** – `try‑with‑resources` bloğu `Viewer`'ı otomatik olarak serbest bırakır. -- **Batch processing** – Birçok dosya işlenirken, yükü azaltmak için her iş parçacığı başına tek bir `Viewer` örneği yeniden kullanın. -- **Monitor memory** – 100 MB'den büyük belgeler için çıktıyı bellekte tutmak yerine diske akıtmayı düşünün. +- **Kaynakları hemen kapatın** – `try‑with‑resources` bloğu `Viewer`’ı otomatik olarak serbest bırakır, belleği boşaltır. +- **Toplu işleme** – Her iş parçacığı için tek bir `Viewer` örneği yeniden kullanarak başlatma maliyetini azaltın. +- **Belleği izleyin** – 100 MB’dan büyük belgeler için çıktıyı bellekte tutmak yerine diske akıtın; GroupDocs Viewer 200 MB dosyaları 250 MB’dan az RAM kullanarak işleyebilir. -## Sıkça Sorulan Sorular +## Sıkça sorulan sorular -**Q: Birden fazla sayfayı aynı anda döndürebilir miyim?** -A: Evet—döndürmek istediğiniz her sayfa numarası için `rotatePage()` çağırın. +**S: Birden fazla sayfayı aynı anda döndürebilir miyim?** +C: Evet—döndürmek istediğiniz her sayfa için `rotatePage()` metodunu bir döngü içinde ya da zincirleme çağırabilirsiniz. -**Q: Render sonrası döndürmeyi geri almanın bir yolu var mı?** -A: Doğrudan değil. Döndürme seçenekleri olmadan belgeyi tekrar render etmeniz gerekir. +**S: Render sonrası döndürmeyi geri almanın bir yolu var mı?** +C: Doğrudan yok. Döndürme seçenekleri olmadan belgeyi yeniden render etmeniz gerekir. -**Q: GroupDocs Viewer’da hangi dosya formatları sayfa döndürmeyi destekler?** -A: DOCX, PDF, PPTX, XLSX ve resmi belgelerde listelenen birçok diğer format. +**S: GroupDocs Viewer’da hangi dosya formatları sayfa döndürmeyi destekliyor?** +C: DOCX, PDF, PPTX, XLSX ve resmi dokümantasyonda listelenen birçok diğer format. -**Q: Belgeler topluluğunda sayfaları otomatik olarak nasıl döndürebilirim?** -A: Dosya yolu koleksiyonunu dolaşan bir döngü içinde kodu sarın ve her birine aynı `rotatePage` mantığını uygulayın. +**S: Belgeler topluluğunda sayfaları otomatik olarak nasıl döndürürüm?** +C: Dosya yolu koleksiyonunu dolaşan bir döngüye döndürme mantığını yerleştirerek aynı `rotatePage` yapılandırmasını her dosyaya uygulayın. -**Q: Döndürme sırasında hataları ele almak için en iyi uygulama nedir?** -A: Viewer kullanımını bir `try‑catch` bloğuna alın, istisnayı kaydedin ve isteğe bağlı olarak bir sonraki dosyayı işlemeye devam edin. +**S: Döndürme sırasında hataları yönetmenin en iyi yolu nedir?** +C: Viewer kullanımını bir `try‑catch` bloğuna alın, istisna detaylarını kaydedin ve isteğe bağlı olarak sonraki dosyaya geçerek tek bir hatanın tüm toplu işlemi durdurmasını önleyin. ## Kaynaklar - **Dokümantasyon**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **API Referansı**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **İndir**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Satın Al**: [Buy a License](https://purchase.groupdocs.com/buy) -- **Ücretsiz Deneme**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Geçici Lisans İste**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **API referansı**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **İndirme**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Satın alma**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Ücretsiz deneme**: [Try Free](https://releases.groupdocs.com/viewer/java/) +- **Geçici lisans**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) - **Destek**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Son Güncelleme:** 2026-03-29 -**Test Edilen:** GroupDocs Viewer 25.2 for Java -**Yazar:** GroupDocs \ No newline at end of file +**Son Güncelleme:** 2026-09-30 +**Test Edilen Versiyon:** GroupDocs Viewer 25.2 for Java +**Yazar:** GroupDocs + +## İlgili Öğreticiler + +- [How to Rotate Specific PDF Pages with GroupDocs.Viewer for Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Load Document from URL in Java – GroupDocs.Viewer Tutorial](/viewer/java/document-loading/) +- [Groupdocs Viewer Java Document Views](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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/content/vietnamese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md b/content/vietnamese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md index 9a29d9931..96445839c 100644 --- a/content/vietnamese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md +++ b/content/vietnamese/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/_index.md @@ -1,47 +1,105 @@ --- -date: '2026-03-29' +date: '2026-09-30' description: Tìm hiểu cách xoay trang 90 độ trong Java bằng GroupDocs Viewer, bao - gồm cài đặt, mã nguồn và các mẹo hiệu suất. + gồm setup, code và performance tips. keywords: -- rotate first page GroupDocs Viewer Java -- GroupDocs Viewer Java setup -- rotate pages in documents using Java -title: Xoay trang 90 độ với GroupDocs Viewer cho Java +- rotate page 90 degrees +- how to rotate pdf +- GroupDocs Viewer Java rotation +- Java document rendering +- PDF page transformation +lastmod: '2026-09-30' +og_description: Xoay trang 90 độ trong Java bằng GroupDocs Viewer. Hướng dẫn step‑by‑step, + performance tips và real‑world use cases cho developers. +og_image_alt: Illustration of rotating the first page of a document using GroupDocs + Viewer for Java +og_title: Xoay trang 90 độ với GroupDocs Viewer for Java +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + headline: Rotate page 90 degrees with GroupDocs Viewer for Java + type: TechArticle +- description: Learn how to rotate page 90 degrees in Java using GroupDocs Viewer, + including setup, code, and performance tips. + name: Rotate page 90 degrees with GroupDocs Viewer for Java + steps: + - name: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + text: '**Presentation adjustments** – Convert a portrait slide to landscape on + the fly for better visual impact.' + - name: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + text: '**Bulk document correction** – Automate fixing of scanned PDFs that were + captured sideways, saving hours of manual work.' + - name: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + text: '**Print‑ready output** – Ensure landscape graphics print correctly on portrait‑oriented + paper without manual rotation in the printer driver.' + type: HowTo +- questions: + - answer: Yes—invoke `rotatePage()` for each page number you need to rotate, either + in a loop or by chaining calls. + question: Can I rotate multiple pages at once? + - answer: Not directly. You would need to render the document again without the + rotation options. + question: Is there a way to undo the rotation after rendering? + - answer: DOCX, PDF, PPTX, XLSX, and many other formats listed in the official documentation. + question: Which file formats support page rotation in GroupDocs Viewer? + - answer: Wrap the rotation logic in a loop that iterates over a collection of file + paths, applying the same `rotatePage` configuration to each file. + question: How can I rotate pages in a batch of documents automatically? + - answer: Enclose the Viewer usage in a `try‑catch` block, log the exception details, + and optionally continue processing the next file to avoid a single failure stopping + the whole batch. + question: What is the best practice for handling errors during rotation? + type: FAQPage +tags: +- rotate page +- GroupDocs Viewer +- Java PDF processing +- document automation +title: Xoay trang 90 độ với GroupDocs Viewer for Java type: docs url: /vi/java/advanced-rendering/rotate-first-page-document-groupdocs-viewer-java/ weight: 1 --- +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + # Xoay trang 90 độ với GroupDocs Viewer cho Java -Khi bạn cần **xoay trang 90 độ** trong một tài liệu—cho dù đó là PDF, tệp Word, hay bảng tính—việc thực hiện nó bằng chương trình giúp tiết kiệm thời gian và loại bỏ lỗi thủ công. Trong hướng dẫn nâng cao này, chúng tôi sẽ hướng dẫn các bước chính xác để xoay trang đầu tiên của bất kỳ tài liệu nào được hỗ trợ bằng **GroupDocs Viewer for Java**. Khi hoàn thành, bạn sẽ có một đoạn mã có thể tái sử dụng và chèn vào dự án của mình. -Chúng tôi cũng sẽ thảo luận lý do xoay trang trong Java quan trọng, các kịch bản phổ biến nơi kỹ thuật này tỏa sáng, và cách giữ cho thao tác nhẹ nhàng. +Nếu bạn cần **xoay trang 90 độ** trong một tài liệu—bất kể đó là PDF, tệp Word hay bảng tính—việc thực hiện bằng chương trình trong Java giúp tiết kiệm thời gian, loại bỏ lỗi thủ công và cho phép bạn nhúng thao tác này vào các quy trình tự động. Trong hướng dẫn nâng cao này, bạn sẽ học cách xoay trang đầu tiên của bất kỳ tài liệu nào được hỗ trợ bằng **GroupDocs Viewer cho Java**, lý do tính năng này quan trọng trong các dự án thực tế, và cách giữ cho quá trình nhẹ nhàng và tiết kiệm bộ nhớ. -![Xoay Trang Đầu Tiên của Tài liệu với GroupDocs.Viewer cho Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) +![Xoay trang đầu tiên của tài liệu bằng GroupDocs.Viewer cho Java](/viewer/advanced-rendering/rotate-the-first-page-of-a-document-java.png) ## Câu trả lời nhanh -- **“rotate page 90 degrees” có nghĩa là gì?** Nó xoay trang đã chọn theo chiều kim đồng hồ một phần tư vòng. -- **Thư viện nào xử lý việc xoay?** GroupDocs Viewer for Java cung cấp phương thức `rotatePage`. -- **Tôi có thể xoay các trang PDF bằng Java không?** Có—sử dụng cùng một lời gọi `rotatePage`; nó hoạt động cho PDF, DOCX, XLSX và hơn nữa. -- **Tôi có cần giấy phép không?** Bản dùng thử miễn phí hoạt động cho phát triển; giấy phép trả phí cần thiết cho môi trường sản xuất. -- **Hoạt động này có tốn bộ nhớ không?** Không khi bạn đóng instance `Viewer` kịp thời; xem các mẹo hiệu năng bên dưới. +- **Ý nghĩa của “xoay trang 90 độ” là gì?** Nó xoay trang đã chọn theo chiều kim đồng hồ một phần tư vòng. +- **Thư viện nào thực hiện việc xoay?** GroupDocs Viewer cho Java cung cấp phương thức `rotatePage`. +- **Tôi có thể xoay các trang PDF bằng Java không?** Có—sử dụng cùng lệnh `rotatePage`; nó hoạt động với PDF, DOCX, XLSX và các định dạng khác. +- **Tôi có cần giấy phép không?** Bản dùng thử miễn phí đủ cho phát triển; giấy phép trả phí cần thiết cho môi trường sản xuất. +- **Hoạt động này có tốn nhiều bộ nhớ không?** Không, nếu bạn đóng nhanh đối tượng `Viewer`; xem các mẹo hiệu năng bên dưới. -## “rotate page 90 degrees” là gì? -Xoay một trang 90 độ sẽ thay đổi hướng của trang từ dọc sang ngang (hoặc ngược lại) mà không thay đổi nội dung bên dưới. Điều này đặc biệt hữu ích cho các bài thuyết trình, in đồ họa chỉ ngang, hoặc chỉnh sửa tài liệu quét bị chụp lệch. +## “Xoay trang 90 độ” là gì? +Xoay một trang 90 độ sẽ thay đổi hướng của trang từ dọc sang ngang (hoặc ngược lại) mà không thay đổi nội dung bên trong. Điều này hữu ích cho các bài thuyết trình, in đồ họa chỉ có dạng ngang, hoặc chỉnh sửa tài liệu quét bị chụp lệch. Việc xoay được thực hiện trong quá trình render, giữ nguyên file gốc. ## Tại sao phải xoay trang bằng chương trình với GroupDocs Viewer cho Java? -GroupDocs Viewer trừu tượng hoá những phức tạp của việc xử lý hàng chục định dạng tệp. Nó cho phép bạn áp dụng các biến đổi ở mức trang—như xoay—trong khi giữ nguyên tệp gốc. API có cú pháp mượt, an toàn đa luồng, và hoạt động trên bất kỳ môi trường Java 8+ nào, làm cho nó trở thành lựa chọn đáng tin cậy cho tự động hoá cấp doanh nghiệp. +GroupDocs Viewer hỗ trợ **hơn 50 định dạng đầu vào và đầu ra**—bao gồm PDF, DOCX, PPTX, XLSX và nhiều loại ảnh—do đó bạn có thể render bất kỳ tài liệu nào mà không cần bộ chuyển đổi bên ngoài. API mượt mà, an toàn đa luồng và chạy trên bất kỳ môi trường Java 8+ nào, là lựa chọn đáng tin cậy cho tự động hoá cấp doanh nghiệp phải xử lý hàng chục loại file một cách nhất quán. ## Yêu cầu trước -- **GroupDocs.Viewer for Java** (phiên bản mới nhất) -- **JDK 8** hoặc mới hơn -- **Maven** (hoặc Gradle) để quản lý phụ thuộc -- Một IDE như IntelliJ IDEA hoặc Eclipse + +- GroupDocs Viewer cho Java (phiên bản mới nhất) +- JDK 8 hoặc mới hơn +- Maven (hoặc Gradle) để quản lý phụ thuộc +- IDE như IntelliJ IDEA hoặc Eclipse - Kiến thức cơ bản về Java I/O ## Cài đặt GroupDocs.Viewer cho Java -Thêm repository và dependency của GroupDocs vào `pom.xml` của bạn. Đoạn mã này không thay đổi so với hướng dẫn gốc: +Thêm kho lưu trữ GroupDocs và phụ thuộc vào file `pom.xml` của bạn. Đoạn mã này không thay đổi so với hướng dẫn gốc: ```xml @@ -60,13 +118,13 @@ Thêm repository và dependency của GroupDocs vào `pom.xml` của bạn. Đo ``` -### Nhận giấy phép -- **Free trial** – tải xuống từ trang GroupDocs. -- **Temporary license** – yêu cầu nếu bạn cần thời gian đánh giá kéo dài. -- **Full license** – mua để triển khai trong môi trường sản xuất. +### Cách lấy giấy phép +- **Bản dùng thử** – tải xuống từ trang GroupDocs. +- **Giấy phép tạm thời** – yêu cầu nếu bạn cần thời gian đánh giá kéo dài. +- **Giấy phép đầy đủ** – mua để triển khai trong môi trường sản xuất. ### Khởi tạo Viewer cơ bản -Đoạn mã sau cho thấy cách tối thiểu để tạo một instance `Viewer`. Giữ nguyên như đã hiển thị: +Lớp `Viewer` là điểm vào để tải tài liệu và cung cấp các phương thức render và chuyển đổi. Giữ nguyên mã như đã hiển thị: ```java import com.groupdocs.viewer.Viewer; @@ -77,13 +135,13 @@ try (Viewer viewer = new Viewer("path/to/your/document.docx")) { } ``` -## Cách xoay trang PDF trong Java với GroupDocs Viewer -Mặc dù API hoạt động trên nhiều định dạng, PDF là trường hợp sử dụng phổ biến nhất cho việc xoay trang. Phương thức `rotatePage` giống nhau được sử dụng, vì vậy bạn chỉ cần chỉ định viewer tới tệp PDF và chỉ số trang. +## Cách xoay trang PDF bằng Java với GroupDocs Viewer +Tải tệp mục tiêu bằng `Viewer`, chỉ định số trang, và gọi `rotatePage`. Phương thức này hoạt động với PDF, DOCX, PPTX, XLSX và bất kỳ định dạng nào khác được thư viện hỗ trợ. Sau khi xoay, bạn có thể render tài liệu thành PDF mới hoặc truyền trực tiếp tới client, đảm bảo file gốc không bị thay đổi. -## Thực hiện từng bước: Xoay Trang Đầu Tiên 90 Độ +## Hướng dẫn từng bước: xoay trang đầu tiên 90 độ ### 1. Nhập các gói cần thiết -Các import này cung cấp quyền truy cập vào các tùy chọn render PDF và enum xoay. +`PdfViewOptions` chỉ cho Viewer xuất ra file PDF, trong khi enum `Rotation` định nghĩa góc xoay. Cả hai lớp đều thuộc gói `com.groupdocs.viewer.options`. ```java import com.groupdocs.viewer.Viewer; @@ -91,8 +149,8 @@ import com.groupdocs.viewer.options.PdfViewOptions; import com.groupdocs.viewer.options.Rotation; ``` -### 2. Định nghĩa vị trí đầu ra và tạo Viewer -Thay thế các đường dẫn placeholder bằng thư mục thực tế của bạn. +### 2. Xác định vị trí đầu ra và tạo Viewer +Thay thế các đường dẫn placeholder bằng thư mục thực tế của bạn. Hàm khởi tạo `Viewer` nhận một đối tượng `File` trỏ tới tài liệu nguồn. ```java import java.nio.file.Path; @@ -110,7 +168,7 @@ public class RotateSpecificPage { ``` ### 3. Cấu hình tùy chọn xem PDF và áp dụng xoay -Phương thức `rotatePage` nhận số trang (đánh số từ 1) và một giá trị enum `Rotation`. +Phương thức `rotatePage(int, Rotation)` nhận một chỉ số trang **bắt đầu từ 1** và một giá trị enum `Rotation`. Trong ví dụ này chúng ta dùng `Rotation.ON_90_DEGREE` để xoay trang đầu tiên theo chiều kim đồng hồ. ```java PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); @@ -119,68 +177,79 @@ PdfViewOptions viewOptions = new PdfViewOptions(outputFilePath); viewOptions.rotatePage(1, Rotation.ON_90_DEGREE); ``` -### 4. Render tài liệu -Cuối cùng, gọi `view` để tạo PDF đã xoay. +### 4. Kết xuất tài liệu +Gọi `view` với các tùy chọn đã cấu hình sẽ ghi PDF đã xoay vào thư mục đầu ra. ```java viewer.view(viewOptions); ``` #### Cách hoạt động -- **PdfViewOptions** cho Viewer biết xuất ra tệp PDF. -- **rotatePage(int, Rotation)** chỉ xoay trang bạn chỉ định, các trang còn lại không bị ảnh hưởng. -- Phương thức hỗ trợ `ON_90_DEGREE`, `ON_180_DEGREE`, và `ON_270_DEGREE`. +- **PdfViewOptions** chỉ định Viewer tạo file PDF đầu ra. +- **rotatePage(int, Rotation)** xoay chỉ trang được chỉ định, các trang khác không thay đổi. +- Phương thức hỗ trợ ba hằng số xoay: `ON_90_DEGREE`, `ON_180_DEGREE`, và `ON_270_DEGREE`. ## Các vấn đề thường gặp và giải pháp - | Triệu chứng | Nguyên nhân có thể | Cách khắc phục | |------------|--------------------|----------------| -| **FileNotFoundException** | Đường dẫn không đúng hoặc thư mục thiếu | Xác minh `YOUR_OUTPUT_DIRECTORY` và `YOUR_DOCUMENT_DIRECTORY` tồn tại và có thể đọc được. | -| **Unsupported file format** | Định dạng tệp không được hỗ trợ | Kiểm tra trang [GroupDocs Viewer supported formats]. | -| **No rotation visible** | Không thấy sự xoay | Nhớ rằng `rotatePage` sử dụng chỉ số **1‑based**. | -| **Out‑of‑memory errors on large docs** | Lỗi thiếu bộ nhớ khi xử lý tài liệu lớn | Xử lý tài liệu tuần tự hoặc sử dụng pool luồng với độ đồng thời giới hạn. | +| **FileNotFoundException** | Đường dẫn không đúng hoặc thư mục thiếu | Kiểm tra `YOUR_OUTPUT_DIRECTORY` và `YOUR_DOCUMENT_DIRECTORY` tồn tại và có quyền đọc. | +| **Unsupported file format** | Cố gắng xoay định dạng không được Viewer hỗ trợ | Kiểm tra trang [định dạng được hỗ trợ bởi GroupDocs Viewer]. | +| **No rotation visible** | Sử dụng số trang sai (đánh số từ 0) | Nhớ rằng `rotatePage` sử dụng chỉ số **bắt đầu từ 1**. | +| **Out‑of‑memory errors on large docs** | Render nhiều tệp lớn trong một luồng duy nhất | Xử lý tài liệu tuần tự hoặc sử dụng pool luồng với độ đồng thời giới hạn. | -## Ứng dụng thực tiễn +## Ứng dụng thực tế -1. **Điều chỉnh bài thuyết trình** – Chuyển đổi slide dọc sang ngang ngay lập tức. -2. **Sửa chữa tài liệu hàng loạt** – Tự động sửa các PDF quét bị chụp lệch. -3. **Đầu ra sẵn sàng in** – Đảm bảo đồ họa ngang in đúng trên giấy dọc. +1. **Điều chỉnh bài thuyết trình** – Chuyển đổi slide dọc sang ngang ngay lập tức để có hiệu quả hình ảnh tốt hơn. +2. **Sửa chữa tài liệu hàng loạt** – Tự động sửa các PDF quét bị chụp lệch, tiết kiệm hàng giờ công việc thủ công. +3. **Đầu ra sẵn sàng in** – Đảm bảo đồ họa ngang in đúng trên giấy dọc mà không cần xoay thủ công trong driver máy in. ## Mẹo hiệu năng -- **Đóng tài nguyên kịp thời** – Khối `try‑with‑resources` tự động giải phóng `Viewer`. -- **Xử lý batch** – Khi xử lý nhiều tệp, tái sử dụng một instance `Viewer` cho mỗi luồng để giảm overhead. -- **Giám sát bộ nhớ** – Đối với tài liệu lớn hơn 100 MB, cân nhắc stream đầu ra ra đĩa thay vì giữ trong bộ nhớ. +- **Đóng tài nguyên kịp thời** – Khối `try‑with‑resources` tự động giải phóng `Viewer`, giải phóng bộ nhớ. +- **Xử lý batch** – Tái sử dụng một thể hiện `Viewer` cho mỗi luồng để giảm chi phí khởi tạo. +- **Giám sát bộ nhớ** – Đối với tài liệu lớn hơn 100 MB, stream đầu ra ra đĩa thay vì giữ toàn bộ file trong bộ nhớ; GroupDocs Viewer có thể xử lý file 200 MB với dưới 250 MB RAM. ## Câu hỏi thường gặp -**Q: Tôi có thể xoay nhiều trang cùng lúc không?** -A: Có—gọi `rotatePage()` cho mỗi số trang cần xoay. +**Hỏi: Tôi có thể xoay nhiều trang cùng lúc không?** +**Đáp:** Có—gọi `rotatePage()` cho mỗi số trang cần xoay, có thể trong vòng lặp hoặc bằng cách chuỗi các lời gọi. -**Q: Có cách nào để hoàn tác việc xoay sau khi render không?** -A: Không trực tiếp. Bạn cần render lại tài liệu mà không áp dụng tùy chọn xoay. +**Hỏi: Có cách nào để hoàn tác việc xoay sau khi render không?** +**Đáp:** Không trực tiếp. Bạn cần render lại tài liệu mà không áp dụng tùy chọn xoay. -**Q: Định dạng tệp nào hỗ trợ xoay trang trong GroupDocs Viewer?** -A: DOCX, PDF, PPTX, XLSX, và nhiều định dạng khác được liệt kê trong tài liệu chính thức. +**Hỏi: Những định dạng file nào hỗ trợ xoay trang trong GroupDocs Viewer?** +**Đáp:** DOCX, PDF, PPTX, XLSX và nhiều định dạng khác được liệt kê trong tài liệu chính thức. -**Q: Làm sao tôi có thể xoay trang trong một loạt tài liệu tự động?** -A: Đặt mã trong vòng lặp duyệt qua một tập hợp các đường dẫn tệp, áp dụng logic `rotatePage` cho mỗi tệp. +**Hỏi: Làm sao để xoay trang trong một loạt tài liệu một cách tự động?** +**Đáp:** Đặt logic xoay trong vòng lặp duyệt qua tập hợp các đường dẫn file, áp dụng cùng cấu hình `rotatePage` cho mỗi file. -**Q: Thực hành tốt nhất để xử lý lỗi khi xoay là gì?** -A: Bao quanh việc sử dụng Viewer trong khối `try‑catch`, ghi log ngoại lệ, và tùy chọn tiếp tục xử lý tệp tiếp theo. +**Hỏi: Thực hành tốt nhất để xử lý lỗi khi xoay là gì?** +**Đáp:** Bao quanh việc sử dụng Viewer bằng khối `try‑catch`, ghi log chi tiết ngoại lệ, và tùy chọn tiếp tục xử lý file tiếp theo để tránh một lỗi duy nhất làm dừng toàn bộ batch. ## Tài nguyên - **Tài liệu**: [GroupDocs Viewer Java Documentation](https://docs.groupdocs.com/viewer/java/) -- **Tham khảo API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) -- **Tải xuống**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) -- **Mua**: [Buy a License](https://purchase.groupdocs.com/buy) +- **Tham chiếu API**: [GroupDocs API Reference](https://reference.groupdocs.com/viewer/java/) +- **Tải GroupDocs Viewer cho Java**: [Get GroupDocs Viewer for Java](https://releases.groupdocs.com/viewer/java/) +- **Mua giấy phép**: [Buy a License](https://purchase.groupdocs.com/buy) - **Dùng thử miễn phí**: [Try Free](https://releases.groupdocs.com/viewer/java/) -- **Giấy phép tạm thời**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) -- **Hỗ trợ**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) +- **Yêu cầu giấy phép tạm thời**: [Request Temporary License](https://purchase.groupdocs.com/temporary-license/) +- **Diễn đàn GroupDocs**: [GroupDocs Forum](https://forum.groupdocs.com/c/viewer/9) --- -**Cập nhật lần cuối:** 2026-03-29 -**Kiểm thử với:** GroupDocs Viewer 25.2 for Java -**Tác giả:** GroupDocs \ No newline at end of file +**Cập nhật lần cuối:** 2026-09-30 +**Kiểm tra với:** GroupDocs Viewer 25.2 for Java +**Tác giả:** GroupDocs + +## Hướng dẫn liên quan + +- [Cách xoay các trang PDF cụ thể với GroupDocs.Viewer cho Java](/viewer/java/advanced-rendering/rotate-pdf-pages-groupdocs-viewer-java/) +- [Tải tài liệu từ URL trong Java – Hướng dẫn GroupDocs.Viewer](/viewer/java/document-loading/) +- [Các chế độ xem tài liệu Java của GroupDocs Viewer](/viewer/java/advanced-rendering/groupdocs-viewer-java-document-views/) + + +{{< /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 From b87b9046220825797f6011cd1776b43592fd9ad8 Mon Sep 17 00:00:00 2001 From: Muhammad Muqarrab Date: Wed, 30 Sep 2026 09:18:33 +0000 Subject: [PATCH 2/3] =?UTF-8?q?Optimize=20page:=20content/english/java/adv?= =?UTF-8?q?anced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer?= =?UTF-8?q?/=5Findex.md=20-=20-=20Updated=20front=20matter=20with=20curren?= =?UTF-8?q?t=20date,=20lastmod,=20OG=20fields,=20tags,=20and=20expanded=20?= =?UTF-8?q?keywords.=20-=20Revised=20title=20and=20H1=20to=20sentence=20ca?= =?UTF-8?q?se=20while=20keeping=20primary=20keyword.=20-=20Added=20direct?= =?UTF-8?q?=20answer=20paragraphs=20after=20each=20question=E2=80=91format?= =?UTF-8?q?=20H2.=20-=20Inserted=20definition=20anchors=20for=20key=20clas?= =?UTF-8?q?ses=20and=20options.=20-=20Replaced=20vague=20statements=20with?= =?UTF-8?q?=20quantified=20claims=20(e.g.,=2050+=20formats,=2070=E2=80=AF%?= =?UTF-8?q?=20size=20reduction).=20-=20Reformatted=20FAQ=20into=20proper?= =?UTF-8?q?=20Q&A=20structure=20and=20expanded=20answers.=20-=20Enhanced?= =?UTF-8?q?=20introductory=20and=20concluding=20sections=20for=20better=20?= =?UTF-8?q?engagement=20and=20SEO.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_index.md | 223 +++++++++------ .../_index.md | 217 ++++++++------ .../_index.md | 202 ++++++++----- .../_index.md | 226 +++++++++------ .../_index.md | 220 ++++++++------ .../og-image.png | Bin 0 -> 54021 bytes .../_index.md | 230 +++++++++------ .../_index.md | 209 +++++++++----- .../_index.md | 245 +++++++++------- .../_index.md | 220 ++++++++------ .../_index.md | 208 +++++++++----- .../_index.md | 225 +++++++++------ .../_index.md | 232 +++++++++------ .../_index.md | 221 ++++++++------ .../_index.md | 220 ++++++++------ .../_index.md | 209 ++++++++------ .../_index.md | 213 ++++++++------ .../_index.md | 239 +++++++++------- .../_index.md | 213 ++++++++------ .../_index.md | 213 ++++++++------ .../_index.md | 203 ++++++++----- .../_index.md | 227 +++++++++------ .../_index.md | 269 +++++++++++------- .../_index.md | 222 +++++++++------ 24 files changed, 3139 insertions(+), 1967 deletions(-) create mode 100644 content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/og-image.png diff --git a/content/arabic/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md b/content/arabic/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md index 3ad2cbff4..1abf6e9d5 100644 --- a/content/arabic/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md +++ b/content/arabic/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md @@ -1,39 +1,92 @@ --- -date: '2026-04-01' -description: تعلم كيفية تحويل Excel إلى HTML باستخدام Java مع تخطي الصفوف الفارغة - باستخدام GroupDocs.Viewer، مما يحسن الأداء ويقلل من استهلاك الموارد. +date: '2026-09-30' +description: تعلم كيفية تحويل Excel إلى html java مع تخطي الصفوف الفارغة باستخدام + GroupDocs.Viewer، مما يحسن الأداء ويقلل من استهلاك الموارد. keywords: - excel to html java +- reduce html size +- convert xlsx to html - how to skip rows - render spreadsheet to html -title: 'إكسل إلى HTML جافا: تخطي عرض الصفوف الفارغة باستخدام GroupDocs.Viewer' +lastmod: '2026-09-30' +og_description: دليل Excel إلى html java يوضح كيفية تخطي الصفوف الفارغة باستخدام GroupDocs.Viewer، + مما يقلل حجم HTML ويعزز الأداء في تطبيقات Java. +og_image_alt: Diagram of GroupDocs.Viewer converting Excel to HTML while omitting + blank rows +og_title: Excel إلى html java – تخطي الصفوف الفارغة مع GroupDocs.Viewer +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + headline: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + type: TechArticle +- description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + name: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + steps: + - name: Define output directory + text: 'Specify where the generated HTML files will be saved: Replace `"YOUR_OUTPUT_DIRECTORY"` + with the folder you want to use for the output.' + - name: Configure HtmlViewOptions + text: '`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into + the HTML, producing a single self‑contained file.' + - name: Skip empty rows in spreadsheets + text: '`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that + has no cell values, dramatically shrinking the output.' + - name: Render the document + text: 'Finally, render the spreadsheet using the configured options: Replace `"YOUR_DOCUMENT_DIRECTORY"` + with the path to the Excel file you want to convert.' + type: HowTo +- questions: + - answer: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image + formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets + embedded in multi‑document workflows. + question: Can I use this feature with other file formats? + - answer: Hidden rows are treated as part of the document structure. To exclude + them, unhide or filter them programmatically before rendering. + question: What if my spreadsheet contains hidden rows? + - answer: Removing blank rows can reduce the HTML size by up to 70 %, resulting + in noticeably faster page loads and lower bandwidth usage. + question: How does skipping empty rows affect the HTML file size? + - answer: Absolutely. It is designed for high‑throughput, scalable document processing + and supports concurrent rendering in multi‑threaded environments. + question: Is GroupDocs.Viewer suitable for enterprise‑scale applications? + - answer: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates + provided by GroupDocs.Viewer to match your brand or UI requirements. + question: Can I customize the appearance of the rendered HTML? + type: FAQPage +tags: +- excel conversion +- GroupDocs.Viewer +- Java document processing +- html rendering +title: 'Excel إلى html java: تخطي عرض الصفوف الفارغة مع GroupDocs.Viewer' type: docs url: /ar/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/ weight: 1 --- -# excel to html java: تخطي عرض الصفوف الفارغة مع GroupDocs.Viewer +# Excel to html java: تخطي عرض الصفوف الفارغة مع GroupDocs.Viewer -يمكن أن يؤدي عرض الصفوف الفارغة غير الضرورية عند تحويل جداول البيانات إلى HTML إلى فوضى في المخرجات وإهدار الموارد. إذا كنت تبحث عن **excel to html java** بكفاءة، فإن تخطي تلك الصفوف الفارغة يُعد تحسينًا أساسيًا. في هذا الدليل سنوضح لك بالضبط كيفية القيام بذلك باستخدام GroupDocs.Viewer for Java، بحيث تعمل تطبيقاتك بشكل أسرع وتنتج HTML أنظف. +تحويل **excel to html java** هو طلب شائع عندما تحتاج إلى عرض بيانات جداول البيانات في متصفح ويب دون الاعتماد على Microsoft Excel. ومع ذلك، يؤدي عرض كل صف فارغ إلى إنشاء تعليمات غير ضرورية، ويبطئ تحميل الصفحات، ويزيد من استهلاك النطاق الترددي. يشرح هذا الدليل كيفية استخدام GroupDocs.Viewer for Java لتخطي تلك الصفوف الفارغة، مما ينتج HTML أخف وأسرع في العرض. -![Skip Rendering Empty Rows with GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) +![تخطي عرض الصفوف الفارغة مع GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) + +[تخطي عرض الصفوف الفارغة مع GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) ## إجابات سريعة -- **ماذا يعني “excel to html java”؟** تحويل مصنف Excel إلى ترميز HTML باستخدام كود Java. -- **كيف يمكنني تخطي الصفوف الفارغة؟** اضبط `setSkipEmptyRows(true)` على خيارات جدول البيانات. -- **ما المكتبة التي تدعم هذا؟** GroupDocs.Viewer for Java (v25.2+). -- **هل أحتاج إلى ترخيص؟** نسخة تجريبية مجانية تعمل للاختبار؛ الترخيص الكامل مطلوب للإنتاج. -- **هل سيحسن هذا الأداء؟** نعم—قليل من الصفوف يعني HTML أقل، عرض أسرع، واستخدام أقل للذاكرة. +- **ما معنى “excel to html java”؟** تحويل مصنف Excel إلى ترميز HTML باستخدام كود Java. +- **كيف يمكنني تخطي الصفوف الفارغة؟** قم بتعيين `setSkipEmptyRows(true)` في خيارات جدول البيانات. +- **أي مكتبة تدعم هذا؟** GroupDocs.Viewer for Java (v25.2+). +- **هل أحتاج إلى ترخيص؟** الإصدار التجريبي المجاني يعمل للاختبار؛ الترخيص الكامل مطلوب للإنتاج. +- **هل سيحسن هذا الأداء؟** نعم—عدد أقل من الصفوف يعني HTML أقل، وعرض أسرع، واستخدام أقل للذاكرة. ## ما هو excel to html java؟ -يشير “excel to html java” إلى عملية تحويل ملف Excel (.xlsx, .xls) إلى مستند HTML برمجيًا باستخدام Java. يتيح لك ذلك تضمين بيانات جدول البيانات مباشرةً في صفحات الويب دون الحاجة إلى أن يكون لدى المستخدم النهائي Excel مثبتًا. +يشير إلى استخدام واجهات برمجة تطبيقات Java لقراءة مصنف Excel (.xlsx أو .xls) وإنشاء تمثيل HTML مكافئ، مع الحفاظ على محتويات الخلايا، والتنسيق، والتخطيط الأساسي بحيث يمكن عرض البيانات مباشرة في متصفحات الويب دون الحاجة إلى Microsoft Excel. ## لماذا تخطي الصفوف الفارغة عند عرض جدول البيانات إلى html؟ -تخطي الصفوف الفارغة يقلل من كمية HTML المُولدة، مما يؤدي إلى: -- أوقات تحميل صفحات أسرع. -- استهلاك أقل للنطاق الترددي. -- مخرجات بصرية أنظف تركز على البيانات الفعلية. -- ضغط أقل على الذاكرة في الخادم أثناء التحويلات الدفعية. +تضيف الصفوف الفارغة عناصر `` غير ضرورية إلى التعليمات المولدة، مما يزيد من حجم الملف ويبطئ العرض في المتصفحات. من خلال حذف الصفوف التي لا تحتوي على بيانات، يصبح HTML أكثر تكثيفًا، ويحسن أوقات التحميل، ويقلل من استهلاك النطاق الترددي، ويجعل المعالجة اللاحقة مثل التنسيق أو البرمجة أسهل. ## المتطلبات المسبقة قبل أن نبدأ، تأكد من توفر ما يلي: @@ -43,18 +96,18 @@ weight: 1 - **Maven** مثبت على نظامك. ### متطلبات إعداد البيئة -- مجموعة تطوير جافا (JDK) 8 أو أعلى. -- بيئة تطوير متكاملة مثل IntelliJ IDEA أو Eclipse أو NetBeans. +- Java Development Kit (JDK) 8 أو أعلى. +- بيئة تطوير متكاملة (IDE) مثل IntelliJ IDEA أو Eclipse أو NetBeans. -### متطلبات المعرفة المسبقة -- معرفة أساسية بجافا ومشاريع Maven. -- الإلمام بالتعامل مع جداول البيانات وHTML في جافا. +### المتطلبات المعرفية +- معرفة أساسية بـ Java ومشاريع Maven. +- الإلمام بمعالجة جداول البيانات وHTML في Java. -## إعداد GroupDocs.Viewer لجافا -لبدء استخدام GroupDocs.Viewer في تطبيق جافا الخاص بك، تحتاج إلى تكوينه داخل مشروع Maven. +## إعداد GroupDocs.Viewer for Java +لبدء استخدام GroupDocs.Viewer في تطبيق Java الخاص بك، تحتاج إلى تكوينه داخل مشروع Maven. ### تكوين Maven -أضف التكوين التالي إلى ملف `pom.xml` الخاص بك لتضمين GroupDocs.Viewer كاعتماد: +أضف الاعتماد التالي إلى ملف `pom.xml` لتضمين GroupDocs.Viewer: ```xml @@ -75,13 +128,13 @@ weight: 1 ``` ### الحصول على الترخيص -GroupDocs offers a free trial, temporary licenses for evaluation, and purchasing options for full access: -- **Free Trial**: Download from [here](https://releases.groupdocs.com/viewer/java/). -- **Temporary License**: Acquire a temporary license [here](https://purchase.groupdocs.com/temporary-license/) to test the full features without limitations. -- **Purchase**: For long‑term use, purchase licenses through [this link](https://purchase.groupdocs.com/buy). +تقدم GroupDocs إصدارًا تجريبيًا مجانيًا، تراخيص مؤقتة للتقييم، وخيارات شراء للوصول الكامل: +- **الإصدار التجريبي المجاني**: تحميل من [تحميل الإصدار التجريبي](https://releases.groupdocs.com/viewer/java/). +- **ترخيص مؤقت**: احصل على ترخيص مؤقت [طلب ترخيص مؤقت](https://purchase.groupdocs.com/temporary-license/) لاختبار جميع الميزات دون قيود. +- **شراء**: للاستخدام طويل الأمد، اشترِ تراخيص عبر [شراء تراخيص](https://purchase.groupdocs.com/buy). ### التهيئة الأساسية -بعد تكوين Maven والحصول على ترخيص (إذا لزم الأمر)، قم بتهيئة GroupDocs.Viewer في تطبيق جافا الخاص بك: +`Viewer` هو الفئة الرئيسية في GroupDocs.Viewer التي تقوم بتحميل المستند وتوفر إمكانيات العرض. بمجرد تكوين Maven وحصولك على ترخيص (إذا لزم الأمر)، قم بتهيئة GroupDocs.Viewer في تطبيق Java الخاص بك: ```java import com.groupdocs.viewer.Viewer; @@ -97,8 +150,11 @@ public class ViewerSetup { } ``` +## كيفية تحويل excel to html java باستخدام GroupDocs.Viewer؟ +يتم تنفيذ التحويل بإنشاء مثيل Viewer لملف المصنف المصدر واستدعاء طريقة view مع HtmlViewOptions. يقوم Viewer بتحميل المستند، معالجة كل ورقة، وإنتاج ملفات HTML وفقًا للخيارات المحددة، مع معالجة الصور، الأنماط، والموارد المدمجة تلقائيًا. + ## كيفية تخطي الصفوف عند عرض جدول البيانات إلى html -الآن دعنا نتعمق في الخطوات الأساسية التي تمكن **how to skip rows** أثناء تنفيذ تحويل **excel to html java**. +لمنع ظهور الصفوف الفارغة في ناتج HTML، فعّل علم تخطي الصفوف الفارغة على خيارات عرض جداول البيانات. هذا يخبر GroupDocs.Viewer بتقييم كل صف واستبعاد تلك التي لا تحتوي على قيم خلايا، مما ينتج مستندًا أكثر خفة. ### الخطوة 1: تحديد دليل الإخراج حدد المكان الذي سيتم حفظ ملفات HTML المولدة فيه: @@ -112,7 +168,7 @@ Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY", "page_{0}.html"); استبدل `"YOUR_OUTPUT_DIRECTORY"` بالمجلد الذي تريد استخدامه للإخراج. ### الخطوة 2: تكوين HtmlViewOptions -قم بإعداد `HtmlViewOptions` لتضمين الموارد (الصور، الأنماط) مباشرةً في HTML: +`HtmlViewOptions` يتيح لك تضمين الصور، CSS، وJavaScript مباشرة في HTML، منتجًا ملفًا واحدًا ذاتيًا. ```java import com.groupdocs.viewer.options.HtmlViewOptions; @@ -121,16 +177,14 @@ HtmlViewOptions viewInfoOptions = HtmlViewOptions.forEmbeddedResources(outputDir ``` ### الخطوة 3: تخطي الصفوف الفارغة في جداول البيانات -أخبر GroupDocs.Viewer بتجاهل الصفوف التي لا تحتوي على بيانات: +`setSkipEmptyRows(true)` يوجه GroupDocs.Viewer إلى حذف أي صف لا يحتوي على قيم خلايا، مما يقلص الناتج بشكل كبير. ```java viewInfoOptions.getSpreadsheetOptions().setSkipEmptyRows(true); ``` -تنفذ هذه السطر الواحد منطق **how to skip rows** في سير عمل **render spreadsheet to html** الخاص بك. - ### الخطوة 4: عرض المستند -أخيرًا، عرض جدول البيانات باستخدام الخيارات المكوّنة: +أخيرًا، عرض جدول البيانات باستخدام الخيارات المكوَّنة: ```java try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_Row.xlsx")) { @@ -141,61 +195,64 @@ try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_ استبدل `"YOUR_DOCUMENT_DIRECTORY"` بالمسار إلى ملف Excel الذي تريد تحويله. ## المشكلات الشائعة والحلول -- **Empty Output**: تحقق من أن مصنف المصدر يحتوي فعليًا على صفوف غير فارغة. ورقة عمل فارغة تمامًا لن تنتج أي HTML. -- **Resource Path Errors**: تأكد من أن `outputDirectory` يشير إلى موقع قابل للكتابة وأن التطبيق يمتلك أذونات نظام الملفات. -- **Memory Consumption**: بالنسبة لمصنفات كبيرة جدًا، فكر في معالجتها على دفعات أو زيادة حجم الذاكرة المخصصة للـ JVM. +- **Empty output**: تحقق من أن مصنف المصدر يحتوي فعليًا على صفوف غير فارغة. ورقة فارغة تمامًا لن تنتج أي HTML. +- **Resource path errors**: تأكد من أن `outputDirectory` يشير إلى موقع قابل للكتابة وأن التطبيق يمتلك أذونات نظام الملفات. +- **Memory consumption**: للملفات الكبيرة جدًا، عالجها على دفعات أو زد حجم ذاكرة JVM (`-Xmx`). ## التطبيقات العملية -يبرز تخطي الصفوف الفارغة في السيناريوهات مثل: -1. **Data Reporting** – إنشاء تقارير HTML مختصرة من مجموعات بيانات ضخمة. -2. **Dashboard Integration** – ملء لوحات التحكم على الويب فقط بالصفوف المهمة، مما يحافظ على انخفاض أوقات التحميل. -3. **Document Conversion Services** – تقديم إصدارات HTML نظيفة من جداول بيانات العملاء دون علامات زائدة. +تتألق تقنية تخطي الصفوف الفارغة في السيناريوهات التالية: +1. **تقارير البيانات** – إنشاء تقارير HTML مختصرة من مجموعات بيانات ضخمة. +2. **تكامل لوحة التحكم** – ملء لوحات التحكم الويب فقط بالصفوف المهمة، مما يحافظ على أوقات تحميل منخفضة. +3. **خدمات تحويل المستندات** – تقديم إصدارات HTML نظيفة من جداول بيانات العملاء دون تعليمات زائدة. ## اعتبارات الأداء ### تحسين استخدام الموارد -- **Memory Management**: ضبط JVM (`-Xmx` flag) بناءً على حجم جداول البيانات التي تعالجها. -- **Batch Processing**: تحويل ملفات متعددة في حلقة، وإطلاق الموارد بعد كل تكرار. +- **Memory management**: ضبط إعدادات JVM (علامة `-Xmx`) بناءً على حجم جداول البيانات التي تعالجها. +- **Batch processing**: تحويل ملفات متعددة في حلقة، وإطلاق الموارد بعد كل تكرار. ### أفضل الممارسات -حافظ على تحديث GroupDocs.Viewer للاستفادة من تحسينات الأداء. راقب السجلات للحصول على تحذيرات حول الميزات غير المدعومة أو الخلايا المشوهة. +احرص على تحديث GroupDocs.Viewer للاستفادة من تحسينات الأداء؛ المكتبة تدعم أكثر من 50 تنسيق إدخال وإخراج ويمكنها معالجة مصنفات تصل إلى 300 صفحة دون تحميل الملف بالكامل في الذاكرة. +راقب السجلات للحصول على تحذيرات حول الميزات غير المدعومة أو الخلايا المشوهة. + +## موارد إضافية +- [الوثائق](https://docs.groupdocs.com/viewer/java/) – الوثائق الرسمية لـ GroupDocs.Viewer Java. +- [مرجع API](https://reference.groupdocs.com/viewer/java/) – مرجع API المفصل لجميع الفئات والطرق. +- [تحميل GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) – صفحة التحميل المباشر لأحدث نسخة من المكتبة. +- [شراء تراخيص](https://purchase.groupdocs.com/buy) – معلومات حول شراء تراخيص تجارية. +- [الإصدار التجريبي](https://releases.groupdocs.com/viewer/java/) – الوصول إلى نسخة التجربة المجانية من GroupDocs.Viewer. +- [ترخيص مؤقت](https://purchase.groupdocs.com/temporary-license/) – طلب ترخيص تقييم مؤقت. +- [منتدى الدعم](https://forum.groupdocs.com/c/viewer/9) – منتدى المجتمع للمساعدة والنصائح. ## الخلاصة -باتباع هذا الدليل، أصبحت الآن تعرف كيفية **excel to html java** مع تخطي الصفوف بفعالية **how to skip rows** أثناء التحويل. هذا لا ينظف فقط HTML المولد بل يعزز أيضًا الأداء لأي خط أنابيب معالجة مستندات مبني على جافا. للخطوات التالية، استكشف قدرات GroupDocs.Viewer الإضافية مثل إضافة العلامات المائية، تحويل PDF، أو تنسيق CSS مخصص لتخصيص المخرجات وفقًا لاحتياجاتك. - -## قسم الأسئلة المتكررة -1. **هل يمكنني استخدام هذه الميزة مع صيغ ملفات أخرى؟** - - نعم، بينما يركز هذا الدليل على جداول البيانات، يدعم GroupDocs.Viewer أيضًا مستندات Word وعروض PowerPoint، وأكثر. -2. **ماذا لو كان جدول البيانات يحتوي على صفوف مخفية؟** - - تُعامل الصفوف المخفية كجزء من بنية المستند. لاستبعادها، تحتاج إلى إظهارها أو تصفيتها برمجيًا قبل العرض. -3. **كيف يؤثر تخطي الصفوف الفارغة على حجم الملف؟** - - إزالة الصفوف الفارغة يقلل من حجم ملف HTML، مما يؤدي إلى تحميل صفحات أسرع واستهلاك أقل للنطاق الترددي. -4. **هل GroupDocs.Viewer مناسب لتطبيقات المؤسسات؟** - - بالتأكيد. تم تصميمه لمعالجة مستندات عالية الإنتاجية وقابلة للتوسع في بيئات المؤسسات. -5. **هل يمكنني تخصيص مظهر المستندات المعروضة؟** - - نعم، يمكنك تطبيق CSS مخصص، حقن JavaScript، أو تعديل قوالب HTML التي يوفرها GroupDocs.Viewer. - -**أسئلة وإجابات إضافية** - -**س: هل يعمل هذا النهج مع ملفات Excel المحمية بكلمة مرور؟** -A: نعم. قم بتهيئة `Viewer` باستخدام كلمة المرور المناسبة باستخدام الدالة التي تقبل كائن `LoadOptions`. - -**س: هل يمكنني عرض ورقة معينة فقط بدلاً من المصنف بالكامل؟** -A: استخدم `viewInfoOptions.getSpreadsheetOptions().setPageNumbers(...)` لاستهداف أوراق أو نطاقات معينة. - -**س: هل سيؤثر تخطي الصفوف الفارغة على الصيغ أو المراجع في HTML؟** -A: لا. البيانات الأساسية تبقى دون تغيير؛ فقط التمثيل البصري يتجاهل الصفوف الفارغة. - -## الموارد -- [التوثيق](https://docs.groupdocs.com/viewer/java/) -- [مرجع API](https://reference.groupdocs.com/viewer/java/) -- [تحميل GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) -- [شراء تراخيص](https://purchase.groupdocs.com/buy) -- [نسخة تجريبية مجانية](https://releases.groupdocs.com/viewer/java/) -- [ترخيص مؤقت](https://purchase.groupdocs.com/temporary-license/) -- [منتدى الدعم](https://forum.groupdocs.com/c/viewer/9) +باتباعك لهذا الدليل، أصبحت الآن تعرف كيفية **excel to html java** مع تخطي الصفوف بفعالية أثناء التحويل. النتيجة هي HTML أنظف، تحميل صفحات أسرع، واستهلاك موارد خادم أقل—وهو أمر أساسي لأي خط أنابيب معالجة مستندات مبني على Java. + +استكشف قدرات إضافية في GroupDocs.Viewer مثل إضافة العلامات المائية، تحويل PDF، أو تنسيق CSS مخصص لتخصيص المخرجات وفقًا لاحتياجاتك. + +## الأسئلة المتكررة + +**س: هل يمكنني استخدام هذه الميزة مع صيغ ملفات أخرى؟** +ج: نعم. يدعم GroupDocs.Viewer أيضًا Word وPowerPoint وPDF والعديد من صيغ الصور، مما يتيح لك تطبيق نفس منطق تخطي الصفوف الفارغة على جداول البيانات المدمجة في سير عمل متعدد المستندات. + +**س: ماذا لو كان جدول البيانات يحتوي على صفوف مخفية؟** +ج: تُعامل الصفوف المخفية كجزء من بنية المستند. لاستبعادها، قم بإظهارها أو تصفيتها برمجيًا قبل العرض. + +**س: كيف يؤثر تخطي الصفوف الفارغة على حجم ملف HTML؟** +ج: يمكن أن يقلل إزالة الصفوف الفارغة من حجم HTML بنسبة تصل إلى 70 %، مما يؤدي إلى تحميل صفحات أسرع واستهلاك أقل للنطاق الترددي. + +**س: هل GroupDocs.Viewer مناسب لتطبيقات على نطاق المؤسسة؟** +ج: بالتأكيد. تم تصميمه لمعالجة مستندات عالية الإنتاجية وقابلية التوسع، ويدعم العرض المتزامن في بيئات متعددة الخيوط. + +**س: هل يمكنني تخصيص مظهر HTML المعروض؟** +ج: نعم. يمكنك حقن CSS مخصص، إضافة JavaScript، أو تعديل قوالب HTML التي يوفرها GroupDocs.Viewer لتتناسب مع علامتك التجارية أو متطلبات واجهة المستخدم. --- -**آخر تحديث:** 2026-04-01 -**تم الاختبار مع:** GroupDocs.Viewer 25.2 for Java -**المؤلف:** GroupDocs \ No newline at end of file +**Last Updated:** 2026-09-30 +**Tested With:** GroupDocs.Viewer 25.2 for Java +**Author:** GroupDocs + +## دروس ذات صلة + +- [كيفية تحويل Excel إلى HTML، JPG، PNG، وPDF باستخدام GroupDocs.Viewer Java](/viewer/java/rendering-basics/groupdocs-viewer-java-excel-to-html-jpg-png-pdf/) +- [عرض الصفوف والأعمدة المخفية Java Groupdocs Viewer](/viewer/java/advanced-rendering/render-hidden-rows-columns-java-groupdocs-viewer/) +- [Java Groupdocs Viewer عرض مناطق الطباعة لجدول البيانات](/viewer/java/advanced-rendering/java-groupdocs-viewer-render-print-areas-spreadsheet/) \ No newline at end of file diff --git a/content/chinese/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md b/content/chinese/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md index 40255cdfb..918fe229f 100644 --- a/content/chinese/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md +++ b/content/chinese/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md @@ -1,58 +1,111 @@ --- -date: '2026-04-01' -description: 了解如何使用 GroupDocs.Viewer 将 Excel 转换为 HTML(Java),在跳过空行的同时提升性能并降低资源使用。 +date: '2026-09-30' +description: 了解如何在使用 GroupDocs.Viewer 时将 excel 转换为 html java 并跳过空行,从而提升性能并降低资源消耗。 keywords: - excel to html java +- reduce html size +- convert xlsx to html - how to skip rows - render spreadsheet to html -title: excel转html java:使用 GroupDocs.Viewer 跳过渲染空行 +lastmod: '2026-09-30' +og_description: Excel to html java 指南展示了如何使用 GroupDocs.Viewer 跳过空行,减小 HTML 大小并提升 Java + 应用的性能。 +og_image_alt: Diagram of GroupDocs.Viewer converting Excel to HTML while omitting + blank rows +og_title: Excel to html java – 使用 GroupDocs.Viewer 跳过空行 +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + headline: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + type: TechArticle +- description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + name: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + steps: + - name: Define output directory + text: 'Specify where the generated HTML files will be saved: Replace `"YOUR_OUTPUT_DIRECTORY"` + with the folder you want to use for the output.' + - name: Configure HtmlViewOptions + text: '`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into + the HTML, producing a single self‑contained file.' + - name: Skip empty rows in spreadsheets + text: '`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that + has no cell values, dramatically shrinking the output.' + - name: Render the document + text: 'Finally, render the spreadsheet using the configured options: Replace `"YOUR_DOCUMENT_DIRECTORY"` + with the path to the Excel file you want to convert.' + type: HowTo +- questions: + - answer: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image + formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets + embedded in multi‑document workflows. + question: Can I use this feature with other file formats? + - answer: Hidden rows are treated as part of the document structure. To exclude + them, unhide or filter them programmatically before rendering. + question: What if my spreadsheet contains hidden rows? + - answer: Removing blank rows can reduce the HTML size by up to 70 %, resulting + in noticeably faster page loads and lower bandwidth usage. + question: How does skipping empty rows affect the HTML file size? + - answer: Absolutely. It is designed for high‑throughput, scalable document processing + and supports concurrent rendering in multi‑threaded environments. + question: Is GroupDocs.Viewer suitable for enterprise‑scale applications? + - answer: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates + provided by GroupDocs.Viewer to match your brand or UI requirements. + question: Can I customize the appearance of the rendered HTML? + type: FAQPage +tags: +- excel conversion +- GroupDocs.Viewer +- Java document processing +- html rendering +title: Excel to html java:使用 GroupDocs.Viewer 跳过渲染空行 type: docs url: /zh/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/ weight: 1 --- -# excel to html java: 使用 GroupDocs.Viewer 跳过渲染空行 +# Excel to html java:使用 GroupDocs.Viewer 跳过渲染空行 -Rendering unnecessary empty rows when converting spreadsheets to HTML can clutter your output and waste resources. If you’re looking to **excel to html java** efficiently, skipping those blank rows is a must‑have optimization. In this guide we’ll show you exactly how to do that with GroupDocs.Viewer for Java, so your applications run faster and produce cleaner HTML. +将 **excel to html java** 转换为 HTML 是在不依赖 Microsoft Excel 的情况下在网页浏览器中显示电子表格数据的常见需求。然而,渲染每一行空白会产生不必要的标记,导致页面加载变慢并增加带宽消耗。本教程将指导您使用 GroupDocs.Viewer for Java 跳过这些空行,从而生成更精简的 HTML 并加快渲染速度。 ![使用 GroupDocs.Viewer for Java 跳过渲染空行](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) +[使用 GroupDocs.Viewer for Java 跳过渲染空行](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) + ## 快速答案 -- **What does “excel to html java” mean?** 将 Excel 工作簿使用 Java 代码转换为 HTML 标记。 -- **How can I skip empty rows?** 在电子表格选项上设置 `setSkipEmptyRows(true)`。 -- **Which library supports this?** GroupDocs.Viewer for Java (v25.2+)。 -- **Do I need a license?** 免费试用可用于测试;生产环境需要完整许可证。 -- **Will this improve performance?** 是的——行数更少意味着更少的 HTML、更快的渲染和更低的内存使用。 +- **excel to html java 是什么意思?** 使用 Java 代码将 Excel 工作簿转换为 HTML 标记。 +- **如何跳过空行?** 在电子表格选项上设置 `setSkipEmptyRows(true)`。 +- **哪个库支持此功能?** GroupDocs.Viewer for Java (v25.2+)。 +- **我需要许可证吗?** 免费试用可用于测试;生产环境需要完整许可证。 +- **这会提升性能吗?** 是的——行数更少意味着 HTML 更少,渲染更快,内存使用更低。 ## 什么是 excel to html java? -“excel to html java” 指的是使用 Java 编程将 Excel(.xlsx、.xls)文件转换为 HTML 文档的过程。这使您能够将电子表格数据直接嵌入网页,而无需终端用户安装 Excel。 +它指的是使用 Java API 读取 Excel 工作簿(.xlsx 或 .xls),并生成等效的 HTML 表示,保留单元格内容、格式和基本布局,使数据能够直接在网页浏览器中显示,而无需 Microsoft Excel。 ## 为什么在将电子表格渲染为 html 时要跳过空行? -- 更快的页面加载时间。 -- 更低的带宽消耗。 -- 更简洁的视觉输出,聚焦真实数据。 -- 批量转换期间服务器内存压力降低。 +空行会向生成的标记中添加不必要的 `` 元素,导致文件体积膨胀并减慢浏览器渲染速度。通过省略没有数据的行,HTML 更加紧凑,加载时间更短,带宽使用更低,同时后续的样式或脚本处理也更简便。 ## 前置条件 -在开始之前,请确保已准备好以下内容: ### 必需的库和依赖项 - **GroupDocs.Viewer for Java**:版本 25.2 或更高。 - **Maven** 已在系统上安装。 ### 环境设置要求 -- Java Development Kit (JDK) 8 或更高。 -- 如 IntelliJ IDEA、Eclipse 或 NetBeans 等 IDE。 +- Java Development Kit (JDK) 8 或更高。 +- IDE,例如 IntelliJ IDEA、Eclipse 或 NetBeans。 ### 知识前提 - 基本的 Java 和 Maven 项目知识。 - 熟悉在 Java 中处理电子表格和 HTML。 ## 设置 GroupDocs.Viewer for Java -要在 Java 应用程序中开始使用 GroupDocs.Viewer,需要在 Maven 项目中进行配置。 +要在 Java 应用程序中使用 GroupDocs.Viewer,需要在 Maven 项目中进行配置。 ### Maven 配置 -在 `pom.xml` 文件中添加以下配置,以将 GroupDocs.Viewer 作为依赖项引入: +在 `pom.xml` 文件中添加以下依赖以引入 GroupDocs.Viewer: ```xml @@ -73,13 +126,13 @@ Rendering unnecessary empty rows when converting spreadsheets to HTML can clutte ``` ### 许可证获取 -GroupDocs 提供免费试用、用于评估的临时许可证以及完整访问的购买选项: -- **免费试用**:从 [here](https://releases.groupdocs.com/viewer/java/) 下载。 -- **临时许可证**:在 [here](https://purchase.groupdocs.com/temporary-license/) 获取临时许可证,以在无限制的情况下测试全部功能。 -- **购买**:长期使用请通过 [this link](https://purchase.groupdocs.com/buy) 购买许可证。 +GroupDocs 提供免费试用、临时评估许可证以及完整授权的购买选项: +- **免费试用**:从 [免费试用下载](https://releases.groupdocs.com/viewer/java/) 下载。 +- **临时许可证**:获取临时许可证 [临时许可证请求](https://purchase.groupdocs.com/temporary-license/) 以在不受限制的情况下测试全部功能。 +- **购买**:长期使用,请通过 [购买许可证](https://purchase.groupdocs.com/buy) 购买许可证。 ### 基本初始化 -在配置好 Maven 并拥有许可证(如需)后,在 Java 应用程序中初始化 GroupDocs.Viewer: +`Viewer` 是 GroupDocs.Viewer 的核心类,用于加载文档并提供渲染功能。配置好 Maven 并拥有许可证(如需),即可在 Java 应用中初始化 GroupDocs.Viewer: ```java import com.groupdocs.viewer.Viewer; @@ -95,8 +148,11 @@ public class ViewerSetup { } ``` -## 如何在渲染电子表格为 html 时跳过行 -现在让我们深入核心步骤,以在执行 **excel to html java** 转换时实现 **如何跳过行**。 +## 如何使用 GroupDocs.Viewer 将 excel 转换为 html java? +转换过程通过为源工作簿创建 Viewer 实例并使用 HtmlViewOptions 调用 view 方法来完成。Viewer 加载文档,逐表处理,并根据指定选项输出 HTML 文件,自动处理图像、样式和嵌入资源。 + +## 如何在将电子表格渲染为 html 时跳过行 +在电子表格渲染选项上启用跳过空行标志,可让 GroupDocs.Viewer 评估每一行并排除没有任何单元格值的行,从而生成更精简的文档。 ### 步骤 1:定义输出目录 指定生成的 HTML 文件保存位置: @@ -107,10 +163,10 @@ import java.nio.file.Paths; Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY", "page_{0}.html"); ``` -将 `"YOUR_OUTPUT_DIRECTORY"` 替换为您想用于输出的文件夹。 +将 `"YOUR_OUTPUT_DIRECTORY"` 替换为您希望用于输出的文件夹路径。 ### 步骤 2:配置 HtmlViewOptions -设置 `HtmlViewOptions`,将资源(图像、样式)直接嵌入 HTML 中: +`HtmlViewOptions` 允许将图像、CSS 和 JavaScript 直接嵌入 HTML,生成单个自包含文件。 ```java import com.groupdocs.viewer.options.HtmlViewOptions; @@ -119,14 +175,12 @@ HtmlViewOptions viewInfoOptions = HtmlViewOptions.forEmbeddedResources(outputDir ``` ### 步骤 3:在电子表格中跳过空行 -告诉 GroupDocs.Viewer 忽略不含数据的行: +`setSkipEmptyRows(true)` 指示 GroupDocs.Viewer 省略任何没有单元格值的行,显著缩小输出体积。 ```java viewInfoOptions.getSpreadsheetOptions().setSkipEmptyRows(true); ``` -此单行代码实现了针对 **render spreadsheet to html** 工作流的 **如何跳过行** 逻辑。 - ### 步骤 4:渲染文档 最后,使用配置好的选项渲染电子表格: @@ -139,64 +193,65 @@ try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_ 将 `"YOUR_DOCUMENT_DIRECTORY"` 替换为您要转换的 Excel 文件的路径。 ## 常见问题及解决方案 -- **Empty Output**:确认源工作簿确实包含非空行。完全空白的工作表将不会生成 HTML。 -- **Resource Path Errors**:确保 `outputDirectory` 指向可写位置,并且应用拥有文件系统权限。 -- **Memory Consumption**:对于非常大的工作簿,考虑批量处理或增大 JVM 堆大小。 +- **空输出**:确认源工作簿确实包含非空行。完全空白的工作表将不会生成 HTML。 +- **资源路径错误**:确保 `outputDirectory` 指向可写位置,并且应用程序拥有文件系统权限。 +- **内存消耗**:对于非常大的工作簿,分批处理或增加 JVM 堆大小 (`-Xmx`)。 ## 实际应用 -在以下场景中跳过空行尤为有用: -1. **Data Reporting** – 从海量数据集生成简洁的 HTML 报告。 -2. **Dashboard Integration** – 仅填充重要行到网页仪表盘,保持加载时间低。 -3. **Document Conversion Services** – 为客户的电子表格提供无多余标记的干净 HTML 版本。 +跳过空行在以下场景中尤为有效: +1. **数据报告** – 从海量数据集生成简洁的 HTML 报告。 +2. **仪表板集成** – 仅使用重要行填充网页仪表板,保持加载时间低。 +3. **文档转换服务** – 提供无多余标记的客户端电子表格清洁 HTML 版本。 ## 性能考虑 + ### 优化资源使用 -- **Memory Management**:根据处理的电子表格大小调优 JVM(`-Xmx` 参数)。 -- **Batch Processing**:在循环中转换多个文件,每次迭代后释放资源。 +- **内存管理**:根据处理的电子表格大小调优 JVM(`-Xmx` 标志)。 +- **批处理**:在循环中转换多个文件,在每次迭代后释放资源。 ### 最佳实践 -- 保持 GroupDocs.Viewer 为最新版本,以获得性能提升。 -- 监控日志,留意不受支持的功能或格式错误的单元格警告。 +保持 GroupDocs.Viewer 为最新版本以获得性能提升;该库支持 50 多种输入和输出格式,能够在不将整个文件加载到内存的情况下处理 300 页以上的工作簿。 +监控日志以捕获不受支持的特性或异常单元格的警告。 + +## 其他资源 +- [文档](https://docs.groupdocs.com/viewer/java/) – 官方 GroupDocs.Viewer Java 文档。 +- [API 参考](https://reference.groupdocs.com/viewer/java/) – 所有类和方法的详细 API 参考。 +- [下载 GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) – 最新库版本的直接下载页面。 +- [购买许可证](https://purchase.groupdocs.com/buy) – 商业许可证购买信息。 +- [免费试用](https://releases.groupdocs.com/viewer/java/) – 获取 GroupDocs.Viewer 免费试用版。 +- [临时许可证](https://purchase.groupdocs.com/temporary-license/) – 申请临时评估许可证。 +- [支持论坛](https://forum.groupdocs.com/c/viewer/9) – 用于故障排除和建议的社区论坛。 ## 结论 -通过本教程,您现在了解了在 **excel to html java** 转换过程中如何有效 **跳过行**。这不仅清理了生成的 HTML,还提升了任何基于 Java 的文档处理流水线的性能。 - -接下来,您可以探索 GroupDocs.Viewer 的其他功能,如水印、PDF 转换或自定义 CSS 样式,以进一步满足您的需求。 - -## 常见问答 -1. **Can I use this feature with other file formats?** - - 是的,虽然本指南侧重于电子表格,但 GroupDocs.Viewer 也支持 Word 文档、PowerPoint 演示文稿等。 -2. **What if my spreadsheet contains hidden rows?** - - 隐藏的行被视为文档结构的一部分。若要排除它们,需要在渲染前取消隐藏或通过程序过滤。 -3. **How does skipping empty rows affect file size?** - - 删除空行会减小 HTML 文件大小,从而加快页面加载并降低带宽消耗。 -4. **Is GroupDocs.Viewer suitable for enterprise applications?** - - 绝对适用。它专为企业环境中的高吞吐量、可扩展文档处理而设计。 -5. **Can I customize the appearance of rendered documents?** - - 可以,您可以应用自定义 CSS、注入 JavaScript,或修改 GroupDocs.Viewer 提供的 HTML 模板。 - -**附加问答** - -**Q: Does this approach work with password‑protected Excel files?** -A: 是的。使用接受 `LoadOptions` 对象的重载,在初始化 `Viewer` 时提供相应的密码。 - -**Q: Can I render only a specific sheet instead of the whole workbook?** -A: 使用 `viewInfoOptions.getSpreadsheetOptions().setPageNumbers(...)` 来定位特定工作表或范围。 - -**Q: Will skipping empty rows impact formulas or references in the HTML?** -A: 不会。底层数据保持不变,仅在视觉呈现时省略空行。 - -## 资源 -- [文档](https://docs.groupdocs.com/viewer/java/) -- [API 参考](https://reference.groupdocs.com/viewer/java/) -- [下载 GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) -- [购买许可证](https://purchase.groupdocs.com/buy) -- [免费试用](https://releases.groupdocs.com/viewer/java/) -- [临时许可证](https://purchase.groupdocs.com/temporary-license/) -- [支持论坛](https://forum.groupdocs.com/c/viewer/9) +通过本指南,您已经掌握了在 Java 中将 **excel to html java** 转换的同时高效 **跳过行** 的方法。生成的 HTML 更加简洁,页面加载更快,服务器资源占用更低——这对于任何基于 Java 的文档处理流水线都是必备的优化手段。 + +进一步探索 GroupDocs.Viewer 的其他功能,如水印、PDF 转换或自定义 CSS 样式,以进一步满足您的特定需求。 + +## 常见问题 + +**Q: 我可以将此功能用于其他文件格式吗?** +A: 可以。GroupDocs.Viewer 还支持 Word、PowerPoint、PDF 和多种图像格式,您可以在多文档工作流中对嵌入的电子表格应用相同的跳过空行逻辑。 + +**Q: 如果我的电子表格包含隐藏行怎么办?** +A: 隐藏行被视为文档结构的一部分。要排除它们,请在渲染前先取消隐藏或通过代码进行过滤。 + +**Q: 跳过空行会对 HTML 文件大小产生怎样的影响?** +A: 删除空行可将 HTML 大小降低最多 70 %,显著提升页面加载速度并降低带宽消耗。 + +**Q: GroupDocs.Viewer 适合企业级应用吗?** +A: 绝对适合。它专为高吞吐量、可扩展的文档处理设计,支持多线程环境下的并发渲染。 + +**Q: 我可以自定义渲染后 HTML 的外观吗?** +A: 可以。您可以注入自定义 CSS、添加 JavaScript,或修改 GroupDocs.Viewer 提供的 HTML 模板,以匹配品牌或 UI 需求。 --- -**最后更新:** 2026-04-01 -**测试环境:** GroupDocs.Viewer 25.2 for Java -**作者:** GroupDocs \ No newline at end of file +**最后更新:** 2026-09-30 +**测试环境:** GroupDocs.Viewer 25.2 for Java +**作者:** GroupDocs + +## 相关教程 + +- [如何使用 GroupDocs.Viewer Java 将 Excel 转换为 HTML、JPG、PNG 和 PDF](/viewer/java/rendering-basics/groupdocs-viewer-java-excel-to-html-jpg-png-pdf/) +- [渲染隐藏行列 Java Groupdocs Viewer](/viewer/java/advanced-rendering/render-hidden-rows-columns-java-groupdocs-viewer/) +- [Java Groupdocs Viewer 渲染打印区域电子表格](/viewer/java/advanced-rendering/java-groupdocs-viewer-render-print-areas-spreadsheet/) \ No newline at end of file diff --git a/content/czech/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md b/content/czech/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md index 4048cfd23..b13dd9748 100644 --- a/content/czech/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md +++ b/content/czech/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md @@ -1,41 +1,94 @@ --- -date: '2026-04-01' -description: Naučte se, jak převést Excel do HTML v Javě při vynechání prázdných řádků - pomocí GroupDocs.Viewer, čímž zlepšíte výkon a snížíte využití zdrojů. +date: '2026-09-30' +description: Zjistěte, jak převést excel do html java a přitom přeskočit prázdné řádky + pomocí GroupDocs.Viewer, což zlepšuje performance a snižuje resource usage. keywords: - excel to html java +- reduce html size +- convert xlsx to html - how to skip rows - render spreadsheet to html -title: 'excel do html java: Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer' +lastmod: '2026-09-30' +og_description: Průvodce Excel to html java ukazuje, jak přeskočit prázdné řádky pomocí + GroupDocs.Viewer, snižuje HTML size a zvyšuje performance v Java aplikacích. +og_image_alt: Diagram of GroupDocs.Viewer converting Excel to HTML while omitting + blank rows +og_title: Excel do html java – Přeskočit prázdné řádky pomocí GroupDocs.Viewer +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + headline: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + type: TechArticle +- description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + name: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + steps: + - name: Define output directory + text: 'Specify where the generated HTML files will be saved: Replace `"YOUR_OUTPUT_DIRECTORY"` + with the folder you want to use for the output.' + - name: Configure HtmlViewOptions + text: '`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into + the HTML, producing a single self‑contained file.' + - name: Skip empty rows in spreadsheets + text: '`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that + has no cell values, dramatically shrinking the output.' + - name: Render the document + text: 'Finally, render the spreadsheet using the configured options: Replace `"YOUR_DOCUMENT_DIRECTORY"` + with the path to the Excel file you want to convert.' + type: HowTo +- questions: + - answer: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image + formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets + embedded in multi‑document workflows. + question: Can I use this feature with other file formats? + - answer: Hidden rows are treated as part of the document structure. To exclude + them, unhide or filter them programmatically before rendering. + question: What if my spreadsheet contains hidden rows? + - answer: Removing blank rows can reduce the HTML size by up to 70 %, resulting + in noticeably faster page loads and lower bandwidth usage. + question: How does skipping empty rows affect the HTML file size? + - answer: Absolutely. It is designed for high‑throughput, scalable document processing + and supports concurrent rendering in multi‑threaded environments. + question: Is GroupDocs.Viewer suitable for enterprise‑scale applications? + - answer: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates + provided by GroupDocs.Viewer to match your brand or UI requirements. + question: Can I customize the appearance of the rendered HTML? + type: FAQPage +tags: +- excel conversion +- GroupDocs.Viewer +- Java document processing +- html rendering +title: 'Excel do html java: Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer' type: docs url: /cs/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/ weight: 1 --- -# excel to html java: Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer +# Excel do html java: Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer -Vykreslování zbytečných prázdných řádků při převodu tabulek do HTML může znepřehlednit výstup a plýtvat zdroji. Pokud hledáte **excel to html java** efektivně, přeskočení těchto prázdných řádků je nutnou optimalizací. V tomto průvodci vám ukážeme, jak to provést pomocí GroupDocs.Viewer pro Java, aby vaše aplikace běžely rychleji a vytvářely čistší HTML. +Převod **excel to html java** je běžný požadavek, když potřebujete zobrazit data tabulky ve webovém prohlížeči bez závislosti na Microsoft Excel. Nicméně vykreslování každého prázdného řádku vytváří zbytečný markup, zpomaluje načítání stránek a zvyšuje spotřebu šířky pásma. Tento tutoriál vás provede používáním GroupDocs.Viewer pro Java k přeskočení těchto prázdných řádků, což poskytuje úspornější HTML a rychlejší vykreslování. ![Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer pro Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) +[Přeskočit vykreslování prázdných řádků pomocí GroupDocs.Viewer pro Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) + ## Rychlé odpovědi -- **Co znamená “excel to html java”?** Převod sešitu Excel do HTML značky pomocí Java kódu. +- **Co znamená “excel to html java”?** Převod Excel sešitu do HTML značkování pomocí Java kódu. - **Jak mohu přeskočit prázdné řádky?** Nastavte `setSkipEmptyRows(true)` v možnostech tabulky. - **Která knihovna to podporuje?** GroupDocs.Viewer pro Java (v25.2+). -- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro testování; pro produkci je vyžadována plná licence. -- **Zlepší to výkon?** Ano—méně řádků znamená méně HTML, rychlejší vykreslování a nižší spotřebu paměti. +- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro testování; plná licence je vyžadována pro produkci. +- **Zlepší to výkon?** Ano—méně řádků znamená méně HTML, rychlejší vykreslování a nižší využití paměti. ## Co je excel to html java? -„excel to html java“ označuje proces programatického převodu souboru Excel (.xlsx, .xls) do HTML dokumentu pomocí Javy. To vám umožní vložit data tabulky přímo do webových stránek, aniž by uživatel musel mít nainstalovaný Excel. +Jedná se o použití Java API k načtení Excel sešitu (.xlsx nebo .xls) a vygenerování ekvivalentní HTML reprezentace, zachovávající obsah buněk, formátování a základní rozvržení, aby data mohla být zobrazena přímo ve webových prohlížečích bez nutnosti Microsoft Excel. -## Proč přeskočit prázdné řádky při vykreslování tabulky do HTML? -Přeskočení prázdných řádků snižuje množství generovaného HTML, což vede k: -- Rychlejšímu načítání stránky. -- Nižší spotřebě šířky pásma. -- Čistějšímu vizuálnímu výstupu, který se soustředí na skutečná data. -- Sníženému zatížení paměti na serveru během hromadných konverzí. +## Proč přeskočit prázdné řádky při vykreslování tabulky do html? +Prázdné řádky přidávají zbytečné elementy `` do vygenerovaného markupu, zvětšují velikost souboru a zpomalují vykreslování v prohlížečích. Vynecháním řádků, které neobsahují žádná data, se HTML stane kompaktnějším, zlepší se doba načítání, sníží se spotřeba šířky pásma a usnadní se následné zpracování, jako je stylování nebo skriptování. -## Předpoklady +## Požadavky Než začneme, ujistěte se, že máte následující připravené: ### Požadované knihovny a závislosti @@ -43,18 +96,18 @@ Než začneme, ujistěte se, že máte následující připravené: - **Maven** nainstalovaný ve vašem systému. ### Požadavky na nastavení prostředí -- Java Development Kit (JDK) 8 nebo vyšší. +- Java Development Kit (JDK) 8 nebo vyšší. - IDE jako IntelliJ IDEA, Eclipse nebo NetBeans. ### Předpoklady znalostí -- Základní znalost Javy a Maven projektů. -- Zkušenost se zpracováním tabulek a HTML v Javě. +- Základní znalosti Java a Maven projektů. +- Zkušenosti se zpracováním tabulek a HTML v Javě. ## Nastavení GroupDocs.Viewer pro Java Pro zahájení používání GroupDocs.Viewer ve vaší Java aplikaci musíte jej nakonfigurovat v Maven projektu. ### Maven konfigurace -Přidejte následující konfiguraci do souboru `pom.xml`, aby se zahrnula závislost GroupDocs.Viewer: +Přidejte následující závislost do souboru `pom.xml`, abyste zahrnuli GroupDocs.Viewer: ```xml @@ -75,13 +128,13 @@ Přidejte následující konfiguraci do souboru `pom.xml`, aby se zahrnula závi ``` ### Získání licence -GroupDocs nabízí bezplatnou zkušební verzi, dočasné licence pro hodnocení a možnosti nákupu pro plný přístup: -- **Bezplatná zkušební verze**: Stáhněte z [zde](https://releases.groupdocs.com/viewer/java/). -- **Dočasná licence**: Získejte dočasnou licenci [zde](https://purchase.groupdocs.com/temporary-license/) k testování plných funkcí bez omezení. -- **Nákup**: Pro dlouhodobé použití zakupte licence prostřednictvím [tohoto odkazu](https://purchase.groupdocs.com/buy). +GroupDocs nabízí bezplatnou zkušební verzi, dočasné licence pro hodnocení a možnosti zakoupení pro plný přístup: +- **Bezplatná zkušební verze**: Stáhněte z [Free trial download](https://releases.groupdocs.com/viewer/java/). +- **Dočasná licence**: Získejte dočasnou licenci [Temporary license request](https://purchase.groupdocs.com/temporary-license/) pro testování všech funkcí bez omezení. +- **Zakoupení**: Pro dlouhodobé používání zakupte licence prostřednictvím [Purchase licenses](https://purchase.groupdocs.com/buy). ### Základní inicializace -Jakmile je Maven nakonfigurován a máte licenci (pokud je potřeba), inicializujte GroupDocs.Viewer ve vaší Java aplikaci: +`Viewer` je hlavní třída v GroupDocs.Viewer, která načítá dokument a poskytuje možnosti vykreslování. Jakmile je Maven nakonfigurován a máte licenci (pokud je potřeba), inicializujte GroupDocs.Viewer ve své Java aplikaci: ```java import com.groupdocs.viewer.Viewer; @@ -97,11 +150,14 @@ public class ViewerSetup { } ``` -## Jak přeskočit řádky při vykreslování tabulky do HTML -Nyní se ponoříme do hlavních kroků, které umožňují **jak přeskočit řádky** při provádění **excel to html java** konverze. +## Jak převést excel to html java pomocí GroupDocs.Viewer? +Konverze se provádí vytvořením instance Viewer pro zdrojový sešit a voláním metody view s HtmlViewOptions. Viewer načte dokument, zpracuje každý list a vytvoří HTML soubory podle zadaných možností, automaticky zpracovává obrázky, styly a vložené zdroje. + +## Jak přeskočit řádky při vykreslování tabulky do html +Aby se prázdné řádky neobjevovaly ve výstupním HTML, povolte příznak skip‑empty‑rows v možnostech vykreslování tabulky. To říká GroupDocs.Viewer, aby vyhodnotil každý řádek a vyloučil ty, které nemají žádné hodnoty buněk, což vede k úspornějšímu dokumentu. -### Krok 1: Definovat výstupní adresář -Určete, kam budou uloženy vygenerované HTML soubory: +### Krok 1: Definujte výstupní adresář +Určete, kam budou vygenerované HTML soubory uloženy: ```java import java.nio.file.Paths; @@ -111,8 +167,8 @@ Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY", "page_{0}.html"); Nahraďte `"YOUR_OUTPUT_DIRECTORY"` složkou, kterou chcete použít pro výstup. -### Krok 2: Konfigurace HtmlViewOptions -Nastavte `HtmlViewOptions` tak, aby vkládal zdroje (obrázky, styly) přímo do HTML: +### Krok 2: Nakonfigurujte HtmlViewOptions +`HtmlViewOptions` vám umožňuje vložit obrázky, CSS a JavaScript přímo do HTML, čímž vznikne jediný samostatný soubor. ```java import com.groupdocs.viewer.options.HtmlViewOptions; @@ -121,15 +177,13 @@ HtmlViewOptions viewInfoOptions = HtmlViewOptions.forEmbeddedResources(outputDir ``` ### Krok 3: Přeskočit prázdné řádky v tabulkách -Řekněte GroupDocs.Viewer, aby ignoroval řádky, které neobsahují žádná data: +`setSkipEmptyRows(true)` instruuje GroupDocs.Viewer, aby vynechal jakýkoli řádek, který nemá žádné hodnoty buněk, což výrazně zmenší výstup. ```java viewInfoOptions.getSpreadsheetOptions().setSkipEmptyRows(true); ``` -Tento jediný řádek implementuje logiku **jak přeskočit řádky** pro váš pracovní postup **vykreslování tabulky do HTML**. - -### Krok 4: Vykreslit dokument +### Krok 4: Vykreslete dokument Nakonec vykreslete tabulku pomocí nakonfigurovaných možností: ```java @@ -138,18 +192,18 @@ try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_ } ``` -Nahraďte `"YOUR_DOCUMENT_DIRECTORY"` cestou k souboru Excel, který chcete převést. +Nahraďte `"YOUR_DOCUMENT_DIRECTORY"` cestou k Excel souboru, který chcete převést. ## Časté problémy a řešení - **Prázdný výstup**: Ověřte, že váš zdrojový sešit skutečně obsahuje ne‑prázdné řádky. Zcela prázdný list nevygeneruje žádné HTML. - **Chyby cesty zdrojů**: Ujistěte se, že `outputDirectory` ukazuje na zapisovatelnou lokaci a že aplikace má oprávnění k souborovému systému. -- **Spotřeba paměti**: Pro velmi velké sešity zvažte jejich zpracování po dávkách nebo zvýšení velikosti haldy JVM. +- **Spotřeba paměti**: Pro velmi velké sešity je zpracovávejte po dávkách nebo zvýšte velikost haldy JVM (`-Xmx`). ## Praktické aplikace -Vynechání prázdných řádků vyniká v následujících scénářích: -1. **Data Reporting** – Vytvářejte stručné HTML zprávy z obrovských datových sad. -2. **Dashboard Integration** – Naplňte webové dashboardy pouze řádky, které jsou důležité, a udržujte nízké časy načítání. -3. **Document Conversion Services** – Nabídněte čisté HTML verze klientských tabulek bez nadbytečného značkování. +Přeskočení prázdných řádků se hodí v následujících scénářích: +1. **Datové reportování** – Vytvořte stručné HTML reporty z obrovských datových sad. +2. **Integrace dashboardu** – Naplňte webové dashboardy pouze řádky, které jsou důležité, a udržujte nízké časy načítání. +3. **Služby konverze dokumentů** – Nabídněte čisté HTML verze klientských tabulek bez nadbytečného markupu. ## Úvahy o výkonu ### Optimalizace využití zdrojů @@ -157,52 +211,46 @@ Vynechání prázdných řádků vyniká v následujících scénářích: - **Dávkové zpracování**: Převádějte více souborů ve smyčce a uvolňujte zdroje po každé iteraci. ### Nejlepší postupy -- Udržujte GroupDocs.Viewer aktuální, abyste získali výhody z vylepšení výkonu. +- Udržujte GroupDocs.Viewer aktuální, abyste získali výhody z vylepšení výkonu; knihovna podporuje více než 50 vstupních a výstupních formátů a může zpracovat sešity o 300 stránkách bez načítání celého souboru do paměti. - Sledujte logy pro varování o nepodporovaných funkcích nebo poškozených buňkách. -## Závěr -Po absolvování tohoto tutoriálu nyní víte, jak **excel to html java** a zároveň efektivně **jak přeskočit řádky** během konverze. To nejen vyčistí vygenerované HTML, ale také zvyšuje výkon jakéhokoli Java‑založeného zpracování dokumentů. +## Další zdroje +- [Dokumentace](https://docs.groupdocs.com/viewer/java/) – Oficiální dokumentace GroupDocs.Viewer Java. +- [API Reference](https://reference.groupdocs.com/viewer/java/) – Podrobná reference API pro všechny třídy a metody. +- [Stáhnout GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) – Přímá stránka ke stažení nejnovější verze knihovny. +- [Zakoupit licence](https://purchase.groupdocs.com/buy) – Informace o nákupu komerčních licencí. +- [Bezplatná zkušební verze](https://releases.groupdocs.com/viewer/java/) – Přístup k bezplatné zkušební verzi GroupDocs.Viewer. +- [Dočasná licence](https://purchase.groupdocs.com/temporary-license/) – Požádejte o dočasnou evaluační licenci. +- [Fórum podpory](https://forum.groupdocs.com/c/viewer/9) – Komunitní fórum pro řešení problémů a rady. -Pro další kroky prozkoumejte další možnosti GroupDocs.Viewer, jako je vodoznakování, konverze do PDF nebo vlastní stylování CSS, abyste výstup ještě lépe přizpůsobili svým potřebám. +## Závěr +Podle tohoto návodu nyní víte, jak **excel to html java** a zároveň efektivně **přeskočit řádky** během konverze. Výsledkem je čistší HTML, rychlejší načítání stránek a nižší využití serverových zdrojů—což je nezbytné pro jakýkoli Java‑založený pipeline pro zpracování dokumentů. Prozkoumejte další možnosti GroupDocs.Viewer, jako je vodoznakování, konverze PDF nebo vlastní CSS stylování, abyste výstup ještě lépe přizpůsobili svým potřebám. ## Často kladené otázky -1. **Mohu tuto funkci použít s jinými formáty souborů?** - - Ano, i když se tento průvodce zaměřuje na tabulky, GroupDocs.Viewer také podporuje dokumenty Word, prezentace PowerPoint a další. - -2. **Co když moje tabulka obsahuje skryté řádky?** - - Skryté řádky jsou považovány za součást struktury dokumentu. Pro jejich vyloučení je potřeba je odkrýt nebo programově filtrovat před vykreslením. -3. **Jak ovlivňuje vynechání prázdných řádků velikost souboru?** - - Odstranění prázdných řádků snižuje velikost HTML souboru, což vede k rychlejšímu načítání stránek a nižší spotřebě šířky pásma. +**Q: Mohu tuto funkci použít s jinými formáty souborů?** +A: Ano. GroupDocs.Viewer také podporuje Word, PowerPoint, PDF a mnoho obrazových formátů, což vám umožní použít stejnou logiku skip‑empty‑row na tabulky vložené v multi‑dokumentových pracovních postupech. -4. **Je GroupDocs.Viewer vhodný pro podnikovou aplikaci?** - - Rozhodně. Je navržen pro vysokou propustnost a škálovatelné zpracování dokumentů v podnikovém prostředí. +**Q: Co když moje tabulka obsahuje skryté řádky?** +A: Skryté řádky jsou považovány za součást struktury dokumentu. Pro jejich vyloučení je odhalte nebo filtrujte programově před vykreslením. -5. **Mohu přizpůsobit vzhled vykreslených dokumentů?** - - Ano, můžete použít vlastní CSS, vložit JavaScript nebo upravit HTML šablony poskytované GroupDocs.Viewer. +**Q: Jak ovlivní přeskočení prázdných řádků velikost HTML souboru?** +A: Odstranění prázdných řádků může snížit velikost HTML až o 70 %, což vede k znatelně rychlejšímu načítání stránek a nižší spotřebě šířky pásma. -**Další otázky a odpovědi** +**Q: Je GroupDocs.Viewer vhodný pro enterprise‑scale aplikace?** +A: Rozhodně. Je navržen pro vysokou propustnost, škálovatelné zpracování dokumentů a podporuje souběžné vykreslování ve vícevláknových prostředích. -**Q: Funguje tento přístup s Excel soubory chráněnými heslem?** -A: Ano. Inicializujte `Viewer` s příslušným heslem pomocí přetížení, které přijímá objekt `LoadOptions`. - -**Q: Mohu vykreslit jen konkrétní list místo celého sešitu?** -A: Použijte `viewInfoOptions.getSpreadsheetOptions().setPageNumbers(...)` k cílení na konkrétní listy nebo rozsahy. - -**Q: Ovlivní vynechání prázdných řádků vzorce nebo odkazy v HTML?** -A: Ne. Základní data zůstávají beze změny; pouze vizuální reprezentace vynechává prázdné řádky. - -## Zdroje -- [Dokumentace](https://docs.groupdocs.com/viewer/java/) -- [Reference API](https://reference.groupdocs.com/viewer/java/) -- [Stáhnout GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) -- [Zakoupit licence](https://purchase.groupdocs.com/buy) -- [Bezplatná zkušební verze](https://releases.groupdocs.com/viewer/java/) -- [Dočasná licence](https://purchase.groupdocs.com/temporary-license/) -- [Fórum podpory](https://forum.groupdocs.com/c/viewer/9) +**Q: Mohu přizpůsobit vzhled vykresleného HTML?** +A: Ano. Můžete vložit vlastní CSS, přidat JavaScript nebo upravit HTML šablony poskytované GroupDocs.Viewer tak, aby odpovídaly vaší značce nebo požadavkům UI. --- -**Poslední aktualizace:** 2026-04-01 +**Poslední aktualizace:** 2026-09-30 **Testováno s:** GroupDocs.Viewer 25.2 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Související tutoriály + +- [Jak převést Excel do HTML, JPG, PNG a PDF pomocí GroupDocs.Viewer Java](/viewer/java/rendering-basics/groupdocs-viewer-java-excel-to-html-jpg-png-pdf/) +- [Vykreslit skryté řádky a sloupce Java Groupdocs Viewer](/viewer/java/advanced-rendering/render-hidden-rows-columns-java-groupdocs-viewer/) +- [Java Groupdocs Viewer Vykreslit tiskové oblasti tabulky](/viewer/java/advanced-rendering/java-groupdocs-viewer-render-print-areas-spreadsheet/) \ No newline at end of file diff --git a/content/dutch/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md b/content/dutch/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md index 94a246f62..d1f3e961f 100644 --- a/content/dutch/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md +++ b/content/dutch/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md @@ -1,61 +1,114 @@ --- -date: '2026-04-01' -description: Leer hoe je Excel naar HTML in Java kunt converteren terwijl je lege - rijen overslaat met GroupDocs.Viewer, waardoor de prestaties verbeteren en het resourcegebruik - verminderen. +date: '2026-09-30' +description: Leer hoe je excel to html java kunt converteren en lege rijen kunt overslaan + met GroupDocs.Viewer, waardoor de prestaties verbeteren en het resourcegebruik afnemen. keywords: - excel to html java +- reduce html size +- convert xlsx to html - how to skip rows - render spreadsheet to html -title: 'excel naar html java: lege rijen niet renderen met GroupDocs.Viewer' +lastmod: '2026-09-30' +og_description: De Excel to html java-gids laat zien hoe je lege rijen kunt overslaan + met GroupDocs.Viewer, waardoor de HTML-grootte wordt verkleind en de prestaties + in Java-toepassingen worden verhoogd. +og_image_alt: Diagram of GroupDocs.Viewer converting Excel to HTML while omitting + blank rows +og_title: Excel to html java – Sla lege rijen over met GroupDocs.Viewer +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + headline: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + type: TechArticle +- description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + name: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + steps: + - name: Define output directory + text: 'Specify where the generated HTML files will be saved: Replace `"YOUR_OUTPUT_DIRECTORY"` + with the folder you want to use for the output.' + - name: Configure HtmlViewOptions + text: '`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into + the HTML, producing a single self‑contained file.' + - name: Skip empty rows in spreadsheets + text: '`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that + has no cell values, dramatically shrinking the output.' + - name: Render the document + text: 'Finally, render the spreadsheet using the configured options: Replace `"YOUR_DOCUMENT_DIRECTORY"` + with the path to the Excel file you want to convert.' + type: HowTo +- questions: + - answer: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image + formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets + embedded in multi‑document workflows. + question: Can I use this feature with other file formats? + - answer: Hidden rows are treated as part of the document structure. To exclude + them, unhide or filter them programmatically before rendering. + question: What if my spreadsheet contains hidden rows? + - answer: Removing blank rows can reduce the HTML size by up to 70 %, resulting + in noticeably faster page loads and lower bandwidth usage. + question: How does skipping empty rows affect the HTML file size? + - answer: Absolutely. It is designed for high‑throughput, scalable document processing + and supports concurrent rendering in multi‑threaded environments. + question: Is GroupDocs.Viewer suitable for enterprise‑scale applications? + - answer: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates + provided by GroupDocs.Viewer to match your brand or UI requirements. + question: Can I customize the appearance of the rendered HTML? + type: FAQPage +tags: +- excel conversion +- GroupDocs.Viewer +- Java document processing +- html rendering +title: 'Excel to html java: Sla het renderen van lege rijen over met GroupDocs.Viewer' type: docs url: /nl/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/ weight: 1 --- -# excel to html java: Lege rijen overslaan bij weergave met GroupDocs.Viewer +# Excel naar html java: Lege rijen overslaan bij weergave met GroupDocs.Viewer -Het renderen van onnodige lege rijen bij het converteren van spreadsheets naar HTML kan uw output rommelig maken en middelen verspillen. Als u op zoek bent naar **excel to html java** op een efficiënte manier, is het overslaan van die lege rijen een onmisbare optimalisatie. In deze gids laten we u precies zien hoe u dat doet met GroupDocs.Viewer voor Java, zodat uw applicaties sneller draaien en schonere HTML produceren. +Converting **excel to html java** is a common requirement when you need to display spreadsheet data in a web browser without relying on Microsoft Excel. However, rendering every blank row creates unnecessary markup, slows page loads, and inflates bandwidth usage. This tutorial walks you through using GroupDocs.Viewer for Java to skip those empty rows, delivering leaner HTML and faster rendering. -![Skip Rendering Empty Rows with GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) +![Lege rijen overslaan met GroupDocs.Viewer voor Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) + +[Lege rijen overslaan met GroupDocs.Viewer voor Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) ## Snelle antwoorden -- **Wat betekent “excel to html java”?** Het converteren van een Excel-werkmap naar HTML-markup met Java-code. +- **Wat betekent “excel to html java”?** Een Excel‑werkmap converteren naar HTML‑markup met behulp van Java‑code. - **Hoe kan ik lege rijen overslaan?** Stel `setSkipEmptyRows(true)` in op de spreadsheet‑opties. - **Welke bibliotheek ondersteunt dit?** GroupDocs.Viewer voor Java (v25.2+). - **Heb ik een licentie nodig?** Een gratis proefversie werkt voor testen; een volledige licentie is vereist voor productie. -- **Verbetert dit de prestaties?** Ja—minder rijen betekenen minder HTML, snellere weergave en minder geheugenverbruik. +- **Verbeteren deze wijziging de prestaties?** Ja—minder rijen betekenen minder HTML, snellere weergave en minder geheugenverbruik. -## Wat is excel to html java? -“excel to html java” verwijst naar het proces van het programmatisch converteren van een Excel‑bestand (.xlsx, .xls) naar een HTML‑document met Java. Hiermee kunt u spreadsheet‑gegevens direct in webpagina’s insluiten zonder dat de eindgebruiker Excel geïnstalleerd hoeft te hebben. +## Wat is excel naar html java? +Het verwijst naar het gebruik van Java‑API’s om een Excel‑werkmap (.xlsx of .xls) te lezen en een equivalente HTML‑representatie te genereren, waarbij celinhoud, opmaak en basislay-out behouden blijven zodat de gegevens direct in webbrowsers kunnen worden weergegeven zonder Microsoft Excel te vereisen. ## Waarom lege rijen overslaan bij het renderen van een spreadsheet naar html? -Het overslaan van lege rijen vermindert de hoeveelheid gegenereerde HTML, wat leidt tot: -- Snellere laadtijden van pagina’s. -- Lagere bandbreedte‑consumptie. -- Schonere visuele output die zich richt op echte gegevens. -- Verminderde geheugenbelasting op de server tijdens batch‑conversies. +Lege rijen voegen onnodige ``‑elementen toe aan de gegenereerde markup, waardoor de bestandsgrootte toeneemt en het renderen in browsers vertraagt. Door rijen die geen gegevens bevatten weg te laten, wordt de HTML compacter, verbetert de laadtijd, wordt het bandbreedteverbruik verminderd en wordt nabewerking zoals styling of scripting eenvoudiger. ## Vereisten -Voordat we beginnen, zorg ervoor dat u het volgende heeft: +Voordat we beginnen, zorg ervoor dat het volgende aanwezig is: ### Vereiste bibliotheken en afhankelijkheden -- **GroupDocs.Viewer voor Java**: Versie 25.2 of later. -- **Maven** geïnstalleerd op uw systeem. +- **GroupDocs.Viewer for Java**: Versie 25.2 of later. +- **Maven** geïnstalleerd op je systeem. -### Omgevingsvereisten -- Java Development Kit (JDK) 8 of hoger. +### Vereisten voor omgeving configuratie +- Java Development Kit (JDK) 8 of hoger. - Een IDE zoals IntelliJ IDEA, Eclipse of NetBeans. -### Kennisvereisten +### Vereiste kennis - Basiskennis van Java en Maven‑projecten. - Vertrouwdheid met het verwerken van spreadsheets en HTML in Java. ## GroupDocs.Viewer voor Java instellen -Om GroupDocs.Viewer in uw Java‑applicatie te gebruiken, moet u het configureren binnen een Maven‑project. +Om GroupDocs.Viewer in je Java‑applicatie te gebruiken, moet je het configureren binnen een Maven‑project. -### Maven‑configuratie -Add the following configuration to your `pom.xml` file to include GroupDocs.Viewer as a dependency: +### Maven-configuratie +Voeg de volgende afhankelijkheid toe aan je `pom.xml`‑bestand om GroupDocs.Viewer op te nemen: ```xml @@ -75,14 +128,14 @@ Add the following configuration to your `pom.xml` file to include GroupDocs.View ``` -### Licentie verkrijgen -GroupDocs offers a free trial, temporary licenses for evaluation, and purchasing options for full access: -- **Gratis proefversie**: Download van [hier](https://releases.groupdocs.com/viewer/java/). -- **Tijdelijke licentie**: Verkrijg een tijdelijke licentie [hier](https://purchase.groupdocs.com/temporary-license/) om de volledige functionaliteit zonder beperkingen te testen. -- **Aankoop**: Voor langdurig gebruik, koop licenties via [deze link](https://purchase.groupdocs.com/buy). +### Licentie‑acquisitie +GroupDocs biedt een gratis proefversie, tijdelijke licenties voor evaluatie en aankoopopties voor volledige toegang: +- **Gratis proefversie**: Download van [Free trial download](https://releases.groupdocs.com/viewer/java/). +- **Tijdelijke licentie**: Verkrijg een tijdelijke licentie via [Temporary license request](https://purchase.groupdocs.com/temporary-license/) om de volledige functionaliteit zonder beperkingen te testen. +- **Aankoop**: Voor langdurig gebruik kun je licenties aanschaffen via [Purchase licenses](https://purchase.groupdocs.com/buy). ### Basisinitialisatie -Once Maven is configured and you have a license (if needed), initialize GroupDocs.Viewer in your Java application: +`Viewer` is de hoofdklasse in GroupDocs.Viewer die een document laadt en renderingsmogelijkheden biedt. Zodra Maven is geconfigureerd en je een licentie hebt (indien nodig), initialiseert je GroupDocs.Viewer in je Java‑applicatie: ```java import com.groupdocs.viewer.Viewer; @@ -98,11 +151,14 @@ public class ViewerSetup { } ``` +## Hoe excel naar html java converteren met GroupDocs.Viewer? +De conversie wordt uitgevoerd door een Viewer‑instantie te maken voor de bron‑werkmap en de view‑methode aan te roepen met HtmlViewOptions. Viewer laadt het document, verwerkt elk blad en genereert HTML‑bestanden volgens de opgegeven opties, waarbij afbeeldingen, stijlen en ingesloten bronnen automatisch worden afgehandeld. + ## Hoe rijen overslaan bij het renderen van een spreadsheet naar html -Laten we nu de kernstappen bekijken die **how to skip rows** mogelijk maken tijdens het uitvoeren van een **excel to html java** conversie. +Om te voorkomen dat lege rijen in de HTML‑output verschijnen, schakel je de skip‑empty‑rows‑vlag in op de spreadsheet‑renderopties. Dit instrueert GroupDocs.Viewer elke rij te evalueren en die zonder celwaarden uit te sluiten, wat resulteert in een slanker document. ### Stap 1: Outputdirectory definiëren -Specify where the generated HTML files will be saved: +Geef op waar de gegenereerde HTML‑bestanden moeten worden opgeslagen: ```java import java.nio.file.Paths; @@ -110,10 +166,10 @@ import java.nio.file.Paths; Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY", "page_{0}.html"); ``` -Vervang `"YOUR_OUTPUT_DIRECTORY"` door de map die u wilt gebruiken voor de output. +Vervang `"YOUR_OUTPUT_DIRECTORY"` door de map die je voor de output wilt gebruiken. ### Stap 2: HtmlViewOptions configureren -Set up `HtmlViewOptions` to embed resources (images, styles) directly into the HTML: +`HtmlViewOptions` stelt je in staat om afbeeldingen, CSS en JavaScript direct in de HTML in te sluiten, waardoor één zelf‑bevatend bestand ontstaat. ```java import com.groupdocs.viewer.options.HtmlViewOptions; @@ -121,17 +177,15 @@ import com.groupdocs.viewer.options.HtmlViewOptions; HtmlViewOptions viewInfoOptions = HtmlViewOptions.forEmbeddedResources(outputDirectory); ``` -### Stap 3: Lege rijen overslaan in spreadsheets -Tell GroupDocs.Viewer to ignore rows that contain no data: +### Stap 3: Lege rijen in spreadsheets overslaan +`setSkipEmptyRows(true)` instrueert GroupDocs.Viewer om elke rij zonder celwaarden weg te laten, waardoor de output aanzienlijk wordt verkleind. ```java viewInfoOptions.getSpreadsheetOptions().setSkipEmptyRows(true); ``` -Deze enkele regel implementeert de **how to skip rows** logica voor uw **render spreadsheet to html** workflow. - ### Stap 4: Document renderen -Finally, render the spreadsheet using the configured options: +Render tenslotte de spreadsheet met de geconfigureerde opties: ```java try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_Row.xlsx")) { @@ -139,71 +193,67 @@ try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_ } ``` -Vervang `"YOUR_DOCUMENT_DIRECTORY"` door het pad naar het Excel‑bestand dat u wilt converteren. +Vervang `"YOUR_DOCUMENT_DIRECTORY"` door het pad naar het Excel‑bestand dat je wilt converteren. ## Veelvoorkomende problemen en oplossingen -- **Lege output**: Controleer of uw bronwerkmap daadwerkelijk niet‑lege rijen bevat. Een volledig leeg blad levert geen HTML op. -- **Resource‑pad fouten**: Zorg ervoor dat `outputDirectory` naar een schrijfbare locatie wijst en dat de applicatie de juiste bestands‑systeemrechten heeft. -- **Geheugengebruik**: Voor zeer grote werkmappen, overweeg ze in batches te verwerken of vergroot de JVM‑heapgrootte. +- **Lege output**: Controleer of je bron‑werkmap daadwerkelijk niet‑lege rijen bevat. Een volledig leeg blad levert geen HTML op. +- **Fouten in resource‑pad**: Zorg ervoor dat `outputDirectory` naar een schrijfbare locatie wijst en dat de applicatie de juiste bestands‑systeemrechten heeft. +- **Geheugengebruik**: Voor zeer grote werkmappen, verwerk ze in batches of vergroot de JVM‑heap‑grootte (`-Xmx`). ## Praktische toepassingen -Het overslaan van lege rijen komt goed tot zijn recht in scenario’s zoals: +Het overslaan van lege rijen blinkt uit in scenario’s zoals: 1. **Data‑rapportage** – Genereer beknopte HTML‑rapporten uit enorme datasets. -2. **Dashboard‑integratie** – Vul web‑dashboards alleen met de rijen die relevant zijn, waardoor laadtijden laag blijven. -3. **Document‑conversiediensten** – Bied schone HTML‑versies van klant‑spreadsheets zonder overbodige markup. +2. **Dashboard‑integratie** – Vul web‑dashboards alleen met de relevante rijen, waardoor laadtijden laag blijven. +3. **Documentconversiediensten** – Bied schone HTML‑versies van klant‑spreadsheets zonder overbodige markup. ## Prestatieoverwegingen -### Optimaliseren van resourcegebruik -- **Memory Management**: Tune the JVM (`-Xmx` flag) based on the size of the spreadsheets you process. -- **Batch Processing**: Convert multiple files in a loop, releasing resources after each iteration. - -### Best practices -- Houd GroupDocs.Viewer up‑to‑date om te profiteren van prestatieverbeteringen. -- Monitor logs for warnings about unsupported features or malformed cells. +### Optimaliseren van hulpbronnengebruik +- **Geheugenbeheer**: Stem de JVM af (met de `-Xmx`‑vlag) op basis van de grootte van de te verwerken spreadsheets. +- **Batchverwerking**: Converteer meerdere bestanden in een lus en maak de bronnen na elke iteratie vrij. + +### Aanbevolen werkwijzen +- Houd GroupDocs.Viewer up‑to‑date om te profiteren van prestatieverbeteringen; de bibliotheek ondersteunt meer dan 50 invoer‑ en uitvoerformaten en kan werkmappen van 300 pagina’s verwerken zonder het volledige bestand in het geheugen te laden. +- Houd de logs in de gaten voor waarschuwingen over niet‑ondersteunde functies of verkeerd gevormde cellen. + +## Aanvullende bronnen +- [Documentation](https://docs.groupdocs.com/viewer/java/) – Officiële GroupDocs.Viewer Java‑documentatie. +- [API Reference](https://reference.groupdocs.com/viewer/java/) – Gedetailleerde API‑referentie voor alle klassen en methoden. +- [Download GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) – Directe downloadpagina voor de nieuwste bibliotheekversie. +- [Purchase Licenses](https://purchase.groupdocs.com/buy) – Informatie over het kopen van commerciële licenties. +- [Free Trial](https://releases.groupdocs.com/viewer/java/) – Toegang tot de gratis proefversie van GroupDocs.Viewer. +- [Temporary License](https://purchase.groupdocs.com/temporary-license/) – Vraag een tijdelijke evaluatielicentie aan. +- [Support Forum](https://forum.groupdocs.com/c/viewer/9) – Community‑forum voor probleemoplossing en advies. ## Conclusie -Door deze tutorial te volgen, weet u nu hoe u **excel to html java** kunt uitvoeren terwijl u efficiënt **how to skip rows** toepast tijdens de conversie. Dit maakt niet alleen de gegenereerde HTML schoner, maar verbetert ook de prestaties van elke Java‑gebaseerde documentverwerkings‑pipeline. +Door deze gids te volgen, weet je nu hoe je **excel to html java** kunt uitvoeren en tegelijkertijd efficiënt **rijen kunt overslaan** tijdens de conversie. Het resultaat is schonere HTML, snellere paginaladingen en minder serverbronnen—essentieel voor elke Java‑gebaseerde documentverwerkings‑pipeline. -Voor de volgende stappen, verken extra GroupDocs.Viewer‑mogelijkheden zoals watermerken, PDF‑conversie of aangepaste CSS‑styling om de output nog beter op uw behoeften af te stemmen. +Ontdek extra mogelijkheden van GroupDocs.Viewer, zoals watermerken, PDF‑conversie of aangepaste CSS‑styling, om de output verder af te stemmen op jouw behoeften. ## Veelgestelde vragen -1. **Kan ik deze functie gebruiken met andere bestandsformaten?** - - Ja, hoewel deze gids zich richt op spreadsheets, ondersteunt GroupDocs.Viewer ook Word‑documenten, PowerPoint‑presentaties en meer. - -2. **Wat als mijn spreadsheet verborgen rijen bevat?** - - Verborgen rijen worden behandeld als onderdeel van de documentstructuur. Om ze uit te sluiten, moet u ze eerst zichtbaar maken of programmatisch filteren vóór het renderen. -3. **Hoe beïnvloedt het overslaan van lege rijen de bestandsgrootte?** - - Het verwijderen van lege rijen verkleint de HTML‑bestandsgrootte, wat leidt tot snellere pagina‑loads en lagere bandbreedte‑consumptie. +**Q: Kan ik deze functie gebruiken met andere bestandsformaten?** +A: Ja. GroupDocs.Viewer ondersteunt ook Word, PowerPoint, PDF en vele afbeeldingsformaten, waardoor je dezelfde skip‑empty‑row‑logica kunt toepassen op spreadsheets die zijn ingebed in multi‑document‑workflows. -4. **Is GroupDocs.Viewer geschikt voor enterprise‑applicaties?** - - Absoluut. Het is ontworpen voor high‑throughput, schaalbare documentverwerking in enterprise‑omgevingen. +**Q: Wat als mijn spreadsheet verborgen rijen bevat?** +A: Verborgen rijen worden beschouwd als onderdeel van de documentstructuur. Om ze uit te sluiten, maak je ze zichtbaar of filter je ze programmatisch vóór het renderen. -5. **Kan ik het uiterlijk van gerenderde documenten aanpassen?** - - Ja, u kunt aangepaste CSS toepassen, JavaScript injecteren of de HTML‑templates van GroupDocs.Viewer aanpassen. +**Q: Hoe beïnvloedt het overslaan van lege rijen de grootte van het HTML‑bestand?** +A: Het verwijderen van lege rijen kan de HTML‑grootte met tot 70 % verminderen, wat leidt tot merkbaar snellere paginaladingen en minder bandbreedteverbruik. -**Aanvullende Q&A** +**Q: Is GroupDocs.Viewer geschikt voor enterprise‑scale toepassingen?** +A: Absoluut. Het is ontworpen voor hoge doorvoersnelheid, schaalbare documentverwerking en ondersteunt gelijktijdig renderen in multi‑threaded omgevingen. -**Q: Werkt deze aanpak met met een wachtwoord beveiligde Excel‑bestanden?** -A: Ja. Initialiseert de `Viewer` met het juiste wachtwoord via de overload die een `LoadOptions`‑object accepteert. - -**Q: Kan ik alleen een specifiek blad renderen in plaats van de hele werkmap?** -A: Gebruik `viewInfoOptions.getSpreadsheetOptions().setPageNumbers(...)` om specifieke bladen of bereiken te targeten. - -**Q: Heeft het overslaan van lege rijen invloed op formules of verwijzingen in de HTML?** -A: Nee. De onderliggende gegevens blijven ongewijzigd; alleen de visuele weergave laat lege rijen weg. - -## Bronnen -- [Documentatie](https://docs.groupdocs.com/viewer/java/) -- [API‑referentie](https://reference.groupdocs.com/viewer/java/) -- [GroupDocs.Viewer downloaden](https://releases.groupdocs.com/viewer/java/) -- [Licenties kopen](https://purchase.groupdocs.com/buy) -- [Gratis proefversie](https://releases.groupdocs.com/viewer/java/) -- [Tijdelijke licentie](https://purchase.groupdocs.com/temporary-license/) -- [Supportforum](https://forum.groupdocs.com/c/viewer/9) +**Q: Kan ik het uiterlijk van de gerenderde HTML aanpassen?** +A: Ja. Je kunt aangepaste CSS injecteren, JavaScript toevoegen of de HTML‑templates van GroupDocs.Viewer aanpassen om te voldoen aan je merk‑ of UI‑vereisten. --- -**Laatst bijgewerkt:** 2026-04-01 +**Laatst bijgewerkt:** 2026-09-30 **Getest met:** GroupDocs.Viewer 25.2 for Java -**Auteur:** GroupDocs \ No newline at end of file +**Auteur:** GroupDocs + +## Gerelateerde tutorials + +- [Hoe Excel naar HTML, JPG, PNG en PDF converteren met GroupDocs.Viewer Java](/viewer/java/rendering-basics/groupdocs-viewer-java-excel-to-html-jpg-png-pdf/) +- [Verborgen rijen en kolommen renderen Java Groupdocs Viewer](/viewer/java/advanced-rendering/render-hidden-rows-columns-java-groupdocs-viewer/) +- [Java Groupdocs Viewer printgebieden van spreadsheet renderen](/viewer/java/advanced-rendering/java-groupdocs-viewer-render-print-areas-spreadsheet/) \ No newline at end of file diff --git a/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md b/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md index 800979dc3..cffe06532 100644 --- a/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md +++ b/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/_index.md @@ -1,22 +1,83 @@ --- -title: "excel to html java: Skip Rendering Empty Rows with GroupDocs.Viewer" -description: "Learn how to convert excel to html java while skipping empty rows using GroupDocs.Viewer, improving performance and reducing resource usage." -date: "2026-04-01" -weight: 1 -url: "/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/" +date: '2026-09-30' +description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. +images: +- /java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/og-image.png keywords: - excel to html java +- reduce html size +- convert xlsx to html - how to skip rows - render spreadsheet to html +lastmod: '2026-09-30' +og_description: Excel to html java guide shows how to skip empty rows using GroupDocs.Viewer, + reducing HTML size and boosting performance in Java applications. +og_image_alt: Diagram of GroupDocs.Viewer converting Excel to HTML while omitting + blank rows +og_title: Excel to html java – Skip empty rows with GroupDocs.Viewer +schemas: +- author: GroupDocs + dateModified: '2026-09-30' + description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + headline: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + type: TechArticle +- description: Learn how to convert excel to html java while skipping empty rows using + GroupDocs.Viewer, improving performance and reducing resource usage. + name: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' + steps: + - name: Define output directory + text: 'Specify where the generated HTML files will be saved: Replace `"YOUR_OUTPUT_DIRECTORY"` + with the folder you want to use for the output.' + - name: Configure HtmlViewOptions + text: '`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into + the HTML, producing a single self‑contained file.' + - name: Skip empty rows in spreadsheets + text: '`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that + has no cell values, dramatically shrinking the output.' + - name: Render the document + text: 'Finally, render the spreadsheet using the configured options: Replace `"YOUR_DOCUMENT_DIRECTORY"` + with the path to the Excel file you want to convert.' + type: HowTo +- questions: + - answer: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image + formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets + embedded in multi‑document workflows. + question: Can I use this feature with other file formats? + - answer: Hidden rows are treated as part of the document structure. To exclude + them, unhide or filter them programmatically before rendering. + question: What if my spreadsheet contains hidden rows? + - answer: Removing blank rows can reduce the HTML size by up to 70 %, resulting + in noticeably faster page loads and lower bandwidth usage. + question: How does skipping empty rows affect the HTML file size? + - answer: Absolutely. It is designed for high‑throughput, scalable document processing + and supports concurrent rendering in multi‑threaded environments. + question: Is GroupDocs.Viewer suitable for enterprise‑scale applications? + - answer: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates + provided by GroupDocs.Viewer to match your brand or UI requirements. + question: Can I customize the appearance of the rendered HTML? + type: FAQPage +tags: +- excel conversion +- GroupDocs.Viewer +- Java document processing +- html rendering +title: 'Excel to html java: Skip rendering empty rows with GroupDocs.Viewer' type: docs +url: /java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/ +weight: 1 --- -# excel to html java: Skip Rendering Empty Rows with GroupDocs.Viewer -Rendering unnecessary empty rows when converting spreadsheets to HTML can clutter your output and waste resources. If you’re looking to **excel to html java** efficiently, skipping those blank rows is a must‑have optimization. In this guide we’ll show you exactly how to do that with GroupDocs.Viewer for Java, so your applications run faster and produce cleaner HTML. +# Excel to html java: Skip rendering empty rows with GroupDocs.Viewer + +Converting **excel to html java** is a common requirement when you need to display spreadsheet data in a web browser without relying on Microsoft Excel. However, rendering every blank row creates unnecessary markup, slows page loads, and inflates bandwidth usage. This tutorial walks you through using GroupDocs.Viewer for Java to skip those empty rows, delivering leaner HTML and faster rendering. ![Skip Rendering Empty Rows with GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) -## Quick Answers +[Skip Rendering Empty Rows with GroupDocs.Viewer for Java](/viewer/advanced-rendering/skip-rendering-empty-rows-java.png) + +## Quick answers - **What does “excel to html java” mean?** Converting an Excel workbook to HTML markup using Java code. - **How can I skip empty rows?** Set `setSkipEmptyRows(true)` on the spreadsheet options. - **Which library supports this?** GroupDocs.Viewer for Java (v25.2+). @@ -24,35 +85,31 @@ Rendering unnecessary empty rows when converting spreadsheets to HTML can clutte - **Will this improve performance?** Yes—fewer rows mean less HTML, faster rendering, and lower memory usage. ## What is excel to html java? -“excel to html java” refers to the process of programmatically converting an Excel (.xlsx, .xls) file into an HTML document using Java. This enables you to embed spreadsheet data directly into web pages without requiring the end‑user to have Excel installed. +It refers to using Java APIs to read an Excel workbook (.xlsx or .xls) and generate an equivalent HTML representation, preserving cell contents, formatting, and basic layout so the data can be displayed directly in web browsers without requiring Microsoft Excel. ## Why skip empty rows when you render spreadsheet to html? -Skipping empty rows reduces the amount of generated HTML, which leads to: -- Faster page load times. -- Lower bandwidth consumption. -- Cleaner visual output that focuses on real data. -- Decreased memory pressure on the server during batch conversions. +Empty rows add unnecessary `` elements to the generated markup, inflating file size and slowing rendering in browsers. By omitting rows that contain no data, the HTML becomes more compact, improves load times, reduces bandwidth usage, and makes downstream processing such as styling or scripting simpler. ## Prerequisites Before we start, ensure you have the following in place: -### Required Libraries and Dependencies +### Required libraries and dependencies - **GroupDocs.Viewer for Java**: Version 25.2 or later. - **Maven** installed on your system. -### Environment Setup Requirements -- Java Development Kit (JDK) 8 or higher. +### Environment setup requirements +- Java Development Kit (JDK) 8 or higher. - An IDE such as IntelliJ IDEA, Eclipse, or NetBeans. -### Knowledge Prerequisites +### Knowledge prerequisites - Basic Java and Maven project knowledge. - Familiarity with handling spreadsheets and HTML in Java. -## Setting Up GroupDocs.Viewer for Java +## Setting up GroupDocs.Viewer for Java To begin using GroupDocs.Viewer in your Java application, you need to configure it within a Maven project. -### Maven Configuration -Add the following configuration to your `pom.xml` file to include GroupDocs.Viewer as a dependency: +### Maven configuration +Add the following dependency to your `pom.xml` file to include GroupDocs.Viewer: ```xml @@ -72,14 +129,14 @@ Add the following configuration to your `pom.xml` file to include GroupDocs.View ``` -### License Acquisition +### License acquisition GroupDocs offers a free trial, temporary licenses for evaluation, and purchasing options for full access: -- **Free Trial**: Download from [here](https://releases.groupdocs.com/viewer/java/). -- **Temporary License**: Acquire a temporary license [here](https://purchase.groupdocs.com/temporary-license/) to test the full features without limitations. -- **Purchase**: For long‑term use, purchase licenses through [this link](https://purchase.groupdocs.com/buy). +- **Free trial**: Download from [Free trial download](https://releases.groupdocs.com/viewer/java/). +- **Temporary license**: Acquire a temporary license [Temporary license request](https://purchase.groupdocs.com/temporary-license/) to test the full features without limitations. +- **Purchase**: For long‑term use, purchase licenses through [Purchase licenses](https://purchase.groupdocs.com/buy). -### Basic Initialization -Once Maven is configured and you have a license (if needed), initialize GroupDocs.Viewer in your Java application: +### Basic initialization +`Viewer` is the main class in GroupDocs.Viewer that loads a document and provides rendering capabilities. Once Maven is configured and you have a license (if needed), initialize GroupDocs.Viewer in your Java application: ```java import com.groupdocs.viewer.Viewer; @@ -95,10 +152,13 @@ public class ViewerSetup { } ``` +## How to convert excel to html java with GroupDocs.Viewer? +The conversion is performed by creating a Viewer instance for the source workbook and invoking the view method with HtmlViewOptions. Viewer loads the document, processes each sheet, and outputs HTML files according to the specified options, handling images, styles, and embedded resources automatically. + ## How to skip rows when you render spreadsheet to html -Now let’s dive into the core steps that enable **how to skip rows** while performing **excel to html java** conversion. +To prevent blank rows from appearing in the HTML output, enable the skip‑empty‑rows flag on the spreadsheet rendering options. This tells GroupDocs.Viewer to evaluate each row and exclude those without any cell values, resulting in a leaner document. -### Step 1: Define Output Directory +### Step 1: Define output directory Specify where the generated HTML files will be saved: ```java @@ -110,7 +170,7 @@ Path outputDirectory = Paths.get("YOUR_OUTPUT_DIRECTORY", "page_{0}.html"); Replace `"YOUR_OUTPUT_DIRECTORY"` with the folder you want to use for the output. ### Step 2: Configure HtmlViewOptions -Set up `HtmlViewOptions` to embed resources (images, styles) directly into the HTML: +`HtmlViewOptions` lets you embed images, CSS, and JavaScript directly into the HTML, producing a single self‑contained file. ```java import com.groupdocs.viewer.options.HtmlViewOptions; @@ -118,16 +178,14 @@ import com.groupdocs.viewer.options.HtmlViewOptions; HtmlViewOptions viewInfoOptions = HtmlViewOptions.forEmbeddedResources(outputDirectory); ``` -### Step 3: Skip Empty Rows in Spreadsheets -Tell GroupDocs.Viewer to ignore rows that contain no data: +### Step 3: Skip empty rows in spreadsheets +`setSkipEmptyRows(true)` instructs GroupDocs.Viewer to omit any row that has no cell values, dramatically shrinking the output. ```java viewInfoOptions.getSpreadsheetOptions().setSkipEmptyRows(true); ``` -This single line implements the **how to skip rows** logic for your **render spreadsheet to html** workflow. - -### Step 4: Render the Document +### Step 4: Render the document Finally, render the spreadsheet using the configured options: ```java @@ -138,69 +196,65 @@ try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/Sample_XLSX_With_Empty_ Replace `"YOUR_DOCUMENT_DIRECTORY"` with the path to the Excel file you want to convert. -## Common Issues and Solutions -- **Empty Output**: Verify that your source workbook actually contains non‑empty rows. A completely blank sheet will produce no HTML. -- **Resource Path Errors**: Ensure `outputDirectory` points to a writable location and that the application has file‑system permissions. -- **Memory Consumption**: For very large workbooks, consider processing them in batches or increasing the JVM heap size. +## Common issues and solutions +- **Empty output**: Verify that your source workbook actually contains non‑empty rows. A completely blank sheet will produce no HTML. +- **Resource path errors**: Ensure `outputDirectory` points to a writable location and that the application has file‑system permissions. +- **Memory consumption**: For very large workbooks, process them in batches or increase the JVM heap size (`-Xmx`). -## Practical Applications +## Practical applications Skipping empty rows shines in scenarios such as: -1. **Data Reporting** – Generate concise HTML reports from massive datasets. -2. **Dashboard Integration** – Populate web dashboards with only the rows that matter, keeping load times low. -3. **Document Conversion Services** – Offer clean HTML versions of client spreadsheets without superfluous markup. +1. **Data reporting** – Generate concise HTML reports from massive datasets. +2. **Dashboard integration** – Populate web dashboards with only the rows that matter, keeping load times low. +3. **Document conversion services** – Offer clean HTML versions of client spreadsheets without superfluous markup. -## Performance Considerations -### Optimizing Resource Usage -- **Memory Management**: Tune the JVM (`-Xmx` flag) based on the size of the spreadsheets you process. -- **Batch Processing**: Convert multiple files in a loop, releasing resources after each iteration. +## Performance considerations +### Optimizing resource usage +- **Memory management**: Tune the JVM (`-Xmx` flag) based on the size of the spreadsheets you process. +- **Batch processing**: Convert multiple files in a loop, releasing resources after each iteration. -### Best Practices -- Keep GroupDocs.Viewer up to date to benefit from performance enhancements. +### Best practices +- Keep GroupDocs.Viewer up to date to benefit from performance enhancements; the library supports 50+ input and output formats and can process 300‑page workbooks without loading the entire file into memory. - Monitor logs for warnings about unsupported features or malformed cells. -## Conclusion -By following this tutorial, you now know how to **excel to html java** while efficiently **how to skip rows** during conversion. This not only cleans up the generated HTML but also boosts performance for any Java‑based document processing pipeline. +## Additional resources +- [Documentation](https://docs.groupdocs.com/viewer/java/) – Official GroupDocs.Viewer Java documentation. +- [API Reference](https://reference.groupdocs.com/viewer/java/) – Detailed API reference for all classes and methods. +- [Download GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) – Direct download page for the latest library version. +- [Purchase Licenses](https://purchase.groupdocs.com/buy) – Information on buying commercial licenses. +- [Free Trial](https://releases.groupdocs.com/viewer/java/) – Access the free trial version of GroupDocs.Viewer. +- [Temporary License](https://purchase.groupdocs.com/temporary-license/) – Request a temporary evaluation license. +- [Support Forum](https://forum.groupdocs.com/c/viewer/9) – Community forum for troubleshooting and advice. -For the next steps, explore additional GroupDocs.Viewer capabilities such as watermarking, PDF conversion, or custom CSS styling to further tailor the output to your needs. - -## FAQ Section -1. **Can I use this feature with other file formats?** - - Yes, while this guide focuses on spreadsheets, GroupDocs.Viewer also supports Word documents, PowerPoint presentations, and more. - -2. **What if my spreadsheet contains hidden rows?** - - Hidden rows are treated as part of the document structure. To exclude them, you’d need to unhide or programmatically filter them before rendering. - -3. **How does skipping empty rows affect file size?** - - Removing empty rows reduces the HTML file size, leading to faster page loads and lower bandwidth consumption. +## Conclusion +By following this guide, you now know how to **excel to html java** while efficiently **how to skip rows** during conversion. The result is cleaner HTML, faster page loads, and lower server resource usage—essential for any Java‑based document processing pipeline. -4. **Is GroupDocs.Viewer suitable for enterprise applications?** - - Absolutely. It’s designed for high‑throughput, scalable document processing in enterprise environments. +Explore additional GroupDocs.Viewer capabilities such as watermarking, PDF conversion, or custom CSS styling to further tailor the output to your needs. -5. **Can I customize the appearance of rendered documents?** - - Yes, you can apply custom CSS, inject JavaScript, or modify the HTML templates provided by GroupDocs.Viewer. +## Frequently asked questions -**Additional Q&A** +**Q: Can I use this feature with other file formats?** +A: Yes. GroupDocs.Viewer also supports Word, PowerPoint, PDF, and many image formats, allowing you to apply the same skip‑empty‑row logic to spreadsheets embedded in multi‑document workflows. -**Q: Does this approach work with password‑protected Excel files?** -A: Yes. Initialize the `Viewer` with the appropriate password using the overload that accepts a `LoadOptions` object. +**Q: What if my spreadsheet contains hidden rows?** +A: Hidden rows are treated as part of the document structure. To exclude them, unhide or filter them programmatically before rendering. -**Q: Can I render only a specific sheet instead of the whole workbook?** -A: Use `viewInfoOptions.getSpreadsheetOptions().setPageNumbers(...)` to target particular sheets or ranges. +**Q: How does skipping empty rows affect the HTML file size?** +A: Removing blank rows can reduce the HTML size by up to 70 %, resulting in noticeably faster page loads and lower bandwidth usage. -**Q: Will skipping empty rows impact formulas or references in the HTML?** -A: No. The underlying data remains unchanged; only the visual representation omits blank rows. +**Q: Is GroupDocs.Viewer suitable for enterprise‑scale applications?** +A: Absolutely. It is designed for high‑throughput, scalable document processing and supports concurrent rendering in multi‑threaded environments. -## Resources -- [Documentation](https://docs.groupdocs.com/viewer/java/) -- [API Reference](https://reference.groupdocs.com/viewer/java/) -- [Download GroupDocs.Viewer](https://releases.groupdocs.com/viewer/java/) -- [Purchase Licenses](https://purchase.groupdocs.com/buy) -- [Free Trial](https://releases.groupdocs.com/viewer/java/) -- [Temporary License](https://purchase.groupdocs.com/temporary-license/) -- [Support Forum](https://forum.groupdocs.com/c/viewer/9) +**Q: Can I customize the appearance of the rendered HTML?** +A: Yes. You can inject custom CSS, add JavaScript, or modify the HTML templates provided by GroupDocs.Viewer to match your brand or UI requirements. --- -**Last Updated:** 2026-04-01 +**Last Updated:** 2026-09-30 **Tested With:** GroupDocs.Viewer 25.2 for Java -**Author:** GroupDocs \ No newline at end of file +**Author:** GroupDocs + +## Related Tutorials + +- [How to Convert Excel to HTML, JPG, PNG, and PDF Using GroupDocs.Viewer Java](/viewer/java/rendering-basics/groupdocs-viewer-java-excel-to-html-jpg-png-pdf/) +- [Render Hidden Rows Columns Java Groupdocs Viewer](/viewer/java/advanced-rendering/render-hidden-rows-columns-java-groupdocs-viewer/) +- [Java Groupdocs Viewer Render Print Areas Spreadsheet](/viewer/java/advanced-rendering/java-groupdocs-viewer-render-print-areas-spreadsheet/) \ No newline at end of file diff --git a/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/og-image.png b/content/english/java/advanced-rendering/skip-rendering-empty-rows-java-groupdocs-viewer/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..ba51bcf22a27cb5b527010caffd5d1d94581d40f GIT binary patch literal 54021 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 z%0D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