Export dokumentu do PDF pomocí maker

programovani.png V minulém díle jste se naučili exportovat a importovat soubory do a z formátu CSV. Celý dnešní díl bude věnován exportu do PDF. Samotný export je věc takřka triviální a stačí jediný příkaz navíc při ukládání dokumentu. Co ale v případech, kdy chcete využít více možností, které export do PDF nabízí?     

Předchozí díl: Pokročilé volby ukládání a načítání souborů, export a import csv pomocí maker

Obrázky a pojmenování voleb pochází z OpenOffice.org 3.3. Je možné, že v LibreOffice budou některé volby v dialogu pojmenovány jinak, ale příkazy makrem by měly být shodné.

Export do PDF

Následující kód uloží soubor pod názvem a namísto originálu jako PDF. Kód využívá metodu storeToURL, jen určíte podmínky, za jakých má být dokument uložen.

sub export_do_pdf
doc = thisComponent
adresa = left (doc.url, len (doc.url)-4)+".pdf"
dim podminka_exportu (0) as new com.sun.star.beans.PropertyValue
podminka_exportu (0).Name = "FilterName"
podminka_exportu (0).Value = "calc_pdf_Export" 
' pro Writer pak writer_pdf_Export
doc.storeToURL (adresa, podminka_exportu ())
end sub 

V samotném dialogu pro export do PDF je mnoho možností nastavení. Platí, že pokud makrem neměníte některou z vlastností exportu, bude použito výchozí nastavení.

Volby exportu

V případě, že budete chtít exportovat do PDF s jiným nastavením, musíte toto nastavení změnit příkazem v makru. Pokud si přes záznamník maker nahrajete makro na export (které funguje celkem slušně), uvidíte volby pod argumentem FilterData. Stačí ale, určit jen ty hodnoty, které chcete měnit.

Nejčastěji budete zřejmě měnit rozsah stran a ostatní volby nepoužijete, popíšeme si zde ale většinu z nich. Nejprve postup jakým dostat hodnoty do makra.
sub pdf
doc = thisComponent
adr = left (doc.url, len (doc.url)-4)+".pdf"
dim podminka_filtru (0) as new com.sun.star.beans.PropertyValue
podminka_filtru (0).Name = "PageRange"
podminka_filtru (0).Value = "1-5"
dim podminka_exportu (1) as new com.sun.star.beans.PropertyValue
podminka_exportu (0).Name = "FilterName"
podminka_exportu (0).Value = "calc_pdf_Export"
podminka_exportu (1).Name = "FilterData"
podminka_exportu (1).Value = podminka_filtru
doc.storeToURL (adr, podminka_exportu ())
end sub 
Ve struktuře podminka_filtru definujete podmínky – zde rozsah stran. Do kódu pak již jen přidáte položku FilterData ve struktuře podminka_exportu a tím zajistíte export dokumentu podle požadavků makra.

Některé volby budou aktivní pouze v souvislosti s povolením jiných voleb, doporučuji si prozkoumat volbu
Soubor | Exportovat do PDF – dialog Volby PDF.

Dialog Volby PDF Dialog Volby PDF


Všechny vlastnosti, které jsou označeny jako boolean se určují hodnotami True (Ano) a False (Ne).

Záložka Obecné

Rozsah


Rozsah exportu do PDF Rozsah exportu do PDF


Zde nastavujete, kolik stran má být exportováno, lze nastavit čísla stran. PageRange – rozsah stran k exportu číslo zadáváte jako text – "1-5"

podminka_filtru (0).Name = "PageRange"
podminka_filtru (0).Value = "1-5" 
Lze také neexportovat prázdné stránky. IsSkipEmptyPages – skrýt prázdné stránky – hodnota boolean
podminka_filtru (0).Name = "IsSkipEmptyPages"
podminka_filtru (0).Value = True
Základní nastavení je export všech stránek najednou, pokud ale dokument obsahuje tiskové oblasti, budou exportovány pouze tyto oblasti – není třeba tedy nastavovat stránky.

Použití vlastností v kódu makra je snad jasné, dále budu uvádět pouze názvy vlastností s určením zadávané hodnoty.

Export obrázků


Volby exportu pro obrázky Volby exportu pro obrázky

  • "UseLosslessCompression" bezztrátová komprese obrázků – hodnota boolean
  • "Quality" nastavení kvality obrázků JPEG – hodnota číslem konkrétně v % (1-100)
  • "ReduceImageResolution" redukovat rozlišení obrázků – hodnota boolean – povolíte redukci, kterou poté nastavujete následující vlastností
  • "MaxImageResolution" – maximální rozlišení obrázků – hodnota číslem (v DPI)

Obecné


Obecné volby exportu Obecné volby exportu

  • "UseTaggedPDF" použít tagované PDF – hodnota boolean
  • "ExportFormFields" – vytvořit PDF formulář – hodnota boolean
  • "FormsType" – typ formulářových prvků – hodnota číslem (0 – FDF, 1 – PDF, 2 – HTML, 3 – XML)
  • "AllowDuplicateFieldNames" – povolit shodná jména polí – hodnota boolean
  • "ExportNotes" exportovat poznámky – hodnota boolean
  • "ExportBookmarks" – exportovat záložky – hodnota boolean
  • "IsSkipEmptyPages" skrýt prázdné stránky – hodnota boolean
  •  "EmbedStandardFonts" – vložit standardní fonty – hodnota boolean

Záložka Výchozí zobrazení

Panely


Volba panelů v novém PDF dokumentu Volba panelů v novém PDF dokumentu

  • "InitialView" nastavení panelů – hodnota číslem (0-jen stránka,1-záložky a stránka,2-náhledy a stránka)
  • ResizeWindowToInitialPage" změnit velikost okna podle první stránky hodnota boolean
  • "InitialPage" volba stránky k zobrazení – hodnota číslem (číslo stránky na které se PDF otevře)

Zvětšení


Volba zobrazení dokumentu v otevřeném PDF Volba zobrazení dokumentu v otevřeném PDF

  • "Magnification" zvětšení – hodnota číslem (0-výchozí,1-přizpůsobit oknu,2-přizpůsobit šířce,3-přizpůsobit viditelné)
  • "Zoom" – zobrazit dokument v přiblížení – hodnota číslem (1-100%)

Rozvržení stránek


Rozvržení stránek při zobrazení dokumentu PDF Rozvržení stránek při zobrazení dokumentu PDF

  • "PageLayout" – rozvržení stránek – hodnota číslem (0-výchozí,1-jedna str.,2-souvislé,3-souvislé po dvou)
  • "FirstPageOnLeft" – první stránka samostatně – hodnota boolean (v případě zobrazení stránek po dvou)

Záložka Uživatelské rozhraní

Nastavení okna


Nastavení zobrazení okna PDF Nastavení zobrazení okna PDF

  • "ResizeWindowToInitialPage" – změnit velikost okna podle první stránky – hodnota boolean
  • "CenterWindow" vystředit okno na obrazovce – hodnota boolean
  • "OpenInFullScreenMode" – otevřít v režimu celé obrazovky – hodnota boolean
  • "DisplayPDFDocumentTitle" zobrazit název dokumentu hodnota boolean

Nastavení uživatelského rozhraní


Nastavení voleb (zobrazení lišt…) Nastavení voleb (zobrazení lišt…)

  • "HideViewerToolbar" skrýt nabídku hodnota boolean
  • "HideViewerMenubar" – skrýt panel nástrojů hodnota boolean
  • "HideViewerWindowControls" – skrýt ovládací prvky okna – hodnota boolean

Přechody a záložky


Nastavení úrovní záložek v PDF dokumentu Nastavení úrovní záložek v PDF dokumentu

  • "OpenBookmarkLevels" – nastavení viditelných úrovní záložek – hodnota číslem (pro všechny úrovně zadejte číslo -1, jinak nastavujete úrovně od 1 dále)
  • "UseTransitionEffects" – použít přechodové efekty – hodnota boolean

Záložka Odkazy


Nastavení chování vložených odkazů Nastavení chování vložených odkazů

  • "ExportLinksRelativeFsys" – exportovat URL relativně k souborovému systému – hodnota boolean
  • "PDFViewSelection" – odkazy mezi dokumenty otevírat – hodnota číslem (0-výchozí režim, 1-otevřít v aplikaci pro čtení PDF, 2-otevřít v internetovém prohlížeči)
  • "ConvertOOoTargetToPDFTarget" – převést odkazy OO na odkazy PDF – hodnota boolean
  • "ExportBookmarksToPDFDestination" – exportovat záložky jako pojmenované cíle – hodnota boolean

Záložka Bezpečnost


Nastavení bezpečnosti vytvořeného dokumentu PDF Nastavení bezpečnosti vytvořeného dokumentu PDF


Zde nastavujete omezení vytvořeného PDF dokumentu. Je možné omezit tisk, změny v dokumentu, nastavit heslo na otevření a další.


Heslo pro otevření

  • "EncryptFile" – povolit heslo k otevření – hodnota boolean
  • "DocumentOpenPassword" – nastavení hesla k otevření text (například: "Heslo")

Heslo pro oprávnění

  • "RestrictPermissions" – omezit oprávnění – hodnota boolean
  • "PermissionPassword" – heslo k omezení oprávnění – text (například: "Heslo")

Ostatní nastavení

  • "Printing" – povolení tisku – hodnota číslem (0-nepovoleno,1-nízké rozlišení (150 DPI),2-vysoké rozlišení)
  • "Changes" – povolení změn – hodnota číslem (0-nepovoleny, 1-vkládání, mazání a otáčení stran,2-vyplnění formuláře, 3-koment., vyplnění formuláře, 4-vše mimo vyjmutí stránek)
  • "EnableCopyingOfContent" – povolení kopírování dokumentu – hodnota boolean
  • "EnableTextAccessForAccessibilityTools" – povolení přístupu k textu pro zpřístupnění – hodnota boolean

Toto jsou veškerá nastavení exportu do PDF makrem, které jsem byl schopen vypátrat. Ne všechny jsou odzkoušené – stejně jako většina uživatelů vystačím se základním exportem a rozšířená nastavení nevyužívám. Pokud bych ale chtěl, tak postup je v tomto článku.

(Jako ve škole) Průměr: 1,00 | Hodnotilo: 5
 

Komentáře

user avatar rad
Odpovědět
Export dokumentu do PDF pomocí maker
11. 02. 2014, 15:01:53
diky za tip. Fuguje to super. Poradite mi někdo jak precist nazev ukladaneho pdf z bunky?
user avatar Ludvík
Odpovědět
Export dokumentu do PDF pomocí maker
27. 02. 2014, 20:57:45
používám něco takového, ale též jsem to někde opsal tak vlatně nemohu asi moc radit
dim sPATH as string
dim arg(0) as new com.sun.star.beans.PropertyValue
dim s1 as object
dokument = ThisComponent
s1 = dokument.Sheets.GetByName("dopis")
sPATH = s1.GetCellRangeByName("P11").String
arg(0).Name = "FilterName"
arg(0).Value = "calc_pdf_Export"
ThisComponent.storeToURL(ConvertToUrl(sPATH), arg())

Je to takový výňatek z většího a složitějšího makra bez záruky funkčnosti, ale to načtení adresy z buňky "P11" na listu "dopis" tam vidět je

Přidat názor

 

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích najdete v nápovědě. Diskuzi můžete sledovat pomocí RSS kanálu.

 
Daniel Sedláček

Daniel Sedláček

Amatérsky se věnuji programování maker od podzimu 2010.
Aktivní jsem na fóru od ledna 2011.
Od července 2011 spolupracuji i jako moderátor fóra.

Využívám pouze OpenOffice.org (LibreOffice nemám nainstalován).

 
 
 
woo jaw demo hz