diff --git a/src/file/paragraph/run/formatting.ts b/src/file/paragraph/run/formatting.ts index 16fb744e5d..eb6cc54c87 100644 --- a/src/file/paragraph/run/formatting.ts +++ b/src/file/paragraph/run/formatting.ts @@ -123,3 +123,14 @@ export class Size extends XmlComponent { ); } } + +export class RTL extends XmlComponent { + constructor() { + super("w:rtl"); + this.root.push( + new Attributes({ + val: true, + }), + ); + } +} \ No newline at end of file diff --git a/src/file/paragraph/run/run.spec.ts b/src/file/paragraph/run/run.spec.ts index 050989c941..d865813d36 100644 --- a/src/file/paragraph/run/run.spec.ts +++ b/src/file/paragraph/run/run.spec.ts @@ -139,6 +139,16 @@ describe("Run", () => { }); }); + describe("#rtl", () => { + it("should set the run to the RTL mode", () => { + run.rtl(); + const tree = new Formatter().format(run); + expect(tree).to.deep.equal({ + "w:r": [{ "w:rPr": [{ "w:rtl": [{ _attr: { "w:val": true } }]}]}], + }); + }); + }); + describe("#style", () => { it("should set the style to the given styleId", () => { run.style("myRunStyle"); diff --git a/src/file/paragraph/run/run.ts b/src/file/paragraph/run/run.ts index c258c52702..3aeaa8a69e 100644 --- a/src/file/paragraph/run/run.ts +++ b/src/file/paragraph/run/run.ts @@ -1,7 +1,7 @@ // http://officeopenxml.com/WPtext.php import { Break } from "./break"; import { Caps, SmallCaps } from "./caps"; -import { Bold, Color, DoubleStrike, Italics, Size, Strike } from "./formatting"; +import { Bold, Color, DoubleStrike, Italics, Size, RTL, Strike } from "./formatting"; import { Begin, End, Page, Separate } from "./page-number"; import { RunProperties } from "./properties"; import { RunFonts } from "./run-fonts"; @@ -46,6 +46,11 @@ export class Run extends XmlComponent { return this; } + public rtl(): Run { + this.properties.push(new RTL()); + return this; + } + public break(): Run { this.root.splice(1, 0, new Break()); return this;