कैसे एक PDF को Java में संपादन योग्य Excel वर्कबुक में बदलें
यह गाइड दिखाता है कि PDF को एक ऐसे वर्कबुक में कैसे बदला जाए जिसे आप वास्तव में संपादित कर सकते हैं, न कि केवल एक सपाट निर्यात। आप ExcelSaveOptions के साथ PDF को XLSX में बदलेंगे, निर्यात को इस तरह समायोजित करेंगे कि तालिकाएँ उचित संख्या में शीट्स पर साफ़-सुथरे ढंग से आएँ, और ExcelLoadOptions के साथ संपादित वर्कबुक को फिर से PDF में बदलेंगे।
PDF को एक बुनियादी Excel वर्कबुक में बदलें
Document.save SaveFormat.Xlsx के साथ एक सरल रूपांतरण करता है: प्रत्येक पृष्ठ का टेक्स्ट और तालिका जैसी सामग्री अपने स्वयं के वर्कशीट में रखी जाती है।
import org.aspose.pdf.Document;
import org.aspose.pdf.SaveFormat;
try (Document doc = new Document("report.pdf")) {
doc.save("report.xlsx", SaveFormat.Xlsx); // SaveFormat.Excel is an alias
}बेहतर स्प्रेडशीट्स के लिए निर्यात को ट्यून करें
एक-शीट-प्रति-पृष्ठ निर्यात अक्सर वह नहीं होता जो स्प्रेडशीट उपयोगकर्ता चाहते हैं। ExcelSaveOptions वर्कशीट मर्जिंग, कॉलम लेआउट, और तालिका पुनर्प्राप्ति हीयूरिस्टिक्स को नियंत्रित करता है उन PDF के लिए जिनमें टैग्ड टेबल स्ट्रक्चर नहीं होता:
import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelSaveOptions;
try (Document doc = new Document("report.pdf")) {
ExcelSaveOptions options = new ExcelSaveOptions();
options.setFormat(ExcelSaveOptions.ExcelFormat.XLSX); // default
options.setMinimizeTheNumberOfWorksheets(true); // merge pages onto fewer sheets
options.setInsertBlankColumnAtFirst(false); // no leading spacer column
options.setUniformWorksheets(false); // allow per-sheet column widths
options.setStructuralHeuristics(true); // recover tables on untagged PDFs
options.setSuppressRunningHeadersFooters(true); // drop repeated page furniture
doc.save("report.xlsx", options);
}setMinimizeTheNumberOfWorksheets(true) वह एकल विकल्प है जो आउटपुट के आकार को सबसे अधिक बदलता है: इसके बिना, 20-पृष्ठीय रिपोर्ट 20 वर्कशीट बनाती है।
Excel वर्कबुक को फिर से PDF में बदलें
एक समीक्षक द्वारा वर्कबुक को संपादित करने के बाद, इसे ExcelLoadOptions के साथ लोड करके और परिणामी दस्तावेज़ को सहेजकर फिर से PDF रूप में लाएँ:
import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelLoadOptions;
try (Document doc = new Document("book.xlsx", new ExcelLoadOptions())) {
doc.save("book.pdf");
}