Jedna strona na arkusz – Excel do PDF w Javie, podstawianie czcionek
Utrzymanie spójnej typografii podczas konwertowania arkuszy Excel do PDF może być wyzwaniem, szczególnie gdy potrzebujesz jednej strony na arkusz. Ten samouczek pokazuje, jak konwertować Excel do PDF w Javie, wymuszając jedną stronę na arkusz i podstawiając brakujące czcionki przy użyciu GroupDocs.Conversion. Po zakończeniu będziesz mieć niezawodne rozwiązanie, które utrzymuje spójną typografię na różnych platformach i upraszcza przepływy pracy z dokumentami.
Szybkie odpowiedzi
- Co oznacza „one page per sheet”? Każdy arkusz jest renderowany na jednej stronie PDF.
- Która biblioteka obsługuje konwersję? GroupDocs.Conversion for Java.
- Czy mogę automatycznie zastąpić brakujące czcionki? Tak, przy użyciu funkcji FontSubstitute.
- Czy potrzebna jest licencja? Wymagana jest tymczasowa licencja, aby uzyskać pełną funkcjonalność.
- Czy to podejście nadaje się do dużych skoroszytów? Tak, przy odpowiednim dostrojeniu pamięci JVM.
Wymagania wstępne
Przed implementacją kodu upewnij się, że masz następujące elementy:
Wymagane biblioteki i zależności
Upewnij się, że masz bibliotekę GroupDocs.Conversion w wersji 25.2 lub późniejszej, którą można zarządzać przy użyciu Maven.
Wymagania dotyczące konfiguracji środowiska
- Zainstalowany Java Development Kit (JDK) na Twoim komputerze.
- IDE, takie jak IntelliJ IDEA lub Eclipse, do pisania i uruchamiania kodu Java.
Wymagania wiedzy wstępnej
Podstawowa znajomość programowania w Javie, zarządzania bibliotekami za pomocą Maven oraz koncepcji konwersji plików będzie pomocna, ale nie jest konieczna.
Teraz, gdy wszystko jest gotowe, przejdźmy do implementacji.
Dlaczego używać GroupDocs.Conversion Java do konwersji Excel na PDF?
- One page per sheet renderowanie zapewnia przewidywalną paginację.
- Font substitution zapewnia, że PDF wygląda tak samo na każdym systemie, nawet gdy oryginalne czcionki są nieobecne.
- Obsługuje convert excel to pdf dla szerokiego zakresu funkcji Excela (wykresy, formuły, stylowanie).
- W pełni programowalny w Javie, co czyni go idealnym dla excel to pdf java w automatycznych pipeline’ach.
Konfiguracja GroupDocs.Conversion dla Java
Konfiguracja Maven
Najpierw dodaj niezbędne informacje o repozytorium i zależnościach do pliku pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/conversion/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
Uzyskanie licencji
Uzyskaj tymczasową licencję z GroupDocs aby mieć pełny dostęp do funkcji w okresie oceny.
Podstawowa inicjalizacja i konfiguracja
Po skonfigurowaniu Maven, zainicjalizuj GroupDocs.Conversion w swojej aplikacji Java:
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
public class ConvertExcelToPDF {
public static void main(String[] args) {
String inputDocument = "sample.xlsx";
String convertedFile = "output.pdf";
// Initialize the Converter object with your document path
Converter converter = new Converter(inputDocument);
PdfConvertOptions options = new PdfConvertOptions();
// Perform the conversion
converter.convert(convertedFile, options);
}
}
Przewodnik implementacji – podstawianie czcionek z jedną stroną na arkusz
Ta sekcja opisuje konwersję plików Excel do PDF przy jednoczesnym podstawianiu czcionek. Zapewnia to spójność wizualną, gdy oryginalne czcionki są niedostępne.
Krok 1: Określ ścieżki wejścia i wyjścia
Określ ścieżkę do pliku Excel wejściowego oraz żądaną ścieżkę wyjściową PDF:
String inputDocument = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
String convertedFile = "YOUR_OUTPUT_DIRECTORY/ConvertSpreadsheetBySpecifyingFontsubstitution.pdf";
Krok 2: Skonfiguruj opcje ładowania z podstawianiem czcionek
Utwórz obiekt SpreadsheetLoadOptions, aby skonfigurować ustawienia konwersji, określając podstawienia czcionek:
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;
List<FontSubstitute> fontSubstitutes = new ArrayList<>();
fontSubstitutes.add(FontSubstitute.create("Tahoma", "Arial")); // Substitute Tahoma with Arial
fontSubstitutes.add(FontSubstitute.create("Times New Roman", "Arial")); // Substitute Times New Roman with Arial
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setFontSubstitutes(fontSubstitutes);
Krok 3: Skonfiguruj domyślną czcionkę i One Page per Sheet
Ustaw domyślną czcionkę jako zapasową i włącz opcję one page per sheet, aby zapewnić, że każdy arkusz zajmuje jedną stronę PDF:
loadOptions.setDefaultFont("resources/fonts/Helvetica.ttf");
loadOptions.setOnePagePerSheet(true);
Wskazówka: Włączenie
setOnePagePerSheet(true)jest niezbędne, gdy potrzebujesz przewidywalnej paginacji w raportach lub fakturach.
Krok 4: Zainicjalizuj Converter z opcjami ładowania
Przekaż opcje ładowania do obiektu Converter:
Converter converter = new Converter(inputDocument, () -> loadOptions);
Krok 5: Zdefiniuj opcje konwersji PDF i wykonaj konwersję
Określ format konwersji i uruchom proces:
PdfConvertOptions options = new PdfConvertOptions();
converter.convert(convertedFile, options);
Porady dotyczące rozwiązywania problemów
- Missing Fonts: Upewnij się, że czcionki zastępcze są zainstalowane w systemie lub dołączone do aplikacji.
- Incorrect Paths: Sprawdź ścieżki plików dla dokumentów wejściowych i wyjściowych; ścieżki względne powinny być rozwiązywane względem katalogu głównego projektu.
Praktyczne zastosowania
Podstawianie czcionek i konwersja jedna strona na arkusz są przydatne w wielu rzeczywistych scenariuszach:
- Business Reporting: Spójna prezentacja raportów finansowych na różnych platformach.
- Legal Documentation: Zachowanie wyglądu w udostępnionych PDF-ach dla umów.
- Academic Publishing: Standaryzacja czcionek w artykułach i prezentacjach.
- Marketing Materials: Jednolite broszury lub newslettery generowane z arkuszy kalkulacyjnych.
- Collaboration Tools: Usprawnienie systemów zarządzania dokumentami, które opierają się na podglądach PDF.
Rozważania dotyczące wydajności
Aby zoptymalizować wydajność przy konwertowaniu dużych skoroszytów:
- Używaj strumieniowego I/O, aby zmniejszyć zużycie pamięci.
- Dostosuj rozmiar sterty JVM (
-Xmx) w zależności od wielkości dokumentu. - Ponownie używaj pojedynczej instancji
Converterdo konwersji wsadowych, gdy to możliwe.
Najczęściej zadawane pytania
Q: Do czego służy GroupDocs.Conversion Java?
A: Jest to biblioteka do konwertowania różnych formatów dokumentów — w tym Excel do PDF — z możliwością dostosowywania ustawień, takich jak podstawianie czcionek i opcja jedna strona na arkusz.
Q: Czy mogę używać GroupDocs.Conversion bez zakupu licencji?
A: Tak, darmowa wersja próbna lub tymczasowa licencja pozwala przetestować wszystkie funkcje przed podjęciem decyzji o zakupie licencji płatnej.
Q: Jak radzić sobie z brakującymi czcionkami podczas konwersji?
A: Zdefiniuj zamienniki przy użyciu obiektów FontSubstitute w SpreadsheetLoadOptions; biblioteka automatycznie zastąpi niedostępne czcionki.
Q: Jakie są najlepsze praktyki optymalizacji wydajności Javy z GroupDocs.Conversion?
A: Efektywne zarządzanie pamięcią, właściwa konfiguracja JVM oraz przetwarzanie plików w strumieniach pomagają utrzymać wysoką wydajność.
Q: Czy opcja „one page per sheet” wpływa na renderowanie wykresów?
A: Nie, wykresy są skalowane, aby pasowały do jednej strony, zachowując jednocześnie wierność wizualną.
Podsumowanie
Masz teraz kompletną, gotową do produkcji metodę konwertowania Excel do PDF w Javie z jedną stroną na arkusz i automatycznym podstawianiem czcionek przy użyciu GroupDocs.Conversion. To podejście zapewnia spójną typografię, przewidywalną paginację oraz płynną integrację z automatycznymi pipeline’ami dokumentów.
Kolejne kroki
- Eksperymentuj z dodatkowymi
PdfConvertOptions(np. zgodność z PDF/A). - Połącz to rozwiązanie z GroupDocs.Annotation w celu edycji po konwersji.
- Zbadaj inne formaty źródłowe (Word, PowerPoint) używając tego samego wzorca.
Ostatnia aktualizacja: 2026-01-15
Testowano z: GroupDocs.Conversion 25.2
Autor: GroupDocs