diff --git a/.cache/mergePDFs.go b/.cache/mergePDFs.go deleted file mode 100644 index 6793f18..0000000 --- a/.cache/mergePDFs.go +++ /dev/null @@ -1,58 +0,0 @@ -package main - -import ( - "io/ioutil" - "os" - "sort" - "strings" -) - -func main() { - dirPath := "." // 当前目录 - mergeSplitPDFsInDirectory(dirPath) -} - -func mergeSplitPDFsInDirectory(dirPath string) { - files, err := ioutil.ReadDir(dirPath) - if err != nil { - panic(err) - } - - splitFiles := make(map[string][]string) - - for _, file := range files { - if file.IsDir() { - continue - } - fileName := file.Name() - if strings.Contains(fileName, ".pdf.") { - baseName := strings.Split(fileName, ".pdf.")[0] + ".pdf" - splitFiles[baseName] = append(splitFiles[baseName], fileName) - } - } - - for baseName, parts := range splitFiles { - sort.Strings(parts) // 确保文件顺序正确 - mergeFiles(baseName, parts) - } -} - -func mergeFiles(baseName string, parts []string) { - mergedFile, err := os.Create(baseName) - if err != nil { - panic(err) - } - defer mergedFile.Close() - - for _, part := range parts { - data, err := ioutil.ReadFile(part) - if err != nil { - panic(err) - } - _, err = mergedFile.Write(data) - if err != nil { - panic(err) - } - os.Remove(part) // 合并后删除分割文件 - } -} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 2a7db9f..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: release - -on: - push: - tags: - - v* - -permissions: - contents: write - -jobs: - release: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version: 'stable' - - - run: | - mkdir -p dist - platforms=( - "windows-amd64" - "linux-amd64" - "darwin-amd64" - "darwin-arm64" - ) - for platform in "${platforms[@]}"; do - GOOS=${platform%-*} - GOARCH=${platform#*-} - output_name="mergePDFs-${GOOS}-${GOARCH}" - if [ "$GOOS" = "windows" ]; then - output_name+=".exe" - fi - CGO_ENABLED=0 GOOS=$GOOS GOARCH=$GOARCH go build -o "dist/$output_name" mergePDFs.go - done - - - uses: softprops/action-gh-release@v2 - with: - body: Release ${{ github.ref_name }} - files: | - dist/mergePDFs-windows-amd64.exe - dist/mergePDFs-linux-amd64 - dist/mergePDFs-darwin-amd64 - dist/mergePDFs-darwin-arm64 diff --git a/README.md b/README.md index a68d620..d50d9c0 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ## 项目的由来 -虽然国内教育网站已提供免费资源,但大多数普通人获取信息的途径依然受限。有些人利用这一点,在淘宝上销售这些带有私人水印的资源。为了应对这种情况,我计划将这些资源集中并开源,以促进义务教育的普及和消除地区间的教育贫困。 +虽然国内教育网站已提供免费资源,但大多数普通人获取信息的途径依然受限。有些人利用这一点,在某站上销售这些带有私人水印的资源。为了应对这种情况,我计划将这些资源集中并开源,以促进义务教育的普及和消除地区间的教育贫困。 还有一个最重要的原因是,希望海外华人能够让自己的孩子继续了解国内教育。 @@ -55,21 +55,19 @@ - 义务教育教科书 · 数学一年级上册.pdf.2 ### 解决办法 -要合并这些被拆分的文件,您只需执行以下步骤: -1. 将合并程序 `mergePDFs.exe` 下载到包含 PDF 文件的文件夹中。 -2. 确保 `mergePDFs.exe` 和被拆分的 PDF 文件在同一目录下。 -3. 双击 `mergePDFs.exe` 程序即可自动完成文件合并。 +要合并这些被拆分的文件,您只需执行以下步骤(其他操作系统同理): +1. 将合并程序 `mergePDFs-windows-amd64.exe` 下载到包含 PDF 文件的文件夹中。 +2. 确保 `mergePDFs-windows-amd64.exe` 和被拆分的 PDF 文件在同一目录下。 +3. 双击 `mergePDFs-windows-amd64.exe` 程序即可自动完成文件合并。 ### 下载方式 -您可以通过以下链接下载 `mergePDFs.exe` 程序: +您可以通过以下链接,下载文件合并程序: -[下载 mergePDFs.exe](.cache/mergePDFs.exe) - -[审计源代码](.cache/mergePDFs.go) +[下载文件合并程序](https://github.com/TapXWorld/ChinaTextbook-tools/releases) ### 文件和程序示例 -- mergePDFs.exe +- mergePDFs-windows-amd64.exe - 义务教育教科书 · 数学一年级上册.pdf.1 - 义务教育教科书 · 数学一年级上册.pdf.2 @@ -78,6 +76,10 @@ - 如果您位于内地,并且网络不错,想重新下载,您可以使用 [tchMaterial-parser](https://github.com/happycola233/tchMaterial-parser) 项目(鼓励开源),进行重新下载。 - 如果您位于国外,和内地网络通信速度较慢,建议使用本存储库进行签出。 +## 教材捐献 +如果这个项目帮助您免费获取教育资源,请考虑支持我们推广开放教育的努力!您的捐献将帮助我们维护和扩展这个资源库。 + +加入我们的 Telegram 社区,获取最新动态并分享您的想法:https://t.me/+1V6WjEq8WEM4MDM1 ## 支持我