file2md 1.2.27 â 1.3.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -16,9 +16,17 @@ export declare class PDFExtractor {
|
|
|
16
16
|
private pageCounter;
|
|
17
17
|
constructor(imageExtractor: ImageExtractor);
|
|
18
18
|
/**
|
|
19
|
-
* Extract images from PDF using
|
|
19
|
+
* Extract images from PDF using pdf2pic
|
|
20
20
|
*/
|
|
21
21
|
extractImagesFromPDF(buffer: Buffer): Promise<readonly PageData[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Convert PDF pages to images using pdf2pic
|
|
24
|
+
*/
|
|
25
|
+
private convertPDFToImages;
|
|
26
|
+
/**
|
|
27
|
+
* Create placeholder files as fallback when pdf2pic fails
|
|
28
|
+
*/
|
|
29
|
+
private createPlaceholders;
|
|
22
30
|
/**
|
|
23
31
|
* Enhance text with layout detection
|
|
24
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf-extractor.d.ts","sourceRoot":"","sources":["../../src/utils/pdf-extractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAW3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,wBAAwB,EAAE,SAAS,EAAE,CAAC;IACvE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,WAAW,CAAa;gBAEpB,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"pdf-extractor.d.ts","sourceRoot":"","sources":["../../src/utils/pdf-extractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAW3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,wBAAwB,EAAE,SAAS,EAAE,CAAC;IACvE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,WAAW,CAAa;gBAEpB,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC;IAyCxE;;OAEG;YACW,kBAAkB;IA6DhC;;OAEG;YACW,kBAAkB;IA6BhC;;OAEG;IACG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAiE9E,OAAO,CAAC,eAAe;IAoBvB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,eAAe;IA+BvB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,cAAc;IAatB;;OAEG;IACG,gBAAgB,CAAC,UAAU,EAAE,SAAS,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBxE;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACF"}
|
|
@@ -7,51 +7,126 @@ export class PDFExtractor {
|
|
|
7
7
|
this.imageExtractor = imageExtractor;
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
|
-
* Extract images from PDF using
|
|
10
|
+
* Extract images from PDF using pdf2pic
|
|
11
11
|
*/
|
|
12
12
|
async extractImagesFromPDF(buffer) {
|
|
13
13
|
try {
|
|
14
|
-
console.log('đŧī¸ PDFExtractor: Using
|
|
14
|
+
console.log('đŧī¸ PDFExtractor: Using pdf2pic for image extraction...');
|
|
15
15
|
// Parse the PDF to get basic information
|
|
16
16
|
const pdfParse = await import('pdf-parse');
|
|
17
17
|
const pdfData = await pdfParse.default(buffer);
|
|
18
18
|
console.log(`đ PDFExtractor: PDF has ${pdfData.numpages} pages, text length: ${pdfData.text?.length || 0}`);
|
|
19
19
|
// Check if this is an image-heavy PDF (little text, likely scanned)
|
|
20
20
|
const isImageHeavy = !pdfData.text || pdfData.text.trim().length < 100;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const filename = `pdf_page_${page}_placeholder.txt`;
|
|
30
|
-
const fullPath = path.join(this.imageExtractor.imageDirectory, filename);
|
|
31
|
-
// Use the image extractor to save the placeholder
|
|
32
|
-
const savedPath = await this.imageExtractor.saveImage(placeholderBuffer, filename);
|
|
33
|
-
if (savedPath) {
|
|
34
|
-
extractedPages.push({
|
|
35
|
-
pageNumber: page,
|
|
36
|
-
imagePath: filename,
|
|
37
|
-
fullPath: savedPath
|
|
38
|
-
});
|
|
39
|
-
console.log(`â
Created placeholder for page ${page}`);
|
|
21
|
+
// Always try to extract images using pdf2pic for image-heavy PDFs or when explicitly needed
|
|
22
|
+
if (isImageHeavy || pdfData.numpages <= 3) {
|
|
23
|
+
console.log('đ PDF appears to be image-heavy - extracting as images using pdf2pic');
|
|
24
|
+
try {
|
|
25
|
+
const extractedPages = await this.convertPDFToImages(buffer, Math.min(pdfData.numpages, 3));
|
|
26
|
+
if (extractedPages.length > 0) {
|
|
27
|
+
console.log(`đ Successfully extracted ${extractedPages.length} page images`);
|
|
28
|
+
return extractedPages;
|
|
40
29
|
}
|
|
41
30
|
}
|
|
42
|
-
|
|
31
|
+
catch (pdf2picError) {
|
|
32
|
+
console.warn('â ī¸ pdf2pic extraction failed:', pdf2picError instanceof Error ? pdf2picError.message : 'Unknown error');
|
|
33
|
+
// Fall back to placeholder creation only if pdf2pic fails
|
|
34
|
+
return await this.createPlaceholders(pdfData.numpages);
|
|
35
|
+
}
|
|
43
36
|
}
|
|
44
37
|
else {
|
|
45
38
|
console.log('âšī¸ PDF appears to be text-heavy - no image extraction needed');
|
|
46
39
|
return [];
|
|
47
40
|
}
|
|
41
|
+
return [];
|
|
48
42
|
}
|
|
49
43
|
catch (error) {
|
|
50
|
-
console.warn('â ī¸ PDFExtractor
|
|
44
|
+
console.warn('â ī¸ PDFExtractor failed:', error instanceof Error ? error.message : 'Unknown error');
|
|
51
45
|
// Don't throw, just return empty array to allow text processing to continue
|
|
52
46
|
return [];
|
|
53
47
|
}
|
|
54
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Convert PDF pages to images using pdf2pic
|
|
51
|
+
*/
|
|
52
|
+
async convertPDFToImages(buffer, maxPages = 3) {
|
|
53
|
+
try {
|
|
54
|
+
const { fromBuffer } = await import('pdf2pic');
|
|
55
|
+
console.log(`đ Converting PDF to images (max ${maxPages} pages)...`);
|
|
56
|
+
const extractedPages = [];
|
|
57
|
+
// Convert each page individually to have more control
|
|
58
|
+
for (let pageNumber = 1; pageNumber <= maxPages; pageNumber++) {
|
|
59
|
+
try {
|
|
60
|
+
// Configure pdf2pic options for this specific page
|
|
61
|
+
const convertOptions = {
|
|
62
|
+
format: 'png',
|
|
63
|
+
out_dir: this.imageExtractor.imageDirectory,
|
|
64
|
+
out_prefix: `pdf_page_${pageNumber}`,
|
|
65
|
+
page: pageNumber
|
|
66
|
+
};
|
|
67
|
+
// Convert single page from buffer
|
|
68
|
+
const convert = fromBuffer(buffer, convertOptions);
|
|
69
|
+
const result = await convert(pageNumber, true); // true for returning base64
|
|
70
|
+
if (result && 'base64' in result && result.base64) {
|
|
71
|
+
// Convert base64 to buffer
|
|
72
|
+
const imageBuffer = Buffer.from(result.base64, 'base64');
|
|
73
|
+
const filename = `pdf_page_${pageNumber}.png`;
|
|
74
|
+
// Save the image using the image extractor
|
|
75
|
+
const savedPath = await this.imageExtractor.saveImage(imageBuffer, filename);
|
|
76
|
+
if (savedPath) {
|
|
77
|
+
extractedPages.push({
|
|
78
|
+
pageNumber,
|
|
79
|
+
imagePath: path.basename(savedPath),
|
|
80
|
+
fullPath: savedPath,
|
|
81
|
+
dimensions: {
|
|
82
|
+
width: 800, // Default dimensions since pdf2pic doesn't always provide them
|
|
83
|
+
height: 600
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
console.log(`â
Converted page ${pageNumber} to image`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
catch (pageError) {
|
|
91
|
+
console.warn(`â ī¸ Failed to convert page ${pageNumber}:`, pageError instanceof Error ? pageError.message : 'Unknown error');
|
|
92
|
+
// Continue with next page
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
if (extractedPages.length === 0) {
|
|
96
|
+
throw new Error('No pages could be converted to images');
|
|
97
|
+
}
|
|
98
|
+
return extractedPages;
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
console.error('â pdf2pic conversion failed:', error instanceof Error ? error.message : 'Unknown error');
|
|
102
|
+
throw error;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Create placeholder files as fallback when pdf2pic fails
|
|
107
|
+
*/
|
|
108
|
+
async createPlaceholders(pageCount) {
|
|
109
|
+
console.log('đ Creating placeholders as fallback...');
|
|
110
|
+
const extractedPages = [];
|
|
111
|
+
const maxPages = Math.min(pageCount, 3);
|
|
112
|
+
for (let page = 1; page <= maxPages; page++) {
|
|
113
|
+
const placeholderContent = `PDF Page ${page} Image Placeholder\n\nThis page appears to contain primarily image content.\nUnable to extract actual image - pdf2pic conversion failed.\n\nPage ${page} of ${pageCount}`;
|
|
114
|
+
const placeholderBuffer = Buffer.from(placeholderContent, 'utf-8');
|
|
115
|
+
// Save placeholder as a text file
|
|
116
|
+
const filename = `pdf_page_${page}_placeholder.txt`;
|
|
117
|
+
// Use the image extractor to save the placeholder
|
|
118
|
+
const savedPath = await this.imageExtractor.saveImage(placeholderBuffer, filename);
|
|
119
|
+
if (savedPath) {
|
|
120
|
+
extractedPages.push({
|
|
121
|
+
pageNumber: page,
|
|
122
|
+
imagePath: path.basename(savedPath),
|
|
123
|
+
fullPath: savedPath
|
|
124
|
+
});
|
|
125
|
+
console.log(`â
Created placeholder for page ${page}`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return extractedPages;
|
|
129
|
+
}
|
|
55
130
|
/**
|
|
56
131
|
* Enhance text with layout detection
|
|
57
132
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf-extractor.js","sourceRoot":"","sources":["../../src/utils/pdf-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA2BrC,MAAM,OAAO,YAAY;IACN,cAAc,CAAiB;IACxC,WAAW,GAAW,CAAC,CAAC;IAEhC,YAAY,cAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAAc;QACvC,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"pdf-extractor.js","sourceRoot":"","sources":["../../src/utils/pdf-extractor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "file2md",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.27",
|
|
4
4
|
"description": "A TypeScript library for converting various document types (PDF, DOCX, XLSX, PPTX, HWP, HWPX) into Markdown with image and layout preservation",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -15,7 +15,11 @@
|
|
|
15
15
|
"lint:fix": "eslint src/**/*.ts --fix",
|
|
16
16
|
"clean": "rimraf dist",
|
|
17
17
|
"prepublishOnly": "npm run clean && npm run build && npm test",
|
|
18
|
-
"typecheck": "tsc --noEmit"
|
|
18
|
+
"typecheck": "tsc --noEmit",
|
|
19
|
+
"publish": "node scripts/publish.js",
|
|
20
|
+
"publish:dry": "node scripts/publish.js --dry-run",
|
|
21
|
+
"version:increment": "node scripts/increment-version.js",
|
|
22
|
+
"auth:check": "node scripts/setup-auth.js"
|
|
19
23
|
},
|
|
20
24
|
"keywords": [
|
|
21
25
|
"markdown",
|