标签 电子书 下的文章

电子书的“磨损”速度快于实体书

一百年前的实体书如果保存良好,可以正常阅读。但十年前的电子书今天去阅读极有可能会遇到各种问题。电子书需要不断维护,从文件格式到存储介质的不断变化,需要不断重新处理。电子书是脆弱且受到威胁的。

消息来源:Archive
老王点评:这是一个违反直觉的事情,但是确实如此,所以,我们应该用一种明文的开放格式来承载这些电子书。

16 台晶圆级芯片计算机集群组成千万核超算

制造世界上最大的芯片 —— 晶圆级引擎 2(WSE-2)的公司 Cerebras 今天公布了其仙女座超级计算机。仙女座是由 16 个 WSE-2 芯片组成的,共有 1350 万个计算核心,比世界顶级超级计算机 Frontier 系统多出百分之六十,AI 算力与 Frontier 相当。全套系统功耗 500 千瓦,这比同等级的超级计算机的功率要低得多。

消息来源:Venture Beat
老王点评:16 块脸盆大的芯片组成的超算,在 AI 算力上与世界第一超算相当。

美国的 Frontier 超算继续占据 TOP500 榜首

第 60 版 TOP500 显示,Frontier 系统仍然是名单上唯一拥有 Exaflop 级别算力的超级计算机。Frontier 的 HPL 分数和之前一样,1.102 EFlop/s,但是确是第二名的三倍。之前连续两年占据榜首的日本富岳超级计算机依旧保持第二名。中国排名前十的两台超算依旧是神威-太湖之光和天河-2A。

消息来源:Top500
老王点评:很多超算是不参加排名的。

EPUB 文件是使用开放格式发布内容的好方法。

电子书提供了一种随时随地阅读书籍、杂志和其他内容的好方法。读者可以在长途飞行和乘坐火车时享受电子书打发时间。最流行的电子书文件格式是 EPUB 文件,它是“ 电子出版物 electronic publication ”的缩写。 EPUB 文件受到各种电子阅读器的支持,并且是当今电子书出版的有效标准。

EPUB 文件格式基于 XHTML 内容和 XML 元数据的开放标准,包含在 zip 存档中。由于一切都基于开放标准,我们可以使用通用工具来创建或检查 EPUB 文件。让我们探索一个 EPUB 文件以了解更多信息。《C 编程技巧和窍门指南》,于今年早些时候在 Opensource.com 上发布,提供 PDF 或 EPUB 格式。

因为 EPUB 文件是放在 zip 文件中的 XHTML 内容和 XML 元数据,所以你可以用 unzip 命令在命令行检查 EPUB:

$ unzip -l osdc_Jim-Hall_C-Programming-Tips.epub 
Archive: osdc_Jim-Hall_C-Programming-Tips.epub
Length Date Time Name
--------- ---------- ----- ----
20 06-23-2022 00:20 mimetype
8259 06-23-2022 00:20 OEBPS/styles/stylesheet.css
1659 06-23-2022 00:20 OEBPS/toc.xhtml
4460 06-23-2022 00:20 OEBPS/content.opf
44157 06-23-2022 00:20 OEBPS/sections/section0018.xhtml
1242 06-23-2022 00:20 OEBPS/sections/section0002.xhtml
22429 06-23-2022 00:20 OEBPS/sections/section0008.xhtml
[...]
9628 06-23-2022 00:20 OEBPS/sections/section0016.xhtml
748 06-23-2022 00:20 OEBPS/sections/section0001.xhtml
3370 06-23-2022 00:20 OEBPS/toc.ncx
8308 06-23-2022 00:21 OEBPS/images/image0011.png
6598 06-23-2022 00:21 OEBPS/images/image0009.png
[...]
14492 06-23-2022 00:21 OEBPS/images/image0005.png
239 06-23-2022 00:20 META-INF/container.xml
--------- -------
959201 41 files

这个 EPUB 包含很多文件,但其中大部分是内容。要了解 EPUB 文件是如何组合在一起的,请遵循电子书阅读器的流程:

1、电子书阅读器需要验证 EPUB 文件是否真的是 EPUB 文件。他们通过检查 EPUB 存档根目录中的 mimetype 文件来验证文件。该文件仅包含一行描述 EPUB 文件的 MIME 类型:

application/epub+zip

2、为了定位内容,电子书阅读器从 META-INF/container.xml 文件开始。这是一个简短的 XML 文档,指示在哪里可以找到内容。对于此 EPUB 文件,container.xml 文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
  <container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
    <rootfiles>
      <rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package+xml"/>
  </rootfiles>
</container>

为了使 container.xml 文件更易于阅读,我将单行拆分为多行,并添加了一些间距来缩进每行。XML 文件并不关心新行和空格等额外的空白,因此这种额外的间距不会影响 XML 文件。

3、container.xml 文件表示 EPUB 的根从 OEBPS 目录中的 content.opf 文件开始。OPF 扩展名是因为 EPUB 基于 “ 开放打包格式 Open Packaging Format ”,但 content.opf 文件实际上只是另一个 XML 文件。

4、content.opf 文件包含一个完整的 EPUB 内容清单,以及一个有序的目录,以及查找每一章或每一节的引用。这个 EPUB 的 content.opf 文件很长,因此我将在此仅展示一小部分作为示例。

XML 数据包含在 <package> 块中,该块本身具有 <metadata> 块、<manifest> 数据和包含电子书目录的 <spine> 块:

<?xml version="1.0" encoding="UTF-8"?>
<package unique-identifier="unique-identifier" version="3.0" xmlns="http://www.idpf.org/2007/opf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:opf="http://www.idpf.org/2007/opf">
  <metadata>
    <dc:identifier id="unique-identifier">osdc002</dc:identifier>
    <dc:title>Tips and Tricks for C Programming</dc:title>
    <dc:creator>Jim Hall</dc:creator>
    <dc:language>English</dc:language>
    <meta property="dcterms:modified">2022-06-23T12:09:13Z</meta>
    <meta content="LibreOffice/7.3.0.3$Linux_X86_64 LibreOffice_project/0f246aa12d0eee4a0f7adcefbf7c878fc2238db3 (libepubgen/0.1.1)" name="generator"/>
  </metadata>
  <manifest>
    ...
    <item href="sections/section0001.xhtml" id="section0001" media-type="application/xhtml+xml"/>
    <item href="images/image0003.png" id="image0003" media-type="image/png"/>
    <item href="styles/stylesheet.css" id="stylesheet.css" media-type="text/css"/>
    <item href="toc.ncx" id="toc.ncx" media-type="application/x-dtbncx+xml"/>
    ...
  </manifest>
  <spine toc="toc.ncx">
    <itemref idref="section0001"/>
    <itemref idref="section0002"/>
    <itemref idref="section0003"/>
    ...
  </spine>
</package>

你可以把数据匹配起来,看看在哪里可以找到每个部分。EPUB 阅读器就是这样做的。例如,目录中的第一项引用了 section0001,它在清单中被定义为位于 sections/section0001.xhtml 文件中。该文件的名称不需要与 idref 条目相同,但 LibreOffice Writer 的自动程序就是这样创建该文件的。(你可以在元数据中看到,这个 EPUB 是在 Linux 上用 LibreOffice 7.3.0.3 版本创建的,它可以将内容导出为 EPUB 文件。)

EPUB 格式

EPUB 文件是一种使用开放格式发布内容的好方法。EPUB 文件格式是 XML 元数据与 XHTML 内容,包含在一个 zip 文件内。虽然大多数技术作家使用工具来创建 EPUB 文件,因为 EPUB 是基于开放标准,意味着你可以使用其他方式创建自己的 EPUB 文件。


via: https://opensource.com/article/22/8/epub-file

作者:Jim Hall 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

深度发布独立软件包格式:玲珑

深度操作系统预计在本月发布新的 Deepin 23 操作系统,其中将采用一种新的独立软件包格式:玲珑。 深度社区称玲珑是“统信软件自研的开源软件包格式,用于与 dpkg、rpm 等包管理系统共同实现应用包管理、分发、沙箱、集成开发工具等功能。”根据披露的特性,玲珑软件包可运行在任意 Linux 桌面环境中,运行在独立的沙箱环境,支持应用增量更新。

消息来源:深度
老王点评:看来是一种容器式软件包。确实,要打造一个“根操作系统”,是应该有个独立的软件包体系才名正言顺,但是应该有真正的软件包方面的创新才有意义。据我所知,这是国内这批“根操作系统”中第一个提出自己的软件包格式的操作系统。让我们拭目以待这个玲珑之后的进一步信息。

英特尔将在 2024 年推出 Wi-Fi 7

因为苹果正在将其设备过渡到 Wi-Fi 6E,英特尔正计划在 2024 年之前在设备中安装其下一代 Wi-Fi 7(802.11be)技术。Wi-Fi 7 是 Wi-Fi 6E(802.11ax)的继任者,带来了两倍于 5.8Gbps 的数据处理速度和更稳定的 6GHz 带宽稳定性,在处理数据时支持高达 36Gbps 带宽。苹果还没有发布任何支持 Wi-Fi 6E 的设备,有望在今年从 iPhone 14 开始支持。

消息来源:MacRumors
老王点评:前两天刚刚换了一个 Wi-Fi 路由器,支持 Wi-Fi 6,我才用上,而这都要 Wi-Fi 7 了。不知不觉中无线网络技术居然已经进步这么快了。

教科书出版商希望借助区块链来在电子书转售时挣钱

世界上最大的教科书出版商之一培生公司的 CEO 说,他希望像 NFT 和区块链这样的技术可以帮助该公司从电子书的二手销售中分得一杯羹,因为越来越多的书籍以电子书形式销售。纸质书籍,尤其是昂贵的教科书,有时候会转售七次之多,但转售不会出版商带来任何收益。而随着教科书转向数字化,教科书出版商看到了从转售中获利的可能。

消息来源:彭博社
老王点评:纸质书转售对出版商没好处是因为出版商第一次就收到了足够的钱。而电子书却给出版商带来机会,让出版商有望控制电子书的二次流通,并通过它再次获利。

一本新的展示了开发者如何继续使用 Java 框架来构建新的无服务器功能的电子书。

 title=

无服务器 架构已经成为一种高效的解决方案,无论是物理服务器、虚拟机还是云环境,都可以根据实际工作负载调整超额配置和不足配置资源(如 CPU、内存、磁盘、网络)。然而,在选择新的编程语言来开发无服务器应用时,Java 开发者有一个担忧。对于云上的无服务器部署,尤其是 Kubernetes,Java 框架似乎过于沉重和缓慢。

作为 Java 开发者,如果可以继续使用 Java 框架来构建传统的云原生微服务以及同时构建新的无服务器功能呢?这种方法应该是令人兴奋的,因为你不必担心新的无服务器应用框架的学习曲线会很陡峭。

此外,如果 Java 框架不仅可以为开发者提供熟悉技术的乐趣,还可以在启动时以毫秒为单位优化 Kubernetes 中的 Java 无服务器功能,并提供微小的内存足迹,又会怎样?

什么是 Quarkus?

Quarkus 是一个新的 Java 框架,可以为 Java 开发者、企业架构师和 DevOps 工程师提供这些功能和好处。它旨在设计无服务器应用,并编写云原生微服务,以便在云基础设施(例如 Kubernetes)上运行。

Quarkus 还支持一个名为 Funqy 的可移植 Java API 扩展,供开发者编写和部署无服务器功能到异构无服务器运行时。

Quarkus Funqy 使开发者能够将 CloudEvents 与 Knative 环境中的无服务器函数绑定,以处理反应式流。这有利于开发者建立一个通用的消息传递格式来描述事件,提高多云和混合云平台之间的互操作性。

在我的新电子书 《Java 无服务器功能指南》的帮助下,开始你的 Quarkus 之旅。与他人分享你的 Quarkus 经验,让大家都能享受到用 Java 和 Quarkus 进行的无服务器开发。


via: https://opensource.com/article/21/8/java-quarkus-ebook

作者:Daniel Oh 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

下载我们的免费指南之一:开发一个基于 Python 的电子游戏;使用开源工具来让你的生活井井有条;完成家庭自动化项目;或尝试你的树莓派家用实验室。

 title=

(LCTT 译注:opensource.com 的免费电子书需要免费注册一个用户才能下载。)

开启一个新的树莓派项目

近十年来,树莓派一直俘获着开源爱好者的心和手。你可以用树莓派做无数的项目,无论是 监控你的花园设置家长监控(尤其是在那些漫长的夏天),甚至从你自己的后院 跟踪飞机。如果这些很酷的项目激起了你的兴趣,但你的树莓派仍在吃灰,那么你需要下载我们的指南来促使你开始行动。在你知道它之前,你需要学习 如何管理它们,因为你将与很多树莓派一起工作!

下载:《如何开始使用你的树莓派

设计你的开源智能家庭

一个聪明且有用的方式去使用树莓派的方式是去设计你的智能家庭。使用家庭助手或其他的开源工具,你的家可以按你自己的设置进行自动化而无需借助第三方平台。作者 Steve Ovens 用这本家庭自动化集锦的手写电子书来指导你的每一步工作。

下载:《使用开源工具实现家庭自动化的实用指南

将事情梳理地井井有条

可能你并没做好准备使得你的家庭完全自动化,但是你可能会对梳理你的思维有兴趣。为什么不从你的 to-do 列表开始呢?在贡献者 Kevin Sonney 的生产力指导下,你将会熟悉六个开源工具的使用,从而帮你把事情安排得井井有条。一旦你完成了他的教程,你就会感到事情井井有条,在这个夏天终于有时间放松了。

下载:《六个可以将事情梳理地井井有条的开源工具

学习如何写代码

电脑无处不在。能吐槽一下很多编程语言对初学者不是很友好吗?

有许多为初学者设计的编程语言。Bash 是 Linux 和 macOS 终端中使用的相同的脚本语言,如果你新开始写代码,Bash 将会是一个伟大的开始。你可以以 互动的方式学习它,之后下载我们的电子书以了解更多。

下载:《Bash 编程指南

用 Python 写一个游戏

另一个初学者喜欢的编程语言是 Python。它不仅受到仅仅学习编码的中小学生的欢迎,还被专业程序员用来做 网站开发视频编辑 以及 云端自动化。无论你最终的目标是什么,开始学习 Python 的一个有趣的方式是编写一个自己的游戏。

下载:《Python 游戏开发指南

发现使用 Jpuyter 的巧妙方法

为了让 Python 具有交互性且易于分享,Jupyter 项目提供了基于 Web 的发展环境。你可以在“笔记本”文件中写代码,然后将其发送给其他用户,以便他们轻松复制和可视化你所做的。它是代码、文档和演示文稿的完美组合,而且非常灵活。下载 Moshe Zadka 的多方面指南了解更多关于 Jupyter。

下载:《使用 Jupyer 的六种惊艳方式

在你的家庭实验室里尝试 Kubernetes

现在,你已经在你的树莓派上安装了 Linux,已经登录,已设置新用户并 配置了 sudo 使得能够进入管理员模式,你正在 运行所有你需要的服务 。之后呢?

如果你对 Linux 和服务器管理感到满意,你的下一步可能是云服务。可以读一下 Chris Collins 的电子书,从你的家庭实验室的舒适中了解所有关于容器,吊舱和集群的信息。

下载: 《在你的树莓派家庭实验室上运行 Kubernetes

福利:书籍列表

只工作不休息是不健康的。夏天(或任何季节,它是在你的世界的一部分)假期是为了休息,没有什么比坐在门廊或海滩上读一本好书更休闲人心的。下面是一些最近列出的书,以激发一些想法:


via: https://opensource.com/article/21/7/open-source-guides

作者:Seth Kenlon 选题:lujun9972 译者:zepoch 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Sigil 是一个开源的 Linux、Windows 和 MacOS 上的 EPUB 编辑器。你可以使用 Sigil 创建一个新的 EPUB 格式的电子书,或编辑现有的 EPUB 电子书(以 .epub 扩展结尾的文件)。

如果你感到好奇,EPUB 是一个标准的电子书格式,并被几个数字出版集团认可。它被许多设备和电子阅读器支持,除了亚马逊的 Kindle。

Sigil 让你创建或编辑 EPUB 文件

Sigil 是一个允许你编辑 EPUB 文件的开源软件。当然,你可以从头开始创建一个新的 EPUB 文件。

很多人在 创建或编辑电子书时非常相信 Calibre。它确实是一个完整的工具,它有很多的功能,支持的格式不只是 EPUB 格式。然而,Calibre 有时可能需要过多的资源。

Sigil 只专注于 EPUB 书籍,它有以下功能:

  • 支持 EPUB 2 和 EPUB 3(有一定的限制)
  • 提供代码视图预览
  • 编辑 EPUB 语法
  • 带有多级标题的目录生成器
  • 编辑元数据
  • 拼写检查
  • 支持正则查找和替换
  • 支持导入 EPUB、HTML 文件、图像和样式表
  • 额外插件
  • 多语言支持的接口
  • 支持 Linux、Windows 和 MacOS

Sigil 不是你可以直接输入新书章节的 所见即所得 类型的编辑器。由于 EPUB 依赖于 XML,因此它专注于代码。可以将其视为用于 EPUB 文件的 类似于 VS Code 的代码编辑器。出于这个原因,你应该使用一些其他 开源写作工具,以 epub 格式导出你的文件(如果可能的话),然后在 Sigil 中编辑它。

Sigil 有一个 Wiki 来提供一些安装和使用 Sigil 的文档。

在 Linux 上安装 Sigil

Sigil 是一款跨平台应用,支持 Windows 和 macOS 以及 Linux。它是一个流行的软件,有超过十年的历史。这就是为什么你应该会在你的 Linux 发行版仓库中找到它。只要在你的发行版的软件中心应用中寻找它就可以了。

Sigil in Ubuntu Software Center

你可能需要事先启用 universe 仓库。你也可以在 Ubuntu发行版中使用 apt 命令:

sudo apt install sigil

Sigil 有很多对 Python 库和模块的依赖,因此它下载和安装了大量的包。

我不会列出 Fedora、SUSE、Arch 和其他发行版的命令。你可能已经知道如何使用你的发行版的软件包管理器,对吧?

你的发行版提供的版本不一定是最新的。如果你想要 Sigil 的最新版本,你可以查看它的 GitHub 仓库。

并不适合所有人,当然也不适合用于阅读 ePUB 电子书

我不建议使用 Sigil 阅读电子书。Linux 上有 其他专门的应用来阅读 .epub 文件

如果你是一个必须处理 EPUB 书籍的作家,或者如果你在数字化旧书,并在各种格式间转换,Sigil 可能是值得一试。

我还没有大量使用 过 Sigil,所以我不提供对它的评论。我让你去探索它,并在这里与我们分享你的经验。


via: https://itsfoss.com/sigile-epub-editor/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出