Konwertuj Markdown do PDF bez utraty dokumentu
Markdown jest tworzony z myślą o przewijanym ekranie. PDF ma strony, a strony mają krawędzie. Większość konwerterów ignoruje tę różnicę: przekazuje plik do przeglądarki, wybiera drukuj i odsyła to, co się pojawi. Dlatego tabela traci ostatnie cztery kolumny, nagłówek ląduje samotnie na dole strony, a logo na górze README pojawia się jako linia surowego HTML wydrukowanego jako tekst. Ten konwerter najpierw układa dokument pod papier, a potem informuje, co musiał zrobić, by to osiągnąć.
Tabele, które mieszczą się na stronie
Tabela w Markdown nie zawiera szerokości kolumn. Składnia nie przewiduje na nie miejsca, więc konwerter, który przekazuje tabelę bezpośrednio do przeglądarki, liczy na to, że się zmieści. Tutaj każda tabela jest mierzona przed narysowaniem i dopasowywana do wybranego przez Ciebie papieru. Tabela ścieżek plików o czternastu kolumnach nadal mieści się w marginesach — długie wartości są zawijane, zamiast wychodzić poza krawędź, a wynik informuje, że musiał tak zrobić.
Cichsza część problemu pojawia się na drugiej stronie. Długa tabela zwykle zostawia wiersz nagłówka na pierwszej stronie, przez co czytelnik widzi siatkę nieopisanych liczb. Tutaj nagłówek powtarza się na każdej stronie, na której pojawia się tabela, a żaden wiersz nie zostaje przecięty przez podział strony.
Kod, który nie wychodzi poza margines
Kod w blokach zachowuje podświetlenie składni i etykietę języka. Długie linie są zawijane w taki sposób, by było widać, że zostały zawinięte, zamiast być ucięte na końcu strony. PDF nie ma paska przewijania, więc linia, która nie jest zawinięta, traci prawą część. Bloki wcięte, ogrodzenia bez określonego języka i kod w linii również są zachowane zgodnie z oryginałem.
Obrazki w Twoim README
Logo i rząd odznak buildów prawie nigdy nie są pisane w Markdown. Nie da się wyśrodkować obrazka, więc pliki README sięgają po surowy HTML. Konwerter, który odmawia renderowania HTML, zwykle go ucieka, zamiast pomijać, przez co dokument otwiera się ekranem pełnym tagów obrazków wydrukowanych jako tekst. Tutaj znacznik HTML jest usuwany, a obrazki i tekst w nim zawarte są zachowane, więc góra dokumentu wygląda jak powinna.
Obrazy są pobierane i osadzane w pliku, a nie tylko linkowane, więc PDF działa offline i będzie działał za rok. Jeśli nie uda się pobrać jakiegoś obrazka, wynik to zlicza i informuje o tym, zamiast po cichu zostawiać puste miejsce.
Twoje nagłówki stają się nawigacją
Każdy PDF zawiera drzewo zakładek zbudowane z Twoich nagłówków, więc przez długi dokument można przechodzić z paska bocznego, zamiast przewijać. Jeśli poprosisz o stronę spisu treści, otrzymasz klikalną, na dowolnej głębokości nagłówków. Pojedynczy nagłówek na samej górze jest traktowany jako tytuł dokumentu i pomijany na liście — tak jak tytuł w książce, a nie w rozdziale.
Przypisy pozostają przypisami, z podniesionym znacznikiem i linkiem powrotnym do linii, którą czytałeś. Listy zadań zachowują swoje pola wyboru, zaznaczone i niezaznaczone. Wyróżnienia typu uwaga, ostrzeżenie i wskazówka zachowują swój kolorowy pasek. Front matter na początku pliku jest traktowany jako metadane i nie pojawia się na stronie. Listy definicji, przekreślenia, zagnieżdżone cytaty i trzy poziomy zagnieżdżonych list są renderowane zgodnie z oryginałem.
Informuje, czego nie udało się zrobić
Każda konwersja wraca z krótkim podsumowaniem: ile stron, w jakim kierunku biegnie tekst, ile tabel, ile bloków kodu, ile obrazów zostało osadzonych i ile nie udało się pobrać. Jeśli w czcionce brakowało znaku, zostanie on wymieniony. Jeśli poprosisz o spis treści, a dokument nie ma nagłówków do umieszczenia, zostaniesz o tym poinformowany, zamiast dostać plik z pustą stroną na początku. Konwerter, który ukrywa swoje błędy, sprawia, że ludzie przestają mu ufać.
Pisma niełacińskie
Czcionki są osadzane w PDF, więc dokument otwiera się tak samo na każdym komputerze, nawet jeśli nie ma tych czcionek. Tekst od prawej do lewej jest oceniany blok po bloku, a nie dla całego pliku, co ma znaczenie, bo dokumenty techniczne w takim piśmie często zawierają połowę znaków łacińskich, pełne ścieżek plików i nazw klas, a mimo to czyta się je od prawej do lewej. Kod w blokach jest wyłączony z tej decyzji i zawsze ustawiany od lewej do prawej, a reszta układu jest odpowiednio odwracana: punktorzy, paski cytatów i kolumny tabeli zmieniają stronę. Tam, gdzie pismo nie ma kursywy, wyróżnienie jest realizowane przez pogrubienie, a nie przez pochylenie liter, które nigdy nie były projektowane jako pochylone.
Czego nie robi
LaTeX nie jest renderowany. Blok między znakami dolara drukowany jest jako tekst. Mermaid także nie jest rysowany: blok oznaczony jako mermaid pojawia się jako blok kodu z etykietą. Chiński, japoński i koreański nie są obsługiwane przez czcionki narzędzia, więc znaki z tych alfabetów są zgłaszane jako brakujące, a nie zgadywane. To są ograniczenia, nie wady, i są tu opisane, by nikt nie odkrył ich dopiero po przesłaniu pliku.
Część praktyczna
Prześlij plik z urządzenia, z Google Drive lub wklej link do pliku. Pliki Markdown są akceptowane pod dowolnym ze swoich rozszerzeń, podobnie jak zwykły tekst. Papier może być A3, A4, A5, Letter, Legal lub Tabloid, w orientacji pionowej lub poziomej, z wąskimi, normalnymi lub szerokimi marginesami. Numery stron i podświetlanie składni są włączone, chyba że je wyłączysz. Wyślij jeden plik, a otrzymasz PDF; wyślij kilka, a dostaniesz ZIP lub jeden scalony PDF z ciągłą numeracją stron, jeśli tak wybierzesz. Tekst pozostaje prawdziwym tekstem, więc można go zaznaczać, przeszukiwać i kopiować, zamiast być spłaszczonym do obrazu słów.
Co otrzymujesz
- Tabele mieszczące się w marginesach, z powtarzanym wierszem nagłówka na każdej stronie
- Kod z podświetleniem składni, z zawijanymi długimi liniami zamiast uciętych
- Obrazy osadzone w pliku, także te zapisane w surowym HTML
- Drzewo zakładek z Twoich nagłówków oraz klikalny spis treści, jeśli tego chcesz
- Czcionki osadzone w PDF, więc plik wygląda tak samo na każdym urządzeniu
- Pisemne podsumowanie wszystkiego, czego konwerter nie mógł zrobić, w tym brakujących znaków i obrazów
Co dalej?
Pracujesz zamiast tego na pliku Word? Word do PDF przechodzi tę samą drogę na papier. Połącz wynik z resztą raportu za pomocą Scal PDF. A potem zmniejsz rozmiar pliku przed wysłaniem dzięki Kompresuj PDF.