PDF belgenin toplam sayfa sayısı nasıl bulunur??? [Çözüldü]
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
PDF belgenin toplam sayfa sayısı nasıl bulunur??? [Çözüldü]
Arkadaşlar merhaba;
Internette çok araştırdım fakat sonuç alamadım.
PDF belgenin toplam sayfa sayısını nasıl alabilirim?
Delphi 7 kullanıyorum.
Internette çok araştırdım fakat sonuç alamadım.
PDF belgenin toplam sayfa sayısını nasıl alabilirim?
Delphi 7 kullanıyorum.
En son underwater tarafından 04 Eki 2016 05:10 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Merhaba,underwater yazdı:Arkadaşlar merhaba;
Internette çok araştırdım fakat sonuç alamadım.
PDF belgenin toplam sayfa sayısını nasıl alabilirim?
Delphi 7 kullanıyorum.
Delphi ile PDF dosyalarını okumak için kullanılabilecek birçok bileşen vardır. Bunlar ek dosya gerektirmeyen bileşenler olabilir. Veya Adobe firmasının ActiveX bileşenini kullanıyor olabilirsiniz. Ayrıca siz bunlardan birini kullanmayıp kendiniz kod yazarak ta PDF dosyasını okuyor olabilirsiniz. Bu noktada PDF dosyasını nasıl okuduğunuzu biz bilmiyoruz. Eğer biraz daha detaylı bilgi verebilirseniz ve mümkünse kod paylaşabilirseniz daha fazla yardımcı olmamız mümkün olabilir.
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Öncellikle cevap için teşekkür ederim.
Aslında pdf i direkt okumuyorum.Kullandığım özel bir bileşen yok.
PDF belgesini SQL server üzerindeki image tipli alana kaydediyorum.
Kaydederken sayfa sayısınıda bulmam gerekiyor.
Adobe AcroPDF bileşenini Delphi 7 ye import ettim fakat bu bileşenle sayfa sayısına ulaşamadım. Yada ben berceremedim.
Aslında pdf i direkt okumuyorum.Kullandığım özel bir bileşen yok.
PDF belgesini SQL server üzerindeki image tipli alana kaydediyorum.
Kaydederken sayfa sayısınıda bulmam gerekiyor.
Adobe AcroPDF bileşenini Delphi 7 ye import ettim fakat bu bileşenle sayfa sayısına ulaşamadım. Yada ben berceremedim.
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Aşağıda bir kaynak mevcut.
http://www.angusj.com/delphitips/pdfpagecount.php
http://www.angusj.com/delphitips/pdfpagecount.php
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
bunu bende gördüm fakat kodu kullanamadım.
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Merhaba,
öncelikle bu işlem için elindeki Acrobat Reader sürümünün Tam sürüm olması lazım aksi takdirde işe yaramıyor malesef.
öncelikle bu işlem için elindeki Acrobat Reader sürümünün Tam sürüm olması lazım aksi takdirde işe yaramıyor malesef.
Kod: Tümünü seç
Uses
ComObj, ActiveX;
.
.
private
function IsOLEObjectInstalled(Name: String): Boolean;
.
.
function TForm1.IsOLEObjectInstalled(Name: String): Boolean;
var
ClassID: TCLSID;
Rez: HRESULT;
begin
Rez := CLSIDFromProgID(PWideChar(WideString(Name)), ClassID);
Result := (Rez = S_OK);
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
PDF_Dosya: OleVariant;
SayfaSayisi: Integer;
begin
if OpenDialog1.Execute then
Begin
Try if IsOLEObjectInstalled('AcroExch.PDDoc') then
PDF_Dosya := CreateOleObject('AcroExch.PDDoc');
except
ShowMessage('AcroExch.PDDoc Bulunamadı!')
end;
Try
PDF_Dosya.Open(OpenDialog1.FileName);
Begin
SayfaSayisi :=PDF_Dosya.GetNumPages;
ShowMessage('Sayfa Sayısı : '+IntToStr(SayfaSayisi));
End;
except
end;
End;
end;
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Tam sürüm clientlarda problem olur.
Yinede teşekkür ederim.
AcroPDF i inceledim. Herşey var pagecount yok .
Aksilik işte
Yinede teşekkür ederim.
AcroPDF i inceledim. Herşey var pagecount yok .
Aksilik işte
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
http://www.angusj.com/delphitips/pdfpagecount.php
adresinde pdfpagecount.dll dosyası paylaşılmış.
Bunu Delphi 7 ile nasıl kullanabilirim acaba?
import activex ile olmadı.
adresinde pdfpagecount.dll dosyası paylaşılmış.
Bunu Delphi 7 ile nasıl kullanabilirim acaba?
import activex ile olmadı.
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Binary moddda arama yaparak sayfa sayısını bulabilirsiniz. Çok sağlıklı olmayabilir, en azından pdf'i açmak gerekmiyor.
Regex:
Teknik bilgi:
Pdf içinde sayfa niteleyicileri aşağıdaki gibi olabiliyor:
Regex:
Kod: Tümünü seç
/Type\s*/Page($|[^s])
Pdf içinde sayfa niteleyicileri aşağıdaki gibi olabiliyor:
Kod: Tümünü seç
/Type/Page
/Type /Page
/Type/Page/
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
Merhaba,underwater yazdı:http://www.angusj.com/delphitips/pdfpagecount.php
adresinde pdfpagecount.dll dosyası paylaşılmış.
Bunu Delphi 7 ile nasıl kullanabilirim acaba?
import activex ile olmadı.
Aşağıdaki uygulama ile istediğinizi gerçekletirebilirsiniz.
Form:
Kod: Tümünü seç
object Form1: TForm1
Left = 192
Top = 124
Width = 394
Height = 189
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 40
Top = 24
Width = 129
Height = 25
Caption = 'Get Pdf Page Count'
TabOrder = 0
OnClick = Button1Click
end
object Edit1: TEdit
Left = 40
Top = 56
Width = 273
Height = 21
TabOrder = 1
Text = 'SIC Multiwipe 1.2 Readme.pdf'
end
end
Kod: Tümünü seç
unit uPdfCount;
interface
uses
Windows,
Messages,
SysUtils,
Variants,
Classes,
Graphics,
Controls,
Forms,
Dialogs,
StdCtrls;
function GetPdfPageCount(FileName: PAnsiChar): Integer; stdcall; external 'pdfpagecount.dll';
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Count: Integer;
FullFileName: AnsiString;
begin
FullFileName := AnsiString(ExtractFilePath(Application.ExeName) + Edit1.Text);
Count := GetPdfPageCount(Pointer(FullFileName));
ShowMessage(IntToStr(Count));
end;
end.
-
- Üye
- Mesajlar: 86
- Kayıt: 27 May 2014 04:27
Re: PDF belgenin toplam sayfa sayısı nasıl bulunur???
ertank çok teşekkür ederim.
Gönderdiğiniz kod ile pdf dokümanın sayfa sayısını alabiliyorum artık.
pdfpagecount.dll dosyasını nasıl kullanacağımı bilmiyordum. Sayenizde öğrendim.
İlgi gösteren diğer arkadaşlara da teşekkürler.
Gönderdiğiniz kod ile pdf dokümanın sayfa sayısını alabiliyorum artık.
pdfpagecount.dll dosyasını nasıl kullanacağımı bilmiyordum. Sayenizde öğrendim.
İlgi gösteren diğer arkadaşlara da teşekkürler.