Změnit orientaci
Zavedení
Už se vám někdy stalo, že jste se potýkali se souborem PDF, kde je orientace stránky prostě… vypnutá? Možná máte co do činění s dokumentem, který byl naskenován nebo vytvořen nesprávně a stránky je třeba otočit, aby dávaly smysl. Máme štěstí, že Aspose.PDF for .NET poskytuje snadný a výkonný způsob, jak manipulovat se soubory PDF téměř jakýmkoliv představitelným způsobem – včetně změny orientace vašich stránek. Ať už chcete přejít z portrétu na šířku nebo naopak, tento průvodce vás provede procesem krok za krokem.
Takže, pokud jste připraveni se ponořit a snadno otočit tyto stránky PDF, začněme!
Předpoklady
Než se pustíme do podrobností o změně orientace stránky ve vašem PDF, pojďme si rychle probrat, co budete muset mít na svém místě:
- Aspose.PDF pro .NET: Ujistěte se, že jste nainstalovali knihovnu Aspose.PDF pro .NET. Pokud ne, můžetestáhněte si jej zde.
- Vývojové prostředí .NET: Pro práci s .NET můžete použít Visual Studio, JetBrains Rider nebo jakékoli preferované IDE.
- Základní znalost C#: I když je tato příručka přímočará, některé základní znalosti C# usnadní její sledování.
- Soubor PDF: Níže uvedený příklad předpokládá, že máte soubor PDF s více stránkami. Pokud nemáte žádný po ruce, vytvořte nebo stáhněte si vzorový soubor PDF, se kterým budete pracovat.
Také, pokud právě začínáte, můžete zkusit Aspose.PDF s adočasná licence zdarma než se rozhodnoutkoupit plnou verzi.
Importovat jmenné prostory
Než budete moci manipulovat s orientací stránek ve vašem PDF, budete muset do projektu C# importovat potřebné jmenné prostory. Ujistěte se, že máte následující:
using System.IO;
using Aspose.Pdf;
S tímto importem se vrhneme do hlavní části tutoriálu.
Krok 1: Načtěte dokument PDF
První věc, kterou musíme udělat, je načíst soubor PDF, který chcete upravit. Můžete použítDocument
třídy z oboru názvů Aspose.PDF a otevřete soubor PDF.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "input.pdf");
Tento řádek načte PDF z vašeho zadaného adresáře. Nezapomeňte vyměnit"YOUR DOCUMENT DIRECTORY"
se skutečnou cestou k vašemu souboru. The"input.pdf"
je PDF, jehož orientaci chcete změnit.
Krok 2: Projděte každou stránku
Nyní, když máme načtený dokument, projdeme každou stránku v PDF. Použijeme aforeach
smyčkou procházet každou stránku, což nám umožňuje aplikovat změnu orientace na všechny z nich.
foreach (Page page in doc.Pages)
{
// Manipulujte s každou stránkou
}
Tato smyčka bude procházet všemi stránkami v dokumentu.
Krok 3: Získejte MediaBox stránky
Každá stránka v PDF má aMediaBox
který určuje hranice stránky. K tomu potřebujeme přistupovat, abychom mohli určit aktuální orientaci a upravit ji.
Aspose.Pdf.Rectangle r = page.MediaBox;
TheMediaBox
nám udává rozměry stránky, jako je její šířka, výška a umístění.
Krok 4: Vyměňte šířku a výšku
Chcete-li změnit orientaci stránky z orientace na výšku na šířku nebo na šířku na výšku, jednoduše prohodíme hodnoty šířky a výšky. Tento krok upraví rozměry stránky.
double newHeight = r.Width;
double newWidth = r.Height;
double newLLX = r.LLX;
double newLLY = r.LLY + (r.Height - newHeight);
Tento kód zamění výšku a šířku a přemístí levý dolní roh (LLY
), aby se obsah po otočení úhledně vešel.
Krok 5: Aktualizujte MediaBox a CropBox
Nyní, když máme novou výšku a šířku, aplikujme změny na stránkuMediaBox
aCropBox
. TheCropBox
je zásadní, pokud měl původní dokument jednu sadu, aby se zajistilo správné zobrazení celé stránky.
page.MediaBox = new Aspose.Pdf.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight);
page.CropBox = new Aspose.Pdf.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight);
Tento krok změní velikost stránky na základě nových dimenzí, které jsme právě vypočítali.
Krok 6: Otočte stránku
Nakonec nastavíme úhel natočení stránky. Aspose.PDF to velmi zjednodušuje. Stránku můžeme otočit o 90 stupňů a posunout se z portrétu na šířku nebo naopak.
page.Rotate = Rotation.on90;
Tento kód otočí stránku o 90 stupňů a převrátí ji do požadované orientace.
Krok 7: Uložte výstupní PDF
Po aplikování změn orientace na všechny stránky uložíme upravený dokument do nového souboru.
dataDir = dataDir + "ChangeOrientation_out.pdf";
doc.Save(dataDir);
System.Console.WriteLine("\nPage orientation changed successfully.\nFile saved at " + dataDir);
Ujistěte se, že zadáváte nový název souboru (v tomto případěChangeOrientation_out.pdf
) pro uložení výstupu. Tímto způsobem nepřepíšete svůj původní soubor.
Závěr
tady to máte! Změna orientace stránky souboru PDF pomocí Aspose.PDF for .NET je stejně jednoduchá jako načtení dokumentu, procházení stránek, úprava MediaBoxu a uložení aktualizovaného souboru. Ať už máte co do činění se špatně naskenovaným dokumentem nebo potřebujete otočit stránky tak, aby odpovídaly vašim potřebám formátování, tento podrobný průvodce by vám měl pomoci.
FAQ
Mohu otočit konkrétní stránky namísto všech stránek v PDF?
Ano, smyčku můžete upravit tak, aby cílila na konkrétní stránky pomocí jejich indexu namísto procházení všemi stránkami.
Co jeMediaBox
?
TheMediaBox
definuje velikost a tvar stránky v souboru PDF. Je to místo, kde je umístěn obsah stránky.
Funguje Aspose.PDF for .NET s jinými formáty souborů?
Ano, Aspose.PDF si poradí s řadou formátů souborů, jako je HTML, XML, XPS a další.
Existuje bezplatná verze Aspose.PDF pro .NET?
Ano, můžete začít s azkušební verze zdarma nebo požádat adočasná licence.
Mohu po uložení změny vrátit zpět?
Jakmile dokument uložíte, změny jsou trvalé. Ujistěte se, že pracujete na kopii nebo si ponechte zálohu původního souboru.