Commit Graph
72 Commits
Author SHA1 Message Date
troy daniel 4ffdd990ed 使用Pandoc转换为Markdown 2022-01-22 11:33:11 +08:00
WMJ 2005d8d4b4 -删除说明文件“源代码的结构”一节对源代码不存在的bin目录的陈述 2022-01-21 14:16:22 +08:00
Calcitem 5c0b2b6369 微调部分文本
* "源代码网站" 改为 "源码网址", 上下全为四字对齐更工整。
* “页面范围说明” 后面的分号为笔误,修改为冒号。
2022-01-21 14:16:22 +08:00
WMJ e63ad7413f !将资源文件中的资源生成类改成.NET 4.0,避免打开资源文件后重新生成designer.cs文件 2022-01-21 14:16:22 +08:00
WMJ 2267c7eec2 -删除多余的类 2022-01-20 20:24:25 +08:00
WMJ ab5373841c !清理重构代码 2022-01-20 20:24:25 +08:00
Calcitem e58db93a4f 将部分 switch 语句转换为 switch 表达式
switch表达式是 C# 8.0 的新功能。
C# 8.0 从 VS2019 开始支持,本项目要求使用 VS2019 以上版本,
因此此新语法糖应都能支持。
2022-01-20 20:24:25 +08:00
Calcitem 01c48bd5ed refactor: 使用内置函数 string.IsNullOrEmpty 2022-01-20 20:24:25 +08:00
Calcitem fb8e26f8d7 refactor: 将部分 if 语句改写为 switch 表达式 2022-01-20 20:24:25 +08:00
Calcitem 1285ba9f1d Use null propagation (IDE0031) (2)
Commit a7a9ec3f9c has not been modified
completely, and the complete modification is now added.
2022-01-20 20:24:25 +08:00
WMJ 4ab06a53a0 -修复PDF编辑器有时无法用鼠标拖动文档的问题 2022-01-16 20:37:31 +08:00
Calcitem a7a9ec3f9c Use null propagation (IDE0031)
This style rule concerns with the use of null-conditional operator versus ternary conditional expression with null check.

Reference:
https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0031
2022-01-16 20:05:25 +08:00
Calcitem 882de70576 新增贡献者指南(中文)文档
参考文档:
https://gitee.com/WeBank/EventMesh/blob/develop/CONTRIBUTING.zh-CN.md#
2022-01-16 19:13:26 +08:00
Calcitem 0d2fc700f5 使用 CODEOWNERS 文件定义代码所有者
当有人打开修改代码的拉取请求时,将自动请求代码所有者进行审查。
不会自动请求代码所有者审查拉取请求草稿。

参考资料:
https://docs.github.com/cn/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
2022-01-16 19:13:26 +08:00
WMJ 12aea5d548 +替换字体功能增加修改文本全角半角的功能(用于处理一些旧的 PDF 文档)
!进一步优化更改书签文本格式的效率
2022-01-15 09:42:07 +08:00
Calcitem a25ebdfd4d 部分 if 条件翻转以缩小代码嵌套层级
一般是在 if 控制范围很大的情况下进行调整,如果控制范围小则不调整。
从第三方代码的 Demo 中复制的代码块不修改。
2022-01-15 09:39:10 +08:00
Calcitem a6ef580a17 屏蔽 jbig2 的编译警告
因使用原始代码,无需修改,故屏蔽警告。
2022-01-15 08:57:33 +08:00
WMJ e401763fe9 !移除JBIG2不必要的源文件引用 2022-01-14 14:31:38 +08:00
Calcitem 6fb0adc53c 将 jbig2dec 的源码还原为原始代码
并改为使用修改工程配置的方法解决编译问题。
目的是后续升级 jbig2dec 时直接使用上游新代码覆盖即可,无需再合并代码。

jbig2dec 原始代码来源为:
https://github.com/ArtifexSoftware/jbig2dec/tree/a5b9b7cd7b9ed349964eb89883c4b22c410b3398

操作步骤:
将 jbig2dec 原始代码中所有的 .h 覆盖到 JBig2/include/ 目录;
将 .c 文件覆盖到 JBig2/src/ 目录;除了 getopt.c 和 getopt1.c 两个多出来的文件未拷贝。
覆盖后这些文件撤销了之前为解决编译问题而修改的代码。

对于 Visual Studio 的编译错误:
Error C4146 unary minus operator applied to unsigned type, result still unsigned
解决方式为,在 Visual Studio 的
jbig2 Property Pages -> Configuration Properties -> C/C++ -> Command Line -> Additional Options
增加 -w24146 来解决。
Release 和 Debug 都增加。
2022-01-14 14:24:47 +08:00
WMJ d87010c8b8 Merge branch 'master' of https://github.com/wmjordan/PDFPatcher 2022-01-14 09:18:58 +08:00
WMJ 6898bc7168 !将部分结构显式标记为只读结构 2022-01-14 09:17:13 +08:00
WMJ 9d995c779e !替换字体功能增加简单的中文简繁体转换功能 2022-01-14 09:16:52 +08:00
WMJ 7ebfee0a35 !优化转换书签文本格式的效率 2022-01-14 09:16:12 +08:00
Calcitem 9d6d0a01e7 消除 README.md 解析警告
* 消除序号警告,解决序号问题;
* 消除序号前面存在多余空格的警告;
* 消除部分标题下放缺空行的警告;
* 消除文档存在裸 URL 的警告。
2022-01-14 08:45:14 +08:00
Calcitem 72be684f22 把 readme.md 重命名为 README.md
README 这个词改为大写单词更醒目。

参考资料: https://github.com/hackergrrl/art-of-readme/blob/master/README-zh.md
2022-01-14 08:45:14 +08:00
Calcitem 11d18cf034 将 readme.md 转换为 UTF-8 with BOM 格式
以解决英文版 Visual Studio 打开此文件乱码问题。
2022-01-14 08:45:14 +08:00
Calcitem 55de03a435 Update readme.md
Add link https://gitee.com/wmjordan/pdfpatcher
2022-01-13 19:32:17 +08:00
WMJ 7b4b010e6b !重构优化部分代码 2022-01-13 09:14:52 +08:00
WMJ 8e41b25eea !修改自动生成书签的样式模型(#32)
!重构优化部分代码
2022-01-13 09:14:28 +08:00
WMJ e36ccfa980 -消除编译警告 2022-01-13 09:10:00 +08:00
WMJ 0bcd84af8f Merge branch 'master' of https://github.com/wmjordan/PDFPatcher 2022-01-13 09:03:30 +08:00
Calcitem 19a7245c17 Fix some build warnings
Include:
Warning	CS0168	The variable 'ex' is declared but never used
Warning	CS0649	Field 'EditModel.AutoBookmarkStyle.MatchPattern' is never assigned to, and will always have its default value null
Warning	CS0649	Field 'BookmarkElement.AutoLevel' is never assigned to, and will always have its default value 0
2022-01-13 08:56:15 +08:00
WMJ 7c7e99e832 !更改源代码网站网址为国内的gitee 2022-01-11 20:09:53 +08:00
WMJ 71493da2d1 -修复检查版本应答文件的编码标记错误 2022-01-11 20:09:08 +08:00
WMJ 111a3ee720 !更改了更新通知的网盘网址 2022-01-11 15:32:02 +08:00
WMJ de1e0ae66e !在缺少强名称程序集签名文件时,仍可正常编译(感谢@Akarinnnnn #26) 2022-01-11 09:26:32 +08:00
WMJ 311d099250 -修复版本更新文件格式错误的处理流程 2022-01-11 09:25:21 +08:00
WMJ 988829f6eb !自动检测并使用平台生成工具(感谢@
Akarinnnnn)
2022-01-11 09:15:30 +08:00
WMJ fca50960d7 Merge pull request #29 from calcitem/gitattr
完善 .gitattributes
2022-01-08 14:55:16 +08:00
Calcitem fb7a660999 近一步完善 .gitattributes
在 .gitattributes 中定义项目中各类文件为文本文件还是二进制文件,
以免当文本文件过大时,某些工具会误认为为二进制文件,不能展示
差异比较。并且因平台和不同编辑器的差异可能会意外修改换行,被
Git 感知从而引入无必要的格式差异。

目前除了 C/C++ 和 md 文件未定义,其他文件均定义了文件类型
(文本/二进制) 以及换行格式。

C/C++ 文件目前存在两种不同换行格式,原始为 LF 换行,后面使用编辑器
编辑后转变了部分文件的换行。后续进行统一为 LF 后,再继续完善此文件。
2022-01-08 13:31:20 +08:00
WMJ f1ff041bc4 !修正说明文件中的称谓 2022-01-08 10:15:06 +08:00
WMJ 613b3db758 Merge pull request #28 from wmjordan/revert-27-dep
Revert "改为使用 Git 子模块的方式来管理 jbig2dec 库的源码"
2022-01-08 09:27:56 +08:00
WMJ bbe25ff896 Revert "改为使用 Git 子模块的方式来管理 jbig2dec 库的源码" 2022-01-08 09:27:01 +08:00
WMJ 85a64673b5 Merge pull request #27 from calcitem/dep
改为使用 Git 子模块的方式来管理 jbig2dec 库的源码
2022-01-08 09:14:18 +08:00
Calcitem 6afd95620b 改为使用 Git 子模块的方式来管理 jbig2dec 库的源码
Git Submodule 的好处为可以简化项目依赖管理,方便更新维护。
当上游第三方库更新时,无需手动更新并提交代码,节省了版本库空间。
并且可以按需 checkout 到指定版本并提交以固定住。
(当前取 master 分支即可,因为此分支代码和 JBig2 目录的代码几乎一致,
差异点只是 JBig2 目录中的代码解决了 MSVC 下的一些编译问题,不过这些
问题是可以不修改代码就可以解决的,下文将详述之。)
并且 GitHub 等代码托管平台的依赖关系图中可以解析出库依赖关系。

相关步骤:
(1) 执行 git submodule add https://github.com/ArtifexSoftware/jbig2dec.git
(2) 移除 JBig2/include 以及 JBig2/src 下和 jbig2dec 中重复的 .h/.c 文件;
(3) 在 Visual Studio 的 Solution Explorer 中将 jbig2 项目中的 .h/.c 文件替换
    为 jbig2dec 中的文件。如果 jbig2dec 目录中没有的文件,则不替换。
(4) 解决编译问题。在没有使用 Git 子模块之前,是通过修改 JBig2 目录下的代码文件
    来解决编译问题的,现在改为修改编译配置解决,包括如下几点:
    * Error C4996 'strdup': The POSIX name for this item is deprecated.
      Instead, use the ISO C and C++ conformant name: _strdup. See online help for details.
    * Error C4146 unary minus operator applied to unsigned type, result still unsigned
    * Error C1083 Cannot open include file: 'strings.h': No such file or directory
    上述3个编译错误通过在 Visual Studio 的
    jbig2 Property Pages -> Configuration Properties -> C/C++ -> Command Line -> Additional Options
    增加 -w44996 -w24146 /D "HAVE_STRING_H" 来解决。
    继续编译时出现的错误,则通过将 gitopt.c、gitopt1.c、jbig2_image_pbm.c、jbig2_arith.c 添加到工程中解决。
(5) 更新 readme.md.

已知问题:
而对于 jbig2enc 目录则无法切换到 Git 子模块的形式,因为其中的修改量较大,不能直接引用原始库。

参考资料:
https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97
2022-01-08 03:07:01 +08:00
WMJ 9ace1963aa !更新了说明文档 2022-01-07 18:37:26 +08:00
WMJ 224d928189 !修正模板的命名 2022-01-07 09:47:16 +08:00
WMJ 8fb03b8363 Merge branch 'master' of https://github.com/wmjordan/PDFPatcher 2022-01-07 09:45:52 +08:00
WMJ 102a2e8d26 Update issue templates 2022-01-07 09:43:04 +08:00
WMJ 7155dbb0f5 更新 github 模板 2022-01-07 09:41:01 +08:00