1

Téma: PDF a volitelné zobrazování vrstev

PDF je z programu Layout možno generovat prostřednictvím PostScriptu a programu GhostScript, anebo také (v lepší či horší kvalitě) pomocí všelijakých driverů virtuální tiskárny a příkazu Files | Print.  Jestliže však pro PDF existuje samostatný driver, dovoluje využít i něco z interaktivity, kterou formát PDF nabízí (počínaje verzí 1.5, tedy od Acrobat Readeru 6.0) a která by jinak sotva byla dostupná.

http://www.formica.cz/files/forum/pdf-ocg.gif

K tomu se asi v první řadě hodí tzv. Optional Content, díky kterému lze obsah dokumentu rozčlenit do vrstev (zde celkem přirozeně odpovídajících vrstvám desky) a jejich zobrazování pak vypínat a zapínat až v prohlížeči.  Místo jednoho statického obrázku tak v jediném souboru vlastně vytvoříte a předáte desítky možných kombinací.

PDF driver s těmito vlastnostmi si můžete stáhnout v archivu www.formica.cz/files/PDF098.zip, do něhož jsou přidány i vzorové konfigurační soubory, užité při generování následujících ukázek:

www.formica.cz/files/forum/Micel1-OCG1.pdf
www.formica.cz/files/forum/Micel1-OCG2.pdf
www.formica.cz/files/forum/rdh1-OCG.pdf

Driver spolupracuje i se standardní verzí programu Layout, pouze pro kreslení otvorů je nutno užít jeho testovací verzi.  Chcete-li si zachovat konfigurační soubory pro předchozí verzi PDF.dll, stačí do nich textovým editorem vepsat jednu jedničku navíc, před poslední dvě čísla na sedmé řádce.

2

Re: PDF a volitelné zobrazování vrstev

Ke článku o interaktivních PDF jsem dnes vystavil také PDF soubor desky, která je v něm užita pro obrázek 2.  Interaktivitu je daleko lepší si vyzkoušet než o ní jen číst.

3

Re: PDF a volitelné zobrazování vrstev

Dobrý den,
rád bych Vás požádal o radu.
Je možné nějakým způsobem používat driver PDF.dll
ve Formice Verze 4.30 ?
Zkoušel jsem to, ale vybíhá hláška s chybovým hlášením.

Děkuji za jakoukoliv informaci.

4 Naposledy upravil: Petr Horský (2013-01-21 12:29:03)

Re: PDF a volitelné zobrazování vrstev

Dobrý den, to bohužel není nijak možné. 

(Jediné možnosti výstupu do PDF z verze 4.30 myslím jsou skrz PostScript a nástroje jako GhostScript, anebo skrz WPrinter.dll a nějaký driver virtuální tiskárny.)

Snad bych měl ještě zmínit možnost (jaksi nepřímého) generování PDF, totiž skrz "technologickou verzi".

Re: PDF a volitelné zobrazování vrstev

Dobrý den,
nemohu přijít na to, jak nastavit výchozí stav (Zapnutá/Vypnutá) jednotlivých vrstev. V okně Vlastnosti vrstvy mi nejde změnit. Můžete mi prosím poradit?

6

Re: PDF a volitelné zobrazování vrstev

Dobrý den, rozumím-li Vám správně, jde Vám o výchozí stav při prvním zobrazení PDF v jeho prohlížeči.  Toto jsme zatím řešili zadáním množiny těch vrstev, které budou ve výchozím stavu PDF skryty, přímo ve zdrojovém textu pdf.dll.  (Podobně jsou takto dána i jména vrstev, jež se objevují v příslušném menu PDF.)  DLL jsme pak několikrát přeložili individuálně pro jednotlivé uživatele.

Mohu Vám tedy zaslat více již existujících variant této DLL, zda Vám snad některá nevyhoví lépe, anebo mi můžete poslat své požadavky na zobrazení vrstev a příp. jejich jména, a já DLL takto přeložím i pro Vás.  Naopak možnost tyto parametry zadat v menu programu zatím neexistuje, ale počítá se s ní v jeho dalších verzích.

Re: PDF a volitelné zobrazování vrstev

Dobrý den, rozumíte mi dobře. Jednodušší a rychlejší je zřejmě využít stávající verze. Jelikož moje požadavky nejsou nijak mimořádné, předpokládám, že některá z dostupných variant mi vyhoví. Můžete mi je prosím poslat?

8

Re: PDF a volitelné zobrazování vrstev

Dobrý den, namátkou jsem Vám teď poslal několik DLL generátorů, co jsem posbíral po disku.  Nejlépe by asi bylo, kdybyste v Layoutu povolil výstup všech vrstev desky a pomocí jednotlivých DLL si vygeneroval PDF, na nichž byste viděl, nakolik Vám nastavení jejich vrstev vyhovuje.

9

Re: PDF a volitelné zobrazování vrstev

Dobrý den, dříve jste zveřejnil zdrojáky Exportních DLL, nebylo by to možné i u PDF?
Mám problémy s Importem do Corelu, protože všechny kruhy jsou vytvořeny jako "úsečka s nulovou délkou" a danou tlouškou pera.
To bohužel Corel neinterpretuje správně. Potřeboval bych generovat vše jako kružnice.

10

Re: PDF a volitelné zobrazování vrstev

Dobrý den, úsečka s nulovou délkou (a s předepsaným kruhovým zakončením) je trik pro kreslení kruhových pájecích bodů, který jsem užil pro podstatné zkrácení generovaných souborů.  Kruh bych totiž musel generovat po kvadrantech a z nich každý popsat Bézierovými křivkami (viz např. http://www.whizkidtech.redprince.net/bezier/circle/), což je nešikovné, nepříjemné a dlouhé.  ??plně stačí, že jsem nucen je užívat pro kvadrantové oblouky. 

Tento trik není v rozporu s manuálem verze 1.5 (viz též http://www.adobe.com/products/postscript/pdfs/PLRM.pdf , teď jsem to tam ovšem znovu již nehledal), ale některé jednodušší prohlížeče úsečky s nulovou délkou prostě potlačují (kdyby totiž měly zakončení obdélníkové, nebylo by jasné, jak je vykreslit, protože při nulové délce nelze určit jejich orientaci).  Narazil jsem na to už před lety a chtěl jsem to obejít tak, že by se (nejspíš volitelně) kreslila úsečka o nějaké infinitesimální délce, jenže tenkrát si nikdo další nestěžoval a prohlížeče, s nimiž jsem tehdy měl tyto potíže, brzy vymizely samy od sebe.

Oproti těm publikovaným zdrojovým textům je PDF.dll daleko složitější (snad téměř řádově) a o zveřejnění jejího zdrojového textu proto neuvažuji.  (Jiná věc by byla poskytnout jej individuálnímu zájemci.)  Až budu mít chvilku, podívám se, zda bych tam mohl ten kdysi uvažovaný parametr sám doplnit.  Jak na to spěcháte?

11

Re: PDF a volitelné zobrazování vrstev

Dělám teď dokumentaci pro zkušebnu na ATEX certifikát, tj. pro externí firmu.
Interně mi nevadí, že nemám "štábní kulturu" dokumentace.
Nyní tedy hledám způsob, jak rozumně vytvořit PDF dokumentaci "v jednom souboru".
Corel se mi osvědčil, protože bez problémů (až na zmiňované) natáhne PDF z Layoutu i Schematicu a zachová vrstvy.
Můžu v něm přidat rámeček, razítko, popis, vycentrovat atd.

Termín čím dřív, tím líp samozřejmě, ale chápu, že je to pro Vás jen obtíž.
Děkuji za ochotu a věnovaný čas.

P.S. Schema dělá "junction kruhy" v PDF jiným způsobem, protože ty se zobrazují dobře.

12

Re: PDF a volitelné zobrazování vrstev

Pokusně jsem teď kruhy kreslené v PDF.dll (trikem popsaným výše) jakožto úsečka nulové délky prodloužil o jeden mikrometr svisle.  Ošetření se týkalo celkem tří případů: kruhových pájecích bodů, otvorů v libovolných pájecích bodech, a otvorů kreslených s PDF.dll připojeným jako výstup vrtacího programu, tedy v menu Files | NC Drill.   

Přeložený generátor jsem Vám poslal e-mailem, aniž bych jej vůbec zkoušel; nemám zde program, který by trpěl diskutovanou vadou.  Pokud e-mail nesmazal Váš antivir, prosím otestujte jej a dejte vědět, jaký byl výsledek.

13

Re: PDF a volitelné zobrazování vrstev

Dobrý den, děkuji za rychlou úpravu. Driver funguje dle mých představ. Jsou zobrazeny všechny pady i otvory a "roztažení" o 1um není ve výsledném tvaru nijak patrné.

14

Re: PDF a volitelné zobrazování vrstev

??pravu bych tedy asi mohl do systému přidat standardně, nejraději ovšem za cenu nového parametru, kterým by se zapínala.  (??ešení mi nepřipadá zcela čisté ??? ač ten mikrometr sotvakdo uvidí, při programovém zpracování PDF by někdy mohl vadit.)

Uživatelé, kteří na stejný problém narazí dříve, než se dnes upravené DLL objeví v některé instalační sadě, si jej mohou mezitím stáhnout odtud: www.formica.cz/files/PDF_20140529.zip .

15

Re: PDF a volitelné zobrazování vrstev

A zde je DLL i s parametrem Files | Artwork | Driver Parameters | Zero Length Segments, kterým se prodloužení o mikrometr vypíná (respektive výše popsaný trik zapíná):  www.formica.cz/files/PDF_20140530.zip .

Pokud byste pro ni chtěli užít původní konfigurační soubory, stačí do nich textovým editorem doplnit jednu nulu na konci té dlouhé řádky čísel.

16

Re: PDF a volitelné zobrazování vrstev

Ještě si dovolím vrátit se k původnímu tématu vlákna:  Pravděpodobně stojí za to poznamenat, že prohlížeče PDF pocházející z třetí strany mohou mít s optional contentem dosti velké potíže.  Zejména mám na mysli prohlížeče v posledních letech integrované do webových.  Výsledkem běžně je, že takovýto prohlížeč nezobrazí všechny vrstvy obsažené v PDF souboru, a navíc ani neposkytne žádnou informaci, že tam vůbec nějaké jsou.  V lepším případě naopak zobrazí všechny vrstvy (na dané stránce) najednou, ovšem chybějí mu nástroje, jak je interaktivně vypínat.

A pro pohodlí uživatelů jsem ještě vystavil konfigurační soubory, s jejichž pomocí byly vygenerovány PDF soubory dnes přidané do galerie: PDF_(C11).cfg.zip.