Znalazłem kilka programów typu open source / freeware, które pozwalają konwertować pliki doc na pliki pdf, ale wszystkie są aplikacjami / sterownikami drukarki, bez dołączonego SDK.
Znalazłem kilka programów, które mają zestaw SDK umożliwiający konwersję plików doc na pliki pdf, ale wszystkie są prawnie zastrzeżone, 2000 USD za licencję lub inne.
Czy ktoś wie o czystym, niedrogim (najlepiej darmowym) programowym rozwiązaniu mojego problemu za pomocą C # lub VB.NET?
Dzięki!
pandoc manual.docx -o manual.pdf
Odpowiedzi:
Użyj pętli foreach zamiast pętli for - to rozwiązało mój problem.
Oto modyfikacja programu, który działał dla mnie. Używa programu Word 2007 z zainstalowanym dodatkiem Zapisz jako PDF . Przeszukuje katalog w poszukiwaniu plików .doc, otwiera je w programie Word, a następnie zapisuje jako plik PDF. Pamiętaj, że musisz dodać odwołanie do Microsoft.Office.Interop.Word do rozwiązania.
źródło
Podsumowując dla użytkowników vb.net, darmowa opcja (musi mieć zainstalowany pakiet Office):
Pobieranie zestawów Microsoft Office:
pia na biuro 2007
Dodaj odwołanie do Microsoft.Office.Interop.Word.Application
Dodaj instrukcję using lub import (vb.net) do Microsoft.Office.Interop.Word.Application
Przykład VB.NET:
źródło
PDFCreator ma składnik COM, który można wywołać z .NET lub VBScript (próbki zawarte w pliku do pobrania).
Ale wydaje mi się, że drukarka jest właśnie tym, czego potrzebujesz - po prostu połącz ją z automatyzacją Worda i powinieneś już iść.
źródło
Chciałem tylko dodać, że korzystałem z bibliotek Microsoft.Interop, w szczególności funkcji ExportAsFixedFormat, której nie widziałem w tym wątku.
źródło
app.Visible = false;
i dodanie wywołaniaapp.Quit();
w ostatnim bloku.Jest cała dyskusja na temat bibliotek do konwersji Worda na PDF na forach dyskusyjnych Joela . Kilka sugestii z wątku:
źródło
Przeszedłem przez program Word do formatu PDF, gdy ktoś rzucił mi 10000 plików słownych do konwersji na format PDF. Teraz zrobiłem to w C # i użyłem Word Interop, ale działało to powoli i zawieszało się, jeśli w ogóle próbowałem używać komputera ... bardzo frustrujące.
To doprowadziło mnie do odkrycia, że mogę zrzucić interopsy i ich powolność ..... w programie Excel, którego używam (EPPLUS), a potem odkryłem, że możesz uzyskać bezpłatne narzędzie o nazwie Spire, które pozwala na konwersję do formatu PDF ... z ograniczeniami!
http://www.e-iceblue.com/Introduce/free-doc-component.html#.VtAg4PmLRhE
źródło
Łatwy kod i rozwiązanie
Microsoft.Office.Interop.Word
do konwersji WORD w PDFDodaj tę procedurę, aby zwolnić pamięć:
źródło
Wydaje się, że są to niektóre istotne informacje:
Konwertowanie dokumentów MS Word do formatu PDF w ASP.NET
Ponadto, ponieważ Office 2007 ma funkcję publikowania w formacie PDF, myślę, że można użyć automatyzacji biura, aby otworzyć plik * .DOC w programie Word 2007 i zapisać jako PDF. Nie przepadam za automatyką biurową, ponieważ jest powolna i podatna na powieszenie, ale po prostu ją tam rzucam ...
źródło
Wydaje się, że dodatek Microsoft PDF dla programu Word jest najlepszym rozwiązaniem na razie, ale należy wziąć pod uwagę, że nie konwertuje on poprawnie wszystkich dokumentów Word na format pdf, aw niektórych przypadkach widać ogromną różnicę między słowem a formatem wyjściowym pdf. Niestety nie mogłem znaleźć interfejsu API, który poprawnie przekonwertowałby wszystkie dokumenty tekstowe. Jedynym rozwiązaniem, które zapewniłem, że konwersja była w 100% poprawna, było przekonwertowanie dokumentów za pomocą sterownika drukarki. Minusem jest to, że dokumenty są kolejkowane i konwertowane jeden po drugim, ale możesz być pewien, że wynikowy pdf jest dokładnie taki sam jak układ dokumentu Word. Osobiście wolałem używać UDC (Universal Document Converter) i zainstalowałem Foxit Reader (darmowa wersja) na serwerze, a następnie wydrukowałem dokumenty, uruchamiając „Proces” i ustawiając jego właściwość Czasownik na „drukuj”.
źródło