WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Metadaten aus einem PDF lesen

 

qwerqwer99
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 12.11.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.11.2011, 17:01     Titel: Metadaten aus einem PDF lesen
  Antworten mit Zitat      
Ist es möglich die Metadaten wie Autor, Titel, ... aus einem PDF mit Matlab auszulesen??
Danke
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.11.2011, 17:58     Titel:
  Antworten mit Zitat      
Hallo,

hier ist ein Treffer auf File Exchange:
http://www.mathworks.de/matlabcentr.....exchange/17839-pdf-reader

Das adressiert zwar vielleicht nicht das eigentliche Problem, ist aber wohl ein guter Startpunkt.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
qwerqwer99
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 12.11.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.11.2011, 19:12     Titel:
  Antworten mit Zitat      
Vielen Dank Harald,

das hatte ich nicht gefunden. Ist auch ein sehr interessantes File, ist aber nicht das was ich Suche.

Bei meinen pdf's scheint es auch nicht zu funktionieren, da zwar der Text erkannt, aber nicht die Kopf- und Fußzeilen nicht.

Ich will aber auch gar nicht die Kopfzeile, sondern die Metadaten des PDF's lesen um so den Autor/Autoren des Buches zu ermitteln.

Hat noch jemand eine Idee? Danke.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.12.2011, 13:23     Titel:
  Antworten mit Zitat      
Schade hat keine eine Idee?
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.12.2011, 14:59     Titel:
  Antworten mit Zitat      
Hallo,

Ich nehme an pdftk kann dazu benutzt werden, siehe http://www.pdflabs.com/docs/install-pdftk/.
Wenn Du damit erfolgreich warst, bitte poste dies hier. Danke.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
qwerqwer99
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 12.11.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.12.2011, 14:53     Titel:
  Antworten mit Zitat      
Hallo Jan,
ich verstehe nicht so recht wie ich mit pdftk die Metadaten aus PDFs automatisch auslesen kann. Mit dem Programm kann man diese in ein pdf schreiben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 15.12.2011, 16:15     Titel:
  Antworten mit Zitat      
Hallo qwerqwer99,

Ich benutze das Programm nicht. Ich hatte den Eindruck, dies würde Dein Problem betreffen:
http://www.pdflabs.com/docs/pdftk-man-page/:
Zitat:
dump_data
Reads a single, input PDF file and reports various statistics, metadata, bookmarks (a/k/a outlines), and page labels to the given output filename or (if no output is given) to stdout.

Diese Seite gibt auch pdftk als Mittel der Wahl an:
http://etutorials.org/Linux+systems.....Get+and+Set+PDF+Metadata/
Wenn Du Java kennst, mag dies weiterhelfen:
http://www.java2s.com/Tutorial/Java.....tadatafrompdfdocument.htm

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
qwerqwer99
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 12.11.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.01.2012, 23:04     Titel:
  Antworten mit Zitat      
Hallo Jan,
nach langer Pause habe ich mich nochmal mit dem Thema beschäftigt und du hattest recht. pdfTK - mit den beiden Dateien pdftk.exe und unlibiconv2.dll - kann die Metadaten von PDF's auslesen. Allerdings läuft es unter DOS (cmd.exe). Navigiert man zur pdftk.exe und gibt folgenden Befehl ein:
Code:
pdftk pdf_pfad dump_data output ausgangs_pfad

werden die Meatadaten in die vorgegebene Datei geschrieben oder in Matlab in die Variable metada zb:
Zitat:
[nix, metadata] = dos( strcat(['pdftk "', PDF_Pfad,PDF_Titel '" dump_data output ']) )

Deutsche Umlaute erkennt das Programm pdfTK allerdings nicht. Mir ist als Lösung nichts besseres eingefallen, als die entsprechenden PDF's von Matlab vorher um zu bennen und nach dem auslesen wieder zurück zu setzten.
Zitat:

for i = 1 : ende
if ( isempty( strfind(Titel{i}, 'ä') ) && isempty( strfind(Titel{i}, 'ö') ) ...
&& isempty( strfind(Titel{i}, 'ü') ) && isempty( strfind(Titel{i}, 'Ä') ) ...
&& isempty( strfind(Titel{i}, 'Ö') ) && isempty( strfind(Titel{i}, 'Ü') ) ...
&& isempty( strfind(Titel{i}, 'ß') ) ) == 0
Aenderung = 1
Titel_neu{i} = strrep(Titel_neu{i}, 'ä', '!a!');
Titel_neu{i} = strrep(Titel_neu{i}, 'ö', '!o!');
Titel_neu{i} = strrep(Titel_neu{i}, 'ü', '!u!');
Titel_neu{i} = strrep(Titel_neu{i}, 'Ä', '!A!');
Titel_neu{i} = strrep(Titel_neu{i}, 'Ö', '!O!');
Titel_neu{i} = strrep(Titel_neu{i}, 'Ü', '!U!');
Titel_neu{i} = strrep(Titel_neu{i}, 'ß', '!s!');
movefile(strcat(PDF_Pfad_2{i},Titel{i}),strcat
(PDF_Pfad_2{i},Titel_neu{i}),'f')
Aenderung = 1;
end

%Programm

if Aenderung == 1
movefile(strcat(PDF_Pfad_2{i},Titel_neu{i}),strcat(PDF_Pfad_2{i},Titel{i}),'f')
end

end
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 05.01.2012, 01:36     Titel:
  Antworten mit Zitat      
Hallo qwerqwer99,

Zuerst wollte ich dies empfehlen:
Code:

Aber dann kam ich auf:

Code:
for i = 1 : ende
   movefile(hullfile(PDF_Pfad_2{i}, Titel{i}), fullfile(PDF_Pfad_2{i}, 'temp.pdf'), 'f');

  %Programm
 
  movefile(fullfile(PDF_Pfad_2{i}, 'temp.pdf'), fullfile(PDF_Pfad_2{i},Titel{i}), 'f')
end

FULLFILE ist schlauer als STRCAT.
In Matlab 6.5 war MOVEFILE sehr zeitraubend, aber heute ist es effizienter. Es geht zwar miot einer Mex-Funktion noch schneller (FileExchange->FileRename), aber ich nehme an, das Programm ist nicht zeitkritisch.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
qwerqwer99
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 12.11.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.01.2012, 13:06     Titel:
  Antworten mit Zitat      
Hi,
vielen Dank das hat den Code etwas schlanker gemacht! Danke.

Zeitkritisch ist der MatlabCode nicht, aber pdfTK ist leider sehr langsam.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.