870920 Menu

程序设计、C++语言、跨平台开发、JUCE类库等等……

关于《JUCE中文API》一书

《JUCE-API中文参考》一书印刷和装订后,最近几天,陆续有程序员朋友询问这本书,不客气地开口就索取,或者打算付费购买。时间和精力有限,在此做个集中回复和说明吧。

浏览全文

《JUCE API中文参考》一书印刷装订完毕

这本书是纸质印刷的JUCE API中文文档的第一版,全球独一无二。翻译蓝本基于JUCE 4.3.0,印刷和装订过程中不计成本,务求完美。整书硬壳精装,A3大纸,小号字体,排版紧凑,共1100页,纸张为高品质80克复印纸,数码印刷,锁线装订。无论纸张、印刷,还是装订质量,均远超书店和图书馆里的同类技术图书。至于书的大小、厚度与重量,无任何同类图书能与之相比。更别提多年来本人长期跟进翻译JUCE API所付出的时间、精力和心血……

整书异常巨大、厚重。说实话,我从小到大,从未见过如此“重大”的书。轻轻抚摸、翻阅着这本巨无霸,心潮澎湃,自豪与满足感油然而生:)

IMG_20161226_001110

此书为A3幅面,比MAC Book Pro大了不少

浏览全文

解决JUCE程序启动后未处于前台激活状态的小Tip

使用JUCE类库所开发的GUI程序,有些时候启动后,程序未处于前台显示并激活的状态,要么位于其它程序的窗口之后,要么干脆未显示,仅状态栏或Dock栏中的程序图标在闪烁。这个问题的原因是:继承自DocumentWindow的程序主窗口类的构造函数中,某些语句的顺序有误。按如下语句进行调整即可。

浏览全文

JUCE 4.3.0 API文档翻译完毕

2010年底的时候,我曾经翻译过JUCE的API文档,当时还是1.x版本。整个翻译工程相当浩瀚。当时一边翻译,一边在JUCE论坛连载。随后数年,随着JUCE类库的不断升级与完善,文档翻译也始终保持同步更新。基本上,每个月我都会依据最新版本的JUCE库做修补增订。2013年后,我写了一个小程序,改变了翻译思路,开始直接针对JUCE的h头文件下手,这么一来,不仅可以用doxygen直接生成中文后的API文档(html、rtf、pdf等多种格式。我甚至还制作过一个epub格式的,闲暇时在ipad上随时翻阅),还可以在编程时直接浏览查阅头文件中的文档注释,并对类库最新的改变一目了然、明察秋毫,减少了很多git对比和个别条目重复翻译的时间。可以说一举多得。

浏览全文

JUCE团队近期将举办两场活动

6c7097b6-44e9-4850-b9c3-712e0fc64d1e

其一是12月14日位于伦敦的机器学习编程马拉松活动(London Machine Learning Hackathon),该活动中将使用JUCE类库来实现机器学习技术并专门针对音乐创作与制作领域中的机器学习技术进行研讨、交流与技术展示。本次编程马拉松(Hackathon)是普通程序员了解并熟悉机器学习(Machine Learning)并将其应用到音乐与音频项目的一个好机会。活动中,JUCE团队将免费提供ROLI公司的有关硬件产品供程序员无偿使用,并对表现优异者进行额外的奖励。

浏览全文

JUCE类库四个模块的授权协议更改为ISC

之前,JUCE类库中仅juce_core模块为ISC授权协议(该协议类似于MIT和BSD),其余模块皆为GPL协议。ROLI和JUCE团队发布BLOCKS SDK开发包后,该类库四个最重要模块的授权协议更改为ISC。这意味着,开发者可无需付费而直接发布由这些模块所开发的闭源项目。这四个模块是:

浏览全文

JUCE类库发布4.2.4版本

如果定期git pull JUCE类库的develop分支,新版本中的改进和功能应该都熟悉了。最令人瞩目的新功能与改进有三:

  1. Projucer的实时编译功能开始支持Windows平台(目前仅限Windows 10)
  2. 控件(组件)的复杂布局与定位始终是JUCE类库在GUI方面的一大软肋。最终,在基于某热心贡献者的基础上,JUCE类库采用了FlexBox布局模式。详情和用法可参考css网页前端编程领域的FlexBox灵活布局设计
  3. 移除VST 2插件开发时所需的外部依赖(VST 3已囊括)

浏览全文

JUCE的东家ROLI并购了FX-pansion

FX-pansion是一家老牌音频(音源)插件开发商,著名的BFD虚拟鼓机就出自该品牌。昨天(2016年9月1日),ROLI正式并购了FX-pansion,这意味着,FX-pansion开发团队已全数纳入Jules麾下。也就是说,JUCE类库的开发、维护团队将进一步发展壮大。(JUCE被ROLI收购后,Jules连人带库一并加入ROLI,并任ROLI软件研发部门的总监)。

浏览全文

使juce::TextEditor具有行间距

JUCE的TextEditor(文本编辑器)在多行显示模式下没有额外的行间距,默认行高是当前所用字体的高度,导致阅读体验较差。可采用源码Hack(硬编码)的办法增大行间距。需改动3处(以JUCE 4.2.3版本为例)。打开../modules/juce_gui_basics/widgets/juce_TextEditor.cpp,277行找到TextEditor::Iterator类:

浏览全文

VS 2015编译老项目所遇到的三个问题的解决方案

近期将PC机升级为Windows 10,该平台下的IDE升级到VS 2015社区版,编译VS 2012的老项目时出现三个问题:一是C4458警告(声明隐藏了基类成员);二是项目中如使用了第三方静态库(比如cURL),则编译失败;三是使用JUCE类库开发的GUI程序,其界面文字随机性发生变化(比如变细,某些字符和数字显示错误)。解决办法如下:

浏览全文