Chcę móc przekonwertować plik PDF do pliku HTML za pośrednictwem PHP, ale mam pewne problemy.Konwersja plików PDF na HTML w PHP?
Znalazłem podstawowy sposób, aby to zrobić przy użyciu Saaspose, który pozwala konwertować pliki PDF na HTML. Są jednak pewne problemy, takie jak użycie SVG, obrazów, pozycjonowania, czcionek itp.
Potrzebna mi tylko możliwość przechwycenia tekstu z pliku PHP i wszelkich związanych z nim obrazów, a następnie wyświetlić go w formacie liniowym, w przeciwieństwie do formatowania z pozycjonowaniem absolutnym.
Co mam na myśli to, że jeśli PDF wygląda następująco:
chciałbym, aby przekształcić go w pliku HTML pojedynczy projekt kolumny. Gdyby były obrazy, chciałbym, żeby też zostały zwrócone.
Czy to możliwe w PHP? Wiem, że mogę po prostu pobrać tekst z pliku PDF, ale co z chwytaniem obrazów?
Innym problemem jest to, że chcę, aby wszystko było wstawiane, ponieważ jest podawane klientowi w jednym pliku. Obecnie, można zrobić to z mojej konfiguracji przez jakiegoś kodu:
for ($i = 0; $i < $object_number; $i++) {
$object = $html->find("object")->find("embed")->eq($i);
$embed = file_get_contents("Output/OutputHtml/" . $object->attr("src"));
array_push($converted_obj, $embed);
array_push($original_obj, $object);
}
for ($i = 0; $i < $object_number; $i++){
pq($original_obj[$i])->replaceWith($converted_obj[$i]);
}
Który chwyta wszystkie SVG
plików i wyświetla je inline. Obrazy byłyby łatwiejsze, ponieważ mógłbym użyć base64
.
To zadziałało dla mnie i bardzo dziękuję. Ale jak nadać zakresowi strony tutaj, aby dokonać konwersji? Próbowałem dodać ** passthru ("pdftohtml $ source_pdf 3-5 $ output_folder/new_file_name", $ b) ** i nie zadziałało. Czy możesz powiedzieć? – Hydrogirl
może to konwertuje pełny plik PDF i musisz dodać polecenie phte delta (po wykonaniu skryptu), aby usunąć wszystkie niechciane strony ... w jakiś sposób podobna do tej koncepcji: '$ unwanted_pages = array (5,6,7,8); foreach ($ unwanted_pages jako $ eachPageIndex) {unlink ("nazwa_pliku". $ EachPageIndex);} ' –
Istnieje argumentacja dotycząca skryptu pdf, który określa strony: http://linux.die.net/man/1/pdftohtml $ a = passthru ("pdftohtml -f pierwsza strona -l ostatnia strona $ źródło_pdf $ katalog_wyjściowy/nazwa_pliku nowego", $ b); Sprawdź również opcje kodowania – mameluc