Libre Office Parametreleri ile convert

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
true_false
Üye
Mesajlar: 397
Kayıt: 22 Tem 2004 01:03
Konum: sıkıntı çekmişlere yakın bi yerden

Libre Office Parametreleri ile convert

Mesaj gönderen true_false » 20 Mar 2015 11:07

Merhaba hızlı bir şekilde proje içerisinde dosya çevirim işlemi gerekiyordu. bunu daha hızlı yapabilmek için bi araştırma yaptım ve bana çok yardımı oldu sizinde bilgisi olsun istedim.
Öncelikle Libre Office open Office alt yapısı kullanan bir ofis programı istediğiniz gibi kullanıp dağıtabilirsiniz. Bu yazdıklarım Libre ofisin kurulu olduğu yerden soffice.exe dosyasını göndereceğiniz parametreler ile hızlı convertler yapabilmenizden bahsedeceğim.

örneğin bir doc belge var onu pdf'e çevireceğiz.
komut satırını açıyoruz.

Kod: Tümünü seç

c:\cevirecegimklasor>soffice --headless --convert-to pdf deneme.doc
convert işlemi Libreoffice'nin desteklediği her türlü dosya tipinde yapabilirsiniz. Ben pdf,Html,htm dosya tiplerini kullandım ve iyi sonuçlar aldım.
doc belgenizin cevirecegim klasor altında olmasına dikkat edin.
daha detaylı bilgiye buradan ulaşabilirsiniz.
type
Tform1 = class(Tform)

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4717
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Libre Office Parametreleri ile convert

Mesaj gönderen mrmarman » 20 Mar 2015 11:27

Bilmediğim için soruyorum, google ile baktım soruma ilişkin yorum bulamadım.

soffice binary dosyasını libre kurulumundan soyutlayıp hangi yan başka dosyalara ihtiyaç duyduğunu test ettiniz mi? Şunun için soruyorum, exe tek başına yeterli ise veya küçük olmak şartıyla üç beş dosya dahi yeterli desteği veriyorsa projemize gömerek kullanabilir miyiz diye bir soru aklıma geldi. Tabi anladınız beni, libre kurulu olmayan bir bilgisayarda kullanmak için.

normalde lazım olduğunda oleautomation ile çözüyorduk. Bu güzel bir alternatif olabilir.
Resim Resim

true_false
Üye
Mesajlar: 397
Kayıt: 22 Tem 2004 01:03
Konum: sıkıntı çekmişlere yakın bi yerden

Re: Libre Office Parametreleri ile convert

Mesaj gönderen true_false » 20 Mar 2015 11:39

@mrmarman bahsettiğiniz gibi olsa süper olurdu ama malesef libreofisin kurulu olması yada portable versiyonunun tam çalışır olması gerekiyor. ben yukarıda yazdığım kodu program içerisinde komut satırına yazdırıyorum.
Umarım anlatabilmişimdir.
type
Tform1 = class(Tform)

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4717
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Libre Office Parametreleri ile convert

Mesaj gönderen mrmarman » 20 Mar 2015 11:43

ShellApi fonksiyonlarıyla yani ShellExecute veya WinExec ile o iş kolay. Anladım yani.

Zaten projeye gömerken dediysem resource olatak koyup lazım olduğunda temp dizinine açıp kullanıp silmek üzerineydi.

Teşekkürler.
Resim Resim

true_false
Üye
Mesajlar: 397
Kayıt: 22 Tem 2004 01:03
Konum: sıkıntı çekmişlere yakın bi yerden

Re: Libre Office Parametreleri ile convert

Mesaj gönderen true_false » 20 Mar 2015 11:56

resource olarak gömmek biraz sıkıntı yaratabilir portable versiyonu 500 mb civarı. ben setupa gömüp libre kurduruyorum onun için çok sıkıntı çekmiyorum.
type
Tform1 = class(Tform)

true_false
Üye
Mesajlar: 397
Kayıt: 22 Tem 2004 01:03
Konum: sıkıntı çekmişlere yakın bi yerden

Re: Libre Office Parametreleri ile convert

Mesaj gönderen true_false » 20 Mar 2015 12:00

tabi libreyi sadece convert için kullanmıyorum bir çok raporlama işlemini libre üzerinden yaptırıyorum. SDK'sını kullanarak. 500 mb sadece convert işlemi için kullandığım ortaya çıkmasın. :)
type
Tform1 = class(Tform)

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4717
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Libre Office Parametreleri ile convert

Mesaj gönderen mrmarman » 20 Mar 2015 12:07

Zaten cümle içerisinde kullandığım libreden soyutlayıp demekle onu kastettim. :lol: Hani boyutu küçük belki üç beş yan dosya da falan dedim... ZLIB unitinden yardım alıp sıkıştırma imkanımız da oluyor.

Sadece exe'yi kopyalayıp denediğini teyid ediyor musun. Verdiği hataları sırayla eksik dll vb. dosyaları tamamlayıp ne kadarına ihtiyaç duyuyor olduğunu test ettin yani.
Resim Resim

Cevapla