
Jak przekonwertować PDF na plik Tiff w .NET
W dzisiejszych przedsiębiorstwach dokumenty cyfrowe są typowym miejscem wymiany informacji i prezentacji wizualnej. Czasami jednak na jednej stronie może być tak dużo informacji, że trudno jest zrozumieć, które treści odnoszą się do tematu. W związku z tym powszechną taktyką jest odpowiednie rozmieszczenie podziałów stron, aby umożliwić prezenterowi jasne przekazanie informacji, a czytelnikom – dostrzeżenie wyraźnie wyodrębnionych sekcji w dokumencie.
Chociaż podziały stron są powszechne w dokumentach, ręczne dostosowywanie ich jest uciążliwe i nie ma charakteru skalowalnego. W firmach, w których powstają tysiące dokumentów, znacznie wydajniejsze i bardziej idealne jest automatyczne dodawanie podziałów stron. Dzięki temu programiści mogą dostosować i zastosować format do wybranych dokumentów.
W tym artykułe omówimy dodawanie podziałów stron przy użyciu biblioteki PDF dla języka C# o nazwie IronPDF. Intuicyjność IronPDF pozwala programistom na szybkie ustawianie podziałów stron w wielu rodzajach treści. Omówimy również korzystanie z biblioteki oraz jej możliwości dostosowywania i elastyczność w tworzeniu atrakcyjnych wizualnie dokumentów z podziałami stron.
IronPDF: Biblioteka PDF dla C#

IronPDF to elastyczna, łatwa w użyciu i wysoce konfigurowalna biblioteka C# do obsługi plików PDF, która pozwala programistom, zarówno początkującym, jak i doświadczonym, w pełni manipulować i edytować pliki PDF. Oferuje programistom wiele sposobów konwersji różnych formatów, takich jak HTML, RTF i obrazy, do plików PDF oraz dalszej edycji sposobu renderowania podczas konwersji do formatu PDF. Ponadto IronPDF wykorzystuje silnik renderujący Chrome, dzięki czemu doskonale radzi sobie z renderowaniem ciągów HTML i pozwala programistom na dalsze dostosowywanie dokumentów HTML za pomocą stylów CSS, zapewniając im przewagę w zakresie personalizacji i prezentacji wizualnej, której nie znajdziesz nigdzie indziej.
Ponieważ biblioteka wykorzystuje silnik renderujący Chrome, podczas renderowania HTML otrzymujesz dokładnie to, co widzisz, co sprawia, że idealnie nadaje się ona do takich operacji, jak tworzenie szablonów podziałów stron, dzięki czemu nie ma żadnych rozbieżności w stosunku do szablonów. Dokładnie tak zaprojektowałeś szablony podczas konwersji ich do formatu PDF.
Dodawanie podziału strony w pliku PDF
Aby zilustrować elastyczność i łatwość użytkowania biblioteki, posłużymy się przykładem kodu pokazującym, jak programowo dodać podziały stron.
W tym scenariuszu jako dane wejściowe wykorzystamy plik PDF w formie tabeli i dla większej przejrzystości zobaczymy różnicę między dodaniem podziału strony natychmiast a dodaniem go później.
Klucz licencyjny
Zanim zaczniemy, pamiętaj, że do działania IronPDF potrzebny jest klucz licencyjny. Klucz można uzyskać w ramach bezpłatnej wersji próbnej, odwiedzając ten link.
// Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";' Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"Po otrzymaniu klucza próbnego ustaw tę zmienną w swoim projekcie i gotowe.
Plik wejściowy PDF
Jako podstawę dla naszych przykładów wykorzystamy poniższy plik PDF. Jest to prosta tabela z danymi pogrupowanymi w osobne informacje, co utrudnia rozróżnienie, gdzie kończy się treść.

Przykładowe użycie kodu
using IronPdf; // Import the IronPdf library
// Define the HTML content, including a table and an image
const string html = @"
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML content into a PDF
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf");Imports IronPdf ' Import the IronPdf library
' Define the HTML content, including a table and an image
Private Const html As String = "
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Create an instance of ChromePdfRenderer
Private renderer = New ChromePdfRenderer()
' Render the HTML content into a PDF
Private pdf = renderer.RenderHtmlAsPdf(html)
' Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf")- Najpierw importujemy moduł
IronPdf. - Powyższy ciąg znaków HTML przedstawia treść, która ma zostać przekonwertowana do formatu PDF. Tag
<div style='page-break-after: always;'> </div>jest dodany, aby zapewnić przerwę stronicową po tabeli. - Następnie instancjonujemy renderer PDF.
- Przekazujemy ciąg HTML do metody
RenderHtmlAsPdf. - Na koniec zapisujemy dokument jako
Page_Break.pdf.
Bardziej powszechną metodą jest wykorzystanie CSS do podziału stron zamiast stylizacji wbudowanej w HTML.
Wynik w formacie PDF

Jak widać, w wyniku tłumaczenia zaraz po tabeli pojawia się znak końca strony.
Kontrolowanie podziałów stron za pomocą CSS
Ponieważ IronPDF można dostosować za pomocą CSS, ponieważ wykorzystuje silnik renderujący Chrome, możemy to wykorzystać i użyć CSS do dodania podziałów stron do określonych elementów oraz podziałów stron wewnątrz nich, a także określić, który element nie powinien mieć podziału strony w swoim wnętrzu.
Na przykład, chociaż na powyższym obrazku podział strony następuje po tabeli, mogą zdarzyć się sytuacje, w których nastąpi on w obrębie tabeli z powodu zagęszczenia treści.
Aby tego uniknąć, możemy zastosować specjalny styl CSS dla elementu node i określić, że nie chcemy dodawać w nim podziału strony.
<div style='page-break-inside: avoid'>
<img src='no-break-me.png'>
</div>
Dodanie page-break-inside: avoid zapobiega przerwom stronicowym wewnątrz elementu. Jednak podczas wykonywania tej operacji upewnij się, że jest ona zastosowana do nadrzędnego węzła div elementu.
Podobną operację można również zastosować w przypadku elementów, do których chcesz dodać styl "page-break-before".
<div style="page-break-inside: avoid;">
<img src="no-break-me.png">
</div>
Ponieważ możemy korzystać z HTML, możemy dodatkowo określić elementy węzłów, drążąc drzewo węzłów HTML za pomocą document.getElementById JavaScriptu, aby wybierać elementy po ich ID i upewnić się, że każdy węzeł jest w pełni konfigurowalny.
Optymalizacja jakości obrazu i rozmiaru pliku
Ustawienie podziału stron jest również ściśle związane z jakością obrazu. Należy upewnić się, że ustawienie podziału strony nie wpływa na jakość obrazu poprzez jego zmniejszenie lub skalowanie na następnej stronie.
W związku z tym możemy użyć CSS, aby zapewnić spójną jakość obrazów we wszystkich szablonach podczas stosowania podziałów stron.
<div class="no-break">
<img src="optimized-image.jpg" alt="Optimized Image" style="width:100%; height:auto;">
</div>
Powyższy styl CSS zapewnia spójność obrazu po operacjach podziału strony. Najpierw ustawiamy szerokość na 100% strony, a wysokość może być automatycznie skalowana w celu zachowania proporcji.
Ponadto IronPDF oferuje dodatkowe opcje renderowania podczas obsługi HTML, które są podobne do ustawień drukowania użytkownika dla monitów dotyczących plików PDF do pobrania i wydruku. Pełna lista atrybutów znajduje się w dokumentacji API.
Odpowiednik wykorzystujący JavaScript
Ponieważ IronPDF ma tę zaletę, że korzysta z silnika renderującego Chrome, jest również dostępny w wersji Node.js, co pozwala programistom z różnych środowisk na korzystanie z tej potężnej biblioteki.
W wariancie Node.js deweloperzy mają jeszcze bardziej precyzyjną kontrolę nad dodawaniem przerw stronicowych, ponieważ mają dostęp do opartych na obietnicach metod, takich jak metoda obietnicy onRejected do debugowania lub śledzenia postępu oraz jej funkcji pośrednich.
W porównaniu z popularną biblioteką, taką jak html2pdf z metodą wyjściową obiektu jsPDF, IronPDF jest bardziej elastyczny i obsługuje wiele języków, umożliwiając programistom o różnej znajomości języków pracę nad tym samym projektem.
Wnioski
Zrozumienie, jak używać podziałów stron i jak CSS wpływa na ogólny kod HTML, ma kluczowe znaczenie dla tworzenia dokumentów, które są reprezentacyjne i atrakcyjne wizualnie dla użytkowników. Pozwala to czytelnikom na selekcjonowanie informacji, które czytają, aby uniknąć nadmiaru informacji i niejasności. W całym tym artykułe mówiliśmy o wykorzystaniu potężnego silnika renderującego Chrome, którego IronPDF używa do automatycznego tworzenia szablonów podziałów stron dla szablonów i automatyzacji, usprawniając wydajność i skalowalność podczas tworzenia tych dokumentów, a także zmniejszając ryzyko błędu ludzkiego.
Dla programistów, którzy chcą wypróbować IronPDF, biblioteka oferuje bezpłatny okres próbny dla $999 i wyżej.

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.
Powiązane artykuły


