#1126 - Add all comptability options

This commit is contained in:
Dolan Miu
2022-10-29 15:10:02 +01:00
parent 309e66a6de
commit 988987ddbe
18 changed files with 1408 additions and 45 deletions

View File

@ -1,7 +1,7 @@
// Generate a CV
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { AlignmentType, Document, HeadingLevel, Packer, Paragraph, TabStopPosition, TabStopType, TextRun } from "../build";
import { AlignmentType, Document, HeadingLevel, Packer, Paragraph, Tab, TabStopPosition, TabStopType, TextRun } from "../build";
// tslint:disable:no-shadowed-variable
@ -284,7 +284,7 @@ class DocumentCreator {
bold: true,
}),
new TextRun({
text: `\t${dateText}`,
children: [new Tab(), dateText],
bold: true,
}),
],

View File

@ -1,7 +1,7 @@
// Export to base64 string - Useful in a browser environment.
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, Packer, Paragraph, TextRun } from "../build";
import { Document, Packer, Paragraph, Tab, TextRun } from "../build";
const doc = new Document({
sections: [
@ -15,7 +15,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tBar",
children: [new Tab(), "Bar"],
bold: true,
}),
],

View File

@ -1,7 +1,7 @@
// Example of making content of section vertically aligned
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, Packer, Paragraph, VerticalAlign, TextRun } from "../build";
import { Document, Packer, Paragraph, VerticalAlign, TextRun, Tab } from "../build";
const doc = new Document({
sections: [
@ -18,7 +18,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tGithub is the best",
children: [new Tab(), "Github is the best"],
bold: true,
}),
],

View File

@ -1,7 +1,7 @@
// Change background colour of whole document
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, Packer, Paragraph, TextRun } from "../build";
import { Document, Packer, Paragraph, Tab, TextRun } from "../build";
const doc = new Document({
background: {
@ -19,7 +19,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tGithub is the best",
children: [new Tab(), "Github is the best"],
bold: true,
}),
],

View File

@ -1,7 +1,7 @@
// Example of how to change page borders
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, HeadingLevel, Packer, Paragraph, TextRun } from "../build";
import { Document, HeadingLevel, Packer, Paragraph, Tab, TextRun } from "../build";
const doc = new Document({
sections: [
@ -25,7 +25,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tGithub is the best",
children: [new Tab(), "Github is the best"],
bold: true,
}),
],

View File

@ -12,6 +12,7 @@ import {
PageNumber,
Paragraph,
ShadingType,
Tab,
TextRun,
} from "../build";
@ -111,7 +112,7 @@ const doc = new Document({
}),
new TextRun({
bold: true,
children: ["\tuse Inserted and Deleted TextRuns.", new FootnoteReferenceRun(1)],
children: [new Tab(), "use Inserted and Deleted TextRuns.", new FootnoteReferenceRun(1)],
}),
new TextRun({
bold: true,

View File

@ -8,6 +8,7 @@ import {
HorizontalPositionAlign,
Packer,
Paragraph,
Tab,
TextRun,
VerticalPositionAlign,
} from "../build";
@ -67,7 +68,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tGithub is the best",
children: [new Tab(), "Github is the best"],
bold: true,
}),
],

View File

@ -1,7 +1,7 @@
// Exporting the document as a stream
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, Packer, Paragraph, TextRun } from "../build";
import { Document, Packer, Paragraph, Tab, TextRun } from "../build";
const doc = new Document({
sections: [
@ -16,7 +16,7 @@ const doc = new Document({
bold: true,
}),
new TextRun({
text: "\tGithub is the best",
children: [new Tab(), "Github is the best"],
bold: true,
}),
],

87
demo/76-compatibility.ts Normal file
View File

@ -0,0 +1,87 @@
// Add compatibility options
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { Document, Packer, Paragraph, TextRun } from "../build";
const doc = new Document({
compatibility: {
useSingleBorderforContiguousCells: true,
wordPerfectJustification: true,
noTabStopForHangingIndent: true,
noLeading: true,
spaceForUnderline: true,
noColumnBalance: true,
balanceSingleByteDoubleByteWidth: true,
noExtraLineSpacing: true,
doNotLeaveBackslashAlone: true,
underlineTrailingSpaces: true,
doNotExpandShiftReturn: true,
spacingInWholePoints: true,
lineWrapLikeWord6: true,
printBodyTextBeforeHeader: true,
printColorsBlack: true,
spaceWidth: true,
showBreaksInFrames: true,
subFontBySize: true,
suppressBottomSpacing: true,
suppressTopSpacing: true,
suppressSpacingAtTopOfPage: true,
suppressTopSpacingWP: true,
suppressSpBfAfterPgBrk: true,
swapBordersFacingPages: true,
convertMailMergeEsc: true,
truncateFontHeightsLikeWP6: true,
macWordSmallCaps: true,
usePrinterMetrics: true,
doNotSuppressParagraphBorders: true,
wrapTrailSpaces: true,
footnoteLayoutLikeWW8: true,
shapeLayoutLikeWW8: true,
alignTablesRowByRow: true,
forgetLastTabAlignment: true,
adjustLineHeightInTable: true,
autoSpaceLikeWord95: true,
noSpaceRaiseLower: true,
doNotUseHTMLParagraphAutoSpacing: true,
layoutRawTableWidth: true,
layoutTableRowsApart: true,
useWord97LineBreakRules: true,
doNotBreakWrappedTables: true,
doNotSnapToGridInCell: true,
selectFieldWithFirstOrLastCharacter: true,
applyBreakingRules: true,
doNotWrapTextWithPunctuation: true,
doNotUseEastAsianBreakRules: true,
useWord2002TableStyleRules: true,
growAutofit: true,
useFELayout: true,
useNormalStyleForList: true,
doNotUseIndentAsNumberingTabStop: true,
useAlternateEastAsianLineBreakRules: true,
allowSpaceOfSameStyleInTable: true,
doNotSuppressIndentation: true,
doNotAutofitConstrainedTables: true,
autofitToFirstFixedWidthCell: true,
underlineTabInNumberingList: true,
displayHangulFixedWidth: true,
splitPgBreakAndParaMark: true,
doNotVerticallyAlignCellWithSp: true,
doNotBreakConstrainedForcedTable: true,
ignoreVerticalAlignmentInTextboxes: true,
useAnsiKerningPairs: true,
cachedColumnBalance: true,
},
sections: [
{
children: [
new Paragraph({
children: [new TextRun("Hello World")],
}),
],
},
],
});
Packer.toBuffer(doc).then((buffer) => {
fs.writeFileSync("My Document.docx", buffer);
});

View File

@ -24,7 +24,7 @@
bold: true,
}),
new docx.TextRun({
text: "\tGithub is the best",
children: [new docx.Tab(), "Github is the best"],
bold: true,
}),
],