OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Użytkowanie edytora dokumentów
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Chodzi mi o możliwość regulacji odstępu pomiędzy znakami. W M$ Word mogłem regulować to gdzieś przy opcji kerningu wstawiając jako odstęp między znakami wartość ujemną. W Writerze mogę wybrać (we właściwościach znaku) styl ścieśniony, ale wartości jakie tam można zaznaczyć to zakres od 0 do 3 punktów. Potrzebuję ustawić pewnie z 10 punktów, wtedy znaki powinny się "zejść".

Po co mi takie sztuczki? Np. po to, żeby w samym formacie tekstu uzyskać checkbox z wpisanym znakiem "X" jako krzyżykiem. Wiem, że można kombinować inaczej, ale moja metoda będzie najmniej podatna na rozjeżdżanie się formatowania tekstu (np. na różnych platformach).
OpenOffice 4.0 MacOS 10.13
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jermor »

W zestawie znaków masz znak U+00D7, który wygląda tak ×. Nie ma wówczas potrzeby kombinowania z łączeniem różnych znaków.
Ponieważ korzystasz z Apache OpenOffice musisz go wybrać poprzez wstawianie z tablicy znaków: podzbiór Łaciński-1 między Ö i Ø.
W LibreOffice mógłbyś napisać w tekście 00d7 i nacisnąć ALT+X a system natychmiast przekształci kod w znak.
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Zupełnie nie o to chodzi. Checkbox to "kwadracik", a zaznaczony checkbox to "kwadracik z krzyżykiem w środku". Poza tym Twoje rozwiązanie zadziała lokalnie, po przeniesieniu do innego systemu nigdy nie ma pewności co do występowania zestawu czcionek. Dlatego szukam metody polegającej na wpisaniu "kwadracika" i obok znaku "x", a potem nasunięciu ich na siebie. W Word na pewno to można wykonać.
OpenOffice 4.0 MacOS 10.13
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jermor »

Ten symbol, który podałem, nie zależy od zestawu czcionek. Jest to kod znaku i pojawi się w każdej czcionce.
W zestawach czcionek w LibreOffice i Apache OpenOffice jest czcionka Open Symbol, zawierająca symbol . Ten symbol wstawiony do tekstu nie zmienia się, gdy zmieniam czcionkę dla całego tekstu albo kopiuję go np. do dokumentu Word. Może poeksperymentuj z tym rozwiązaniem.
W LibreOffice możesz we właściwościach dokumentu ustawić opcję osadzenia w dokumencie użytych czcionek, dokument wówczas nie zależy od zestawu czcionek w innym systemie..
Nie zmienia to jednak faktu, że nie można nasunąć na siebie znaków.
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jan_J »

Ujemny kernig jest jak najbardziej kulturalną metodą dla demonstracji nakładających się symboli. Ale w 100% odporny nie będzie. Szerokosć znaków zależy od fontu, a związek kerningu z wielkością pisma jest ważny tylko na daną chwilę (wielkość w procentach i tak zostanie przeliczona na punkty). Więc się to rozjedzie przy przeskładaniu.

W Libre (6.4) ktoś podjął decyzję, by minimalna wielkosć kerningu akceptowana przez formularz Format/Znak wynosiła -2 pt. Jest to ograniczenie formularza/interfejsu, a nie systemu do składu czy formatu zapisu. Więc gdyby jakimś sposobem w dokumencie znalazł się wpis z kerningiem dajmy na to -12 pt i nikt by go nie ruszał podczas edycji, to przypuszczalnie znaki nachodziły na siebie tak jak trzeba.

(Jest to moje przypuszczenie, nie pewność wynikająca ze sprawdzenia. Kiedyś eksperymentowałem w ten sposób z wysokością strony i dało się wyprodukować jednostronicowy dokument na taśmie kilkunastometrowej długości).

Inną / być może łatwiejszą do zarządzania metodą jest wstawka rysunkowa z obiektami wyrównanymi do własnych centrów.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Jermor pisze:Ten symbol, który podałem, nie zależy od zestawu czcionek. Jest to kod znaku i pojawi się w każdej czcionce.
W zestawach czcionek w LibreOffice i Apache OpenOffice jest czcionka Open Symbol, zawierająca symbol . Ten symbol wstawiony do tekstu nie zmienia się, gdy zmieniam czcionkę dla całego tekstu albo kopiuję go np. do dokumentu Word. Może poeksperymentuj z tym rozwiązaniem.
Wiem, że jest znak checkbox'a z krzyżykiem w środku, ale... nie ma idealnie tej samej wielkości checkbox'a bez tego iksa. To jest zresztą mało eleganckie rozwiązanie.
OpenOffice 4.0 MacOS 10.13
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Jan_J pisze:Ujemny kernig jest jak najbardziej kulturalną metodą dla demonstracji nakładających się symboli. Ale w 100% odporny nie będzie. Szerokosć znaków zależy od fontu, a związek kerningu z wielkością pisma jest ważny tylko na daną chwilę (wielkość w procentach i tak zostanie przeliczona na punkty). Więc się to rozjedzie przy przeskładaniu.

W Libre (6.4) ktoś podjął decyzję, by minimalna wielkosć kerningu akceptowana przez formularz Format/Znak wynosiła -2 pt. Jest to ograniczenie formularza/interfejsu, a nie systemu do składu czy formatu zapisu. Więc gdyby jakimś sposobem w dokumencie znalazł się wpis z kerningiem dajmy na to -12 pt i nikt by go nie ruszał podczas edycji, to przypuszczalnie znaki nachodziły na siebie tak jak trzeba.

(Jest to moje przypuszczenie, nie pewność wynikająca ze sprawdzenia. Kiedyś eksperymentowałem w ten sposób z wysokością strony i dało się wyprodukować jednostronicowy dokument na taśmie kilkunastometrowej długości).

Inną / być może łatwiejszą do zarządzania metodą jest wstawka rysunkowa z obiektami wyrównanymi do własnych centrów.
Dziękuję za potwierdzenie w pierwszym zdaniu. Mam świadomość, że nie jest to rozwiązanie odporne w 100% na różne sytuacje. Co do OpenOffice, mogli rzeczywiście ograniczyć formularz do zakresu 0-3 punktów. Muszę popatrzeć w plik źródłowy, jakby się udało chociaż raz osiągnąć taki przekreślony checkbox metodą nasuwania na siebie dwóch znaków, można potem po prostu kopiować gotowe rozwiązanie.
OpenOffice 4.0 MacOS 10.13
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jan_J »

mike7 pisze:[...] jakby się udało chociaż raz osiągnąć taki przekreślony checkbox metodą nasuwania na siebie dwóch znaków, można potem po prostu kopiować gotowe rozwiązanie.
Mówiłem „nie ruszać”, ale nie na tym poziomie.
Sądzę że dałoby się zdefiniować styl znakowy „cofający” znaki o określony kern. Taki styl można by aplikować dowolnie, a nieruszanie polegałoby na rezygnacji z zarządzania jego właściwościami.
Kryje się w tym pułapka. Jednokrotne zatwierdzenie [ OK ] w oknie dialogowym stylu zniszczy formatowanie w sposób nieodwracalny dla użytkownika operującego wyłącznie interfejsem użytkowym Writera.

Jak to zrobić? widzę co najmniej 2 metody:
* ręczne grzebanie w kodzie XML dokumentu;
* ustawienie właściwości stylu za pomocą UNO API (czyli napisanie tzw. makra).

Swoją drogą, jeśli mielibyśmy kopiować gotowe rozwiązanie, to konglomerat znaków wyrównanych w rysunku powinien się nadać nie gorzej.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Trochę szkoda, że trzeba schodzić na niższy poziom. To jest jednak opcja, którą projektant mógłby sobie wyobrazić, tym bardziej, że można ją podejrzeć u konkurencji.
OpenOffice 4.0 MacOS 10.13
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jan_J »

Spróbowałem i nie udało się.

Nowy styl znakowy (z szerokim dodatnim kerningiem) nazwałem "Nasuwa". Rozpakowałem odt i przejrzałem plik styles.xml. Definicja stylu była widoczna we wpisie

Kod: Zaznacz cały

<style:style style:name="Nasuwa" style:family="text"><style:text-properties fo:letter-spacing="0.293cm"/></style:style>
Próba polega spakowaniu pliku ze zmienionym opisem z powrotem do dokumentu.
Niestety, wpisanie wartości ujemnej mniejszej niż metryczny odpowiednik -2pt sprawiało, że wartość i tak zatrzymywała się na -2pt. Tak jakby nie tylko formularz, ale także albo wczytywanie dokumentu, albo jego renderowanie miały zabezpieczenie przed zbyt małą wartością.
Nie rozumiem dlaczego tak musi być; pewnie nie musi, tylko jest.

To znaczy, pierwsza z proponowanych metod niskopoziomowych okazała się nieskuteczna.


W Bugzilli znalazłem zgłoszenia:
https://bugs.documentfoundation.org/sho ... ?id=137296 (październik 2020; całkiem na temat, choć motywacja inna)
oraz nieco starsze (2019) https://bugs.documentfoundation.org/sho ... ?id=107405
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Jak widać, problemem jest ustawienie na sztywno ograniczenia w kodzie. Na dzień dzisiejszy po prostu notuję sobie w szarej substancji, że Writer nie posiada takiej możliwości. Szczerze mówiąc nie umiem znaleźć przyczyny wprowadzenia takiego ograniczenia...
OpenOffice 4.0 MacOS 10.13
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jermor »

Zrobiłem eksperyment z dokumentem Word.
Zrzut ekranu Word 2020-10-14 113847.png
Zrzut ekranu Word 2020-10-14 113847.png (11.11 KiB) Przejrzano 6555 razy
Po czym otworzyłem ten plik w Writerze
Zrzut ekranu Writer 2020-10-14 114052.png
Co ciekawe w podglądzie ustawienia widać to co jest w Wordzie.
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jan_J »

mike7 pisze:Szczerze mówiąc nie umiem znaleźć przyczyny wprowadzenia takiego ograniczenia...
“The difficulty lies not in the limitations of keyboards, but in those of programmers who wrote the systems used.”
[P. H. Collin Dictionary of Printing and Publishing. 1997]

(Wypowiedź dotyczyła używania ligatur w systemach DTP.)
Jermor pisze:Zrobiłem eksperyment [...]
Wychodzi na to, że zabezpieczenie jest w opisie parsowania dokumentu, a nie (nie tylko?) w formularzu.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Jermor pisze:Co ciekawe w podglądzie ustawienia widać to co jest w Wordzie.
Jasne, że widać.
OpenOffice 4.0 MacOS 10.13
Awatar użytkownika
Jermor
Posty: 2254
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: Jermor »

Może zatem warto zgodzić się na pewne niedoskonałości?
W LibreOffice
LOu 2020-10-14 122007.png
LOu 2020-10-14 122007.png (4.28 KiB) Przejrzano 6551 razy
W Apache OpenOffice
obraz_2020-10-14_140054.png
obraz_2020-10-14_140054.png (3.41 KiB) Przejrzano 6551 razy
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
mike7
Posty: 14
Rejestracja: pn paź 12, 2020 11:56 pm

Re: OpenOffice Writer - Jak nałożyć na siebie dwa znaki?

Post autor: mike7 »

Jermor pisze:Może zatem warto zgodzić się na pewne niedoskonałości?
W LibreOffice
LOu 2020-10-14 122007.png
W Apache OpenOffice
obraz_2020-10-14_140054.png
Czy warto to nie wiem, to raczej przymus. I niesie ze sobą pewne niedogodności. Do momentu znalezienia bardziej eleganckiego rozwiązania pozostaje to ratunkowe wyjście.
OpenOffice 4.0 MacOS 10.13
ODPOWIEDZ