Skip to content

Commit

Permalink
-修复无法正常导出JPEG2000图片的问题 (fix #178)
Browse files Browse the repository at this point in the history
  • Loading branch information
wmjordan committed Aug 30, 2023
1 parent 4adff9b commit adea523
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 17 deletions.
39 changes: 23 additions & 16 deletions App/Processor/ImageExtractor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -189,25 +189,32 @@ void SaveImageBytes(ImageInfo info, byte[] bytes, string fileName) {
Tracker.TraceMessage(Tracker.Category.OutputFile, n);
Tracker.TraceMessage("导出图片:" + n);
}
if ((vFlip || _pageRotation != 0) && info.ExtName == Constants.FileExtensions.Jp2) {
try {
using (var ms = new MemoryStream(bytes))
using (var bmp = new FreeImageBitmap(ms)) {
RotateBitmap(bmp, _pageRotation, vFlip);
info.CreatePaletteAndIccProfile(bmp);
try {
bmp.Save(n);
}
catch (FreeImageException) {
File.Delete(n);
bmp.Save(new FilePath(n).ChangeExtension(Constants.FileExtensions.Png));
if (info.ExtName == Constants.FileExtensions.Jp2) {
if (vFlip || _pageRotation != 0) {
try {
using (var ms = new MemoryStream(bytes))
using (var bmp = new FreeImageBitmap(ms)) {
RotateBitmap(bmp, _pageRotation, vFlip);
info.CreatePaletteAndIccProfile(bmp);
try {
bmp.Save(n);
}
catch (FreeImageException) {
File.Delete(n);
bmp.Save(new FilePath(n).ChangeExtension(Constants.FileExtensions.Png));
}
SaveMaskedImage(info, bmp, fileName);
}
SaveMaskedImage(info, bmp, fileName);
}
catch (FreeImageException ex) {
Tracker.TraceMessage(ex);
bytes.DumpBytes(n);
}
}
catch (FreeImageException ex) {
Tracker.TraceMessage(ex);
bytes.DumpBytes(n);
else {
using (FileStream f = new FileStream(n, FileMode.Create)) {
f.Write(bytes, 0, bytes.Length);
}
}
}
else if (PdfName.DEVICECMYK.Equals(info.ColorSpace)) {
Expand Down
3 changes: 2 additions & 1 deletion 更新历史.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
新增功能:
第一个开放源代码版本。
修改了授权协议。
合并图片功能使用JPEG图片EXIF旋转角度
合并图片功能使用 JPEG 图片 EXIF 旋转角度
替换字体功能增加简单修改文本简繁体、全角半角转换的功能(用于处理一些旧的 PDF 文档)。
增加了合并文件功能的合并冗余数据选项(之前版本中,该选项的行为是默认行为,可能导致无法合并源文档的某些数据)。
合并文件功能支持在添加文件后再排序文件列表。
Expand Down Expand Up @@ -70,6 +70,7 @@
合并文件功能自动旋转页面适应源图像尺寸选项无效。
点击生成书签功能“忽略文本”表头会导致程序崩溃。
提取页面功能保留书签的功能在勾选清理文档选项后会失效。
无法提取 JPEG 2000 格式图片。

0.6.2.0 2021年11月9日
新增功能:
Expand Down

0 comments on commit adea523

Please sign in to comment.