VYŘEŠENO Konfigurovatelný vzhled PDF pro karty osob DĚKUJI

U nás používaný software. Kdo co používá, klady a zápory.

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod Monika » stř led 25, 2017 5:45

Moc děkuji, pesovirodkm :D Posílám SZ.

Položky, které jste vynechal, přesně jak píšete - asi je nedokážu pro většinu zjistit (armáda, ocenění) nebo plynou z kontextu (změna víry). Není důvod je tam mit.

S obrázky už jsem se smířila, že buď nebudou nebo k nim povede ještě dlouhá cesta. Myslím, že pokud využiji poznámku k osobě i na přidání informace o tom, v jakých matričních knihách (i folio) lze zápisy najít, nebudou až tak moc chybět.

To bude paráda, že nebudu muset tu záplavu "karet" zadávat ručně! Kéž by vám můj starší word nepřidělal moc komplikací.

DĚKUJI :D
Uživatelský avatar
Monika
 
Příspěvky: 2751
Registrován: úte lis 18, 2014 2:11
Oblast pátrání: Lounsko, Slánsko, Kladensko, Rakovnicko, Nové Strašecí, Halič

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod pesovirodkm » čtv led 26, 2017 23:33

Monika píše:Moc děkuji, pesovirodkm :D Posílám SZ.

Položky, které jste vynechal, přesně jak píšete - asi je nedokážu pro většinu zjistit (armáda, ocenění) nebo plynou z kontextu (změna víry). Není důvod je tam mit.

S obrázky už jsem se smířila, že buď nebudou nebo k nim povede ještě dlouhá cesta. Myslím, že pokud využiji poznámku k osobě i na přidání informace o tom, v jakých matričních knihách (i folio) lze zápisy najít, nebudou až tak moc chybět.

To bude paráda, že nebudu muset tu záplavu "karet" zadávat ručně! Kéž by vám můj starší word nepřidělal moc komplikací.

DĚKUJI :D

Dobrý den,
v příloze posílám pokusnou aplikaci spolu s šablonou.
Použijte prosím přesně ten samý GEDCOM, co jste dávala do fóra, s tím, že ručně v Notepadu smažete následující konec:

Kód: Vybrat vše
1 CHIL @I342@
<odsud všechno smazat>
0 @M1@ OBJE
...
2 DATE 26 NOV 2016
3 TIME 07:14:35
2 _WT_USER Monika
1 _UID 2BE54AA03A814A2F963EFDAA47C801B36CE0
<smazat až sem>
0 TRLR

Pokud to neuděláte, program spadne při otevírání kvůli neznámému atributu (jak jsem již zmiňoval, bere obrázky pouze z Ancestry).
(Pozn. pro ostatní - program s největší pravděpodobností cizí GEDCOM neotevře, pokud to budete zkoušet, odladěný je pouze na Moniky. Problematický atribut je třeba ručně smazat, což může být i docela pracné.)

Pokud se Vám podaří otevřít upravený GEDCOM, ještě není vyhráno. Musí totiž přesně sedět verze Worda, co máte nainstalovanou. Já mám českou verzi Office 2007. Pokud máte jinou, program vyhodí výjimku, že nemůže otevřít .dll. K tomu dojde pravděpodobně až při stisku tlačítka pro generování.
Dejte prosím vědět, jak to s tím Wordem dopadlo. Osobně pro generování mojí kroniky nebudu používat Office, protože jsou tam takovéto problémy, ale budu generovat .tex soubor a LaTeXem z něj budu dělat kvalitně vysázenou knihu.

Pokud by byl problém s Wordem a byla pakárna to rozběhat, mohl bych Vám přeložit verzi programu, která bude mít na vstupu normální textový soubor místo Word dokumentu, a vy byste si připravila šablonu pro LaTeX (nebo třeba HTML). Program funguje na principu nahrazování klíčových slov, tak je mu jedno, zda nahrazuje ve Wordu, nebo v čemkoliv jiném.

Ještě bych zapomněl: program zatím v šabloně vyžaduje tagy pro iterace, tak je prosím z šablony nemažte, i když se negenerují obrázky. Místo toho si smažte jen nadpisy kapitol a zrušte si v iteracích odřádkování, aby Vám nevyjížděly prázdné stránky. Poku byste iterace smazala, program pročistí výstup celý, neboť se označí úplně celý dokument, a PDF vyjede prázdné. Pro první pokusy tedy nechte šablonu tak, jak je.
Přílohy
test01.zip
(80.49 KiB) 35 krát
pesovirodkm
 
Příspěvky: 111
Registrován: ned čer 21, 2015 12:04

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod Monika » pát led 27, 2017 2:10

DĚKUJI! :D

Z gedcomu jsem vymazala konec podle vašich pokynů, se šablonou jsem nic nedělala, zadala jsem generovat do docx pouze 1 osobu (#I1) a výsledek je výborný.


Pak jsem zadala do docx potomky od osoby #I13, aplikace vygenerovala pouze tuto první osobu a pak nahlásila chybu:
Kód: Vybrat vše
Processing person @I13@ (Růžena Šorf)
Processing Word file
Saving file [zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\xport_I13.docx
Closing Word file
Processing person @I14@ (Jan Dykast)
Processing Word file
20170127-002935.135: Chyba: Error: System.Runtime.InteropServices.COMException (0x800A16DE): Řetězcový parametr je příliš dlouhý.
   v Microsoft.Office.Interop.Word.Replacement.set_Text(String prop)
   v Kms.WordDocument.Replace(Range rng, String strWhat, String strWith, Boolean caseSensitive)
   v GTempl.Form1.ProcessSubPerson(WordDocument w, Gedcom gc, String pfx, List`1 list)
   v GTempl.Form1.ProcessTemplate(Gedcom gc, String gcId)
   v GTempl.Form1.button1_Click(Object sender, EventArgs e)



Vzhledem k tomu, že jde o přivdanou manželku, zkusila jsem opět docx předky od osoby #162 a zase se to zaseklo na osobě #I14:
Kód: Vybrat vše
Processing person @I1@ (Jiří Dykast)
Processing Word file
Saving file [zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\xport_I1.docx
Closing Word file
Processing person @I13@ (Růžena Šorf)
Processing Word file
Saving file [zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\xport_I13.docx
Closing Word file
Processing person @I14@ (Jan Dykast)
Processing Word file
20170127-003823.340: Chyba: Error: System.Runtime.InteropServices.COMException (0x800A16DE): Řetězcový parametr je příliš dlouhý.
   v Microsoft.Office.Interop.Word.Replacement.set_Text(String prop)
   v Kms.WordDocument.Replace(Range rng, String strWhat, String strWith, Boolean caseSensitive)
   v GTempl.Form1.ProcessSubPerson(WordDocument w, Gedcom gc, String pfx, List`1 list)
   v GTempl.Form1.ProcessTemplate(Gedcom gc, String gcId)
   v GTempl.Form1.button1_Click(Object sender, EventArgs e)



Další pokus bylo generování s vynecháním osoby #I14, tentokrát do docx potomky od osoby #I236. Generování probíhalo na pozadí (psala jsem tento příspěvek), postupně se mezitím generovaly soubory docx s jednotlivými osobami. Mělo se vygenerovat 9 osob a taky se jich 9 vygenerovalo.

Zřejmě je tedy u osoby #I14 v gedcomu něco, co generátoru vadí. Nic zvláštního ale u něj v gedcomu nevidím.

Pokusila jsem se proto vygenerovat docx pouze pro osobu #I14 a opět chyba:
Kód: Vybrat vše
Loading GEDCOM file ([zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\dykast_test.ged)
Analysing GEDCOM contents
Done...
Processing person @I14@ (Jan Dykast)
Processing Word file
20170127-010117.510: Chyba: Error: System.Runtime.InteropServices.COMException (0x800A16DE): Řetězcový parametr je příliš dlouhý.
   v Microsoft.Office.Interop.Word.Replacement.set_Text(String prop)
   v Kms.WordDocument.Replace(Range rng, String strWhat, String strWith, Boolean caseSensitive)
   v GTempl.Form1.ProcessSubPerson(WordDocument w, Gedcom gc, String pfx, List`1 list)
   v GTempl.Form1.ProcessTemplate(Gedcom gc, String gcId)
   v GTempl.Form1.button1_Click(Object sender, EventArgs e)




Ještě jsem se pokusila vygenerovat rovnou PDF (pouze osoba #I1), ale to nahlásilo chybu:
Kód: Vybrat vše
Loading GEDCOM file ([zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\dykast_test.ged)
Analysing GEDCOM contents
Done...
Processing person @I1@ (Jiří Dykast)
Processing Word file
Saving file [zde jsem odmazala cestu nemusí každý vědět, kde to na disku mám]\test01\xport_I1.pdf
20170127-001816.465: Chyba: Error: System.Runtime.InteropServices.COMException (0x800A1066): Příkaz nebyl úspěšný
   v Microsoft.Office.Interop.Word.DocumentClass.SaveAs(Object& FileName, Object& FileFormat, Object& LockComments, Object& Password, Object& AddToRecentFiles, Object& WritePassword, Object& ReadOnlyRecommended, Object& EmbedTrueTypeFonts, Object& SaveNativePictureFormat, Object& SaveFormsData, Object& SaveAsAOCELetter, Object& Encoding, Object& InsertLineBreaks, Object& AllowSubstitutions, Object& LineEnding, Object& AddBiDiMarks)
   v Kms.WordDocument.SaveAs(String fileName, WdSaveFormat fileFormat)
   v Kms.WordDocument.SaveAs(String fileName)
   v GTempl.Form1.ProcessTemplate(Gedcom gc, String gcId)
   v GTempl.Form1.button1_Click(Object sender, EventArgs e)

Píšu to jen pro informaci, hodí se mi spíš ty docx soubory.


Pokud už by se vám s tím nechtělo nic dělat (myslím řešit, proč se generování zasekává na osobě #I14), tak stejně je to pro mě ohromná pomoc. Pořád je rychlejší generovat ve vaší aplikaci po jedné osobě a zbytek přepsat, než to přepisovat všechno.

MOC DĚKUJI!
Uživatelský avatar
Monika
 
Příspěvky: 2751
Registrován: úte lis 18, 2014 2:11
Oblast pátrání: Lounsko, Slánsko, Kladensko, Rakovnicko, Nové Strašecí, Halič

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod pesovirodkm » pát led 27, 2017 7:20

Dobrý den, jen v rychlosti - první problém odstraním. Word umí nahrazovat jen řetězce do 255 znaků a jelikož osoba I14 měla patrně více sňatků, už jsme se tam nevešli. Toto nějakým způsobem spravím - nahrazování mi musí fungovat korektně i pro jiné projekty.

S PDF mě napadá jen jeden důvod - ačkoliv mám nejstarší verzi Office podporující .docx, tedy 2007 (vy musíte mít buď stejnou, nebo novější, protože Office 2003 byly ještě se starým vzhledem a bez .docx), mám počítač plně aktualizovaný.
V aktualizacích mám povoleny i aktualizace pro Office a je tedy možné, že podpora PDF je možná jen s nějakou z nich.
pesovirodkm
 
Příspěvky: 111
Registrován: ned čer 21, 2015 12:04

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod Monika » pát led 27, 2017 14:13

K PDF: Vlastně ani nevím, jak mi zde pan technik nastavil aktualizace. Desítky mám nově, ještě s nimi tolik neumím. Časem se podívám. Rozhodně mi Office 2007 nabízí PDF jen jako tisk - Microsoft Print to PDF. Formát docx je ale pro mě lepší, můžu si až hotové karty dál zpracovávat (a tam bych pak i mohla přiložit ty obrázky :-D ).

Problém s osobou I14: Pokud to způsobuje více manželek, pak by to byl problém ještě pár dalších osob. Mám tam i jednoho Václava, který měl 5 manželek. Pokud by to šlo vyřešit, bylo by to fajn :)

O víkendu vyzkouším upravit šablonu, jak jste psal a vůbec si s tím trochu pohraji. Je to paráda, jak krásně aplikace funguje! Obrázek
Uživatelský avatar
Monika
 
Příspěvky: 2751
Registrován: úte lis 18, 2014 2:11
Oblast pátrání: Lounsko, Slánsko, Kladensko, Rakovnicko, Nové Strašecí, Halič

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod pesovirodkm » pát led 27, 2017 20:10

Monika píše:K PDF: Vlastně ani nevím, jak mi zde pan technik nastavil aktualizace. Desítky mám nově, ještě s nimi tolik neumím. Časem se podívám. Rozhodně mi Office 2007 nabízí PDF jen jako tisk - Microsoft Print to PDF. Formát docx je ale pro mě lepší, můžu si až hotové karty dál zpracovávat (a tam bych pak i mohla přiložit ty obrázky :-D ).

Problém s osobou I14: Pokud to způsobuje více manželek, pak by to byl problém ještě pár dalších osob. Mám tam i jednoho Václava, který měl 5 manželek. Pokud by to šlo vyřešit, bylo by to fajn :)

O víkendu vyzkouším upravit šablonu, jak jste psal a vůbec si s tím trochu pohraji. Je to paráda, jak krásně aplikace funguje! Obrázek

Dobrý den,
posílám další verzi na testování. Jsou opraveny dvě věci - jednak promiskuita některé osoby, která způsobovala přetečení výčtu svateb přes 255 znaků. Problém nebyl v osobě 14, ale v jednom z jeho dětí nebo sourozenců - mezi nimi byl zmíněný Václav s pěti manželkami. Jelikož se všechny sňatky spojují do jednoho řetězce, všechny osoby s odkazem na dotyčného Václava shodily Word. Paradoxně samotný Václav mohl být vygenerovaný správně (nezkoušel jsem), protože svatby konkrétní osoby se řeší přes iterátor a generují se postupně :-)

Druhá opravená věc je mazání dokumentu, pokud v šabloně chyběly tagy pro iterátory. Nemusíte tedy již dělat do šablony popisované chcávky v podobě ponechávání dummy iterátorů, pokud tam nebudete chtít fotografie. Pokud některý z tagů nechcete, prostě ho ze šablony smažte.

Ještě se chci podívat na manipulaci s nepodporovanými GEDCOM tagy, aby program nepadal na Vašem formátu, pokud se z něj ručně nesmažou objekty s fotografiemi. Jinak myslím, že už je aplikace použitelná a nejsou třeba žádné větší zásahy. Hlavně jsem rád, že nemusíme řešit nekompatibilní verzi Wordu. Kdybychom neměli oba verzi 2007, tak to asi nerozběháme, protože já sice můžu připravit zdrojové kódy pro libovolnou verzi (jen se musí zadat správné COM reference guid), jenže ten Word musí být v PC už při překladu.
Přílohy
test02.zip
(80.58 KiB) 38 krát
pesovirodkm
 
Příspěvky: 111
Registrován: ned čer 21, 2015 12:04

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod pesovirodkm » sob led 28, 2017 1:30

Dobrý den,
vyzkoušejte ještě tuto verzi (viz příloha). Měla by již brát i neznámé tagy bez spadnutí.
Narychlo jsem se pokusil rozběhat obrázky z Vašeho GEDCOMu. Načtěte prosím Váš původní nepromazaný GEDCOM, zda se u osoby 102 objeví i přiložený obrázek.
Word měl sice problémy s relativními cestami, ale pokusil jsem se to vyřešit. Proveďte tedy prosím pár testů, zda to poběží v pořádku. Možná aplikace nebude fungovat na nějakých specialitách typu síťové disky, co jsem nemohl vyzkoušet, ale běžné cesty absolutní i relativní mi šly.
Pokud obrázky poběží, můžete je řadit pod příslušné nadpisy pomocí formátování popisu - podrobnosti jsem už posílal před časem v textovém souboru.
Přílohy
test03.zip
(81.47 KiB) 58 krát
pesovirodkm
 
Příspěvky: 111
Registrován: ned čer 21, 2015 12:04

Re: Konfigurovatelný vzhled PDF pro karty osob

Příspěvekod Monika » sob led 28, 2017 23:08

Dokonalé! Obrázek

Osoba I14 i s bratrem Václavem a jeho 5 manželkami bez problémů. Testovací obrázek bez problému.

Budu si ještě hrát se šablonou a s formátováním popisu (txt jsem si uložila).

MOC DĚKUJI!

Budete-li potřebovat něco graficky upravit, jsem tu :)
Uživatelský avatar
Monika
 
Příspěvky: 2751
Registrován: úte lis 18, 2014 2:11
Oblast pátrání: Lounsko, Slánsko, Kladensko, Rakovnicko, Nové Strašecí, Halič

Předchozí

Zpět na Jaký software používáte?

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník