Yorumları: 660
Konuları: 36
Kayıt Tarihi: 11-11-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 3.177 Uzman
13-07-2022, Saat: 10:58
(Son Düzenleme: 13-07-2022, Saat: 12:54, Düzenleyen: hi_selamlar.)
Merhabalar,
Elimizde 200-300 civarı PDF dosyalar var. Bunlar A4 olarak mevcut.
Amacımız bunları bir A4 sayfaya yatay olarak (A5+A5) iki nüsha şeklinde basmak istiyoruz.
Bir kaç deneme farklı programlar ile denedik ama tam olarak istediğimize alamadık.
Acaba farklı bilgi, öneri veya tecrübesi olan arkadaşlar yardımcı olabilirler ise sevinirim.
Teşekkürler.
Örnek ;
Amaç, bilginin de/aklın da zekat'ını vermek.
Yorumları: 206
Konuları: 15
Kayıt Tarihi: 11-10-2016
Rep Puanı: 914 Acemi
Hocam tek seferlik bir işse bırakacağım link işinizi görebilir(mi?) Değilse, yani yazdığınız bir uygulamanın bunu otomatik yapması gerekiyorsa, Delphi tarafında bilemiyorum ama Python ve PyPDF2 kütüphanesi çözüm yollarından biri olabilir diye düşünüyorum.
https://superuser.com/questions/235074/h...327#235327
Yorumları: 925
Konuları: 42
Kayıt Tarihi: 24-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 2.637 Uzman
Elinizde 300 sayfalık tek bir PDF mi var? Her PDF tek sayfa mı? Yoksa farklı sayfalarda çok sayıda PDF dosyası mı?
Ağlarsa kablosuz ağlar, gerisi yerel ağlar...
Yorumları: 206
Konuları: 15
Kayıt Tarihi: 11-10-2016
Rep Puanı: 914 Acemi
@ engerex benim anladığım, elinde tek sayfadan oluşan yüzlerce pdf var (adisyon, anket vs gibi), her bir pdf'i yatay pozisyonda yan yana gelecek şekilde ayrı ayrı yazdırmak istiyor, yani dikeyde yazdırılan tek sayfa yerine, yatayda yine tek sayfada 2 nüsha olsun istiyor... olarak anladım yanlış anlamadı isem.
Yorumları: 519
Konuları: 12
Kayıt Tarihi: 24-03-2017
Rep Puanı: 3.080 Uzman
13-07-2022, Saat: 20:23
(Son Düzenleme: 13-07-2022, Saat: 20:25, Düzenleyen: frmman.
Sebep: Resim linki
)
Sanal bir yazıcı olan Fineprint ile sanırım istediğinizi yapabilirsiniz, A4 ü, 1,2,4,8 e bölme, kitap basma vb. yetenekleri var.
https://fineprint.com/fp/
200 adet tekli pdf ise, her bir pdfi (pdf görüntüleyici veya yazdığınız bir uygulama ile) sanal yazıcı olarak kurulan, fine printe gönderirsiniz. Fine print gelen baskı isteklerini biriktirir, işlem sonunda sayfayı ikiye bölmeyi seçip A5 A5 şeklinde gerçek yazıcıyı seçip çıktı alabilir, pdf yazıcıyı seçip pdf e çevirebilir veya popüler resim formatlarında kayıt edebilirsiniz.
Yorumları: 206
Konuları: 15
Kayıt Tarihi: 11-10-2016
Rep Puanı: 914 Acemi
Sizin için hazırladığım python betiği, çalıştırıldığı klasördeki pdf'leri yan yana birleştirerek aynı klasöre yeni bir pdf dosyası olarak kaydediyor. Örneğin aPDF.pdf dosyası için, yan yana 2 tane aPDF içeriğini birleştirip _aPDF.pdf adı ile aynı klasöre kaydediyor. (PDF dosya sayısı kadar dönen bir döngü var olduğunu fark ettiğiniz için, tek çalıştırmada bütün dosyalarınızı isteğiniz olan (yada benim anladığım) formata sokabileceğinizi söylememe gerek yok  )
import glob
from PyPDF3 import PdfFileWriter, PdfFileReader
from PyPDF3.pdf import PageObject
'''pdf_sayisi = (len(glob.glob("*.pdf")))
print("PDF Sayısı :", pdf_sayisi)'''
pdf_filenames = []
for x in range(len(glob.glob("*.pdf"))):
pdf_filenames.append(glob.glob("*.pdf")[x])
for x in range(len(pdf_filenames)):
pdf_filename = [pdf_filenames[x], pdf_filenames[x]]
input1 = PdfFileReader(open(pdf_filename[0], "rb"), strict=False)
input2 = PdfFileReader(open(pdf_filename[1], "rb"), strict=False)
page1 = input1.getPage(0)
page2 = input2.getPage(0)
total_width = page1.mediaBox.upperRight[0] + page2.mediaBox.upperRight[0]
total_height = max([page1.mediaBox.upperRight[1], page2.mediaBox.upperRight[1]])
new_page = PageObject.createBlankPage(None, total_width, total_height)
new_page.mergePage(page1)
new_page.mergeTranslatedPage(page2, page1.mediaBox.upperRight[0], 0)
output = PdfFileWriter()
output.addPage(new_page)
output.write(open("_"+pdf_filename[0], "wb"))
Yorumları: 660
Konuları: 36
Kayıt Tarihi: 11-11-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 3.177 Uzman
Merhabalar,
Herkese cevaplarından dolayı teşekkür ederim.
Bir kaç bilgi eksik paylaşmışım, kusura bakmayın lütfen.
Bu işlemin özeti e-fatura çıktılarının a4 değilde iki nüsha olacak şekilde yan yana A5+A5=A4 olarak basılmasını için.
Kağıt tasarrufu.
1) Her biri tek paşına bir dosya. (PDF a1.pdf, a2.pdf, .... n)
2) Sürekliliği olan bir iş. Her gün 300 det tek tek PDF dosya üretiliyor.
3) Delphi ile yapılması da gerekmiyor. Yardımcı hazır uygulamalar da olur.
Şimdiden tekrar teşekkür ederim paylaşımlarınız için.
Amaç, bilginin de/aklın da zekat'ını vermek.
Yorumları: 519
Konuları: 12
Kayıt Tarihi: 24-03-2017
Rep Puanı: 3.080 Uzman
(14-07-2022, Saat: 08:42)hi_selamlar Adlı Kullanıcıdan Alıntı: Merhabalar,
Herkese cevaplarından dolayı teşekkür ederim.
Bir kaç bilgi eksik paylaşmışım, kusura bakmayın lütfen.
Bu işlemin özeti e-fatura çıktılarının a4 değilde iki nüsha olacak şekilde yan yana A5+A5=A4 olarak basılmasını için.
Kağıt tasarrufu.
1) Her biri tek paşına bir dosya. (PDF a1.pdf, a2.pdf, .... n)
2) Sürekliliği olan bir iş. Her gün 300 det tek tek PDF dosya üretiliyor.
3) Delphi ile yapılması da gerekmiyor. Yardımcı hazır uygulamalar da olur.
Şimdiden tekrar teşekkür ederim paylaşımlarınız için.
Alternatif çözümlere açık oluğunuz için fine printe göz atın. Aşağıdaki resimde bu durumu göstermeye çalıştım. "Repeat pages" seçili ise bir a4 kaça bölünürse o kadar kopya ile doldurulur. Siz bir a4 e 2,4 veya 8 kopyada sığdırabilirsiniz.
Bastığınız doküman birden fazla sayfa olursa da resimdeki gibi tekrarlı şekilde devam eder.
Yorumları: 660
Konuları: 36
Kayıt Tarihi: 11-11-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 3.177 Uzman
14-07-2022, Saat: 11:04
(Son Düzenleme: 15-07-2022, Saat: 09:48, Düzenleyen: hi_selamlar.)
(14-07-2022, Saat: 09:26)frmman Adlı Kullanıcıdan Alıntı: (14-07-2022, Saat: 08:42)hi_selamlar Adlı Kullanıcıdan Alıntı: Merhabalar,
Herkese cevaplarından dolayı teşekkür ederim.
Bir kaç bilgi eksik paylaşmışım, kusura bakmayın lütfen.
Bu işlemin özeti e-fatura çıktılarının a4 değilde iki nüsha olacak şekilde yan yana A5+A5=A4 olarak basılmasını için.
Kağıt tasarrufu.
1) Her biri tek paşına bir dosya. (PDF a1.pdf, a2.pdf, .... n)
2) Sürekliliği olan bir iş. Her gün 300 det tek tek PDF dosya üretiliyor.
3) Delphi ile yapılması da gerekmiyor. Yardımcı hazır uygulamalar da olur.
Şimdiden tekrar teşekkür ederim paylaşımlarınız için.
Alternatif çözümlere açık oluğunuz için fine printe göz atın. Aşağıdaki resimde bu durumu göstermeye çalıştım. "Repeat pages" seçili ise bir a4 kaça bölünürse o kadar kopya ile doldurulur. Siz bir a4 e 2,4 veya 8 kopyada sığdırabilirsiniz.
Bastığınız doküman birden fazla sayfa olursa da resimdeki gibi tekrarlı şekilde devam eder.

Merhabalar,
Paylaşım için teşekkürler. Ürünü deneyip tekrar bilgi vereceğim.
Tekrar teşekkür ederim.
---------------------------------------------------------------------------
Teşekkürler. İstediğimiz gibi oldu.
Amaç, bilginin de/aklın da zekat'ını vermek.
|