Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/embedpre.../assets/pdf/build
File: pdf.worker.js
}
[56500] Fix | Delete
const indices = [];
[56501] Fix | Delete
const {
[56502] Fix | Delete
options
[56503] Fix | Delete
} = this.data;
[56504] Fix | Delete
for (let i = 0, j = 0, ii = options.length; i < ii; i++) {
[56505] Fix | Delete
if (options[i].exportValue === values[j]) {
[56506] Fix | Delete
indices.push(i);
[56507] Fix | Delete
j += 1;
[56508] Fix | Delete
}
[56509] Fix | Delete
}
[56510] Fix | Delete
dict.set("I", indices);
[56511] Fix | Delete
}
[56512] Fix | Delete
async _getAppearance(evaluator, task, intent, annotationStorage) {
[56513] Fix | Delete
if (this.data.combo) {
[56514] Fix | Delete
return super._getAppearance(evaluator, task, intent, annotationStorage);
[56515] Fix | Delete
}
[56516] Fix | Delete
let exportedValue, rotation;
[56517] Fix | Delete
const storageEntry = annotationStorage?.get(this.data.id);
[56518] Fix | Delete
if (storageEntry) {
[56519] Fix | Delete
rotation = storageEntry.rotation;
[56520] Fix | Delete
exportedValue = storageEntry.value;
[56521] Fix | Delete
}
[56522] Fix | Delete
if (rotation === undefined && exportedValue === undefined && !this._needAppearances) {
[56523] Fix | Delete
return null;
[56524] Fix | Delete
}
[56525] Fix | Delete
if (exportedValue === undefined) {
[56526] Fix | Delete
exportedValue = this.data.fieldValue;
[56527] Fix | Delete
} else if (!Array.isArray(exportedValue)) {
[56528] Fix | Delete
exportedValue = [exportedValue];
[56529] Fix | Delete
}
[56530] Fix | Delete
const defaultPadding = 1;
[56531] Fix | Delete
const defaultHPadding = 2;
[56532] Fix | Delete
let totalHeight = this.data.rect[3] - this.data.rect[1];
[56533] Fix | Delete
let totalWidth = this.data.rect[2] - this.data.rect[0];
[56534] Fix | Delete
if (rotation === 90 || rotation === 270) {
[56535] Fix | Delete
[totalWidth, totalHeight] = [totalHeight, totalWidth];
[56536] Fix | Delete
}
[56537] Fix | Delete
const lineCount = this.data.options.length;
[56538] Fix | Delete
const valueIndices = [];
[56539] Fix | Delete
for (let i = 0; i < lineCount; i++) {
[56540] Fix | Delete
const {
[56541] Fix | Delete
exportValue
[56542] Fix | Delete
} = this.data.options[i];
[56543] Fix | Delete
if (exportedValue.includes(exportValue)) {
[56544] Fix | Delete
valueIndices.push(i);
[56545] Fix | Delete
}
[56546] Fix | Delete
}
[56547] Fix | Delete
if (!this._defaultAppearance) {
[56548] Fix | Delete
this.data.defaultAppearanceData = parseDefaultAppearance(this._defaultAppearance = "/Helvetica 0 Tf 0 g");
[56549] Fix | Delete
}
[56550] Fix | Delete
const font = await WidgetAnnotation._getFontData(evaluator, task, this.data.defaultAppearanceData, this._fieldResources.mergedResources);
[56551] Fix | Delete
let defaultAppearance;
[56552] Fix | Delete
let {
[56553] Fix | Delete
fontSize
[56554] Fix | Delete
} = this.data.defaultAppearanceData;
[56555] Fix | Delete
if (!fontSize) {
[56556] Fix | Delete
const lineHeight = (totalHeight - defaultPadding) / lineCount;
[56557] Fix | Delete
let lineWidth = -1;
[56558] Fix | Delete
let value;
[56559] Fix | Delete
for (const {
[56560] Fix | Delete
displayValue
[56561] Fix | Delete
} of this.data.options) {
[56562] Fix | Delete
const width = this._getTextWidth(displayValue, font);
[56563] Fix | Delete
if (width > lineWidth) {
[56564] Fix | Delete
lineWidth = width;
[56565] Fix | Delete
value = displayValue;
[56566] Fix | Delete
}
[56567] Fix | Delete
}
[56568] Fix | Delete
[defaultAppearance, fontSize] = this._computeFontSize(lineHeight, totalWidth - 2 * defaultHPadding, value, font, -1);
[56569] Fix | Delete
} else {
[56570] Fix | Delete
defaultAppearance = this._defaultAppearance;
[56571] Fix | Delete
}
[56572] Fix | Delete
const lineHeight = fontSize * LINE_FACTOR;
[56573] Fix | Delete
const vPadding = (lineHeight - fontSize) / 2;
[56574] Fix | Delete
const numberOfVisibleLines = Math.floor(totalHeight / lineHeight);
[56575] Fix | Delete
let firstIndex = 0;
[56576] Fix | Delete
if (valueIndices.length > 0) {
[56577] Fix | Delete
const minIndex = Math.min(...valueIndices);
[56578] Fix | Delete
const maxIndex = Math.max(...valueIndices);
[56579] Fix | Delete
firstIndex = Math.max(0, maxIndex - numberOfVisibleLines + 1);
[56580] Fix | Delete
if (firstIndex > minIndex) {
[56581] Fix | Delete
firstIndex = minIndex;
[56582] Fix | Delete
}
[56583] Fix | Delete
}
[56584] Fix | Delete
const end = Math.min(firstIndex + numberOfVisibleLines + 1, lineCount);
[56585] Fix | Delete
const buf = ["/Tx BMC q", `1 1 ${totalWidth} ${totalHeight} re W n`];
[56586] Fix | Delete
if (valueIndices.length) {
[56587] Fix | Delete
buf.push("0.600006 0.756866 0.854904 rg");
[56588] Fix | Delete
for (const index of valueIndices) {
[56589] Fix | Delete
if (firstIndex <= index && index < end) {
[56590] Fix | Delete
buf.push(`1 ${totalHeight - (index - firstIndex + 1) * lineHeight} ${totalWidth} ${lineHeight} re f`);
[56591] Fix | Delete
}
[56592] Fix | Delete
}
[56593] Fix | Delete
}
[56594] Fix | Delete
buf.push("BT", defaultAppearance, `1 0 0 1 0 ${totalHeight} Tm`);
[56595] Fix | Delete
const prevInfo = {
[56596] Fix | Delete
shift: 0
[56597] Fix | Delete
};
[56598] Fix | Delete
for (let i = firstIndex; i < end; i++) {
[56599] Fix | Delete
const {
[56600] Fix | Delete
displayValue
[56601] Fix | Delete
} = this.data.options[i];
[56602] Fix | Delete
const vpadding = i === firstIndex ? vPadding : 0;
[56603] Fix | Delete
buf.push(this._renderText(displayValue, font, fontSize, totalWidth, 0, prevInfo, defaultHPadding, -lineHeight + vpadding));
[56604] Fix | Delete
}
[56605] Fix | Delete
buf.push("ET Q EMC");
[56606] Fix | Delete
return buf.join("\n");
[56607] Fix | Delete
}
[56608] Fix | Delete
}
[56609] Fix | Delete
class SignatureWidgetAnnotation extends WidgetAnnotation {
[56610] Fix | Delete
constructor(params) {
[56611] Fix | Delete
super(params);
[56612] Fix | Delete
this.data.fieldValue = null;
[56613] Fix | Delete
this.data.hasOwnCanvas = this.data.noRotate;
[56614] Fix | Delete
this.data.noHTML = !this.data.hasOwnCanvas;
[56615] Fix | Delete
}
[56616] Fix | Delete
getFieldObject() {
[56617] Fix | Delete
return {
[56618] Fix | Delete
id: this.data.id,
[56619] Fix | Delete
value: null,
[56620] Fix | Delete
page: this.data.pageIndex,
[56621] Fix | Delete
type: "signature"
[56622] Fix | Delete
};
[56623] Fix | Delete
}
[56624] Fix | Delete
}
[56625] Fix | Delete
class TextAnnotation extends MarkupAnnotation {
[56626] Fix | Delete
constructor(params) {
[56627] Fix | Delete
const DEFAULT_ICON_SIZE = 22;
[56628] Fix | Delete
super(params);
[56629] Fix | Delete
this.data.noRotate = true;
[56630] Fix | Delete
this.data.hasOwnCanvas = this.data.noRotate;
[56631] Fix | Delete
this.data.noHTML = false;
[56632] Fix | Delete
const {
[56633] Fix | Delete
dict
[56634] Fix | Delete
} = params;
[56635] Fix | Delete
this.data.annotationType = AnnotationType.TEXT;
[56636] Fix | Delete
if (this.data.hasAppearance) {
[56637] Fix | Delete
this.data.name = "NoIcon";
[56638] Fix | Delete
} else {
[56639] Fix | Delete
this.data.rect[1] = this.data.rect[3] - DEFAULT_ICON_SIZE;
[56640] Fix | Delete
this.data.rect[2] = this.data.rect[0] + DEFAULT_ICON_SIZE;
[56641] Fix | Delete
this.data.name = dict.has("Name") ? dict.get("Name").name : "Note";
[56642] Fix | Delete
}
[56643] Fix | Delete
if (dict.has("State")) {
[56644] Fix | Delete
this.data.state = dict.get("State") || null;
[56645] Fix | Delete
this.data.stateModel = dict.get("StateModel") || null;
[56646] Fix | Delete
} else {
[56647] Fix | Delete
this.data.state = null;
[56648] Fix | Delete
this.data.stateModel = null;
[56649] Fix | Delete
}
[56650] Fix | Delete
}
[56651] Fix | Delete
}
[56652] Fix | Delete
class LinkAnnotation extends Annotation {
[56653] Fix | Delete
constructor(params) {
[56654] Fix | Delete
super(params);
[56655] Fix | Delete
const {
[56656] Fix | Delete
dict,
[56657] Fix | Delete
annotationGlobals
[56658] Fix | Delete
} = params;
[56659] Fix | Delete
this.data.annotationType = AnnotationType.LINK;
[56660] Fix | Delete
this.data.noHTML = false;
[56661] Fix | Delete
const quadPoints = getQuadPoints(dict, this.rectangle);
[56662] Fix | Delete
if (quadPoints) {
[56663] Fix | Delete
this.data.quadPoints = quadPoints;
[56664] Fix | Delete
}
[56665] Fix | Delete
this.data.borderColor ||= this.data.color;
[56666] Fix | Delete
Catalog.parseDestDictionary({
[56667] Fix | Delete
destDict: dict,
[56668] Fix | Delete
resultObj: this.data,
[56669] Fix | Delete
docBaseUrl: annotationGlobals.baseUrl,
[56670] Fix | Delete
docAttachments: annotationGlobals.attachments
[56671] Fix | Delete
});
[56672] Fix | Delete
}
[56673] Fix | Delete
}
[56674] Fix | Delete
class PopupAnnotation extends Annotation {
[56675] Fix | Delete
constructor(params) {
[56676] Fix | Delete
super(params);
[56677] Fix | Delete
const {
[56678] Fix | Delete
dict
[56679] Fix | Delete
} = params;
[56680] Fix | Delete
this.data.annotationType = AnnotationType.POPUP;
[56681] Fix | Delete
this.data.noHTML = false;
[56682] Fix | Delete
if (this.data.rect[0] === this.data.rect[2] || this.data.rect[1] === this.data.rect[3]) {
[56683] Fix | Delete
this.data.rect = null;
[56684] Fix | Delete
}
[56685] Fix | Delete
let parentItem = dict.get("Parent");
[56686] Fix | Delete
if (!parentItem) {
[56687] Fix | Delete
warn("Popup annotation has a missing or invalid parent annotation.");
[56688] Fix | Delete
return;
[56689] Fix | Delete
}
[56690] Fix | Delete
this.data.parentRect = lookupNormalRect(parentItem.getArray("Rect"), null);
[56691] Fix | Delete
const rt = parentItem.get("RT");
[56692] Fix | Delete
if (isName(rt, AnnotationReplyType.GROUP)) {
[56693] Fix | Delete
parentItem = parentItem.get("IRT");
[56694] Fix | Delete
}
[56695] Fix | Delete
if (!parentItem.has("M")) {
[56696] Fix | Delete
this.data.modificationDate = null;
[56697] Fix | Delete
} else {
[56698] Fix | Delete
this.setModificationDate(parentItem.get("M"));
[56699] Fix | Delete
this.data.modificationDate = this.modificationDate;
[56700] Fix | Delete
}
[56701] Fix | Delete
if (!parentItem.has("C")) {
[56702] Fix | Delete
this.data.color = null;
[56703] Fix | Delete
} else {
[56704] Fix | Delete
this.setColor(parentItem.getArray("C"));
[56705] Fix | Delete
this.data.color = this.color;
[56706] Fix | Delete
}
[56707] Fix | Delete
if (!this.viewable) {
[56708] Fix | Delete
const parentFlags = parentItem.get("F");
[56709] Fix | Delete
if (this._isViewable(parentFlags)) {
[56710] Fix | Delete
this.setFlags(parentFlags);
[56711] Fix | Delete
}
[56712] Fix | Delete
}
[56713] Fix | Delete
this.setTitle(parentItem.get("T"));
[56714] Fix | Delete
this.data.titleObj = this._title;
[56715] Fix | Delete
this.setContents(parentItem.get("Contents"));
[56716] Fix | Delete
this.data.contentsObj = this._contents;
[56717] Fix | Delete
if (parentItem.has("RC")) {
[56718] Fix | Delete
this.data.richText = XFAFactory.getRichTextAsHtml(parentItem.get("RC"));
[56719] Fix | Delete
}
[56720] Fix | Delete
this.data.open = !!dict.get("Open");
[56721] Fix | Delete
}
[56722] Fix | Delete
}
[56723] Fix | Delete
class FreeTextAnnotation extends MarkupAnnotation {
[56724] Fix | Delete
constructor(params) {
[56725] Fix | Delete
super(params);
[56726] Fix | Delete
this.data.hasOwnCanvas = !this.data.noHTML;
[56727] Fix | Delete
this.data.noHTML = false;
[56728] Fix | Delete
const {
[56729] Fix | Delete
evaluatorOptions,
[56730] Fix | Delete
xref
[56731] Fix | Delete
} = params;
[56732] Fix | Delete
this.data.annotationType = AnnotationType.FREETEXT;
[56733] Fix | Delete
this.setDefaultAppearance(params);
[56734] Fix | Delete
this._hasAppearance = !!this.appearance;
[56735] Fix | Delete
if (this._hasAppearance) {
[56736] Fix | Delete
const {
[56737] Fix | Delete
fontColor,
[56738] Fix | Delete
fontSize
[56739] Fix | Delete
} = parseAppearanceStream(this.appearance, evaluatorOptions, xref);
[56740] Fix | Delete
this.data.defaultAppearanceData.fontColor = fontColor;
[56741] Fix | Delete
this.data.defaultAppearanceData.fontSize = fontSize || 10;
[56742] Fix | Delete
} else {
[56743] Fix | Delete
this.data.defaultAppearanceData.fontSize ||= 10;
[56744] Fix | Delete
const {
[56745] Fix | Delete
fontColor,
[56746] Fix | Delete
fontSize
[56747] Fix | Delete
} = this.data.defaultAppearanceData;
[56748] Fix | Delete
if (this._contents.str) {
[56749] Fix | Delete
this.data.textContent = this._contents.str.split(/\r\n?|\n/).map(line => line.trimEnd());
[56750] Fix | Delete
const {
[56751] Fix | Delete
coords,
[56752] Fix | Delete
bbox,
[56753] Fix | Delete
matrix
[56754] Fix | Delete
} = FakeUnicodeFont.getFirstPositionInfo(this.rectangle, this.rotation, fontSize);
[56755] Fix | Delete
this.data.textPosition = this._transformPoint(coords, bbox, matrix);
[56756] Fix | Delete
}
[56757] Fix | Delete
if (this._isOffscreenCanvasSupported) {
[56758] Fix | Delete
const strokeAlpha = params.dict.get("CA");
[56759] Fix | Delete
const fakeUnicodeFont = new FakeUnicodeFont(xref, "sans-serif");
[56760] Fix | Delete
this.appearance = fakeUnicodeFont.createAppearance(this._contents.str, this.rectangle, this.rotation, fontSize, fontColor, strokeAlpha);
[56761] Fix | Delete
this._streams.push(this.appearance);
[56762] Fix | Delete
} else {
[56763] Fix | Delete
warn("FreeTextAnnotation: OffscreenCanvas is not supported, annotation may not render correctly.");
[56764] Fix | Delete
}
[56765] Fix | Delete
}
[56766] Fix | Delete
}
[56767] Fix | Delete
get hasTextContent() {
[56768] Fix | Delete
return this._hasAppearance;
[56769] Fix | Delete
}
[56770] Fix | Delete
static createNewDict(annotation, xref, {
[56771] Fix | Delete
apRef,
[56772] Fix | Delete
ap
[56773] Fix | Delete
}) {
[56774] Fix | Delete
const {
[56775] Fix | Delete
color,
[56776] Fix | Delete
fontSize,
[56777] Fix | Delete
rect,
[56778] Fix | Delete
rotation,
[56779] Fix | Delete
user,
[56780] Fix | Delete
value
[56781] Fix | Delete
} = annotation;
[56782] Fix | Delete
const freetext = new Dict(xref);
[56783] Fix | Delete
freetext.set("Type", Name.get("Annot"));
[56784] Fix | Delete
freetext.set("Subtype", Name.get("FreeText"));
[56785] Fix | Delete
freetext.set("CreationDate", `D:${getModificationDate()}`);
[56786] Fix | Delete
freetext.set("Rect", rect);
[56787] Fix | Delete
const da = `/Helv ${fontSize} Tf ${getPdfColor(color, true)}`;
[56788] Fix | Delete
freetext.set("DA", da);
[56789] Fix | Delete
freetext.set("Contents", isAscii(value) ? value : stringToUTF16String(value, true));
[56790] Fix | Delete
freetext.set("F", 4);
[56791] Fix | Delete
freetext.set("Border", [0, 0, 0]);
[56792] Fix | Delete
freetext.set("Rotate", rotation);
[56793] Fix | Delete
if (user) {
[56794] Fix | Delete
freetext.set("T", isAscii(user) ? user : stringToUTF16String(user, true));
[56795] Fix | Delete
}
[56796] Fix | Delete
if (apRef || ap) {
[56797] Fix | Delete
const n = new Dict(xref);
[56798] Fix | Delete
freetext.set("AP", n);
[56799] Fix | Delete
if (apRef) {
[56800] Fix | Delete
n.set("N", apRef);
[56801] Fix | Delete
} else {
[56802] Fix | Delete
n.set("N", ap);
[56803] Fix | Delete
}
[56804] Fix | Delete
}
[56805] Fix | Delete
return freetext;
[56806] Fix | Delete
}
[56807] Fix | Delete
static async createNewAppearanceStream(annotation, xref, params) {
[56808] Fix | Delete
const {
[56809] Fix | Delete
baseFontRef,
[56810] Fix | Delete
evaluator,
[56811] Fix | Delete
task
[56812] Fix | Delete
} = params;
[56813] Fix | Delete
const {
[56814] Fix | Delete
color,
[56815] Fix | Delete
fontSize,
[56816] Fix | Delete
rect,
[56817] Fix | Delete
rotation,
[56818] Fix | Delete
value
[56819] Fix | Delete
} = annotation;
[56820] Fix | Delete
const resources = new Dict(xref);
[56821] Fix | Delete
const font = new Dict(xref);
[56822] Fix | Delete
if (baseFontRef) {
[56823] Fix | Delete
font.set("Helv", baseFontRef);
[56824] Fix | Delete
} else {
[56825] Fix | Delete
const baseFont = new Dict(xref);
[56826] Fix | Delete
baseFont.set("BaseFont", Name.get("Helvetica"));
[56827] Fix | Delete
baseFont.set("Type", Name.get("Font"));
[56828] Fix | Delete
baseFont.set("Subtype", Name.get("Type1"));
[56829] Fix | Delete
baseFont.set("Encoding", Name.get("WinAnsiEncoding"));
[56830] Fix | Delete
font.set("Helv", baseFont);
[56831] Fix | Delete
}
[56832] Fix | Delete
resources.set("Font", font);
[56833] Fix | Delete
const helv = await WidgetAnnotation._getFontData(evaluator, task, {
[56834] Fix | Delete
fontName: "Helv",
[56835] Fix | Delete
fontSize
[56836] Fix | Delete
}, resources);
[56837] Fix | Delete
const [x1, y1, x2, y2] = rect;
[56838] Fix | Delete
let w = x2 - x1;
[56839] Fix | Delete
let h = y2 - y1;
[56840] Fix | Delete
if (rotation % 180 !== 0) {
[56841] Fix | Delete
[w, h] = [h, w];
[56842] Fix | Delete
}
[56843] Fix | Delete
const lines = value.split("\n");
[56844] Fix | Delete
const scale = fontSize / 1000;
[56845] Fix | Delete
let totalWidth = -Infinity;
[56846] Fix | Delete
const encodedLines = [];
[56847] Fix | Delete
for (let line of lines) {
[56848] Fix | Delete
const encoded = helv.encodeString(line);
[56849] Fix | Delete
if (encoded.length > 1) {
[56850] Fix | Delete
return null;
[56851] Fix | Delete
}
[56852] Fix | Delete
line = encoded.join("");
[56853] Fix | Delete
encodedLines.push(line);
[56854] Fix | Delete
let lineWidth = 0;
[56855] Fix | Delete
const glyphs = helv.charsToGlyphs(line);
[56856] Fix | Delete
for (const glyph of glyphs) {
[56857] Fix | Delete
lineWidth += glyph.width * scale;
[56858] Fix | Delete
}
[56859] Fix | Delete
totalWidth = Math.max(totalWidth, lineWidth);
[56860] Fix | Delete
}
[56861] Fix | Delete
let hscale = 1;
[56862] Fix | Delete
if (totalWidth > w) {
[56863] Fix | Delete
hscale = w / totalWidth;
[56864] Fix | Delete
}
[56865] Fix | Delete
let vscale = 1;
[56866] Fix | Delete
const lineHeight = LINE_FACTOR * fontSize;
[56867] Fix | Delete
const lineAscent = (LINE_FACTOR - LINE_DESCENT_FACTOR) * fontSize;
[56868] Fix | Delete
const totalHeight = lineHeight * lines.length;
[56869] Fix | Delete
if (totalHeight > h) {
[56870] Fix | Delete
vscale = h / totalHeight;
[56871] Fix | Delete
}
[56872] Fix | Delete
const fscale = Math.min(hscale, vscale);
[56873] Fix | Delete
const newFontSize = fontSize * fscale;
[56874] Fix | Delete
let firstPoint, clipBox, matrix;
[56875] Fix | Delete
switch (rotation) {
[56876] Fix | Delete
case 0:
[56877] Fix | Delete
matrix = [1, 0, 0, 1];
[56878] Fix | Delete
clipBox = [rect[0], rect[1], w, h];
[56879] Fix | Delete
firstPoint = [rect[0], rect[3] - lineAscent];
[56880] Fix | Delete
break;
[56881] Fix | Delete
case 90:
[56882] Fix | Delete
matrix = [0, 1, -1, 0];
[56883] Fix | Delete
clipBox = [rect[1], -rect[2], w, h];
[56884] Fix | Delete
firstPoint = [rect[1], -rect[0] - lineAscent];
[56885] Fix | Delete
break;
[56886] Fix | Delete
case 180:
[56887] Fix | Delete
matrix = [-1, 0, 0, -1];
[56888] Fix | Delete
clipBox = [-rect[2], -rect[3], w, h];
[56889] Fix | Delete
firstPoint = [-rect[2], -rect[1] - lineAscent];
[56890] Fix | Delete
break;
[56891] Fix | Delete
case 270:
[56892] Fix | Delete
matrix = [0, -1, 1, 0];
[56893] Fix | Delete
clipBox = [-rect[3], rect[0], w, h];
[56894] Fix | Delete
firstPoint = [-rect[3], rect[2] - lineAscent];
[56895] Fix | Delete
break;
[56896] Fix | Delete
}
[56897] Fix | Delete
const buffer = ["q", `${matrix.join(" ")} 0 0 cm`, `${clipBox.join(" ")} re W n`, `BT`, `${getPdfColor(color, true)}`, `0 Tc /Helv ${numberToString(newFontSize)} Tf`];
[56898] Fix | Delete
buffer.push(`${firstPoint.join(" ")} Td (${escapeString(encodedLines[0])}) Tj`);
[56899] Fix | Delete
const vShift = numberToString(lineHeight);
[56900] Fix | Delete
for (let i = 1, ii = encodedLines.length; i < ii; i++) {
[56901] Fix | Delete
const line = encodedLines[i];
[56902] Fix | Delete
buffer.push(`0 -${vShift} Td (${escapeString(line)}) Tj`);
[56903] Fix | Delete
}
[56904] Fix | Delete
buffer.push("ET", "Q");
[56905] Fix | Delete
const appearance = buffer.join("\n");
[56906] Fix | Delete
const appearanceStreamDict = new Dict(xref);
[56907] Fix | Delete
appearanceStreamDict.set("FormType", 1);
[56908] Fix | Delete
appearanceStreamDict.set("Subtype", Name.get("Form"));
[56909] Fix | Delete
appearanceStreamDict.set("Type", Name.get("XObject"));
[56910] Fix | Delete
appearanceStreamDict.set("BBox", rect);
[56911] Fix | Delete
appearanceStreamDict.set("Resources", resources);
[56912] Fix | Delete
appearanceStreamDict.set("Matrix", [1, 0, 0, 1, -rect[0], -rect[1]]);
[56913] Fix | Delete
const ap = new StringStream(appearance);
[56914] Fix | Delete
ap.dict = appearanceStreamDict;
[56915] Fix | Delete
return ap;
[56916] Fix | Delete
}
[56917] Fix | Delete
}
[56918] Fix | Delete
class LineAnnotation extends MarkupAnnotation {
[56919] Fix | Delete
constructor(params) {
[56920] Fix | Delete
super(params);
[56921] Fix | Delete
const {
[56922] Fix | Delete
dict,
[56923] Fix | Delete
xref
[56924] Fix | Delete
} = params;
[56925] Fix | Delete
this.data.annotationType = AnnotationType.LINE;
[56926] Fix | Delete
this.data.hasOwnCanvas = this.data.noRotate;
[56927] Fix | Delete
this.data.noHTML = false;
[56928] Fix | Delete
const lineCoordinates = lookupRect(dict.getArray("L"), [0, 0, 0, 0]);
[56929] Fix | Delete
this.data.lineCoordinates = Util.normalizeRect(lineCoordinates);
[56930] Fix | Delete
this.setLineEndings(dict.getArray("LE"));
[56931] Fix | Delete
this.data.lineEndings = this.lineEndings;
[56932] Fix | Delete
if (!this.appearance) {
[56933] Fix | Delete
const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];
[56934] Fix | Delete
const strokeAlpha = dict.get("CA");
[56935] Fix | Delete
const interiorColor = getRgbColor(dict.getArray("IC"), null);
[56936] Fix | Delete
const fillColor = interiorColor ? getPdfColorArray(interiorColor) : null;
[56937] Fix | Delete
const fillAlpha = fillColor ? strokeAlpha : null;
[56938] Fix | Delete
const borderWidth = this.borderStyle.width || 1,
[56939] Fix | Delete
borderAdjust = 2 * borderWidth;
[56940] Fix | Delete
const bbox = [this.data.lineCoordinates[0] - borderAdjust, this.data.lineCoordinates[1] - borderAdjust, this.data.lineCoordinates[2] + borderAdjust, this.data.lineCoordinates[3] + borderAdjust];
[56941] Fix | Delete
if (!Util.intersect(this.rectangle, bbox)) {
[56942] Fix | Delete
this.rectangle = bbox;
[56943] Fix | Delete
}
[56944] Fix | Delete
this._setDefaultAppearance({
[56945] Fix | Delete
xref,
[56946] Fix | Delete
extra: `${borderWidth} w`,
[56947] Fix | Delete
strokeColor,
[56948] Fix | Delete
fillColor,
[56949] Fix | Delete
strokeAlpha,
[56950] Fix | Delete
fillAlpha,
[56951] Fix | Delete
pointsCallback: (buffer, points) => {
[56952] Fix | Delete
buffer.push(`${lineCoordinates[0]} ${lineCoordinates[1]} m`, `${lineCoordinates[2]} ${lineCoordinates[3]} l`, "S");
[56953] Fix | Delete
return [points[0].x - borderWidth, points[1].x + borderWidth, points[3].y - borderWidth, points[1].y + borderWidth];
[56954] Fix | Delete
}
[56955] Fix | Delete
});
[56956] Fix | Delete
}
[56957] Fix | Delete
}
[56958] Fix | Delete
}
[56959] Fix | Delete
class SquareAnnotation extends MarkupAnnotation {
[56960] Fix | Delete
constructor(params) {
[56961] Fix | Delete
super(params);
[56962] Fix | Delete
const {
[56963] Fix | Delete
dict,
[56964] Fix | Delete
xref
[56965] Fix | Delete
} = params;
[56966] Fix | Delete
this.data.annotationType = AnnotationType.SQUARE;
[56967] Fix | Delete
this.data.hasOwnCanvas = this.data.noRotate;
[56968] Fix | Delete
this.data.noHTML = false;
[56969] Fix | Delete
if (!this.appearance) {
[56970] Fix | Delete
const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];
[56971] Fix | Delete
const strokeAlpha = dict.get("CA");
[56972] Fix | Delete
const interiorColor = getRgbColor(dict.getArray("IC"), null);
[56973] Fix | Delete
const fillColor = interiorColor ? getPdfColorArray(interiorColor) : null;
[56974] Fix | Delete
const fillAlpha = fillColor ? strokeAlpha : null;
[56975] Fix | Delete
if (this.borderStyle.width === 0 && !fillColor) {
[56976] Fix | Delete
return;
[56977] Fix | Delete
}
[56978] Fix | Delete
this._setDefaultAppearance({
[56979] Fix | Delete
xref,
[56980] Fix | Delete
extra: `${this.borderStyle.width} w`,
[56981] Fix | Delete
strokeColor,
[56982] Fix | Delete
fillColor,
[56983] Fix | Delete
strokeAlpha,
[56984] Fix | Delete
fillAlpha,
[56985] Fix | Delete
pointsCallback: (buffer, points) => {
[56986] Fix | Delete
const x = points[2].x + this.borderStyle.width / 2;
[56987] Fix | Delete
const y = points[2].y + this.borderStyle.width / 2;
[56988] Fix | Delete
const width = points[3].x - points[2].x - this.borderStyle.width;
[56989] Fix | Delete
const height = points[1].y - points[3].y - this.borderStyle.width;
[56990] Fix | Delete
buffer.push(`${x} ${y} ${width} ${height} re`);
[56991] Fix | Delete
if (fillColor) {
[56992] Fix | Delete
buffer.push("B");
[56993] Fix | Delete
} else {
[56994] Fix | Delete
buffer.push("S");
[56995] Fix | Delete
}
[56996] Fix | Delete
return [points[0].x, points[1].x, points[3].y, points[1].y];
[56997] Fix | Delete
}
[56998] Fix | Delete
});
[56999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function