Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# - open source knihovna pro čtení PDF a RTF

Zdravim potrebuju nejaky open source projekt/knihovnu, ktera by nebyla prilis slozita a dalo by se zni lehce pouzit nacitani metadat z pdf, popr. knihovnu na rtf a vracet je v nejakem rozumnem formatu. Potrebuju nacitat informace typu: autor, datum, velikost, pocet znaku, pocet stran apod, ukladani neni treba. Dekuji za tipy

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
ja jsem zkusil i ten iTextSharp, ale nemohu se dostat k metadatum, resp. to musim delat spatne... o…
TN 27.08.2008 17:10
TN
Tak som skúsil ten iTextSharp a vyzerá oveľa lepšie ako PDF Clown. Jednoduchý príklad čítania metadá…
los 27.08.2008 18:55
los
aha to je ale zajimave zjisteni :) ze to z vlastnosti nejsou uplne presne metadata :) takze se zkus…
TN 27.08.2008 19:49
TN
ano po hodine googleni mi neni jasne jakym grafickym programem editovat metadata :-( Zkusil jsem i…
TN 27.08.2008 20:46
TN
jeste dodam, ze PDF nijak chraneny nejsou, proste si v Open Office vygeneruju nejake PDF a zkousim s…
TN 27.08.2008 20:47
TN
vzhledem k tomu ze nemam zadny program po ruce na metadata, zkousim tedy ruzne knihovny a snimi nejd…
TN 27.08.2008 21:03
TN
Vlastnosť Tag sa neukladá do súboru. Je to len pomocná vlastnosť, do ktorej si môžeš uložiť ľubovoľn…
los 27.08.2008 23:08
los
DIKY!!!! ;-);-);-) Muzete oznacit vyresene, moc jste mi pomohl poslední
TN 27.08.2008 23:23
TN

ja jsem zkusil i ten iTextSharp, ale nemohu se dostat k metadatum, resp. to musim delat spatne...

openFileDialog1.Filter = "PDF files (*.pdf)|*.pdf";

            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                string filename = openFileDialog1.FileName;

                Document document = new Document();
                PdfReader read = new PdfReader(filename);
                document.Open();
                textBox1.Text += "Pages:" + read.NumberOfPages;
                textBox1.Text += "\r\nVersion:" + read.PdfVersion;
                textBox1.Text += "\r\nLength:" + read.FileLength + " bytes";
                textBox1.Text += "\r\nEncrypted?:" + read.IsEncrypted();//jestli true nedostanu se ani k pages...
                textBox1.Text += "\r\nPermissions:" + read.Metadata.???

Zkusil jsem googlit, ale na sourceforge je ukazka jen s vkladanim metadat, nacitanim uz se nezabyvaji a kdyz jsem googlil na codeproject, tak tam zase ten kod neexistuje, priklad:

http://www.codeproject.com/KB/aspnet/Esignature.asp x

 st.MoreInfo = this.metadata.getMetaData();

???

zbytek odkazu po internetu je taky vesmes ukladani metadat :( zadny cteni :(

Tak som skúsil ten iTextSharp a vyzerá oveľa lepšie ako PDF Clown. Jednoduchý príklad čítania metadát cez iTextSharp:

PdfReader reader = new PdfReader(filename);

foreach (DictionaryEntry entry in reader.Info)
	Console.WriteLine(string.Format("{0}: {1}", entry.Key, entry.Value));

aha to je ale zajimave zjisteni :) ze to z vlastnosti nejsou uplne presne metadata :)

takze se zkusim vratit k PDFsharp a zkusit vyplnit metadata (zajimaji me ty co se ukladaji do souboru, ne ty do NTFS) nejakym programem - adobe acrobat reader?? a jestli to funguje. pote PdfClown, ale iTextSharp vyzkouset. Diky a jeste se za chvili ozvu jak jsem to vykoumal

ano po hodine googleni mi neni jasne jakym grafickym programem editovat metadata :-(

Zkusil jsem i nainstalovat Adobe Acrobat Reader a to k nemu mam velky odpor :(

Tady na tom screenu: pdfmetadata.htm je videt ze metadata jdou editovat, ale ja to jaksi nemohu, mam ty polozky zasedively

Zkusil jsem nainstalovat i tri dalsi programy, poradite?

vzhledem k tomu ze nemam zadny program po ruce na metadata, zkousim tedy ruzne knihovny a snimi nejdrive ulozit metadata a pak si je teda nechat zobrazit. U te nejslibnejsi na zacatku PDFsharp mam problem:

                PdfDocument document = PdfReader.Open(filename);
                document.Tag = "AAAAAAAAA";
                document.Save(filename);
textBox2.Text += "\r\nTag\t\t:\t\t" + document.Tag;             //asi nefunkcni :(

takhle se mi zobrazi tag, ale kdyz pri dalsim spusteni programu odstranim:

document.Tag = "AAAAAAAAA";

tak uz se tag nezobrazi vyplnen, ale hlavne ze vyprodukovane programem se tam uvede ta knihovna - pdfsharp :(

Vlastnosť Tag sa neukladá do súboru. Je to len pomocná vlastnosť, do ktorej si môžeš uložiť ľubovoľný objekt (podobne ako napr. treeNode.Tag, control.Tag, listView.Tag, atď).

Všetky metadáta môžeš v PDFSharp prejsť napríklad takto:

using (PdfDocument document = PdfReader.Open(filename))
	foreach (DictionaryEntry entry in document.Info)
		Console.WriteLine(string.Format("{0}: {1}", entry.Key, entry.Value));

Zpět do poradny Odpovědět na původní otázku Nahoru