Strona 1 z 1
[SOLVED] Wyłączenie podziału na strony
: wt lip 01, 2014 9:40 pm
autor: Rostov
Czy w OO Writerze da się jakoś wyłączyć podział pisanego akurat dokumentu na strony? Najlepiej tak, by po wyeksportowaniu takiego dokumentu do pdf również nie był widoczny podział na strony. Mam na myśli coś takiego jak np. w windowsowym WordPadzie, gdzie dokument nie jest dzielony na strony, tylko wszystko pisze się jednym cięgiem. Jeśli tak, to gdzie szukać takiej opcji?
Re: Wyłączenie podziału na strony
: wt lip 01, 2014 11:47 pm
autor: Raknor
Czy chodzi o
Widok → Układ strony www
?
Re: Wyłączenie podziału na strony
: śr lip 02, 2014 12:13 am
autor: Jan_J
OK, Web view jest dobry, ale eksport do PDF nadal jest stronicowany.
Możesz w domyślnym stylu strony ustalić jej odpowiednią wysokość. Niestety, Writer nie pozwala na stronice dłuższe niż 118,11 cala. Być może wewnętrznie się da -- można by sprawdzić pisząc skrypt -- ale interfejs okien dialogowych na dłuższe nie pozwala.
Re: Wyłączenie podziału na strony
: śr lip 02, 2014 12:45 pm
autor: Rostov
Niestety, nie znam się na pisaniu skryptów do OO, więc pozostawię temat otwarty, może ktoś znajdzie odpowiedź na moje pytanie.

Re: Wyłączenie podziału na strony
: śr lip 02, 2014 6:14 pm
autor: Jan_J
Nie trzeba pisać skryptu, żeby się przekonać.
Po zapisaniu dokumentu wypakowuję z niego plik styles.xml i szukam wpisu dot. wysokości strony. Będzie to coś w rodzaju
Kod: Zaznacz cały
<style:page-layout style:name="Mpm1">
<style:page-layout-properties fo:page-width="21.001cm"
fo:page-height="29.7cm"
style:num-format="1"
style:print-orientation="portrait"
fo:margin-top="2cm"
fo:margin-bottom="2cm"
fo:margin-left="2cm"
fo:margin-right="2cm"
style:shadow="none"
style:writing-mode="lr-tb"
style:footnote-max-height="0cm">
<style:footnote-sep [...] />
</style:page-layout-properties>
<style:header-style/>
<style:footer-style/>
</style:page-layout>
i zmienić w nim wysokość strony na dajmy na to 1200cm. Po czym wpakować styles.xml z powrotem do dokumentu i wczytać go do Writera.
Tak się udaje, wydruk pdf w załączniku. Natomiast formularz modyfikacji stylów strony nie pozwala na stronę wyższą niż 300 cm.
Tym niemniej wciąż jest to strona o ustalonej wysokości. Skryptem dałoby się automatycznie dopasować wysokość do zawartości.
Re: Wyłączenie podziału na strony
: śr lip 02, 2014 7:43 pm
autor: Rostov
Niestety, u mnie ten patent jakoś nie chce działać. Po wpisaniu we wskazanym miejscu wartości "1200", zapakowaniu pliku *.xml z powrotem i otworzeniu pliku *.odt w OO Writerze, pokazuje mi się coś takiego:
http://i.imgur.com/nHerynK.png
Re: Wyłączenie podziału na strony
: śr lip 02, 2014 11:51 pm
autor: Jan_J
Dokładniej
w opisie domyślnego stylu strony. Nazwa Mpm1 nie jest miarodajna.
Re: Wyłączenie podziału na strony
: czw lip 03, 2014 12:24 pm
autor: Rostov
OK, udało się, ale...
1. Tło dokumentu zostało rozciągnięte w pionie,
2. Wysokość nie dostosowuje się do ilości zawartego w dokumencie tekstu, tylko znacznie ją przekracza.
Re: Wyłączenie podziału na strony
: czw lip 03, 2014 3:40 pm
autor: Jan_J
Rostov pisze:Tło dokumentu zostało rozciągnięte w pionie
Jeżeli jest dopasowane rozmiarem do strony. To samo byś miał np. przy zmianie portrait -> landscape. Wybierz inny sposób wyrównywania tła.
Wysokość nie dostosowuje się do ilości zawartego w dokumencie tekstu, tylko znacznie ją przekracza.
O tym pisałem 2 posty wyżej. Eksperymentalnie da się dobrać odpowiednią; można też napisać skrypt, który to zrobi automatycznie.
Re: Wyłączenie podziału na strony
: czw lip 03, 2014 3:42 pm
autor: Rostov
Z wyrównywaniem tła spróbuję wieczorem. Niestety, z resztą nie wiem jak sobie poradzić.
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 12:56 pm
autor: Jan_J
Tak jak myślałem, API nie ogranicza długości strony. Załączam szkic skryptu, który automatyzuje dobór długości strony do tekstu.
Kod: Zaznacz cały
Sub ZrobTakZebyDokumentMialTylkoJednaStroneIToJakNajkrotsza()
rem Skrypt został przygotowany w nadziei, że okaże się użyteczny,
rem ale bez jakiejkolwiek gwarancji, w tym także gwarancji skuteczności ani przydatności.
dim l as long, m as long, r as long
d = thisComponent
c = d.currentController
f = d.StyleFamilies
p = f.getByName("PageStyles")
s = p.getByName("Standard")
rem hunting: podziel na strony A4, a potem scalaj aż dojdziesz do jednej strony
rem s.Height = 29700
rem do while c.PageCount > 1
rem s.Height = 2*s.Height
rem loop
rem alternatywnie: zwielokrotnij wysokość strony; zmniejszenie o wysokość 1 strony spowoduje przełamanie na dwie
h = s.Height
r = h * c.PageCount
l = r - h
rem bisekcja
do while l < r-1
m = int((l+r)/2)
s.Height = m
if c.PageCount = 1 then
r = m-1
else
l = m
endif
loop
rem kontrola; powinno być 1
n = c.PageCount
End Sub
Działa pod warunkiem, że wszystkie strony mają jednakową wysokość odczytaną ze stylu Standard.
Dla jasności: nie jest to usunięcie łamania. Dokument wciąż jest stronicowany, i musi być. Jedyne co robimy, to dobór wysokości strony.
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 1:31 pm
autor: Rostov
Jak wykonać ten skrypt? Nie mam bowiem żadnego doświadczenia ani wiedzy w tym temacie.
I jeszcze jedno: czy ten skrypt będzie działał tylko w przypadku konkretnego dokumentu czy wszystkich stworzonych od momentu jego wykonania?
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 1:42 pm
autor: Jan_J
Instalacja: Narzędzia/Makra/Zarządzaj/Basic/Moje makra/Nowy moduł/<wklej>
Użycie: Narzędzia/Makra/Zarządzaj/Basic/Moje makra/.../Uruchom
Skrypt działa na bieżącym dokumencie, czyli tym, w którego oknie wybierzesz Narzędzia/...
Nietrudno jest go zmodyfikować tak, by działał na dokumencie wskazanym innym sposobem.
Ze sposobu zainstalowania wynika, że jest on przywiązany do konfiguracji danego użytkownika na danym komputerze.
Istnieją inne sposoby instalacji, np. dla wszystkich użytkowników danego komputera albo wewnątrz dokumentu.
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 2:00 pm
autor: Rostov
U siebie mam coś takiego:
>>>> Narzędzia
>>> Makra
>> Zarejestruj makro
>> Wykonaj makro
>> Zarządzaj makrami
> OpenOffice Basic
> Python
> BeanShell
> JavaScript
>> Podpis cyfrowy
>> Zarządzaj oknami dialogowymi
Wybrać Zarządzaj makrami/OpenOffice Basic czy Zarządzaj oknami dialogowymi?
Po zajrzeniu do OpenOffice Basic, mam coś takiego:
http://i.imgur.com/oBRoJaz.png
44.odt to nazwa pliku dokumentu, w którym chciałbym zlikwidować stronicowanie.
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 6:15 pm
autor: Jan_J
Zarządzaj makrami/Basic/Moje makra/<nowy moduł>
Re: Wyłączenie podziału na strony
: pt lip 04, 2014 7:34 pm
autor: Rostov
Działa, dziękuję.
