Adobe 如何使 Photoshop 跨平台?

发布于 2024-09-29 00:47:39 字数 95 浏览 6 评论 0原文

我只是想知道 Adob​​e 如何使 Photoshop 跨平台?我知道 Photoshop 完全是用 C++ 编写的,但是 GUI 呢? Adobe 使用 GUI 工具包吗?

I want just know how Adobe makes Photoshop cross-platform? I know Photoshop is written completely in C++, but what about the GUI? Does Adobe use GUI toolkits?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

被你宠の有点坏 2024-10-06 00:47:39

对于任何本机编译的跨平台项目,解决方案通常是专门为特定平台编写一小部分称为“包装器”的代码。这些包装器直接与平台进行所有对话。

这使得像 Photoshop 这样的应用程序具有多平台性,但它不一定构建在 Adob​​e 尚未为其编写包装器的平台上。

For any natively compiled, cross-platform project, the solution is typically to have small portions of the code called "wrappers" written exclusively for specific platforms. These wrappers do all the talking directly to the platform.

This makes an app like Photoshop multi-platform, but it wouldn't necessarily build on a platform that Adobe hasn't written wrappers for.

过期以后 2024-10-06 00:47:39

编写跨平台软件很乏味,但这里有一些简单的规则。

通常,您需要使用底层操作系统/环境的抽象,以便您的代码依赖于该抽象而不是操作系统本身。这称为桥接模式。重要的是要了解,为程序和操作系统之间的桥梁添加的功能越多,移植软件就越困难。就 Adob​​e 而言,他们使用操作系统的相对较小部分(小桥),因为他们有自己的 UI 和文本处理,因此他们只需要捕获鼠标/键盘输入并能够在窗口中绘图。

Writing cross platform software is tedious but here are the simple rules.

Generally you need to work with an abstraction of the underlying OS / environment, so that your code depends on this abstraction instead of the OS itself. This is called a bridge pattern. It is important to understand the more features you add to the bridge between your program and the OS the more difficult it will be to port the software. In the case of Adobe they use a relatively small part of the OS (tiny bridge) as they have their own UI and text processing so they just need to capture mouse/keyboard input and be able to draw in a window.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文