Ios 使用MuPDF库在iPhone/iPad上开发电子书阅读器

Ios 使用MuPDF库在iPhone/iPad上开发电子书阅读器,ios,pdf,mupdf,Ios,Pdf,Mupdf,我可以使用MuPDF库在iphone/ipad上开发电子书阅读器吗 你有什么好主意吗?请帮助我学习一些好的教程。使用MuPDF在iphone/ipad上开发电子书阅读器当然是可能的 MuPDF根据GNU GPL和Artifex商业许可证进行许可。我们有使用MuPDF在ipad上实现电子书阅读器的商业许可证 我们还通过iTunes应用商店发布了iOS版的MuPDF(搜索MuPDF)——因此,尽管苹果有时会对其将允许和不允许的内容做出不明确和武断的规定,但正如先前的受访者所建议的那样,苹果显然没有“

我可以使用MuPDF库在iphone/ipad上开发电子书阅读器吗


你有什么好主意吗?请帮助我学习一些好的教程。

使用MuPDF在iphone/ipad上开发电子书阅读器当然是可能的

MuPDF根据GNU GPL和Artifex商业许可证进行许可。我们有使用MuPDF在ipad上实现电子书阅读器的商业许可证

我们还通过iTunes应用商店发布了iOS版的MuPDF(搜索MuPDF)——因此,尽管苹果有时会对其将允许和不允许的内容做出不明确和武断的规定,但正如先前的受访者所建议的那样,苹果显然没有“复制功能”的问题

关于教程等方面的帮助:

  • 在MuPDF源代码中,我们有一个doc目录,其中包含显示如何打开/呈现/关闭PDF文件的示例源代码。我们也有一些例子,展示了如何在多线程世界中工作
  • 我们在源代码中也有示例android/iOS/windows/linux查看器
  • 我们有简单的命令行工具(同样有完整的源代码)来展示如何呈现PDF等
我希望这足以让一个有能力的程序员开始工作


虽然GNU GPL版本发布时不受支持,但我们确实向需要的人提供支持合同。或者,打开#ghostscript irc频道,我们可以帮助进行简单的查询(尽管我们可以在帮助任何一个自由用户上投入的时间是有限的)。或者,在这里问一些具体的问题。

很抱歉回答得太晚,但它可以帮助人们一天又一天。 由于我必须将MuPDF库集成到我的一个(Swift)项目中,我生成了 静态fat库并将它们集成到Xcode中

下面是一个分步快速教程:

如何构建静态fat库:
  • git克隆——递归git://git.ghostscript.com/mupdf.git
  • 转到
    mupdf/platform/ios
  • 使用Xcode打开MuPDF.xcodeproj
  • 配置要发布的MuPDF目标的方案
  • 在iPhone模拟器上构建并运行该应用程序。
    • 这将为平台
      i386
      x86\u 64
  • 在真正的iPhone设备上构建并运行应用程序-使用您自己的捆绑id、证书和配置文件。
    • 这将为平台
      armv7
      arm64
  • 转到
    mupdf/build/
    • 您将找到两个包含所有构建库的文件夹:
      release-ios-i386-x86_64
      release-ios-armv7-arm64
  • 现在,您需要为mupdf one及其所有依赖项创建包含所有4种体系结构的fat库
  • lipo-create./*/libcurl.a-输出'libcurl.a';lipo-create./*/libfreetype.a-输出'libfreetype.a';lipo-create./*/libjbig2dec.a-输出'libjbig2dec.a';lipo-create./*/libjpeg.a-输出'libjpeg.a';lipo-create./*/libmujs.a-输出'libmujs.a';lipo-create./*/libmupdf.a-输出'libmupdf.a';lipo-create./*/libopenjpeg.a-输出'libopenjpeg.a';lipo-create./*/libz.a-output'libz.a'

    如何将MuPDF集成到项目中:
  • 添加/导入到项目中:
    • mupdf/include/mupdf
    • mupdf/platform/ios/
      类中的所有obj-c类
    • 来自
      mupdf/platform/ios
  • 添加/导入以前生成的fat库(8个文件)
  • 通过将路径添加到库文件来配置库搜索路径。
    • 例如
      $(继承的)$(项目目录)/External/MuPDF/lib/
  • 现在,您应该能够在包含库的情况下构建和运行应用程序。 使用示例项目了解库的工作原理或任何联机教程

    专业提示: 最终的fat库总共相当大(约46mb)。 您可以通过导入以下内容轻松减小应用程序的最终大小:

  • 在发行版文件夹下,只需从
    mupdf/build/release-ios-armv7-arm64
  • 在调试文件夹下,从
    mupdf/build/
  • Debug
    Release
    config设置不同的
    Library搜索路径
  • 完成后,您将能够在每个模拟器和设备上构建并运行
    Debug
    。但仅适用于
    发布设备
    。最终,您需要通过AppStore将其作为您的应用程序 应该只在真实设备上运行。不需要包括调试模拟器体系结构静态库

    以下是我的Xcode项目中所有导入文件的屏幕截图:


    苹果是否允许您重新创建自己软件的功能并进行销售?我已经有一段时间没做iOS了,但我记得你是不被允许做的…真的吗?我没有想到那个问题。有什么想法吗?你不能绕过这些限制。你能给我推荐一个好的pdf框架吗?请注意,MuPDF是GPL,这要求你同时发布你的应用程序源代码,并且可能使其与App Store不兼容。非常感谢你用本指南为我节省了大量时间。我还必须在“如何将MuPDF集成到项目中”步骤3中手动配置
    用户标题搜索路径
    ,例如,
    $(project\u DIR)/MuPDFSample/Bundles/MuPDF/include
    。请在这里记录,以防有人使用它。顺便说一句,对于最新版本(1.10a),我创建的静态fat库在
    libmupdf.a
    中是“fat”到170M+。。。我无法从我的计算机创建fat库。请参阅。无法打开发现问题的输入文件。我怎样才能克服这个问题?请澄清,我在您列出的第8步中感到震惊。mupdf/platform/ios在哪里?找不到。什么是t