Problem with reading 'writing-mode' ODF attribute in Impress
rb.henschel at t-online.de
Fri Aug 26 08:41:06 UTC 2022
Miklos Vajna schrieb am 26.08.2022 um 08:36:
> Hi Regina,
> On Thu, Aug 25, 2022 at 11:31:24AM +0200, Regina Henschel wrote:
>> Has someone an idea, why the import for 'loext' does not work? Or can
>> someone point me to the place, where this part of import happens? Or can
>> someone explain to me the steps involved in importing a style? Any help is
> I think writing mode was originally in the style namespace, and I only
> added a new enumeration value (btlr) that required writing it in the
> loext namespace. Given that other writing directions are quite common, I
> made sure that only btlr gets written to loext, other enumeration values
> continue to use style:
The export part works with my patch for shapes too. I get the correct
> The import side is easier, simply the property map has 2 entries and we
> read all enum values from both namespaces.
The import part is the problem. loext:writing-mode="bt-lr" is not read,
when it is used for a shape. When it is used for a frame, there is no
Which "property map" do you mean?
> Now my understanding is that editeng (i.e. shape text) only supports
> lrtb ("horizontal") and tbrl ("vertical") writing modes (so it's
> essentially a single "vertical" boolean), so which means for you that
> "rotate to the right" would work for you, but "rotate to the left" only
> works in Writer table cells and text frames, not in shape text's writing
Problem is, that style:writing-mode="tb-lr" (OOXML vert="eaVert") and
style:writing-mode="tb-lr" (OOXML vert="mongolianVert") are correctly
loaded into 'WritingMode' API-attribute, but loext:writing-mode="bt-lr"
(OOXML vert="vert270") and my new loext:writing-mode="tb-rl90" (OOXML
vert="vert") are not loaded. And I have no clue where they are lost.
More information about the LibreOffice