From d8cc932527f724b7c543c9b8a929de6dcd1f956c Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Fri, 8 Dec 2023 22:15:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../me/ag2s/epublib/domain/LazyResource.java | 7 ------- .../epublib/epub/PackageDocumentReader.java | 6 ++++++ .../me/ag2s/epublib/epub/ResourcesLoader.java | 17 +---------------- 3 files changed, 7 insertions(+), 23 deletions(-) diff --git a/modules/book/src/main/java/me/ag2s/epublib/domain/LazyResource.java b/modules/book/src/main/java/me/ag2s/epublib/domain/LazyResource.java index 6d5d897be..3492007f4 100644 --- a/modules/book/src/main/java/me/ag2s/epublib/domain/LazyResource.java +++ b/modules/book/src/main/java/me/ag2s/epublib/domain/LazyResource.java @@ -101,13 +101,6 @@ public class LazyResource extends Resource { throw new IOException( "Could not load the contents of resource: " + this.getHref()); } else { - /*掌上书苑有很多自制书OPF的nameSpace格式不标准,强制修复成正确的格式*/ - if (getHref().endsWith("opf")) { - String string = new String(readData) - .replace(" smlns=\"", " xmlns=\"") - .replace(" mlns=\"", " xmlns=\""); - readData = string.getBytes(); - } this.data = readData; } diff --git a/modules/book/src/main/java/me/ag2s/epublib/epub/PackageDocumentReader.java b/modules/book/src/main/java/me/ag2s/epublib/epub/PackageDocumentReader.java index dcc6debb4..b798be23c 100644 --- a/modules/book/src/main/java/me/ag2s/epublib/epub/PackageDocumentReader.java +++ b/modules/book/src/main/java/me/ag2s/epublib/epub/PackageDocumentReader.java @@ -48,6 +48,12 @@ public class PackageDocumentReader extends PackageDocumentBase { Resource packageResource, EpubReader epubReader, EpubBook book, Resources resources) throws SAXException, IOException { + /*掌上书苑有很多自制书OPF的nameSpace格式不标准,强制修复成正确的格式*/ + String string = new String(packageResource.getData()) + .replace(" smlns=\"", " xmlns=\"") + .replace(" mlns=\"", " xmlns=\""); + packageResource.setData(string.getBytes()); + Document packageDocument = ResourceUtil.getAsDocument(packageResource); String packageHref = packageResource.getHref(); resources = fixHrefs(packageHref, resources); diff --git a/modules/book/src/main/java/me/ag2s/epublib/epub/ResourcesLoader.java b/modules/book/src/main/java/me/ag2s/epublib/epub/ResourcesLoader.java index 5f034856d..8aa0c428c 100644 --- a/modules/book/src/main/java/me/ag2s/epublib/epub/ResourcesLoader.java +++ b/modules/book/src/main/java/me/ag2s/epublib/epub/ResourcesLoader.java @@ -75,14 +75,6 @@ public class ResourcesLoader { } else { resource = ResourceUtil .createResource(zipEntry.getName(), zipFileWrapper.getInputStream(zipEntry)); - /*掌上书苑有很多自制书OPF的nameSpace格式不标准,强制修复成正确的格式*/ - if (href.endsWith("opf")) { - String string = new String(resource.getData()) - .replace(" smlns=\"", " xmlns=\"") - .replace(" mlns=\"", " xmlns=\""); - resource.setData(string.getBytes()); - } - } if (resource.getMediaType() == MediaTypes.XHTML) { @@ -134,17 +126,10 @@ public class ResourcesLoader { if ((zipEntry == null) || zipEntry.isDirectory()) { continue; } - String href = zipEntry.getName(); + //String href = zipEntry.getName(); // store resource Resource resource = ResourceUtil.createResource(zipEntry.getName(), zipInputStream); - ///*掌上书苑有很多自制书OPF的nameSpace格式不标准,强制修复成正确的格式*/ - if (href.endsWith("opf")) { - String string = new String(resource.getData()) - .replace(" smlns=\"", " xmlns=\"") - .replace(" mlns=\"", " xmlns=\""); - resource.setData(string.getBytes()); - } if (resource.getMediaType() == MediaTypes.XHTML) { resource.setInputEncoding(defaultHtmlEncoding); }