IRONSOFTWAREHOME

Orientacja i obrot strony w PDF

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

Praca z PDF często oznacza znajomość dwóch rzeczy o stronie: jej orientacji (pionowej lub poziomej) i czy zawartość jest obrócona. Istnieją dwa sposoby, aby się o tym dowiedzieć, a każdy odpowiada na nieco inne pytania.

  • PdfDocument.Pages[i].PageRotation odczytuje obrót z metadanych PDF.
  • OcrInput.DetectPageOrientation() wywnioskowuje orientację wizualnie za pomocą OCR.

Orientacja vs. Obrot

To nie to samo właściwości:

  • Orientacja strony: układ strony. Pionowa oznacza, że wysokość jest większa niż szerokość; Pozioma oznacza, że szerokość jest większa niż wysokość.
  • Kąt obrotu: Jak zawartość jest ustawiona względem naturalnego kierunku czytania, przykład 90, 180, i tak dalej.

Opcja 1: Odczytaj obrót z metadanych

PageRotation zwraca wartość obrotu osadzoną w pliku PDF, więc informuje cię, jak zawartość została programowo obrócone. Dla dobrze uformowanych PDF-ów jest to niezawodne i spójne.

var pdf = PdfDocument.FromFile("sample.pdf");
for (int i = 0; i < pdf.PageCount; i++)
{
    var page = pdf.Pages[i];
    var orientation = page.Width > page.Height ? "Landscape" : "Portrait";
    var rotation = page.PageRotation;
    Console.WriteLine($"Page {i + 1}: {orientation}, Rotation: {rotation} degrees");
}
C#

Uzyskujesz dwie informację w jednym kroku: orientację z porównania szerokości do wysokości oraz kąt obrotu prosto z metadanych.

Najlepsze dla: strukturalnych PDF-ów ze spójnymi, prawidłowymi metadanymi.

Opcja 2: Wykryj orientację za pomocą OCR

Gdy brakuje metadanych lub są niewiarygodne, analizuj stronę wizualnie zamiast tego. DetectPageOrientation() bada układ każdej strony i wnioskuje o prawdopodobnym kierunku czytania, bez polegania na metadanych.

using var input = new OcrInput();
input.LoadPdf("sample.pdf");
var results = input.DetectPageOrientation();
foreach (var result in results)
{
    Console.WriteLine($"Page {result.PageNumber + 1}: Rotation: {result.RotationAngle} degrees");
}
C#

To właściwy wybór dla zeskanowanych dokumentów, PDF-ów oparte na obrazach i wszelkich plików pozbawionych odpowiednich metadanych.

Dokładność tutaj śledzi gęstość tekstu i przejrzystość. Rozproszenie lub niedopasowany tekst może dać błędny wynik, dlatego ogranicz OCR do Rectangle na gęstszym obszarze tekstu, aby ustabilizować wykrycie.

Zalecenie

  • Cyfrowe PDF: preferuj PdfDocument.PageRotation, gdy metadane są poprawne.
  • Zeskanowane lub bazujące na obrazach PDF: używaj OcrInput.DetectPageOrientation(), gdy metadane są brakujące lub niewiarygodne.

Dla krytycznych przepływów pracy uruchamiaj oba sposoby i zastosuj swoją logikę do rozwiązywania wszelkich rozbieżności. Jeśli widzisz niekonsekwentne wyniki obrotu, sprawdź konkretny układ strony i zweryfikuj jedną metodę w stosunku do drugiej.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 6,262,020Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

OR
bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta